@Select注解
@Select("SELECT TID,TNAME FROM BOOKTYPE")
public List<BookType> findAll();
如果查询的列名与属性名称不对应时可以使用@Results注解,如
@Results(id = "resultBookType",value={
@Result(property = "tid",column = "TID"),
@Result(property = "tname",column = "TNAME")
})
@Select("SELECT TID,TNAME FROM BOOKTYPE")
public List<BookType> findAll();
如果其他方法也返回该BookType对象,可以使用上面id中的值;当配合XML方式时,还可以使用XML中<resultMap>元素的id属性值。
@ResultMap("resultBookType")
public BookType findById(int id);
@Insert注解
简单的@Insert注解使用
@Insert({"INSERT INTO BOOKTYPE(TNAME) VALUES(#{tname})"})
public int insert(BookType bookType);
如果需要获得插入后的自动增长主键值,需要使用@Options注解
@Insert({"INSERT INTO BOOKTYPE(TNAME) VALUES(#{tname})"})
@Options(useGeneratedKeys = true,keyProperty = "tid",keyColumn = "TID")
public int insert(BookType bookType);
如果需要获得非自增主键值,需要使用@SelectKey注解
@Insert({"INSERT INTO BOOKTYPE(TNAME) VALUES(#{tname})"})
@SelectKey(statement = "SELECT LAST_INSERT_ID()",
keyProperty = "tid",
resultType = Integer.class,
keyColumn = "TID",
before = false)
public int insert(BookType bookType);
@Update注解
简单使用
@Update("UPDATE BOOKTYPE SET TNAME=#{tname} WHERE TID=#{tid}")
public int update(BookType bookType);
@Delete注解
简单使用
@Delete("DELETE FROM BOOKTYPE WHERE TID=#{tid}")
public int delete(int id);
Provider(提供)注解
MyBatis还提供了4种Provider注解,分别是@SelectProvider、@InsertProvider、@UpdateProvider和@DeleteProvider。实现查询、插入、更新、删除操作。