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.
Шаги по созданию среды разработки:
/database/mysql_schema.sql
и инициализации данных /database/mysql_init.sql
.src/main/resources/application.properties
и измените параметры подключения к базе данных, имя пользователя и пароль в spring.datasource.url
, spring.datasource.username
и spring.datasource.password
.Адрес проекта 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 )