JAVA开源仿知乎问答源码

项目说明

FlyCms 是一个类似知乎以问答为基础的完全开源的JAVA语言开发的社交网络建站程序,基于 Spring Boot+Bootstrap3+MyBatis+MYSQL+Solr 应用架构,专注于社区内容的整理、归类和检索,它集合了问答,digg,wiki 等多个程序的优点,帮助用户轻松搭建专业的知识库和在线问答社区。

开放源码,便捷开发

基于Spring Boot版本开发,利用成熟开发技术,开放系统源码和开发文档,让二次开发更容易。

弹性设计,任性定制

UI设计简约又灵活, Bootstrap定制模板让用户自由发挥,让自己的社区更具独特个性。

管理后台,轻松掌控

管理后台功能实用简约,只需轻点功能开关,即可完成系统配置,属于你的知识社区一挥而就。

轻快智能,更懂社交

FlyCms比论坛更开放,比资讯网站更了解用户,以用户为中心,更懂社交,更注重内容的分析和分享。

用戶互助,精准推送

用户之间相互解答,分享产品使用心得,只向用户推送自己关心的消息,扩大价值,压缩干扰。

使用说明:请保留页面底部的 powered by 28844. com 感谢支持

在线地址: 28844.com | 文档地址

技术栈

  • JDK8
  • Spring-Boot
  • MyBatis
  • Freemarker
  • MySQL
  • Bootstrap3
  • Solr

特性

  • 社区兼容性(IE9+)
  • 页面自适应布局
  • 本地登录,手机注册, 邮件注册
  • 登录时有验证码,尝试登录次数的限制
  • 使用 Spring-Boot 开发
  • MyBatis操作数据库
  • 目前sql语句只支持MySQL,如果要切换数据库,需要手动修改代码
  • Solr提供搜索和前台部分页面列表查询和分页

网站功能

前台功能
  • 问答栏目,用户可发布奖励积分邀请回答问题
  • 答案发布管理统计等等;
  • 文章栏目,专家专栏,后台设置专家组可发布专业性文章资讯
  • 文章栏目可分类,文章栏目目前可无限极分类
  • 分享栏目,用户可分享发布如百度网盘资源地址,电影地址等等,赚取积分
  • 各个栏目话题聚合内容,话题可编辑删除,审核;
  • 用户个人首页,可查看自己关注的用户和自己发布的内容
  • 用户内容收藏
  • 用户积分管理充值
  • 用户绑定手机号码
  • 用户绑定邮箱地址
  • 用户密码找回
  • 用户手机号码注册,需后台绑定运营商API;
  • 用户邀请注册奖励
网站后台
  • 网站运营基本信息编辑
  • 用户注册相关信息管理
  • 用户手机运营商信息管理(目前只支持阿里大鱼)
  • 网站发送邮箱绑定,邮箱模板设置
  • 会员信息管理、审核
  • 问答管理
  • 答案管理
  • 文章管理、文章分类
  • 话题管理
  • 分享管理
  • 积分奖励规则管理

二次开发准备

  1. 开发环境要在IDE里装上lombok插件,否则编译器会报错
  2. 程序部署建议使用Maven的assembly插件实现自定义打包方式
  3. 项目已经接入了solr,程序安装需要先运行solr,solr已调试好,可直接启动,使用方法可访问官网查看;
  4. 项目用到了阿里大于jar包,Maven时无法使用,可以下载doc/dysmsapi.zip,然后放本地的Maven的.m2\repository\com\alibaba\aliyun\目录下
  5. 搜索和首页列表后期大部分前台列表准备都使用solr,所以要先下载目录下的solr,然后运行后启动程序,不然报错!
  • 比如solr放E:/盘下面,首先打开CMD窗口

  • e:回车

  • cd e:/solr/bin 回车

  • solr start -p 8983 回车,等待启动成功

  • solr stop -p 8983 这个是停止solr命令

  • 创建数据库pybbs, 字符集utf8,如果想支持emoji,就要选择utf8mb4字符集(仅限使用MySQL数据库)

  • git clone https://gitee.com/could/FlyCms

  • 运行 mvn spring-boot:run 启动项目 (这一步系统会自动把表创建好)

  • 将项目下的 /doc/flycms.sql 文件导入到数据库

  • 前台页面访问 `http://localhost

  • 后台页面访问 http://localhost/admin/login 用户名: admin 密码: 123456

打包部署开发环境

  • 创建数据库flycms, 字符集utf8,如果想支持emoji,就要选择utf8mb4字符集(仅限使用MySQL数据库)
  • 将项目里的application.yml文件复制一份,重新命名application-prod.yml,并修改里面的配置项
  • 运行 mvn clean compile package
  • 拷贝 target/FlyCms.jar 到你想存放的地方
  • 运行 java -jar FlyCms.jar --spring.profiles.active=prod > FlyCms.log 2>&1 & 项目就在后台运行了
  • 将项目下的 init.sql 文件导入到数据库
  • 关闭服务运行 ps -ef | grep FlyCms.jar | grep -v grep | cut -c 9-15 | xargs kill -s 9
  • 查看日志运行 tail -200f FlyCms.log

关于主题

本项目配置的结构目录非常方便主题开发,如果你想适配一套自己喜欢的主题,可以按照 views/templates 目录下的PC或者移动端的文件夹结构开发,然后进入后台设置新加的模板即可。

反馈

http://www.28844.com

QQ群:211378508

提问题的时候请将问题重现步骤描述清楚

猜你喜欢

转载自blog.csdn.net/qq_29636155/article/details/83548105