mybatis學習五 多參數查詢(一)

1. 編寫接口多參數方法

/**
	 * 多參數查詢,注意要和Employeer.xml的方法名對應
	 */
	public List<Employeer> findEmployeerByNameandDep(String employeer_name,String employeer_department);

2. 編寫resultMap

<!-- 定義數據庫字段與實體對象的映射關係 -->
 <resultMap type="Employeer" id="resultMap">
    <id property="employeer_id" column="employeer_id"/> 
    <result property="employeer_name" column="employeer_name"/>
    <result property="employeer_age" column="employeer_age"/>
    <result property="employeer_department" column="employeer_department"/>
    <result property="employeer_worktype" column="employeer_worktype"/>
 </resultMap>

3. 編寫sql語句

<!--多參數 查找 返回list 的select 語句,注意 resultMap 的值是指向前面定義好的 -->
     <select id="findEmployeerByNameandDep"  resultMap="resultMap">
     select* from `t_employeer` where employeer_name=#{0} and employeer_department=#{1}
     </select>

因爲是多參數那麼就不能使用parameterType, 改用#{index}是第幾個就用第幾個的索引,索引從0開始java

4. 編寫查詢方法

/**
	 * 多參數查詢列表
	 */
	public static List<Employeer> getEmployeerList(String employeer_name,String employeer_department){
		SqlSession session = null;
		 List<Employeer> employeers=null;
		try {
			session = sqlSessionFactory.openSession(); 
			EmployeerMapper employeerMapper=session.getMapper(EmployeerMapper.class);
			 employeers = employeerMapper.findEmployeerByNameandDep(employeer_name, employeer_department);
            session.commit() ;  		
		} finally {
			session.close();
		}
		return employeers;
   
    }

5. 編寫測試類

public static void main(String[] args) {   
         System.out.println("=========================使用多單參數查詢===========================");
         List<Employeer> employeers1=getEmployeerList("張三","產品二部");
         for(Employeer employeer1:employeers1){
             System.out.println(employeer1);
         }
相關文章
相關標籤/搜索