- 博客(11)
- 收藏
- 关注
原创 SpringBoot自动装配底层原理
可以将其中的类添加给IOC容器管理,这里添加了AutoConfigurationImportSelector.class。configurations和exclusions,通过名字可以判断出configurations集合就是关键。可以看到该方法返回的是autoConfigurationEntry.getConfigurations()可以看到它除了常规注解外,多了两个@AutoConfigurationPackage和@Import注解。那么关键就在@Import这个注解,我们先看看下这个注解的作用。
2024-06-28 18:46:24
688
原创 SpringCache技术简述
Spring提供的缓存框架可以提供基于注解的缓存功能,底层可以切换不同的缓存技术:EHCache、Caffeine、Redis。
2024-06-03 16:40:17
216
1
原创 代码优化——缓存菜品
此时如果数据库更改了数据,但是redis缓存中没有修改为最新数据,由于用户访问还是会先访问redis且其中也存在数据,则会访问到旧的错误数据。这就导致了数据一致性的问题。思路:当管理端增、删、改数据操作时将redis中所有缓存删除,这样下次用户第一次查询时会直接访问数据库,并将数据库中数据缓存到redis。这样访问热点数据时先去redis中查找,如果存在则返回,如果不存在再访问数据库并将数据缓存到redis。1、增量同步:数据库增删改什么数据,redis就增删改什么数据。Controller层。
2024-06-03 15:16:22
249
原创 微信登录功能
创建请求携带的map,其中携带小程序授权码、密钥、用户授权码、固定的grant_type : authorization_code。2、远程请求微信的服务器,携带参数:小程序ID、密钥、授权码、authorzation_code。3、使用HttpClient请求方式,将微信服务器请求路径和请求携带参数用Get方式发送请求。6、如果存在说明是老用户,直接返回查找到的数据。4、获取响应回来的json字符串,解析得到里面的OpenId,这是每个用户独有的标识。1、用户登录时会将当前用户的授权码传递到后端。
2024-06-03 11:05:03
199
原创 苍穹外卖—学习记录day03
/1、设置一个value用来区分是什么操作添加@Target设置该注解标记的位置在方法上添加@Retention设置注解生效范围OperationType value() 表示设置注解的值为OperationType类型,之后切面类可以通过该值判断是对什么连接点进行操作。
2024-06-03 08:36:08
1280
原创 苍穹外卖—学习记录day02
Service层:由于DTO主要是做各层之间传输数据使用,现在需要将传入的数据交给Mapper插入到数据库中,因此Service这里处理EmployeeDTO转为Entity类的Employee并补全属性,再调用Mapper层的save方法。Controller层:前端传输的JSON格式数据,使用EmployeeDTO接收,注意添加@RequestBody,接着调用Service层的 save方法。2.调用PageHelper的startPage方法传入 分页查询的页码 和 每页记录数。
2024-05-23 10:34:08
708
原创 苍穹外卖—学习记录day01
该文章仅用于私人学习记录笔记——2024.05.20主要内容:1、前后端及数据库的搭建2、登录功能的实现3、拦截器的实现4、密码的MD5加密5、Nginx初试6、Swagger接口文档工具初试
2024-05-20 15:21:35
1966
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人