mybatis传递多个参数_MyBatis 映射器
ps 一個用于生成MyBatis配置文件的插件 mybatis-generator
使用方法呢, 是加入maven插件中 然后執行相關命令可以實現自動生成MyBatis配置文件
自動映射
首先編寫無參的javabean
package com.ming.MyBatis.POJO;/** * @author ming */public class Role { private int id; private String roleName; private String note; public Role(){ } /** * @param id */ public void setId(int id) { this.id = id; } /** * @param roleName */ public void setRole_name(String roleName) { this.roleName = roleName; } /** * @param note */ public void setNote(String note) { this.note = note; } /** * @return */ public int getId() { return id; } /** * @return */ public String getRoleName() { return roleName; } /** * @return */ public String getNote() { return note; }}然后創建數據庫這次使用的是開發環境創建的數據庫
數據庫類型如下
編寫映射文件
SELECT id, role_name as roleName, note FROM t_role WHERE id = #{id}此時結果會自動映射到VO對象中,根據VO對象自動調用set方法,然后進行賦值操作
此時DAO層接口
/** * @param id * @return */ public Role getRole(int id);傳遞多個參數
如果需要傳遞多個參數,使用MyBatis提供的Map接口
首先新增加DAO層接口
/** * 查詢Map * @param params * @return */ public List findRoleByteMap(Map params);接著,書寫映射文件,傳遞參數
SELECT id, role_name, note FROM t_roleWHERE role_name LIKE CONCAT('%', #{roleName}, '%')AND note LIKE CONCAT('%', #{note}, '%')這里呢,定義了一個結果集
對于返回的數據,使用typehand進行攔截,將會調用自定義別名的role類
現在的完整文件
<?xml version="1.0" encoding="UTF-8" ?>SELECT id, role_name as roleName, note FROM t_role WHERE id = #{id}SELECT id, role_name, note FROM t_roleWHERE role_name LIKE CONCAT('%', #{roleName}, '%')AND note LIKE CONCAT('%', #{note}, '%')<?xml version="1.0" encoding="UTF-8" ?>書寫結果展示
Hello World!
long startTime = System.currentTimeMillis(); //獲取開始時間
SqlSession sqlSession = null;
List role = null;
for(int i = 0; i < 10; i++) {
try {
sqlSession = SqlSessionFactoryUtil.openSqlSesion();
RoleMapper roleMapper = sqlSession.getMapper(RoleMapper.class);
Map paramsMap = new HashMap();
paramsMap.put("roleName
總結
以上是生活随笔為你收集整理的mybatis传递多个参数_MyBatis 映射器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vue 保留小数点厚一位_2019黑龙江
- 下一篇: html/css题库,DIV+CSS题库