- 博客(202)
- 资源 (3)
- 收藏
- 关注
原创 spring Bean生命周期 源代码分析 AbstractAutowireCapableBeanFactory createBean doCreateBean
spring Bean生命周期 源代码分析 AbstractAutowireCapableBeanFactory createBean doCreateBean (1)设置bean的BeanName、BeanClassLoader、BeanFactory; 方法是invokeAwareMethods (2)初始化前置处理, 方法是applyBeanPostProcessorsBeforeInitialization (3)具体初始化, 方法是invokeInitMethods; 判断是否自定义初
2024-02-08 15:52:05 464 1
原创 @Autowired 和 @Resource 区别, 及参数说明
引用所指向的资源的名称。它可以使用全局JNDI名称链接到任何兼容的资源。对于方法注释,默认值是与该方法对应的JavaBeans属性名。默认值:java.lang.Object.class。可以向Deployer提供描述,以帮助选择正确的资源。对于方法注释,默认值是JavaBeans属性的类型。对于类注释,没有默认值,必须指定该值。对于类注释,没有默认值,必须指定该值。对于字段注释,默认值为字段的类型。对于字段注释,默认值为字段名称。声明是否需要带注释的依赖项。资源的Java类型。资源的身份验证类型。
2024-01-29 16:50:36 533
原创 Redis 数据的持久化 RDB、AOF、RDB + AOF、No persistence 各自优缺点
Redis持久化选项有4种RDB (Redis Database) 以指定的时间间隔进行数据的快照备份。AOF (Append Only File) 记录更改数据的命令(例如SET), 然后在重启时再次执行这些命令,从而恢复数据。RDB + AOF 组合使用No persistence 禁用持久化
2023-12-07 15:11:29 329
原创 模版模式 设计模式
**case "Simlpe" : //可以利用一些获取Bean的工具获取, 避免new //SpringApplicationUtil.getBean(SimlpeOrder.class);} } /*** 检查参数/*** 获取商品/*** 扣减库存/*** 扣减积分/*** 保存订单/*** 执行模版/**
2023-11-22 14:26:17 466
原创 抽象工厂模式
个人理解,抽象工厂目的和简单工厂大体相同,都是在于业务执行器的选择,也就是if else 的处理, 抽象工厂是一个。在的下单业务中,对于不同的类型的商品(鞋子、帽子),包含南方、北方生产厂商, 两个厂商都可以生产鞋子、帽子。继承AbstractOrder, 实现厂商下单逻辑, 同时也可以调用父级AbstractOrder的公共方法。当生产厂商、商品类型更多的时候,添加实现类,能够利用拆分不同的下单业务,约束接口, 抽取公共方法,统一参数等。可以获取厂商&商品类型的实例, 也可以获取商品类型的实例;
2023-11-21 15:05:27 512
原创 简单工厂模式
在的下单业务中,对于不同的类型的商品(鞋子、帽子),需要处理的下单业务部分相同,部分不同这时候可以利用简单工厂模式,依据不同的商品类型,`调用不同的处理器,进行下单`1.定义 `抽象类 AbstractOrder` 定义声明下单方法, 实现公共下单逻辑; 提供获取对应商品类型的实例 `HatOrder(帽子业务)`、 `ShoeOrder(鞋子业务)`2.定义 实现类 HatOrder(帽子)、 ShoeOrder(鞋子)继承AbstractOrder, 实现下单逻辑, 同时也可以调用父级Abstr
2023-11-20 17:21:49 270
原创 设计模式 实践案例
1.简单工厂 (一)https://preparedata.blog.csdn.net/article/details/132878013
2023-11-20 16:34:51 229
原创 HTTP RESTFul RPC
RPC的实现可以基于TCP协议,也可以基于HTTP协议。在基于TCP协议的情况下,服务的调用方和提供方需要建立Socket连接,然后调用方通过Socket将需要调用的接口名称、方法名称和参数序列化后传递给提供方。http是TCP的上层协议。
2023-09-12 16:01:48 971
原创 spring cloud、gradle、父子项目、微服务框架搭建---cloud gateway(十)
spring cloud、gradle、父子项目、微服务框架搭建---cloud gateway
2023-09-08 15:56:46 706
原创 spring cloud、gradle、父子项目、微服务框架搭建---spring secuity oauth2、mysql 授权(九)
spring secuity oauth2 + mysql 授权
2023-08-29 15:08:56 539
原创 spring自定义线程池 逻辑 配置 ThreadPoolTaskExecutor corePoolSize maxPoolSize queueCapacity rejectedExecutionHa
spring自定义线程池 逻辑 配置 ThreadPoolTaskExecutor corePoolSize maxPoolSize queueCapacity rejectedExecutionHandler
2023-07-05 09:59:02 2490
原创 Java 自定义注解, 以及@interface @Target @Retention @Around @Before @After ProceedingJoinPoint JoinPoint 等用法
Java 自定义注解, 以及@interface @Target @Retention @Around @Before @After ProceedingJoinPoint JoinPoint 等用法
2023-06-26 15:33:12 1103
原创 RabbitMQ 管理端页面中 批量删除exchanges、queues
RabbitMQ 管理端页面中 批量删除exchanges、queues
2023-05-12 15:53:51 1105 1
原创 Throwable、Error、Exception 运行时异常、非运行时异常
Throwable、Error、Exception 运行时、非运行时
2023-05-06 17:22:39 912
原创 mysql mybaits的update语句执行, 自定义返回值, 借助变量和<selectKey>
mysql、mybaits的update语句执行, 自定义返回值, 借助变量、
2023-04-19 11:32:15 1094
原创 JAVA 使用@Async、Future、AsyncResult处理异步返回结果, 类似C# Task await功能
JAVA 使用@Async、Future、AsyncResult处理异步返回结果, 类似C# Task await功能
2023-04-03 10:34:47 2261
原创 spring cloud、gradle、父子项目、微服务框架搭建---配置apollo(八)
spring cloud、gradle、父子项目、微服务框架搭建---配置apollo,部署apollo,apollo应用
2023-02-08 15:14:38 720
原创 spring cloud、gradle、父子项目、微服务框架搭建---rabbitMQ延时队列(七)
spring cloud、gradle、父子项目、微服务框架搭建---rabbitMQ延时队列
2023-01-12 14:57:33 592
原创 spring cloud、gradle、父子项目、微服务框架搭建---配置spring-cloud-stream,rabbitMQ(六)
配置spring-cloud-stream,rabbitMQ
2023-01-11 16:52:39 502
原创 spring cloud、gradle、父子项目、微服务框架搭建---配置Redis,引入StringRedisTemplate(五)
spring cloud、gradle、父子项目、微服务框架搭建---配置Redis,引入StringRedisTemplate
2023-01-09 11:44:56 553
原创 spring cloud、gradle、父子项目、微服务框架搭建---引入MyBatis-Plus(四)
spring cloud、gradle、父子项目、微服务框架搭建---引入MyBatis-Plus
2022-12-29 11:50:33 1033
原创 spring cloud、gradle、父子项目、微服务框架搭建---微服务相互之间的接口调用,openfeign的使用(三)
多个微服务使用feign功能来简化相互之间调用过程
2022-10-17 15:39:43 1189 1
原创 AES AES/CBC/PKCS5Padding模式 128位秘钥长度和向量长度
AES是一种对称加密技术 即加密密钥和解密密钥相同在密码学中又称Rijndael加密法,AES/CBC/PKCS5Padding模式,128位秘钥长度和向量长度
2022-09-13 11:49:02 7816 2
原创 树、二叉树、斜树、满二叉树、完全二叉树、二叉排序树、平衡二叉搜索树(AVL树) 、哈夫曼树(Huffman tree)、B树、B+Tree、B*树
树、二叉树、斜树、满二叉树、完全二叉树、二叉排序树、平衡二叉搜索树(AVL树) 、哈夫曼树(Huffman tree)、B树、B+Tree、B*树
2022-09-06 15:15:21 738
原创 TransactionSynchronizationManager 事务同步管理器 TransactionSynchronizationAdapter afterCommit 的用法
TransactionSynchronizationManager 事务同步管理器 TransactionSynchronizationAdapter afterCommit 的用法
2022-09-02 14:03:03 2211
原创 StringRedisTemplate、opsForValue、setIfAbsent、setIfPresent、getAndSet、increment、decrement用法
StringRedisTemplate、opsForValue、setIfAbsent、setIfPresent、getAndSet、increment、decrement用法
2022-08-09 16:51:29 4673
原创 Java 创建事件Event、事件监听EventListener、事件发布publishEvent
个人认为,事件机制一般可由:事件源source,事件对象Event,事件监听EventListener,事件发布publishEvent组成事件源:引起事件发生的源; User用户信息, Order订单信息等为事件源数据,User登录状态loginStatus引起的事件, Order状态status引起的事件事件对象:继承ApplicationEvent,事件对象包含事件源,事件对象也就是要被监听的对象; UserEvent, OrderEvent为事件对象,事件监听:监听事件对象,事件对象被发布触发
2022-07-01 17:18:55 4571
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人