SpringBoot
作者:互联网
01. 国内的联网服务地址: start.aliyun.com
02. 文件屏蔽处理
03. SpringBoot中的关键属性 parent 的引用 (将坐标、版本独立管理,工程中直接引用使用) >> 只定义,不使用
04.Starter: 定义了项目的依赖坐标,达到减少依赖配置的功能;(parent:解决依赖冲突问题)
若Starter中没有定义相关的依赖,则还是需要按原始方式进行配置,GAV三项均需要配置 (G:groupId, A: artifactId, V:version);
05. 引导类:
SpringBoot工程运行后,初始化Spring容器,扫描引导类所在包,加载相关的bean;
06. 内嵌tomcat
07.基础配置: 可在配置文件中 application.properties 中进行相关属性的配置
可配置的属性内容,可以在如下网址中查询
https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html#appendix.application-properties
08. SpringBoot的三种配置格式 (主流 yml 格式, 三种格式共存时,优先级: properties > yml > yaml ; 三个文件中的共存时,重叠属性按优先级生效,非共存的,将并集生效)
09. 关于工程中在配置 yml, yaml 格式配置文件时,输入内容无提示的解决
10.yml格式
>> 数据的读取
>> 属性引用及转义字符的使用
>> 封装全部属性到对象中
>> 指定封装相关数据类对象
>> 在使用了 @ConfigurationProperties() 注解后,若系统提示
则需要在pom文件中进行相应的配置
** 添加依赖
1 <dependency> 2 <groupId>org.springframework.boot</groupId> 3 <artifactId>spring-boot-configuration-processor</artifactId> 4 <optional>true</optional> 5 </dependency>
** 配置注解属性
1 <annotationProcessorPaths> 2 <path> 3 <groupId>org.springframework.boot</groupId> 4 <artifactId>spring-boot-configuration-processor</artifactId> 5 </path> 6 </annotationProcessorPaths>
11. SpringBoot集成MyBatis
a: 创建SpringBoot工程,钩选 MyBatis 和 MySQLDriver 依赖
b: 配置数据库连接 (yml格式)
mysql 8.0版本,在配置url时,对时区有要求,需要配置: serverTimezone; 默认配置UTC即可; 否则将会报错;
1 spring: 2 datasource: 3 driver-class-name: com.mysql.cj.jdbc.Driver 4 url: jdbc:mysql://localhost:3306/test?serverTimezone=UTC 5 username: root 6 password: 123456
c: 配置实体类、接口及测试用例
12. SpringBoot 整合 MyBatis_Plus
** MyBatis-Plus 与 MyBatis 的区别
>> 导入坐标不同;
>> 数据层实现简化
** Demo处理
a: 新建MyBatis-Plus 工程 (在 start.spring.io 中是找不着的, 当前MyBatis-Plus 未被Sping官网收入,但在阿里的服务上是可以看到的);
b: 钩选 MyBatis Plus FrameWork 和 MySQL的驱动依赖;
c: 实体类对象的配置, 按常规配置即可;
d: 配置dao, 此时不需要自己写@select, @Update等注解,直接通过继承可快速实现
e: 配置数据库连接参数
f: 配置测试用例,进行测试;
** 异常点
** 关于MyBatis-Plus的相关配置
>> 在控制台输出完整的日志信息,含每句SQL
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
>> 默认情况下,mybatis-plus映射的转换情况
>> 配置:mybatis-plus.configuration.map-underscore-to-camel-case=true
** true: SELECT id,role_name,role_desc FROM sys_role WHERE id=? >> 字段名与表名,均转为下划线模式
** false: SELECT id,roleName,roleDesc FROM sys_role WHERE id=? >> 字段名未再做转换,直接按实体类中的私有变量名配置,表名还是进行了转换,说明本参数不控制表名转换
>> 配置:mybatis-plus.global-config.db-config.table-underline=true
** true: SELECT id,roleName,roleDesc FROM sys_role WHERE id=? >> 表名进行了转换,与默认情况下一样;
** false: SELECT id,roleName,roleDesc FROM sysRole WHERE id=? >> 表名未转换,直接按实体类名进行使用
>>配置:mybatis-plus.global-config.db-config.capital-mode=false
** true : SELECT ID,ROLE_NAME,ROLE_DESC FROM SYS_ROLE WHERE ID=? >>大写模式
** false : SELECT id,role_name,role_desc FROM sys_role WHERE id=? >>小写模式
>>配置:mybatis-plus.global-config.db-config.table-prefix=test_
SELECT id,role_name,role_desc FROM test_sys_role WHERE id=? >>直接在表名前面加上了前缀
13. Druid 的整合
>> 坐标依赖引用
>> 配置文件中对druid的配置(2种方法均可,推荐第2种)
14.SSMP整合
>> 导包:在新建工程时,可以钩选 spring-boot framework 和 mysqldriver依赖;
手动导入 mybatis-plus 、druid、lombok
>> 参数配置
1 server: 2 port: 80 //端口配置 3 spring: 4 datasource: 5 druid: 6 driver-class-name: com.mysql.cj.jdbc.Driver 7 url: jdbc:mysql://localhost:3306/test?serverTimezone=UTC 8 username: root 9 password: 123456 10 mybatis-plus: 11 global-config: 12 db-config: 13 table-prefix: tbl_ 14 id-type: auto //对于自增长字段,mybatis-plus中存在几种算法,若使用数据库的自增长,则直接配置 auto 即可 15 16 configuration: 17 log-impl: org.apache.ibatis.logging.stdout.StdOutImpl //mybatis-plus的日志开启
>> 分页配置:
*> 配置拦截器
*> 配置拦截器以后,可以达到分页的效果
15.条件查询
16. 业务层的快速开发(Service层)
>> Service接口的开发:
1 public interface BookService extends IService<Book> { 2 }
>> Service实现类的开发:
1 @Service 2 public class BookServiceImpl extends ServiceImpl<BookDao, Book> implements BookService { 3 }
17.表现层开发注意内容
18. 表现层数据格式的统一
>> 在数据返回时,一般情况下会出现如下返回结果
>>统一格式
标签:SpringBoot,配置,MyBatis,plus,mybatis,role,id 来源: https://www.cnblogs.com/jieling/p/16492247.html