mybatis
文章平均质量分 66
mybatis
不想看JAVA
这个作者很懒,什么都没留下…
展开
-
【mybatis】mybatis对象工厂ObjectFactory,自定义创建实体对象
super.create(type) 只负责通过无参构造创建一个空对象,属性在这个阶段并没有初始化。log . info("{} 开始调用无参构造器创建对象..." , type . getName()) T t = super . create(type);log . info("{} 已通过无参构造器创建对象:{}" , type . getName() , t) // 判断当前是否为User类型,如果是,则初始化年龄 if(User . class . equals(type)) {原创 2023-04-10 17:38:40 · 233 阅读 · 0 评论 -
【mybatis】mybatis自定义类型处理器,自定义TypeHandler接口
/ PreparedStatement参数设置时,将JSON转为JSONString ps . setString(i , parameter . toJSONString());如果在UserDao.xml中通过typeHandler指定了也不需要注册。在mybatis-config.xml配置文件中添加如下内容,注意添加顺序原创 2023-04-10 16:10:09 · 385 阅读 · 0 评论 -
【mybatis】mybatis-config.xml加载外部配置文件
通过propertis标签提取变量,为变量指定变量名,并通过 ${} 表达式引用变量</</</</原创 2023-04-10 10:14:27 · 376 阅读 · 0 评论 -
【mybatis】mybatis多对一、一对多查询
由于开启了延迟加载,如果我们debug可以发现,在执行departmentDao.findAll()方法后,departmentList 中的users属性都为null,执行了完userList.forEach(Systom.out::println)方法后,users中才有值。延迟加载方式只查询User信息,所有User查询完毕后根据user中的department_id再查询department。延迟加载需要通过fetchType参数开启,如果不开启的话,还是会一次性加载进内存。演示开启延迟加载方式。原创 2023-04-10 09:49:38 · 170 阅读 · 0 评论