mybatis注解開發


mybatis可以使用xml文件來寫sql語句,也可以通過注解來編寫簡單的sql語句,參考官方文檔

可以理解為簡單的一些語法可以使用注解來編寫,比較方便,但是復雜的語句還是要使用xml文件,只有使用xml文件才能體現mybatis的強大功能。

下面來學習使用注解。

在之前的開發中,我們使用mybatis,需要

1,配置文件,

2,然后創建dao接口,定義方法

3,再然后就要創建mapper.xml文件,在mapper.xml文件中編寫sql語句,

4,最后再把mapper文件配置在mybatis主配置文件中就可以進行測試了

使用注解的方式,我們可以在dao接口中直接在方法上寫sql語句,不需要創建mapper文件了

創建一個dao接口:先寫一些最簡單的語句,例如這些最基本的增刪改查的語句,我們可以不使用mapper文件直接使用注解來寫

public interface IEmpDAO {

    @Select("select * from emp")
    List<Emp> allEmp();

    @Insert("insert into emp (ename,job,deptno,sal,hiredate) value(#{ename},#{job},#{deptno},#{sal},#{hiredate})")
    int insertEmp(Emp emp);

    @Update("update emp set ename=#{ename} where empno=#{empno}")
    int updateEmp(Emp emp);

    @Delete("delete from emp where empno=#{empno}")
    int deleteEmp(int empno);

}

使用注解也需要在mybatis配置文件中配置mapper

測試上面的方法:

public class TestSql {
    public static void main(String[] args) {
        SqlSession sqlSession = SqlFactory.getSqlSession();
        IEmpDAO mapper = sqlSession.getMapper(IEmpDAO.class);
        List<Emp> emps = mapper.allEmp();
        System.out.println(emps);

        int i = mapper.insertEmp(new Emp(0, "張三", "保安", 3, 5000.00, new Date()));
        sqlSession.commit();
        System.out.println(i+"-------------------");
        int i1 = mapper.updateEmp(new Emp(4, "小明"));
        System.out.println(i1 + "+++++++++++++++++++++++++");
        sqlSession.commit();
        int i2 = mapper.deleteEmp(6);
        sqlSession.commit();
        System.out.println(i2);
        sqlSession.close();
    }
}

上面介紹了最簡單的注解使用,mybatis其實提供了大量的注解用來替換xml文件,注解表格官方文檔如下:

下面學習一下使用注解如何配置結果集。

我們經常會用到的就是聯表查詢

測試

上面的方法是配置返回結果集的注解配置,也可以在mapper映射文件中配置結果集,然后通過注解引用mapper文件的映射結果集:

創建mapper文件,配置結果集映射,

 然后再接口上使用resultMap注解配置結果集映射名:

注解內的值mapper中ResultMap的id值,記的在配置文件中配置mapper

還可以在注解中使用條件查詢,編輯標簽

測試

傳空值查詢所有:

傳遞員工編號查詢單個員工信息

在注解中使用條件查詢時,需要將所有的語句放在<script>標簽中


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM