单体项目 达内知道 总结

业务流程图:
  控制器 只做和 前台页面的交互,① 接收表单信息 ② 把结果返回给前台页面
      (其它的一概不管,控制器只需要调业务逻辑层的方法 )
  在业务逻辑层主要写代码,业务逻辑层中再调 mapper(mapper 就是接口 )
在这里插入图片描述
就这几个层,先写哪个无所谓,不用在意顺序,就和先洗脸 先刷牙一样

企业中开发项目编写业务流程
最基本的调用格式就是

  1. 前端发起请求到控制器
  2. 控制器接收信息后 调用业务逻辑层方法
  3. 业务逻辑层中调用数据访问层方法,并接收数据访问层的返回值
  4. 业务逻辑层将接收到的返回值返回给控制层
  5. 控制层将信息响应给前端

企业中的开发业务流程:

在这里插入图片描述
区别:
(1)要是有表单,就要先写控制器controller,因为要 控制器接收表单信息


实现的功能:
用户登录、学生注册、显示学生首页、学生提问、完善学生首页、显示讲师首页、显示问题详情页、讲师回复、显示讲师回复列表、讲师或学生评论(增、删、改、查)、学生采纳答案

  1. 用户登录(Spring-Security 实现密码加密,权限管理等,并进行 登录验证 与 授权控制)
  2. 学生注册(Spring-Validation 前后端双重验证,防黑客)
  3. 学生首页(包含显示所有标签,显示当前登录学生的问题列表,PageHelper分页)
  4. 学生提问(模板复用所有标签,加载标签和讲师,富文本编辑器,v-select,文件上传,学生提问)
  5. 完善首页(显示问题状态,用户信息面板,以及复用)
  6. 讲师首页(查询讲师任务列表,技术基本和学生问题列表一致)
  7. 问题详情页(显示当前问题信息)
  8. 讲师回复(新增并将讲师回复的问题显示在回答列表中)
  9. 显示讲师回复列表(将新增的回答显示在回答列表中)
  10. 评论的增删改查(将新增的评论显示在评论列表中、同步页面删除效果)
  11. 问题的采纳

项目流程: (技术点是加粗、业务功能是红色)

1、创建达内知道项目
  (1)创建父项目 knows
  (2)创建子项目 knows-portal
  (3)父子相认
2、复制静态资源文件 (原型网页 复制到 knows-portal\src\main\resources\static)
       浏览器输入localhost:8080/index_student.html测试访问
3、将数据导入数据库(knows_v3.sql 代码复制到heidisql中)

4、使用 Lombok 插件简化开发(14个表对应的实体类,get/set方法;注解@Data、@Slf4)

5、使用 MyBatis Plus框架 简化开发 ( 对数据库表进行 代码生成;)
  功能一: 每个实体类都会有最基本的连库操作需求;
     MyBatis Plus框架 能够在接口中编写继承一个MyBatis Plus提供的父接口(BaseMapper),
这个父接口中已经编写好了 对一个实体类基本的增删改查的操作
     省去了这些基本操作:如:新增一个对象到数据库,按id删除一个数据,按id查询一个数据,查询全部数据,修改数据…等

  功能二: 代码生成器
     项目中所有表对应的所有类和接口
     创建子项目 knows-generator

6、用户登录(Spring-Security)

使用 Spring Security实现密码加密,权限管理等,并进行 登录验证 与 授权控制
   (1)密码加密: Bcrypt 算法
   (2)权限管理: 用户和权限的关系,那5张表,不同用户有不同权限
      要实现用户登录,需要 根据用户名获得用户信息 和 根据用户id获得用户所有权限
   (3)实现登录业务(一)(登录验证): 返回的UserDetails
      Spring-Security安全框架内部封装了登录验证的过程,无需我们编写,我们只用 将登录需要的数据或信息传递给Spring-Security,它就会自动进行判断并返回登录成功还是失败的结果
      传递到Spring-Security框架中信息的格式是UserDetails接口类型的对象,UserDetails类型是Spring-Security提供的,我们要想实现登录就需要获得这个对象 并对它 赋必要值
  (4)授权控制: 控制当前网站哪些页面资源可以直接访问,哪些需要登录才能访问

  (5)自定义登录页面

7、业务(功能)二:注册

  1. 用户访问注册页面,并填写表单信息

  2. 用户点击注册按钮,注册信息发送到SystemController

  3. SystemController调用Service层的方法,将用户注册信息发送过去

  4. 业务逻辑层中处理注册逻辑,包括验证邀请码,验证用户名是否已经被注册和密码加密等操作

  5. 业务逻辑层执行新增用户到数据库

  6. 业务逻辑层返回注册结果到控制层

  7. 控制层将注册结果返回页面,页面做相应处理
    在这里插入图片描述在这里插入图片描述8、业务三:显示学生首页

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值