项目构建思路

本文详细解析了SpringMVC项目构建的三层架构,包括Dao层、Service层和Controller层的作用与交互方式,阐述了其如何提升代码的耦合性和维护效率。同时,介绍了系统角色设计及各角色权限,以及首页的布局与实现思路。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

项目构建思路

项目采用spring MVC的模式来编写。

  • 通过编写Dao层实现与数据库的交互
  • 通过编写service层实现通过Dao层间接的访问数据库
  • 通过编写controller层实现响应前端页面请求,并间接使用service层完成数据交互

也就是说Dao层是直接与数据库交互的,而service层是直接使用Dao层的函数,而controller层则使用service层的函数,这样编写的目的是降低耦合性,在检测bug的时候只需一层一层的检测。一开始你会觉得非常繁琐,但随着项目的不断变大,你会发现这样分3层来编写的好处。

关于Dao层

在springboot中,其实Dao层并不是直接操作的数据库的,这里引入了面向对象和映射的思想。我们通常新建一张表的同时也会为这张表编写一个实体类,意思就是数据库表的每一项都对应着实体类的一个元素,这样形成一一映射的关系。我们通过Dao层直接操作实体类,spring又通过映射关系来修改数据库里的表。

#####关于系统角色

  • 项目最初是打算编写一个类似论坛的功能,一个人发出话题,其他人在下面发帖。但又考虑到这是一个考试信息共享的系统,大家来看的都是知识点,考点,而不会有太多的讨论,所以决定改成由想要分享考点的大佬来写文章,其他人看,并且可以在下面评论,点赞。

  • 为了让其他学院的人也使用这个系统,决定增加版块的功能,也就是说一个学院是一个版块,你可以选择去特定的版块发帖,浏览帖子,也可以全部都看。

  • 系统的角色分为,游客,普通用户,版块管理员,超级管理员这4种角色,相应的功能参考下图。
    在这里插入图片描述

  • 当用户没有登录时,当前用户处于游客身份,游客只能在index页面浏览相关文章,但是不能给文章点赞和评论

  • 当用户注册并登陆以后,即可到达home页面,可以享有发帖,修改个人信息等功能。

关于home页面
  • home页面采用的是一个app.css的主题,left,header,sidebar,footer都是主题框架。我们只需编写content(正文页面即可)。
    在这里插入图片描述
    如图所示,我们只需编写中间空白页面的代码即可。

######项目构建思路就先写这些吧。

github
项目演示

### 配置和运行 Maven 项目 #### 使用 IntelliJ IDEA 进行 Maven 项目的配置与操作 为了在 IntelliJ IDEA 中成功配置并运行 Maven 项目,需遵循一系列特定的操作流程。 #### 方法一:初始化设置 当首次打开一个现有的 Maven 项目时,IntelliJ IDEA 应自动识别 pom.xml 文件,并提示导入项目。如果未能自动检测到,则可以通过菜单栏中的 "File" -> "New" -> "Project from Existing Sources..." 来手动加载项目文件夹[^3]。 #### 方法二:确认 JDK 设置 对于未配置 JDK 的 Maven 项目,在启动前应先指定合适的 Java Development Kit (JDK),这可通过进入 "File" -> "Project Structure" -> "SDKs" 完成添加;随后切换至 "Modules" 页面选择对应的 SDK 版本给模块应用[^2]。 #### 执行 Clean 或 Install 命令 ##### 清理构建(Clean) 清理工作目录下的目标产物可以确保每次构建都是基于最新的源码状态。此过程会移除之前编译产生的 class 文件及其他临时资源: 1. **通过图形界面**: 展开右侧边栏内的 “Maven Projects” 工具面板,找到 Lifecycle 下拉列表里的 clean 选项点击即可; 2. **借助终端命令**: ```bash mvn clean ``` ##### 构建安装(Install) 该阶段不仅包含了 compile 编译、test 测试等常规动作,还会将打包后的 jar/war 文件上传至本地仓库供其他工程引用: 1. **图形化方式**: 同样是在 “Maven Projects”,定位到 install 并触发执行; 2. **命令行模式**: ```bash mvn install ``` 以上两种途径均支持自定义参数传递以及多线程加速等功能特性[^1]。 #### 创建运行/调试配置 除了直接调用生命周期指令外,还可以预先设定好一组固定的参数组合保存起来方便日后重复调用。前往 Run/Edit Configurations... 新增 Application 类型条目,按照向导填写 Main Class 名字以及其他必要的 JVM 参数后保存生效[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值