https://github.com/anthinkingcoder/sr-core
java学习网后端
https://github.com/anthinkingcoder/sr-core
Last synced: 6 months ago
JSON representation
java学习网后端
- Host: GitHub
- URL: https://github.com/anthinkingcoder/sr-core
- Owner: anthinkingcoder
- Created: 2018-04-10T13:41:07.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2018-04-10T13:55:23.000Z (over 7 years ago)
- Last Synced: 2025-03-31T14:45:21.635Z (8 months ago)
- Language: Java
- Size: 2.64 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
sr-core //整个后端的根项目
sr-admin //管理端
knowledge
controller
ExpandKnowledgeController
service
ExpandKnowledgeServiceImpl //管理端的ExpandKnowledgeService实现
sr-model //公共模块
domain //实体包
knowledge //
ExpandKnowledge
repository //数据操作包
knowledge
ExpandKnowledgeRepository //对拓展知识的增删改查
sr-web //学生端
//后端技术选型 1.springboot + jpa + springmvc
springboot 配置框架 自动配置 application.yml
jpa repository
springmvc controller
//数据库基本规范
1.新增一个拓展知识的时候 他的delete_at是空
2.删除一个拓展知识 将core_expand_knowledge表里的delete_at设为当前时间
3.delete_at空决定了这个拓展知识存在 非空表示不存在
//整个请求过程
//axios ->aspect //检测用户是否登录
axios -> aspect -> controller -> service -> repository
ajax -> controller -> service -> repository(操作数据库 进行增删改查)
// service //业务逻辑层
1.以impl结尾
2.不以impl结尾的
exp:
ExpandKnowledgeServiceImpl //ExpandKnowledgeService的实现类
ExpandKnowledgeService //接口
//repository //数据操作层(数据库的增删改查)
1.所有repository都继承与JpaRepository接口
JpaRepository -> JpaRepository
2.方法映射sql语句
//select * from core_expand_knowledge where id = ? and delete_at is null
01:ExpandKnowledge findByIdAndDeleteAtIsNull(Long id); //找到一个拓展知识根据id找
// select * from core_expand_knowledge where delete_at is null limit 0,10
02:Page findAllByDeleteAtIsNullOrderByCreateAtAs(Pageable pageable) //找到所有拓展知识 分页获取
分页需要两个关键数据 1.size //10 表示显示10条 2.page 0 第一页 2 第二页
limit o1,o2 数据库里有20条拓展知识 limit 10,20 就表示过滤前十条 取从第10条开始的20条数据 o2:size o1: size * (page + 1)
传参Pageable ->有两个属性 page,size
返回 -> Page {
List content //要获取的数据
total //整个数据库的拓展知识数
}
//数据库
所有表的表名前缀都是 core_
core_user //用户表 -> 用户名和密码 level 区分他是系统 教师 学生 1 2 3
//登录过程中 根据level判断用户身份 -> 系统 教师 学生
管理端:只能系统和教师登录的 sr-admin
学生端: 学生登录 sr-student
//父亲与儿子
知识列表 组件 1
专题 组件 2
1 没有父亲的时候 基础知识
2 -> 1
1进阶知识
四个项目
1. sr-admin 管理端的后端
2. sr-web 学生端的后端
sr-vue 学生端的前端
src-web 管理端的前端
前端 -> 后端
前端 发送 request
后端 接受 request ,并且处理 然后返回一个response
request里面包含 路径 + 请求参数
response里面包含 数据