jspBB-1.0.0.beta 发布,仿 StackOverflow、知乎

来源: 投稿
作者: jspxcms
2021-01-08

jspBB是一款基于Java/Kotlin的免费、开源论坛(问答)系统,仿stackoverflow、quora、知乎的模式,以GPL-2协议开源。使用SpringBoot 2、Mybatis、TypeScript、React、Ant Design 4、Ant Design Pro 5、Thymeleaf、Bootstrap 4等技术开发。

jspBB这个名字为了致敬phpBB,系统中并没有使用jsp。当初php、asp、jsp三大互联网技术,唯有jsp一直没有重量级的开源论坛,希望jspBB可以弥补这一缺憾。

系统使用SpringBoot2,可以用jar方式启动。后台前端使用React、Ant Design 4、Ant Design Pro 5,基于React Hooks模式。考虑到搜索引擎友好,前台前端使用Thymeleaf、Bootstrap 4,比Freemarker更好用。后续会提供前台前端的API接口,使前台前端也可以使用React、Vue等技术。

系统中应用类代码用Kotlin开发,工具类的代码用Java开发(考虑到要在其它项目复用)。Kotlin是高效、安全的开发语言,100%兼容Java,编译后依旧是class文件,依旧运行在JDK中,无需依赖任何其它环境。Kotlin和Java可以相互调用,开发时可以Java、Kotlin混搭,并不需要全部都用Kotlin。在Android中Kotlin已经作为首选开发语言,Spring也早早的加入了Kotlin的支持。

实际开发中,Kotlin的空值安全处理,可以大大的增强代码安全性,不用随时随地考虑null值的问题;类似动态语言的语法糖,可以做到想怎样就怎样,代码量少。没有java开发时那种为什么不能这样、为什么不能那样的苦恼,一个简单的想法,需要多行代码才能实现。

程序包下载地址:http://www.jspxcms.com/download/

官方论坛:http://jspbb.jspxcms.com

QQ交流群:626599871(Jspxcms交流群(三))

前台功能

注册(阿里短信,邮箱)、登录、找回密码、第三方登录(QQ,微信,微博)、第三方存储(腾讯云,七牛云,阿里云)、提问(修改,删除)、回答(修改,删除)、评论(修改,删除)、搜索、支持Markdown(贴图)、支持敏感词过滤。

后台功能

  • 设置:基础设置、注册设置、邮箱设置、上传设置、水印设置、约束设置、敏感词
  • 用户:角色管理、用户组管理、用户管理
  • 内容:问题管理、回答管理、评论管理
  • 系统:短信日志、访问日志

后台列表页面,支持任意字段搜索、排序,隐藏或显示。

后台修改页面,支持上一条、下一条显示和编辑,不用列表页、编辑页来回切换。

环境要求

  • JDK8。
  • Servlet3.1或更高版本(如Tomcat8.5或更高版本)。
  • MySQL5.5或更高版本(如需使用MySQL5.0,可将mysql驱动版本替换为5.1.24)。如何连接MySQL8数据库
  • 浏览器:IE11、Edge、Firefox、Chrome。
  • Kotlin1.3或更高版本。(开发环境需要)
  • Maven3.3或更高版本。(开发环境需要)

技术栈

  • Kotlin/Java
  • Mybatis
  • SpringBoot 2
  • Shiro
  • Thymeleaf
  • Bootstrap 4
  • React
  • TypeScript
  • Ant Design 4
  • Ant Design Pro 5
展开阅读全文
12 收藏
分享
加载中
精彩评论
不要乱说,jspbb这个名字是有来历的,来源于是论坛鼻祖phpbb
2021-01-08 14:29
2
举报
名字直接叫 xBB 正好!
2021-01-08 13:43
1
举报
大公司都开始用kotlin了吗? java写代码真难受。
2021-01-08 11:53
1
举报
最新评论 (20)
PHP就不需要纠结模板语言这种问题,因为本身就是一个模板语言,模板的语法就是PHP语法,模板的渲染速度就是PHP本身的解析速度.
其他语言的模板,模板的语法可能跟语言相似,模板的渲染速度还得看模板引擎的具体实现,良莠不齐.
2021-01-09 10:15
0
回复
举报
要这么说的话,jsp是不是也算呢
2021-01-09 10:58
0
回复
举报
不算吧,JSP还得依赖JRE外的Tomcat这些第三方Servlet容器支持才能转成Java代码(一个Servlet类),并不能通过Java直接执行.也就是,<%%>,<%!%>,<%@%>,<%=%>这些JSP标签,Java并不能识别,还是得靠Tomcat翻译为Servlet类,Java才能识别.
2021-01-09 14:08
0
回复
举报
但从模板上来说,php确实是个优势。但是现在都流行模板和数据分开,java在这方面是强项,java自身写逻辑,获取到数据给模板解析,不需要模板和代码都放在一起。
2021-01-09 15:09
0
回复
举报
接口开发PHP也是一把好手:
$db = new PDO();
$rows = $db->query($sql)->fetchAll();
$data = array();
foreach ($rows as $k => $row) {
  $data[$k]['id'] = $row['id'];
  $data[$k]['title'] = $row['title'];
}
echo json_encode(array(
  'code' => 0,
  'msg' => 'success',
  'list' => $data,
));
2021-01-09 15:47
0
回复
举报
java大概这样写:
public class Dao {
List<User> findByName(String name);
}
public class Controller {
public List<User> getUsers(String name) {
return findByName(name);
}
}
dao的sql不用写,直接写方法名,不用其它代码,数据列表转json也是自动的。
2021-01-09 17:08
0
回复
举报
名字直接叫 xBB 正好!
2021-01-08 13:43
1
回复
举报
不要乱说,jspbb这个名字是有来历的,来源于是论坛鼻祖phpbb
2021-01-08 14:29
2
回复
举报
大公司都开始用kotlin了吗? java写代码真难受。
2021-01-08 11:53
1
回复
举报
同道中人啊,kotlin是写起来最舒服的语言,比JavaScript和TypeScript的语法都要爽。还是强类型语言,还完全兼容java,就这还要什么自行车。
2021-01-08 11:57
0
回复
举报
比Freemarker更好用 不敢苟同
2021-01-08 10:28
0
回复
举报
Thymeleaf用起来非常舒服,Freemarker我用了有10多年了,Jspxcms系统就是用freemarker。Thymeleaf有什么不好的吗?
2021-01-08 10:45
0
回复
举报
没有freemarker完善 更新也很慢 几个重要作者热情很低
2021-01-08 10:57
0
回复
举报
没有发现什么freemarker能实现Thymeleaf实现不了的呀。估计就是功能都完成了,也没什么好更新的了,freemarker更新的就更慢了。
Thymeleaf最大的好处是不会破坏html结构,和html完全兼容,而且可以静态浏览。
2021-01-08 11:01
0
回复
举报
我写的publiccms 对freemarker使用比较深 任务计划脚本 文件发布路径等都是用得freemarker 还有开发过程代码生成
2021-01-08 11:07
0
回复
举报
做代码生成和模板freemarker都够用了,但是做html页面有点不爽
2021-01-08 11:16
0
回复
举报
回复 @xialinlin8520 : jfinal有段时间很火啊,但是jfinal enjoy只能在jfinal下用吧
2021-01-08 11:51
0
回复
举报
回复 @xialinlin8520 : 不是了,已经提出来了,可以单独使用了
2021-01-08 12:08
0
回复
举报
回复 @小99 : 不用jfinal的,基本都是用springboot,有springboot的支持吗
2021-01-08 12:11
0
回复
举报
回复 @小99 : 有不用配置直接用的springboot starter吗
2021-01-08 14:30
0
回复
举报
更多评论
23 评论
12 收藏
分享
返回顶部
顶部