一、添加用户
parameterType:指定输入的参数类型是pojo(包括用户信息)
#{}:中指定pojo的属性名,接收到pojo对象的属性值。mybatis通过OGNL获取对象的属性值
自增主键返回:
mybatis自增主键,执行insert提交之前自动生成一个自增主键,通过mysql函数获取到刚插入记录的自增主键
LAST_INSERT_ID()
得到刚insert进去记录的主键值,只适用与自增主键。此函数是在insert函数之后调用的
keyProperty:将查询到主键值设置到parameterType指定的对象的那个属性
order:select LAST_INSERT_ID()执行顺序,相对于insert语句来说它的执行顺序(是在insert语句执行之前还是在insert语句行之后)
resultType:指定select LAST_INSERT_ID()的结果类型
非自增主键的返回(适用UUID)
适用mysql的uuid()函数生成主键,需要修改表中id字段类型为String,长度设置为35位,
执行的思路:
先通过uuid()查询主键,将主键输入到sql语句中
执行uuid()语句顺序是:相对于insert是之前执行
执行过程:首先通过uuid()得到主键,将主键设置到实体对象(user)的id属性中,其次在insert执行时,从实体对象中取出id属性值。
二、查询用户
id:标识映射文件中的sql,称为statement的id
parameterType:指定输入参数的类型,这里指定int类型
resultType:指定sql输出结果所映射的JAVA对象类型, select指定resultType表示将单条记录映射成JAVA对象。
#{}表示一个占位符号。接收输入参数,类型可以是简单类型。如果接收简单类型,#{}中可以写成value或其他名称。
${}:表示一个拼接符号,将接收到参数的内容不加任何修饰拼接到sql中。接收输入参数,类型可以是简单类型。如果接收简单类型,${}中只能写成value
注意:#{}和${}接收pojo对象值,通过OGNL读取对象中的属性值,通过属性.属性.属性……的方式获取对象属性值。
三、删除用户
在XXXmapper.xml中写入sql语句
parameterType:输入参数的值类型为"java.lang.Inger"
四、根据id更新用户:
分析:
需要传入用户的id;
需要传入用户的更新信息
parameterType:指定user对象,包括id和更新信息,注意id必须存在。
#{id}:从输入user对象中获取id属性值。parameterType=“com.itheima.gz.User”