spring框架+其他框架
spring框架+其他框架
DaiZZZZZ
java 工程师
展开
-
mybatis 程序启动失败
问题描述添加了xml文件,但没有写对应的接口,程序 启动发生 空指针异常。分析mybatis初始化,为xml中的可执行标签(select、update)寻找对应的接口,没找到则保存。而接口没有特定的xml实现或注解实现,却只会在代码执行时才保存。...原创 2020-03-06 19:27:32 · 339 阅读 · 0 评论 -
Mybatis获取插入记录的自增长ID
1.在Mybatis Mapper文件中添加属性“useGeneratedKeys”和“keyProperty”,其中keyProperty是Java对象的属性名,而不是表格的字段名。[html] view plain copy print?insert id="insert" parameterType="Spares"转载 2017-04-08 15:03:59 · 473 阅读 · 0 评论 -
Springboot 配置注入校验(参数校验 类似)
实现效果通过org.springframework.boot.context.properties.ConfigurationProperties注入配置,并校验配置的正确性。方法组织结构: A 持有 B类型的 成员变量 b。在A上加ConfigurationProperties注解注入配置在A上加org.springframework.validation.annotation.Validated,启用校验在A中的成员b上 加注解javax.validation.Valid,启用嵌套校验在原创 2020-12-17 11:37:59 · 306 阅读 · 0 评论 -
mybatis-plus + dynamic-datasource-spring-boot-starter 遇到的问题
背景springboot项目,使用ORM层面使用 mybatis-plus,并且集成了 dynamic-datasource-spring-boot-starter 实现多个数据源的切换。问题描述yml文件中 按照格式 配置了2个数据库 ds1、ds2 ,在Mapper接口 标记上 @DS(“ds2”),但实际执行时,却使用了 ds1的数据库,导致了sql报错。原因分析经过调试发现,获取数据库链接的 调用链路大致如下org.springframework.jdbc.datasource.Dat原创 2020-10-17 15:54:50 · 2201 阅读 · 0 评论 -
mybatis 缓存 造成数据加锁失败
问题描述在事务中,为保证数据的唯一性,按以下步骤执行:给字段加唯一索性先条件查询没有则尝试insert如果insert失败,说明其他事务已经成功insert。则执行select for update锁住记录,再进行更新。但从执行的结果来看,第4步的select for update加锁失败了,造成了数据并发更新的问题。问题原因打开debug日志,再执行select for up...原创 2019-09-28 15:50:12 · 473 阅读 · 0 评论 -
ConfigurationProperties与 lombok的注解 编译时 栈溢出
在执行 ./gradlew assemble时 ,出现了java.lang.StackOverflowError的异常。启用 --stacktrace参数,异常栈如下> java.lang.StackOverflowError* Try:Run with --info or --debug option to get more log output. Run with --scan ...原创 2019-09-26 18:54:18 · 1046 阅读 · 0 评论 -
Spring源码梳理
ioc容器的初始化核心方法是 AbstractApplicationContext#refresh(),调用了抽象方法AbstractApplicationContext#refreshBeanFactory(),由改方法完成ioc容器的初始化工作。如果是XmlWebApplicationContext ,则会使用XmlBeanDefinitionReader类来实现从xml中读取、解析bean的定义信息。以XmlWebApplicationContext为例,BeanDefinition的定位、加载、原创 2020-06-20 12:21:13 · 179 阅读 · 0 评论