动态SQl

Mybatis_动态sql_2_mybatis
Mybatis_动态sql_2_xml_02


文章目录


1.where

DynamicSqlMapper.xml

    

DynamicSqlMapper接口
Mybatis_动态sql_2_动态sql_03
这个where是为了使得后面的语句可以执行或者后面的语句发生错误的话可以正常执行
1.如果后面的语句执行不了的话会去掉where
2.如果后面的语句可以执行的话会添加where
3.可以去掉语句前方多余的and,但是不可以去掉尾部的and,可以用下面的trim

2.trim

DynamicSqlMapper.xml

    

接口
Mybatis_动态sql_2_动态sql_04
test

    @Test
public void test4()throws Exception{
SqlSessionFactory sqlSesiionFactory = getSqlSesiionFactory();
SqlSession openSession = sqlSesiionFactory.openSession();
DynamicSqlMapper mapper = openSession.getMapper(DynamicSqlMapper.class);
List zzz = mapper.getEmp(new Emp("Zzz", null, null, null, null));
zzz.forEach(emp -> System.out.println(emp));
}

Mybatis_动态sql_2_xml_05

可以用prefix和suffixOverrides,去掉尾部的and