1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/jspxcms-jspbb

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

jspBB — это основанная на Java/Kotlin бесплатная и открытая система форумов (вопросов и ответов), которая работает по модели, подобной StackOverflow, Quora и Zhihu, и использует лицензию GPL-2.

Система jspBB разработана с использованием технологий SpringBoot 2, Mybatis, TypeScript, React, Ant Design 4, Ant Design Pro 5, Thymeleaf и Bootstrap 4.

Название jspBB отсылает к phpBB. В системе не используются JSP. Из трёх основных интернет-технологий прошлого — PHP, ASP и JSP — только JSP не имела крупной открытой системы форумов. jspBB стремится заполнить этот пробел.

Систему можно запустить с помощью jar-файла. Бэкенд и фронтенд разработаны с использованием React и Ant Design 4 и Ant Design Pro 5 соответственно. Фронтенд также использует Thymeleaf и Bootstrap 4 вместо Freemarker. Планируется предоставить API для фронтенда, чтобы его можно было разрабатывать с использованием других технологий, таких как React или Vue.

В системе классы написаны на Kotlin, а служебные классы — на Java. Kotlin — это эффективный и безопасный язык разработки, который на 100% совместим с Java. После компиляции он остаётся классом и продолжает работать в JDK без необходимости использования каких-либо дополнительных сред. Kotlin и Java могут вызывать друг друга, и разработчики могут использовать их вместе. В Android Kotlin уже является предпочтительным языком разработки, и Spring также поддерживает Kotlin.

На практике использование Kotlin для обработки пустых значений может значительно повысить безопасность кода, устраняя необходимость постоянно проверять значения null. Синтаксис, подобный динамическим языкам, позволяет разработчикам легко реализовывать свои идеи, сокращая объём кода. Это избавляет от проблем, связанных с ограничениями, которые возникают при использовании Java, когда приходится писать много строк кода для реализации простых идей.

Функции фронтенда: регистрация (SMS, электронная почта), вход в систему, восстановление пароля, сторонний вход (QQ, WeChat, Weibo), стороннее хранилище (Tencent Cloud, Qiniu Cloud, Alibaba Cloud), создание вопросов (редактирование, удаление), ответы (редактирование, удаление), комментарии (редактирование, удаление), поиск и поддержка Markdown (вставки изображений).

Функции бэкенда:

  • настройки: базовые настройки, настройки регистрации, настройки электронной почты, настройки загрузки, настройки водяных знаков, ограничения настроек и настройки чувствительных слов;
  • пользователь: управление ролями, управление группами пользователей и управление пользователями;
  • контент: управление вопросами, управление ответами и управление комментариями;
  • система: журнал коротких сообщений и журнал доступа.

Страница списка бэкенда поддерживает произвольный поиск полей, сортировку и скрытие или отображение.

Страница редактирования бэкенда поддерживает просмотр предыдущей и следующей записей и редактирование без переключения между страницей списка и страницей редактирования.

Требования к среде: JDK8, Servlet 3.1 или более поздняя версия (например, Tomcat 8.5 или более поздняя), MySQL 5.5 или более поздней версии (если требуется использовать MySQL 5.0, можно заменить версию драйвера MySQL на 5.1.24). Поддерживаемые браузеры: IE11, Edge, Firefox, Chrome.

Технологический стек: Kotlin/Java, Mybatis, SpringBoot 2, Shiro, Thymeleaf, Bootstrap 4, React, TypeScript, Ant Design 4, Ant Design Pro 5.

Шаги по созданию среды разработки:

  1. Установите Maven 3.3 или более позднюю версию и настройте зеркало репозитория Maven Alibaba Cloud.
  2. Используйте IntelliJ IDEA 2018.3 или более позднюю версию с поддержкой Kotlin 1.3.
  3. Импортируйте проект через файл pom.xml и дождитесь завершения загрузки файлов jar.
  4. Создайте базу данных в MySQL и выберите набор символов utf8mb4.
  5. Выполните сценарии создания схемы базы данных /database/mysql_schema.sql и инициализации данных /database/mysql_init.sql.
  6. Откройте файл src/main/resources/application.properties и измените параметры подключения к базе данных, имя пользователя и пароль в spring.datasource.url, spring.datasource.username и spring.datasource.password.
  7. Запустите программу, нажав кнопку Run в правом верхнем углу IDEA.
  8. Адрес фронтенда: http://localhost:8080.
  9. Имя пользователя по умолчанию: admin, пароль по умолчанию: password.
  10. Бэкэнд фронтенда разработан с использованием React. Для доступа к нему необходимо загрузить проект jspbb-cp.

Адрес проекта jspbb-cp на GitHub: https://github.com/ujcms/jspbb-cp. Адрес проекта jspbb-cp на Gitee: https://gitee.com/jspxcms/jspbb-cp.

Краткое введение в GPL-2:

Права: можно использовать бесплатно, включая личное и коммерческое использование, и изменять исходный код.

Ограничения: после изменения исходного кода и распространения необходимо открыть исходный код под лицензией GPL-2. Распространение означает предоставление программы другим лицам, включая создание нового проекта после модификации исходного кода или использование программы в качестве продукта компании.

Часто задаваемые вопросы: Q: Нужно ли открывать исходный код после его изменения, если я использую программу только сам? A: Нет.

Q: Должен ли я открыть исходный код, если я предоставляю программу клиенту? A: Программа предоставляется тому, кто её получает. Необходимо открыть исходный код для этого лица, но необязательно делать его общедоступным. Получатель программы может потребовать от вас предоставить исходный код под лицензией GPL-2 и опубликовать его под этой лицензией в интернете. Однако третьи стороны, не получившие программу, не имеют права требовать от вас предоставления исходного кода.

Q: Могу ли я взимать плату за предоставление услуги по разработке веб-сайта на основе модифицированного исходного кода? A: Можно взимать плату, но это плата за техническую поддержку, а не за авторские права на программное обеспечение.

Q: Можно ли создать новый проект после модификации исходного кода? A: Можно. Но необходимо открыть исходный код под лицензией GPL-2.

Q: Какие известные программные продукты используют лицензию GPL-2? A: Linux, MySQL, OpenJDK, phpBB, WordPress и другие известные открытые программные продукты используют лицензию GPL-2.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

jspBB — это бесплатная, открытая дискуссионная (вопросно-ответная) система на основе Java/Kotlin, работающая по модели, подобной StackOverflow, Quora и Zhihu, с открытым исходным кодом под лицензией GPL-2. Для разработки использованы технологии SpringBoot 2, Mybatis, TypeScript, React, Ant Design 4, Ant Design Pro 5, Thymeleaf и Bootstrap 4. Развернуть Свернуть
GPL-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/jspxcms-jspbb.git
git@api.gitlife.ru:oschina-mirror/jspxcms-jspbb.git
oschina-mirror
jspxcms-jspbb
jspxcms-jspbb
master