简单点说,就是通过数据库中的表,自动生成java代码。
Mybatis官方提供了逆向工程,可以针对表自动生成mybatis代码(mapper.java\mapper.xml\po类)
设置三个地方
最终生成:
Mybatis中什么时候应该声明jdbcType?
当Mybatis不能自动识别你传入对象的类型时。
什么情况下,Mybatis不能自动识别我的传入类型?
例如:当你传入空值的时候。
导入到SSM工程中
控制器
1、可以根据id查询
2、可以根据姓名查询
3、可以根据名字模糊查询
UserExample为包装类:
Criteria
Criteria包含一个Cretiron的集合,每一个Criteria对象内包含的Cretiron之间是由AND连接的,是逻辑与的关系。
oredCriteria
Example内有一个成员叫oredCriteria,是Criteria的集合,就想其名字所预示的一样,这个集合中的Criteria是由OR连接的,是逻辑或关系。oredCriteria就是ORed Criteria。
其他
Example类的distinct字段用于指定DISTINCT查询。
orderByClause字段用于指定ORDER BY条件,这个条件没有构造方法,直接通过传递字符串值指定。
Criteria为条件类
案例:
第一个参数是更新的对象
第二个参数是更新的条件
int updateByExampleSelective(@Param(“record”) User record, @Param(“example”) UserExample example);
int updateByExample(@Param(“record”) User record, @Param(“example”) UserExample example);
例子:将含“小”字和含“北”字的数据更新