我是物联网工程专业的学生,即将进入大三。写博客是为了记录我自己的学习过程,我希望我能帮助很多像我一样处于初始阶段的初学学生。在林园,与其珍惜鱼,不如撤退并形成一张网。来吧。
博客主页:https://blog.csdn.net/qq_44895397
回弹集成了我的蜡染
1.添加依赖项
添加我的Btis来整合回弹的起始相关性
org.mybatis.spring.boot
mybatis-spring-boot-starter
2.0.0
1
2
3
4
5
6
MySQL驱动程序
mysql
mysql-connector-java
1
2
3
4
5
版本号继承父项目的版本号
如何指定mysql驱动程序的版本
在属性中间添加版本号->修改父项目指定的版本号
8.0.19
1
2.指定驱动程序时添加版本号
mysql
mysql-connector-java
8.0.19
1
2
3
4
5
6
2.逆向工程用于生成相应的映射文件(dao接口、xml映射文件)和实体类
具体操作请参考回弹项目下使用Mybatis的“懒惰”项目(逆向工程)。
将Mybatis反向工程配置文件复制到项目的根目录
修改GeneratorMapper.xml配置
在pom.xml文件中添加mysql逆向工程依赖项
双击运行
3.在核心配置文件应用程序中配置数据源
注意:mysql版本问题:低版本的驱动程序和url配置与8的不同
#雄猫
server.port=80
server.servlet.context-path=/
#mysql数据源
spring . data source . driver-class-name = com . MySQL . CJ . JDBC . driver
spring . data source . URL = JDBC:MySQL://localhost:3306/spring boot?服务器timezone = UTC & CharaCter encoding = utf-8
spring . data source . username = root
spring.datasource.password=yky
1
2
3
4
5
6
7
8
9
4.编写代码(向控制层、服务层和映射层添加注释)
创建一个网络包和一个学生控制器
@控制器
//@RestController
公共类学生控制器{
@自动连线
私人学生服务;
@RequestMapping("/student.do ")
@ResponseBody
公共学生选择学生(整数id){
学生=学生服务.查询学生标识(id);
返校学生;
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
创建服务接口,并在服务包下编写代码
服务接口:
公共接口学生服务
学生查询系统学生标识(整数标识);
}
1
2
3
4
服务的实施:
@服务
公共类学员服务Impl implements学员服务{
@自动连线
私有学生映射程序学生映射程序;
@覆盖
公共学生查询系统学生标识(整数标识){
学生=学生映射器. SelectByPrimAryKey(id);
返校学生;
}
}
1
2
3
4
5
6
7
8
9
10
11
12
向Mybatis逆向工程生成的StudentMapper界面添加@Mapper注释
@Mapper函数:mybatis自动扫描数据持久层的映射文件和DAO接口之间的关系
注意:默认情况下,Mybatis的xml映射文件不会编译到目标的类目录中,所以我们需要在pom.xml文件中配置资源
src/main/java
**/*。xml
1
2
3
4
5
6
7
8
DAO的其他开发方法
@MapperScan
添加到航运公司的主要类别
Mybatis提供的注意事项:扫描数据持久层的映射器以反映配置文件,因此不需要在DAO接口上添加@Mapper
基本包通常被分配给数据持久层包
@ SpringBootApplication
@ MapPerScan(" com . yky . spring boot . mapper ")
公共类Springbootdemo07Application应用程序{
公共静态void main(字符串[]参数){
spring application . run(springootdome 07 application . class,args);
}
}
1
2
3
4
5
6
7
8
独立的接口和映射文件
在资源目录下创建一个新的目录映射器来存储映射文件,并将StudentMapper.xml文件移动到资源/映射器目录
指定映射文件在应用程序. properties配置文件中的位置。仅当接口和映射文件不在同一个包中时,才需要指定此配置
#指定Mybatis映射文件的路径
my batis . mapper-locations = class path:mapper/*。xml
1
2
回弹事务支持
使用条目类中的注释@EnableTransactionManagement来打开事务支持(默认情况下,回弹是打开的,所以这个注释是不必要的)
将注释@Transactional添加到访问数据库的服务方法中
SpringBoot下的SpringMVC
@控制器
Spring MVC的注释,处理http请求
@RestController
在Spring 4之后添加注释是对@Controller的注释功能的增强,是@Controller和@ResponseBody的组合注释
如果一个控制器类添加@RestController,那么控制器类下的所有方法都等同于添加@ResponseBody注释
用于返回字符串或json数据
请求方法的局限性评析
@RequestMapping
支持获取请求和发布请求
@GetMapping
请求映射和获取请求方法的组合
仅支持获取请求。获取请求主要用于查询操作
@PostMapping
请求映射和发布请求方法的组合
仅支持发布请求。帖子要求主要用户添加新数据
@PutMapping
请求映射和放置请求方法的组合
仅支持提交请求。Put通常用于修改数据
@删除映射
请求映射和删除请求方法的组合
仅支持删除请求,通常用于删除数据
//RestController注释相当于向方法添加@ResponseBody注释,因此您不能跳转到该页面。
只能返回字符串或json数据
@RestController
公共类MVCController {
@GetMapping(value = "/query ")
公共字符串获取(){
返回“@GetMapping注释,通常在查询时使用”;
}
@PostMapping(值= "/add ")
公共字符串添加(){
返回“@PostMapping注释,通常在添加时使用”;
}
@PutMapping(值= "/modify ")
公共字符串修改(){
返回“@PutMapping注释,通常在更新数据时使用”;
}
@删除映射(value = "/remove ")
公共字符串移除(){
返回“@DeleteMapping注释,通常在删除数据时使用”;
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
回弹实现RESTful
什么是RESTFul?
RESTFUL是一种基于HTTP的网络应用的设计风格和开发方法,可以用XML格式或JSON格式定义。RESTFUL适用于移动互联网供应商充当服务使能接口的场景,实现第三方OTT调用移动网络资源的功能。操作类型是添加、更改和删除被调用的资源。
例如,我们需要访问一个http接口。id=1021&name=yky
在RESTFul风格中,http地址是http://localhost:8080/spring boot/1001/yky
春季启动开发RESTFul
@PathVariable:获取url中的数据
这个注释是实现RESTFul最重要的注释
@ RequestMapping("/student/{ stu id }/{ stu name } ")
公共学生选择studentrestful(@ path variable(“stu id”)整数id,
@路径变量(“stuname”)字符串名称){
学生=学生服务.查询学生标识(id);
返校学生;
}
1
2
3
4
5
6
请求冲突的问题
解决请求冲突
1.改变路径
@ GetMapping("/student/{ stu id }/class/{ stu name } ")
公共学生选择studentrestful(@ path variable(“stu id”)整数id,
@路径变量(“stuname”)字符串名称){
学生=学生服务.查询学生标识(id);
返校学生;
}
@ GetMapping("/student/class/{ stu id }/{ stu name } ")
公共学生选择studentrestful 2(@ path variable(“stu id”)整数id,
@路径变量(“stuname”)字符串名称){
学生=学生服务.查询学生标识(id);
返校学生;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
2.更改请求方法
@PostMapping
在发布模式下接收和处理请求
@删除映射
要在删除模式下接收请求,可以使用GetMapping
@PutMapping
要在put模式下接收请求,您可以改用PostMapping
@GetMapping
在获取模式下接收请求
@ GetMapping("/student/{ stu id }/{ stu name } ")
公共学生选择studentrestful(@ path variable(“stu id”)整数id,
@路径变量(“stuname”)字符串名称){
学生=学生服务.查询学生标识(id);
返校学生;
}
@ PostMapping("/student/{ bookid }/{ book name } ")
公共学生选择书册完整(@路径变量(“书册”)整数id,
@路径变量(“书名”)字符串名称){
学生=学生服务.查询学生标识(id);
返校学生;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
RESTful原则
添加发布请求、删除请求、更改投放请求,并选中获取请求
请求路径中没有动词出现
分页、排序等操作,不需要使用斜杠参数
例如:
/boot/orders?page=1&sort=desc
1
通常,传递的参数不是数据库表的字段,因此可以省略斜杠
回弹集成再版
1.添加redis的起始依赖项
org.springframework.boot
spring-boot-starter-data-redis
1
2
3
4
5
2.配置核心配置文件
#redis配置
spring.redis.port=6379
spring.redis.host=localhost
#密码:
#spring.redis.password=yky
1
2
3
4
5
3.使用springboot提供的模板类来操作redis
@自动连线
私人再发行模板再发行模板;
1
2
4.实体类的序列化
实现可序列化接口
公共类学生im可序列化
1
启动再贴现服务
/**
*通过id查询学生,首先在redis中找到他们,
*如果不在redis中,请在数据库中查找,
*搜索完成后,返回并将其放入redis
* @param id
* @返回
*/
@覆盖
@事务性
公共学生查询系统学生标识(整数标识){
对象stu = redisTemplate.opsForValue()。获取(id);
如果(斯图!= null){
返回(学生)学生;
}
学生=学生映射器. SelectByPrimAryKey(id);
redisTemplate.opsForValue()。集合(id,学生);
返校学生;
}
----------------------------------------------------------------------------------
哇谷im_im即时通讯_私有云_公有云-哇谷云科技官网-JM沟通
IM下载体验 - 哇谷IM-企业云办公IM即时聊天社交系统-JM 沟通下载
IM功能与价格 - 哇谷IM-提供即时通讯IM开发-APP搭建私有化-公有云-私有化云-海外云搭建
新闻动态 - 哇谷IM-即时通讯热门动态博客聊天JM沟通APP
关于哇谷-哇谷IM-提供企业即时通讯IM开发-语音通话-APP搭建私有化-公有云-私有化云-海外云搭建
联系我们 - 哇谷IM-即时通讯IM私有化搭建提供接口与SDK及哇谷云服务
公有云和私有云之间有什么区别?类似融云、环信云、网易云、哇谷云?