mybatis
mybatis
java后端指南
公众号:java后端指南
展开
-
mybatis的javabean映射流程以及需要哪些构造函数
1、首先回去找javabean中是否用无参构造,如果有就直接用无参构造2、否则就找有参构造,如果只有一个有参构造,则直接用这个有参构造;如果有多个有参构造则会去找全参构造,如果找到就用全参构造,否则就找不到报错。private Constructor<?> findDefaultConstructor(final Constructor<?>[] constructors) { if (constructors.length == 1) { return原创 2022-05-29 18:03:32 · 448 阅读 · 0 评论 -
mybatis-plus的入门学习
环境IDEAspringbootmavenmysql5.7开始1.首先需要准备一张表userCREATE TABLE user( id BIGINT(20) NOT NULL COMMENT '主键ID', name VARCHAR(30) NULL DEFAULT NULL COMMENT '姓名', age INT(11) NULL DEFAULT NULL COMMENT '年龄', email VARCHAR(50) NULL DEFAULT NULL COMMENT '原创 2020-10-20 14:48:45 · 694 阅读 · 2 评论 -
collection属性
推荐:https://www.cnblogs.com/heliusKing/p/11173362.html原创 2020-08-02 16:24:36 · 774 阅读 · 0 评论 -
association标签常用的属性和作用是什么?
Association:处理单一的关联对象 处理单一属性的关联关系property:注入给员工中哪个属性select:发送哪一条sql语句javaType:把sql语句查询出的结果集,封装给哪个类的对象(可以省略)column:查询员工的结果集中,用哪个列的值作为条件去查询关联的对象column作为select查询条件的参数...原创 2020-08-02 16:09:04 · 5643 阅读 · 0 评论 -
mybatis入门配置
pom.xml:<dependencies> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.6</version> </dependency> &l原创 2020-08-02 15:14:37 · 102 阅读 · 0 评论 -
typeAliases和package标签的用法
<typeAliases> <!--用于指定别名--> <!--<typeAlias type="com.wance.entity.Person" alias="Person"/>--> <!--用于指定注册别名的包,当指定后,该包下的实体类都会注册别名,并且类名就是别名,--> <!--不再区分大小写--> <package name="com.w.原创 2020-08-02 14:54:43 · 879 阅读 · 0 评论 -
MyBatis核心配置文件mybatis-config.xml中配置mappers的几种方式
1.resources方式这种方式,PersonMapper.xml文件可以直接放在resources目录下面 <mappers> <mapper resource="PersonMapper.xml"/> </mappers>2.class方式这种方式,PersonMapper.xml的文件目录要和PersonMapper.java的目录结构相同,否则访问不了 <mappers> <mapper cla原创 2020-08-01 22:10:15 · 2442 阅读 · 0 评论 -
mybatis分步查询
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><!--namespace命名空间mapper方式下,必须为mapper接口的长类名--><mapper namespace="com.wance.map原创 2020-07-25 20:56:16 · 352 阅读 · 0 评论 -
mybatis 动态sql标签
public interface AnimalDynamicMapper { //如果年龄为0,and性别为""或null,则不纳入查询条件 List<Animal> findByAgeAndSexOptional(@Param("age") int age,@Param("sex") String sex); //如果年龄为0,或性别为""或null,则不纳入查询条件 List<Animal> findByAgeOrSexOptional(@Para原创 2020-07-25 20:50:26 · 219 阅读 · 0 评论 -
mybatis多入参方法
文章目录一、通过下标入参,需要注意的是第一个参数下标为0二、通过dao方法中@param注解入参三、通过list集合入参四、通过map集合入参五、最好用的方式一、通过下标入参,需要注意的是第一个参数下标为0dao方法public List<T_user> queryT_userByPage(String page,String pageSize);xml中: <select id="findAgeAndSex" resultType="Animal">原创 2020-07-25 20:47:44 · 239 阅读 · 0 评论 -
mybatis步骤
pom.xml: <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope>.原创 2020-07-25 20:13:46 · 106 阅读 · 0 评论 -
mybatis查询缓存
文章目录Mybatis的缓存理解一级缓存二级缓存开启二级缓存开关序列化禁用缓存. 只能禁用二级缓存刷新缓存清除二级缓存的方式Mybatis的缓存理解Mybatis的缓存,包括一级缓存和二级缓存一级缓存(连接内缓存—内存)指的就是sqlsession,在sqlsession中有一个数据区域,是map结构,这个区域就是一级缓存区域。一级缓存中的key是由sql语句、条件、statement等信息组成一个唯一值。一级缓存中的value,就是查询出的结果对象。“ Sql+?参数值”二级缓存(跨连接缓存-原创 2020-07-21 21:57:26 · 363 阅读 · 0 评论 -
延迟加载
原创 2020-07-21 20:31:46 · 121 阅读 · 0 评论 -
mybatis表关系映射
Movice.java:public class Movice { private int mid; private String mname; private MoviceType moviceType; public Movice(int mid, String mname, MoviceType moviceType) { this.mid = mid; this.mname = mname; this.moviceT原创 2020-07-21 20:29:16 · 547 阅读 · 0 评论 -
mybatis多表查询概念
一对多:多对多:原创 2020-07-20 22:43:28 · 103 阅读 · 0 评论 -
mybatis返回值类型分析(resultMap)
返回值是resultMap,解决实体类字段名和数据库字段名不一样的问题,但是用取别名的方式是最快的配置文件需要做一下改造 <!--如果实体类中的字段和数据库中的字符名不相同,可以通过取别名或者通过下面这个方法解决--> <resultMap id="userMap" type="com.wance.model.entity.User"> <!--主键字段对应--> <!--property为实体类字段,column为数据库原创 2020-07-19 20:24:18 · 730 阅读 · 0 评论 -
OGNL表达式
例子:QueryVo.java:package com.wance.model.entity;public class QueryVo { private User user; public QueryVo() { } public QueryVo(User user) { this.user = user; } public User getUser() { return user; } pu.原创 2020-07-19 19:50:31 · 101 阅读 · 0 评论 -
mybatis新增标签返回id值
配置文件: <insert id="insert" parameterType="com.wance.model.entity.User"> <!--配置插入数据后,获取插入数据的id --> <selectKey keyProperty="id" keyColumn="id" resultType="int" order="AFTER"> select last_insert_id(); &l.原创 2020-07-19 19:22:21 · 178 阅读 · 0 评论 -
mybatis里面模糊查询语句对比
第二种语句更好,可以防止sql注入原创 2020-07-19 19:06:20 · 107 阅读 · 0 评论 -
mybatis的CRUD操作
UserDao.java:public interface UserDao { //查询所有信息 List<User> findAll(); //通过id查询 User getById(int id); //插入数据 void insert(User user); //修改 void update(User user); //删除 void deleteUserByid(int id); //查询原创 2020-07-19 17:33:11 · 161 阅读 · 0 评论 -
mybatis原理
原创 2020-07-19 17:27:32 · 80 阅读 · 0 评论 -
用注解来配置mybatis
文章目录原理分析:接口方法使用注解方式:UserDao.java:public interface UserDao { //查询所有信息 @Select("select * from user") List<User> findAll();}主配置文件(需要将recourse变成class):<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC "-//原创 2020-07-19 16:08:06 · 274 阅读 · 0 评论 -
mybatis入门程序
主程序配置:SqlMapConfig.xml:<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><!--mybatis主配置文件--><configuration> <原创 2020-07-18 19:03:43 · 245 阅读 · 0 评论 -
idea搭建mybatis注意事项
原创 2020-07-18 18:28:03 · 126 阅读 · 0 评论