合集-Spring Boot

摘要:一、Class.forName("").newInstance(); 1. Class.forName( )静态方法的目的是为了动态加载类(初始化类)。在加载完成后,一般还要调用Class下的newInstance( )静态方法来实例化对象以便操作。因此,单单使用Class.forName( )是动 阅读全文
posted @ 2018-06-23 19:27 yifanSJ 阅读(2008) 评论(0) 推荐(0) 编辑
摘要:陷阱一:不要只用readOnly=true @Transactional(readOnly = true) public TradeData getTrade(long tradeId) throws Exception { return em.find(TradeData.class, trade 阅读全文
posted @ 2018-06-25 23:28 yifanSJ 阅读(423) 评论(0) 推荐(0) 编辑
摘要:经过我之前的实践,可以看出 NESTED事务申明在调用者上会新建一个独立事务。申明在被调用者上,若调用者存在事务则加入调用者事务。调用者不存在事务则新建一个独立事务。 这个功能好像和spring默认的事务传播行为REQUIRED一样的? 不,它的功能可是比REQUIRED要强大! 我来通过实验证明N 阅读全文
posted @ 2022-05-31 15:53 yifanSJ 阅读(4019) 评论(0) 推荐(1) 编辑
摘要:一、什么是循环依赖 多个bean之间相互依赖,形成了一个闭环。 比如:A依赖于B、B依赖于c、c依赖于A 通常来说,如果问spring容器内部如何解决循环依赖, 一定是指默认的单例Bean中,属性互相引用的场景。也就是说,Spring的循环依赖,是Spring容器注入时候出现的问题。 二、Sprin 阅读全文
posted @ 2022-06-08 21:38 yifanSJ 阅读(717) 评论(0) 推荐(0) 编辑
摘要:一、自动配置原理 (一)引导加载自动配置类 @SpringBootConfiguration @EnableAutoConfiguration @ComponentScan(excludeFilters = {@Filter(type = FilterType.CUSTOM,classes = {T 阅读全文
posted @ 2022-03-18 16:34 yifanSJ 阅读(1425) 评论(0) 推荐(0) 编辑
摘要:List<SystemCodeDataDTO> systemCodeDataDTOList = Optional.ofNullable(data).map(JSON::parseArray).map(d -> d.toJavaList(SystemCodeDataDTO.class)) .map(L 阅读全文
posted @ 2019-02-12 14:04 yifanSJ 阅读(950) 评论(0) 推荐(0) 编辑
摘要:1、二者的区别 浅拷贝:在拷贝一个对象时,对对象的基本数据类型的成员变量进行拷贝,但对引用类型的成员变量只进行引用的传递,并没有创建一个新的对象,当对引用类型的内容修改会影响被拷贝的对象。 深拷贝:在拷贝一个对象时,除了对基本数据类型的成员变量进行拷贝,对引用类型的成员变量进行拷贝时,创建一个新的对 阅读全文
posted @ 2023-08-23 22:47 yifanSJ 阅读(3790) 评论(0) 推荐(0) 编辑
摘要:相关接口的分类 分类 接口 调用时间 工厂后处理器接口 BeanFactoryPostProcessor 容器创建完毕,装配Bean源后立即调用 容器后处理器接口 InstantiationAwareBeanPostProcessor 分别在调用构造之前,注入属性之前,实例化完成时调用 容器后处理器 阅读全文
posted @ 2023-08-23 22:30 yifanSJ 阅读(189) 评论(0) 推荐(0) 编辑
摘要:1. List哪些实现类 Java List一共三个实现类分别是ArrayList、Vector和LinkedList。 (1) ArrayList是最常见用的List实现类,内部是通过数组实现的,它允许对元素进行快速随机访问。数组的缺点是每个元素之间不能有间隔,当数组大小不满足时需要增加存储能力, 阅读全文
posted @ 2023-07-25 18:27 yifanSJ 阅读(88) 评论(0) 推荐(0) 编辑
摘要:1. 如何将1千万个数据加到List中 ArraysList可以存下,但是效率低,可以使用LinkedList。 2. 两个1千万List如何找到,A中有,但B中没有的元素。 可以将List转成HashSet,使用HashSet的retainAll方法。retainAll作用是保留集合中与另一个集合 阅读全文
posted @ 2023-07-25 18:25 yifanSJ 阅读(307) 评论(0) 推荐(0) 编辑
摘要:JDK动态代理:是Java标准库提供的一种动态代理实现方式,基于接口生成代理对象。使用Proxy类和InvocationHandler接口来创建代理对象,被代理的类必须实现接口。 CGlib动态代理:使用CGLib库实现,通过生成目标类的子类来创建代理对象。不需要目标类实现接口,可以直接代理普通类。 阅读全文
posted @ 2023-07-25 16:55 yifanSJ 阅读(233) 评论(0) 推荐(0) 编辑
摘要:SpringBoot自动化装配中,如果有两个AutoConfiguration,A依赖B,这时ConditionalOnBean如何保证顺序使需要的Bean会提前加载 使用@AutoConfigureAfter, 当几个组件加载完成后,再加载当前组件,如:Nacos服务注册自动配置类加载前需要加载: 阅读全文
posted @ 2023-07-23 18:26 yifanSJ 阅读(256) 评论(0) 推荐(0) 编辑
摘要:集合 复制到 集合 public static <T> List copyBeanList(List resourceList, Class<T> target) { List targetList = new LinkedList<>(); if (null == resourceList || 阅读全文
posted @ 2022-06-28 13:34 yifanSJ 阅读(318) 评论(0) 推荐(0) 编辑
摘要:一、数据库引擎不支持事务 这里以 MySQL 为例,其 MyISAM 引擎是不支持事务操作的,InnoDB 才是支持事务的引擎,一般要支持事务都会使用 InnoDB。从 MySQL 5.5.5 开始的默认存储引擎是:InnoDB,之前默认的都是:MyISAM,所以这点要值得注意,底层引擎不支持事务再 阅读全文
posted @ 2022-06-08 22:05 yifanSJ 阅读(1634) 评论(0) 推荐(1) 编辑
摘要:private ResultMsg stopSameForm(HttpServletRequest request, String user, String urlPath,String requestBody){ try{ urlPath=urlPath.toLowerCase(); if(!(u 阅读全文
posted @ 2023-10-27 08:28 yifanSJ 阅读(99) 评论(0) 推荐(0) 编辑
摘要:1、类注解 /** * 需要动态查询CodeTable数据字典时,在类上配置该注解 */ @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Documented public @interface CodeAnnotatio 阅读全文
posted @ 2023-11-10 16:48 yifanSJ 阅读(37) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示