La version officielle de jspBB-1.0.0 a été publiée. Cette version ajoute la fonction de notification via websocket, afin que vous puissiez connaître vos réponses ou commentaires en temps réel. Les administrateurs peuvent être informés des questions, réponses ou commentaires sur l'ensemble du site Web et peuvent répondre aux questions des utilisateurs en temps opportun. C'est également un bon choix en tant que système de service client.
De plus, quelques autres bugs ont été corrigés et de nouvelles petites fonctions ont été ajoutées.
Présentation du système du forum jspBB (questions et réponses)jspBB est un système de forum (questions et réponses) gratuit et open source basé sur Java/Kotlin, imitant les modèles de stackoverflow, quora et Zhihu, et est open source sous l'accord GPL-2. Développé à l'aide de SpringBoot2, Mybatis, TypeScript, React, AntDesign4, AntDesignPro5, Thymeleaf, Bootstrap4 et d'autres technologies.
Le nom jspBB est un hommage à phpBB, et jsp n'est pas utilisé dans le système. Au début, parmi les trois principales technologies Internet que sont PHP, ASP et JSP, seul JSP ne disposait pas d'un forum open source de poids. J'espère que jspBB pourra combler cette lacune.
Le système utilise SpringBoot2 et peut être démarré en mode jar. Le backend et le front-end utilisent React, AntDesign4 et AntDesignPro5, basés sur le mode ReactHooks. Compte tenu de la convivialité des moteurs de recherche, Thymeleaf et Bootstrap4 sont utilisés dans le front-end, ce qui est plus utile que Freemarker. À l'avenir, l'interface API du front-end sera fournie, afin que le front-end puisse également utiliser des technologies telles que React et Vue.
Le code de l'application dans le système est développé avec Kotlin et le code de l'outil est développé avec Java (en tenant compte de la réutilisation dans d'autres projets). Kotlin est un langage de développement efficace et sûr, 100 % compatible avec Java. Après compilation, il s'agit toujours d'un fichier de classe et s'exécute toujours dans le JDK sans dépendre d'un autre environnement. Kotlin et Java peuvent s'appeler. Vous pouvez mélanger et faire correspondre Java et Kotlin pendant le développement. Il n'est pas nécessaire d'utiliser Kotlin pour tout. Kotlin est devenu le langage de développement préféré sur Android, et Spring a également ajouté très tôt la prise en charge de Kotlin.
Dans le développement réel, la gestion sécurisée des valeurs nulles par Kotlin peut considérablement améliorer la sécurité du code. Il n'est pas nécessaire de considérer le problème des valeurs nulles à tout moment et n'importe où. Semblable au sucre syntaxique des langages dynamiques, vous pouvez faire ce que vous voulez. avec une petite quantité de code. Il n'y a pas à se soucier de savoir pourquoi cela ne peut pas être comme ceci ou pourquoi cela ne peut pas être comme cela lors du développement en Java. Une idée simple nécessite de nombreuses lignes de code pour être réalisée.
Fonction de réception du système du forum jspBB (questions et réponses)Inscription (SMS Alibaba, email), connexion, récupération du mot de passe, connexion tierce (QQ, WeChat, Weibo), stockage tiers (Tencent Cloud, Qiniu Cloud, Alibaba Cloud), question (modifier, supprimer), réponse (Modifier , supprimer), commenter (modifier, supprimer), rechercher, prendre en charge Markdown (images), prendre en charge le filtrage des mots sensibles.
Fonctions d'arrière-plan du système du forum jspBB (Q&A)Paramètres : paramètres de base, paramètres d'enregistrement, paramètres de messagerie, paramètres de téléchargement, paramètres de filigrane, paramètres de contraintes, mots sensibles Utilisateur : gestion des rôles, gestion des groupes d'utilisateurs, gestion des utilisateurs Contenu : gestion des questions, gestion des réponses, gestion des commentaires Système : journal SMS, journal des accès La page de liste d'arrière-plan prend en charge la recherche, le tri, le masquage ou l'affichage de n'importe quel champ.
La page de modification en arrière-plan prend en charge l'affichage et l'édition des éléments précédents et suivants, sans basculer entre la page de liste et la page d'édition.
Configuration requise pour l'environnement système du forum jspBB (Q&A) JDK8.
Servlet3.1 ou supérieur (tel que Tomcat8.5 ou supérieur).
MySQL5.5 ou supérieur (si vous devez utiliser MySQL5.0, vous pouvez remplacer la version du pilote MySQL par 5.1.24). Comment se connecter au navigateur de base de données MySQL8 : IE11, Edge, Firefox, Chrome.
Kotlin1.3 ou supérieur. (Obligatoire pour l'environnement de développement)
Maven3.3 ou supérieur. (Obligatoire pour l'environnement de développement)
Kotlin/Java
Mybatis
PrintempsBoot2
Shiro
Feuille de thym
Bootstrap4
Réagir
Manuscrit
AntDesign4
AntDesignPro5
Maven3.3 ou supérieur. Et configurez l’image de l’entrepôt Alibaba Cloud Maven.
IntelliJIDEA2018.3 ou version ultérieure. Nécessite la prise en charge de Kotlin1.3.
Importez le projet via pom.xml. Attendez que le package jar soit téléchargé.
Créez une base de données dans MySQL et sélectionnez utf8mb4 comme jeu de caractères.
Exécutez le script de création de base de données/database/mysql_schema.sql et l'initialisation data/database/mysql_init.sql dans la base de données.
Ouvrez src/main/resources/application.properties et modifiez la connexion à la base de données, le nom d'utilisateur et le mot de passe : spring.datasource.urlspring.datasource.usernamespring.datasource.password.
Cliquez sur le bouton Exécuter dans le coin supérieur droit d'IDEA pour démarrer le programme.
Adresse de la réception : http://localhost:8080
Nom d'utilisateur par défaut : admin, mot de passe par défaut : mot de passe.
Le front-end backend est développé sur la base de React et doit être démarré dans l'outil de développement front-end pour y accéder. Veuillez télécharger le projet jspbb-cp séparément.
Les droits sont gratuits pour un usage personnel et commercial.
Le code source peut être modifié.
Après avoir restreint la modification du code source, s'il doit être distribué, il doit être open source sous licence GPL-2.
La distribution signifie mettre un programme à la disposition des autres. Y compris la modification du code source et la mise en place d'un nouveau projet ou en tant que produit logiciel de l'entreprise ;