[mybatis]动态sql_内置参数_parameter_databaseid
生活随笔
收集整理的這篇文章主要介紹了
[mybatis]动态sql_内置参数_parameter_databaseid
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
mybatis內(nèi)置參數(shù)
mybatis默認(rèn)還有兩個(gè)內(nèi)置參數(shù):
-
_parameter;代表整個(gè)參數(shù)
-
單個(gè)參數(shù):_parameter就是這個(gè)參數(shù)
-
多個(gè)參數(shù):參數(shù)會(huì)被封裝為一個(gè)map; _parameter就是代表這個(gè)map
-
-
_databaseId;如果配置了DatabaseIdProvider標(biāo)簽
- _databaseId就是代表當(dāng)前數(shù)據(jù)庫(kù)的別名
配置DatabaseIdProvider標(biāo)簽
在配置文件中配置
<databaseIdProvider type="DB_VENDOR"><property name="MySQL" value="mysql"/><property name="Oracle" value="oracle"/></databaseIdProvider> public List<Employee> getEmpsTestInnerParameter(Employee employee); <!-- public List<Employee> getEmpsTestInnerParameter(Employee employee);--> <select id="getEmpsTestInnerParameter" resultType="com.atguigu.mybatis.bean.Employee"> <!--<bind name = "_lastName" value = "'%'+lastName+'%'"/>--> <if test = "_databaseId=='mysql'">select * from tb1_employee<if test = "_parameter!=null">where last_name like #{_parameter.lastName}</if> </if><if test = "_databaseId == 'oracle'">select * from employees<if test = "_parameter!=null">where last_name like #{_parameter.lastName}</if></if></select> @Testpublic void test04() throws IOException {SqlSessionFactory sqlSessionFactory = getSqlSessionFactory();SqlSession sqlSession = sqlSessionFactory.openSession();try{EmployeeMapperDynamicSQL mapper = sqlSession.getMapper(EmployeeMapperDynamicSQL.class);Employee employee = new Employee();employee.setLastName("%a%");List<Employee> emps = mapper.getEmpsTestInnerParameter(employee);for (Employee e : emps){System.out.println(e);}}finally {sqlSession.close();}}總結(jié)
以上是生活随笔為你收集整理的[mybatis]动态sql_内置参数_parameter_databaseid的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 华硕天选Air拆机评测华硕电脑如何拆机
- 下一篇: [mybatis]逆向工程MGB基本编写