Java 实时论坛 - Sym 1.3.0 发布

2015-10-02 18:22:53 +08:00
 88250

简介

Sym 是一个用 Java 写的实时论坛,欢迎来体验

初衷

Sym 的诞生是有如下几点原因:

基本理念

实时交互

在浏览帖子时,传统论坛都是需要刷新页面来查看回帖的。 Sym 在类似的用户交互场景上是基于 WebSocket 技术进行架构的,看帖时不需要刷新页面也可以看到其他人回帖。

HTML5

Sym 使用了很多 HTML5 提供的技术特性,比如通过使用_本地存储_防止编辑帖子 /评论时内容丢失;使用了_音频_特性来进行帖子 /评论音频录制;复制 /粘贴上传图片等等。

运用这些技术, Sym 可以让用户在分享、灌水时更加便捷、舒服 :smirk:

积分系统

积分系统是所有论坛的基础 /标配系统之一吧,好玩是一方面,另一方面是量化每个用户的价值。 Sym 的积分系统参考了 V2EX 的积分系统,未来将会加入更多动态特性,比如用户阵营汇率、系统运营参数等。

互联

Sym 提供了 API 进行帖子、评论的同步(B3log 构思),目前 Solo 博客系统已经可以完整和 Sym 保持内容同步。

功能图解

首页

首页使用 Reddit 热帖排序算法,基于用户投票和时间来决定首页内容。另外,列表上面的每篇帖子都有一个_小红条_,表示该帖的当前热度(实时浏览 /评论)。

帖子

个人设置

发布选择

目前有 4 类帖子:

发布编辑

移动端

移动端目前除了不能录音外,其他功能和 PC 端保持一致。

首页

浏览帖子

评论区

发布

安装

需求: Maven3+、 MySQL5+、 Jetty9+

  1. 下载源码
  2. 解压后修改 src/main/resources/local.properties 中的数据库配置,并创建数据库
  3. _可能需要_修改 latke.properties 中的端口为容器端口
  4. _可能需要_修改 init.properties 中的管理员账号
  5. 使用 mvn install 进行构建
  6. 部署到 Servlet 容器的 ROOT 下并启动容器,数据库表会在第一次启动时自动建立

注意:

配置

用户注册时是启用邮件验证的,如果需要修改请参考相关代码。

商用授权

请看这里

思绪

在实现 B3log 构思的这几年:

6450 次点击
所在节点    分享创造
69 条回复
zonghua
2015-10-02 19:18:46 +08:00
这个也是你们夫妻两人做的吗😓实在不喜欢那个飞来飞去的小红点
88250
2015-10-02 19:50:05 +08:00
@zonghua 嗯。。。。那个习惯下也蛮好玩的
Ansen
2015-10-02 21:29:50 +08:00
支持 d 大
Omitted
2015-10-02 22:00:33 +08:00
夫妻俩 😶

我女朋友也学编程,为卅差这么远 😭
88250
2015-10-02 22:05:38 +08:00
@Ansen 多谢 A ,好好养伤。
88250
2015-10-02 22:06:29 +08:00
@Omitted 你要主动带她玩啊~
cppgeek
2015-10-03 00:53:14 +08:00
喜欢小红点+1
lincanbin
2015-10-03 02:15:49 +08:00
Powered by B3log 开源 • Sym 1.3.0 • 389ms

为什么 Java 写的也可以这么慢……
TMD
2015-10-03 09:33:26 +08:00
载入页面时到服务器的连接被重置。
88250
2015-10-03 09:52:20 +08:00
@TMD 现在应该好了吧?
88250
2015-10-03 09:52:50 +08:00
@lincanbin 暂时没有做任何优化
miao
2015-10-03 14:01:50 +08:00
那么 无任何 java 基础的人怎么安装这个论坛程序呢
88250
2015-10-03 14:44:08 +08:00
@miao 大致说来:

1. 安装 JDK 、 Jetty
2. 按照项目主页里面的教程一步一步来
pupboss
2015-10-03 16:04:20 +08:00
好漂亮的论坛
88250
2015-10-03 16:10:27 +08:00
@pupboss 你是认真的,一定是。
GPU
2015-10-03 16:21:04 +08:00
好东西 。哇哇
microget
2015-10-03 16:26:08 +08:00
如果能使用 java web 的主流框架实现,更容易流行和推广。
不会或不想二次开发的, php 的开源程序竞争力很强。
想二次开发的,还得花时间熟悉一个新的框架,以及考虑框架的本身可能存在的问题,比较麻烦。
gzlock
2015-10-03 16:29:36 +08:00
一个星期前我也想到了用 Websocket 做讨论区,没想到有人实现了
88250
2015-10-03 16:37:41 +08:00
@microget 这个框架就是一个非常简化的 SpringMVC 实现,很容易上手的啦。

@gzlock :-) 可以一起来完善!
pupboss
2015-10-03 16:45:39 +08:00
@pupboss 哎呀,我想问个弱智问题...数据库配置那项, runtimeDatabase=MYSQL ,改成 MARIADB 行不行,还有下面的 驱动,直接写 org.mariadb.jdbc.Driver 会不会提示驱动不存在

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/225269

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX