本文共 2335 字,大约阅读时间需要 7 分钟。
简单的CRUD
public interface IUserDao { /*** 查询所有用户* @return*/@Select("select * from user")@Results(id="userMap",value= { @Result(id=true,column="id",property="userId"),@Result(column="username",property="userName"),@Result(column="sex",property="userSex"),@Result(column="address",property="userAddress"),@Result(column="birthday",property="userBirthday")})ListfindAll();/*** 根据 id 查询一个用户* @param userId* @return*/@Select("select * from user where id = #{uid} ")@ResultMap("userMap")User findById(Integer userId);/*** 保存操作* @param user,这里user存入之后user中有了id属性* @return 影响行数*/@Insert("insert into user(username,sex,birthday,address)values(#{ username},#{ sex},#{ birthday},#{ address})")//@Options(useGeneratedKeys = true , keyProperty = "id",keyColumn = "id"),这也可以让user有id属性@SelectKey(keyColumn="id",keyProperty="id",resultType=Integer.class,before = false, statement = { "select last_insert_id()" })int saveUser(User user);/*** 更新操作* @param user* @return*/@Update("update user set username=#{ username},address=#{ address},sex=#{ sex},birthday=#{ birthday} where id =#{ id} ")int updateUser(User user);/*** 删除用户* @param userId* @return*/@Delete("delete from user where id = #{uid} ")int deleteUser(Integer userId);/*** 查询使用聚合函数* @return*/@Select("select count(*) from user ")int findTotal();/*** 模糊查询* @param name* @return*/@Select("select * from user where username like #{username} ")List findByName(String name);}//通过注解方式,我们就不需要再去编写 UserDao.xml 映射文件了
一对多查询
@CacheNamespace(blocking = true)public interface IUserDao { /** * 返回查询所有 * @return */ @Select("select * from user") @Results(id="userMap",value = { @Result(id = true,property = "userId",column = "id"), @Result(property = "userName",column = "username"), @Result(property = "userSex",column = "sex"), @Result(property = "userBirthday",column = "birthday"), @Result(property = "userAddress",column = "address"), @Result(property = "accounts",column = "id",many = @Many(select = "cn.qut.dao.IAccountDao.findByUid",fetchType = FetchType.LAZY)) }) ListfindAll(); /** * 根据id返回用户 * @return */ @ResultMap("userMap") @Select("select * from where id=#{id}") User findById();}
测试类:
在这里插入代码片
转载地址:http://mciwi.baihongyu.com/