【Mybatis 框架(自學)】Day02--2022/3/11
阿新 • • 發佈:2022-03-15
Map和模糊查詢拓展
萬能Map
假設,我們實體類,或者資料庫中的表,欄位或者引數過多,我們應當考慮使用Map!
//(Dao/Mapper)介面實現類
public interface StudentMapper(){
int addStudent2(Map<String,Object> map);
}
<!--Mapper對映--> <insert id="addStudent2" parametereType="map" useGeneratedKeys="true" KeyProperty="id"> insert into 表明 (name,gender,phone) Values (#{自定義},#{自定義},#{自定義}) </insert>
//Junit單元測試 public class StudentDaoTest() extends MybatisUtils{ //匯入mybatis工具類 MybatisUtils mybatisUtils = new MybatisUtils(); //將工廠物件傳入給sqlSesion Sqlsession sqlSession = mybatisUtils.getSqlSession(); //獲取介面實現類 StudentMapper studentMapper = sqlSession.getMapper(StudentMapper.class) public void addStudent2() throws Exception{ try{ Map<String,Object> map = new HashMap<>(); map.put("自定義","內容"); map.put("自定義","內容"); map.put("自定義","內容"); studentMapper.addStudent2(map); commitSqlSession(sqlSession) }catch (Exception e){ e.printStackTrace(); }finally{ closeSqlSession(sqlSession) } } }
引數傳遞:
Map傳遞引數,直接在sql中取出key即可 【parameterType="map"】
物件傳遞引數,直接在sql中取出物件屬性即可 【parameterType="Student"】
只有一個基本型別的情況下,可以直接在sql中去到
多個引數時用Map,或者註解