• Java 实时论坛


    简介

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

    如果你需要搭建一个企业内网论坛,请使用 SymX

    作者

    Sym 的主要作者是 DanielVanessa,所有贡献者可以在这里看到。

    初衷

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

    • 已有的用 Java 写的论坛很少也很丑,并且大多数已经不再维护
    • 我们想实现一种新的网络社区体验,独立博客+论坛互动

    基本理念

    实时交互

    在浏览帖子时,传统论坛都是需要刷新页面来查看回帖的,而 Sym 则是基于 WebSocket 技术进行回帖推送,看帖时不需要刷新页面也可以看到其他人回帖。

    互联

    Sym 提供了 API 进行帖子、评论的同步(B3log 构思),目前 SoloTypechoZ-BlogPHPWordPress 均已经提供插件来进行内容同步,欢迎大家进行接入!

    HTML5

    Sym 使用了很多 HTML5 提供的技术特性,比如

    • 通过使用本地存储防止编辑帖子/评论时内容丢失
    • 使用了音频特性来进行帖子/评论音频录制、播放
    • 复制/粘贴上传图片
    • CSS3 动画

    通过使用这些技术,Sym 可以让用户在分享、交流时更加便捷、舒服

    功能图解

    首页

    首页

    帖子

    帖子

    个人设置

    个人设置

    发布编辑

    • Markdown 编辑器,支持 GFM 语法
    • LaTeX 数学公式
    • 复制粘贴时自动转换为 Markdown
    • Chrome 下可以直接粘贴图片,其他浏览器支持拖拽
    • 除了使用文字,也可以在帖子内进行录音
    • 支持 Emoji
    • 使用本地存储保障数据在未提交时不丢

    发布编辑

    移动端

    移动端使用单独的模版进行渲染,解决通过一套模版自适应不能达成的效果和体验。

    安装

    需求:Maven3+、MySQL5+、Jetty9+/Tomcat9+(理论上只要实现了 JSR356 规范的 Servlet 容器都可以)

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

    注意:

    • 没有数据库建表 SQL 脚本,只需要手动建库,表会在第一次启动时自动生成
    • 只能部署到 ROOT 中,线上环境建议使用反向代理
    • Tomcat 用 9 以上版本,最好是使用最新版

    商用授权

    请看这里

    思绪

    在实现 B3log 构思的这几年:

    • 我们见证了 xAE(GAE/BAE/SAE/etc)的兴起与没落。2009 年选择了 GAE 作为服务器,并开始实现 Latke 框架来解决跨云平台,直到告别 GAE,不得不感叹技术更迭之快
    • 感受到了自造轮子的优缺点,并且可以肯定一点:对于一个想要长久的产品来说,自制技术框架优势远大于劣势
    • 一个好玩的产品或说是细节特性然并卵,需要做的是一个能够持续提供用户价值的产品/特性
    • 虽然直到目前 B3log 系产品用户不多,但我们已经初步证明了:Java 用来实现博客、论坛没有什么不好的
    • 使用开源软件,了解开源思想,融入开源

    PS:欢迎加入开源技术 Q 群 13139268,让学习和分享成为一种习惯!

  • 相关阅读:
    【简单算法】27.验证二叉搜索树
    【简单算法】26. 二叉树的最大深度
    【简单算法】25. 环形链表
    pandas 数据处理
    主成分分析 PCA
    hive 导出数据到本地
    深度学习的优化方法 总结
    ALS算法 (面试准备)
    Bagging和Boosting的区别(面试准备)
    ROC 曲线,以及AUC计算方式
  • 原文地址:https://www.cnblogs.com/lanzhi/p/6467791.html
Copyright © 2020-2023  润新知