说到论坛,这个词有可能有点陌生,但是说到百度贴吧一定不会陌生。没错,今天给大家介绍的就是一个论坛系统。
主要功能
(1)话题栏目功能
(2)问答栏目功能
(3)会员功能
(4)员工管理功能
(5)会员卡管理功能
(6)模板管理功能
(7)在线帮助管理功能
(8)浏览量管理功能
(9)友情链接管理功能
(10)留言管理功能
(11)文件打包管理功能
(12)系统通知管理功能
(13)平台收益管理功能
(14)全站设置功能
(15)支付管理功能
(16)短信管理功能
(17)第三方服务管理功能
(18)缩略图管理功能
技术选型
Spring Boot +VUE
Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。
SpringBoot基于Spring4.0设计,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程。另外SpringBoot通过集成大量的框架使得依赖包的版本冲突,以及引用的不稳定性等问题得到了很好的解决。
SpringBoot所具备的特征有:
(1)可以创建独立的Spring应用程序,并且基于其Maven或Gradle插件,可以创建可执行的JARs和WARs;
(2)内嵌Tomcat或Jetty等Servlet容器;
(3)提供自动配置的“starter”项目对象模型(POMS)以简化Maven配置;
(4)尽可能自动配置Spring容器;
(5)提供准备好的特性,如指标、健康检查和外部化配置;
(6)绝对没有代码生成,不需要XML配置。
Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式JavaScript框架。 [5] 与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用(SPA)提供驱动。
Vue.js是一套构建用户界面的渐进式框架。与其他重量级框架不同的是,Vue采用自底向上增量开发的设计。Vue 的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整合。另一方面,Vue 完全有能力驱动采用单文件组件和Vue生态系统支持的库开发的复杂单页应用。
Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。
Vue.js 自身不是一个全能框架——它只聚焦于视图层。因此它非常容易学习,非常容易与其它库或已有项目整合。另一方面,在与相关工具和支持库一起使用时 ,Vue.js 也能驱动复杂的单页应用。
演示视频
基于SpringBoot的论坛网小说网设计
密码使用了ENC加密
#jasypt加密的盐值
jasypt:
encryptor:
#建议仅在测试中使用,生产环境写在系统变量里
password: 123456 #加密盐值
algorithm: PBEWithMD5AndDES
iv-generator-classname: org.jasypt.iv.NoIvGenerator
spring:
#数据库
datasource:
#账号配置
url: jdbc:mysql://127.0.0.1:3306/bbs-pro?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&rewriteBatchedStatements=true
username: root
#加密由ENC()包裹
password: ENC(pAjl+oTZaEbmbxDgAhfnRg==)
driver-class-name: com.mysql.cj.jdbc.Driver
#hikari数据库连接池
hikari:
minimum-idle: 5 #最小空闲连接数量
idle-timeout: 600000 #空闲连接存活最大时间,默认600000(10分钟)
maximum-pool-size: 100 #连接池最大连接数,默认是10
auto-commit: true #此属性控制从池返回的连接的默认自动提交行为,默认值:true
max-lifetime: 1800000 #此属性控制池中连接的最长生命周期,值0表示无限生命周期,默认1800000即30分钟
connection-timeout: 30000 #数据库连接超时时间,默认30秒,即30000
connection-test-query: SELECT 1
jpa:
hibernate:
ddl-auto: update
database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
show-sql: false
open-in-view: false #不允许事务外访问懒加载的数据
properties:
hibernate.format_sql: true
hibernate.max_fetch_depth: 3
hibernate.jdbc.batch_size: 25
#hibernate.jdbc.batch_versioned_data: true #如果你想让你的JDBC驱动从executeBatch()返回正确的行计数 , 那么将此属性设为true(开启这个选项通常是安全的). 同时,Hibernate将为自动版本化的数据使用批量DML. 默认值为false
hibernate.generate_statistics: false #打开hibernate统计信息
#hibernate.hbm2ddl.auto: update
hibernate.order_updates: true
hibernate.physical_naming_strategy: cms.web.filter.MyPhysicalNamingStrategy
hibernate.use_second_level_cache: false
hibernate.cache.use_query_cache: false
http:
encoding:
force: true
#编码UTF-8
charset: UTF-8
resources:
addMappings: false #false表示不加入默认的静态资源路径处理。 为true时处理/**,所有匹配不到的接口请求将由ResourceHttpRequestHandler处理、获取并返回。而ResourceHttpRequestHandler内部将会查找对应的静态资源,如果查不到将直接response.sendError()最终重定向到/error视图,最终交给springboot默认的/error控制器处理。
servlet:
multipart:
max-file-size: 1000MB #文件上传单个数据大小
max-request-size: 1000MB ##文件上传总数据大小