目录
3.BaseMapper - IService - ServiceImpl
1.今天所学内容摘要:
Lombok:
JWT:
定义了一种简洁的、自包含的格式,用于在通信双方以ison数据格式安全的传输信息。由于数字签名的存在,信息是可靠的
1.依赖导入 <groupld>io.jsonwebtoken</groupld> <artifactld>jjwt</artifactld> <version>0.9.1</version> 2.生成JWT令牌 Calendar instance = Calendar.getInstance(); instance.add(Calendar.SECOND, 600); // Token 过期时间为 600s String jwt = Jwts.builder() .signWith("SignatureAlgorithm.HS256", "T4mako")//签名算法 .setClaims(map)//自定义内容 载荷 .setExpiration(new Date(System.currentTimeMillis() + 3600*1000);//设置有效日期 .compact(); //输出令牌 System.out.println(jwt); 3.解析令牌 Claims claims = jwts.parser() .setSigningKey("T4mako")//指定签名密钥 .parseClaimsjws(令牌)//解析令牌 .getBody(); System.out.println(claims)
SpringBoot:
1.基础配置
//修改服务器端口 server.port=80 //关闭运行日志图标(banner) spring.main.banner-mode=off //设置日志相关 logging.level.root=debug
地址:Common Application Properties
2.自定义对象封装指定数据
1.在yml配置文件中配置数据 enterprise: name: itcast age: 18 subject: - Java - 前端 2.自定义类封装数据 @Component @ConfigurationProperties(prefix = "enterprise") public class Enterprise{ private String name; private Integer age; private String[] subject; }
注意:
-
使用@ConfigurationProperties注解绑定配置信息到封装类中
-
绑定前缀名命名规范:仅能使用纯小写字母、数字、下划线作为合法的字符
-
封装类需要定义为Spring管理的bean,否则无法属性注入;即配置@Component注解
-
@EnableConfigurationProperties注解可以将使用@ConfigurationProperties注解对应的类加入Spring容器(配置启动类上)
-
@EnableConfigurationProperties与@Component不能同时使用
-
如果报错导入依赖spring-boot-configuration-processor
3.整合JUnit
@SpringBootTest //测试类注解 @SpringBootTest(classes = Springboot05JunitApplication.class) class Springboot07JunitApplicationTests {}
注意:
-
classes设置SpringBoot启动类
-
如果测试类在SpringBoot启动类的包或子包中,可以省略启动类的设置,也就是classes的设定
4.整合MyBatis & 整合Druid
//yml配置 spring: datasource: druid: driver-class-name: url: username: password:
注意:
-
MySQL8.X驱动强制要求设置时区;修改url,添加?serverTimezone设定即可
-
驱动类过时,需要更换为com.mysql.cj.jdbc.Driver
5.整合MyBatis-Plus
1.配置文件
//配置文件 mybatis-plus: global-config: db-config: table-prefix: tab1_ //配置表前缀 id-type: auto //配置ID生成方式(默认为雪花算法) configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl //设置MP调式日志,显示
2.MP分页拦截器
//使用MP分页时需配置分页拦截器 @Configuration public class MyBatisPlusConfig { @Bean public MybatisPlusInterceptor mybatisPlusInterceptor(){ MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor(); mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor()); return mybatisPlusInterceptor; } }
3.BaseMapper - IService - ServiceImpl
//数据层开发 public interface BookMapper extends BaseMapper<Book> {} //业务层开发 public interface BookService extends IService<Book> {} //实现类 @Service public class BookServiceImpl extends ServiceImpl<BookDao,Book> implements BookService
2.所遇到的问题描述:
3.扩展学习部分:
4.学习总结:
-
今天学习了SpringBoot2的相关内容,也学习了JWT令牌的相关内容;对于SpringBoot2的相关内容几乎都是复习式的学习,无论是整合JUint还是整合MyBatis亦或者是整合MyBatisPlus都是学习过的,在做项目的时候也会常用到的,但是项目中练习时总不会刻意去学习这些内容,这次也算是巩固一下,对于MyBatisPlus的使用是较为重要的需要常用,JWT在项目中也会用到,需要记忆;今天学习状态不好,快放假了,嘿嘿