本项目为《JavaWeb》课程设计作品,是一款集新闻发布、编辑与管理功能于一体的在线新闻发布平台。用户可在此平台上便捷地浏览各类新闻资讯,并提供后台管理系统以供管理员进行内容更新及维护工作。
SpringBoot-NewsSystem 是一个大三上学期的 JavaWeb 作业项目,实现了一个新闻发布系统。该项目使用 Spring Boot 版本为 10.0.2(日期:2018年7月17日),MySQL 数据库版本为5.7.22,并且采用 Apache Maven 3.6.0 进行构建。
权限角色包括:
- ROLE_USER: 普通用户,仅限于浏览新闻和修改自己的密码。
- ROLE_USER_S: 二级用户(相当于记者的角色),可以发布新闻但需要审核通过才能显示。
- ROLE_ADMIN: 管理员,拥有增删改查所有新闻及用户的权限,并且能够更改其他用户的权限等级,但是不能将普通用户直接升为管理员。
Spring Boot 使用 Spring Security 配置来实现这些安全控制。具体配置如下:
```java
@Configuration
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled=true)
```
该项目使用 JPA 作为数据库操作层的工具,并定义了一个文件存储接口,如:
```java
public interface FileRepository extends JpaRepository {}
```
前端界面采用了 Bootstrap 框架和百度 UEditor 富文本编辑器来增强用户体验。模版引擎则选择了 Thymeleaf 来渲染页面。
技术栈包括:Spring Boot + Spring Security + JPA + MySQL + Apache Maven 3.6.0 + Bootstrap + UEditor + Thymeleaf