myBatis 接口 映射 sql
来源:互联网 发布:淘宝确定开店协议 编辑:程序博客网 时间:2024/05/21 05:57
第一种方式
public interface FeedbackDao extends BaseDao{ //意见反馈 int addFeedback(Map<String,Object> paramsMap) throws DataAccessException; //评价 int addEvaluation(Map<String,Object> paramsMap) throws DataAccessException; //获取用户最后的评价 Map<String,Object> getLastEvaluation(Map<String,Object> paramsMap) throws DataAccessException;}
在配置的 mapper文件中
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="com.yc.gypublictravel.mobile.dao.FeedbackDao"> <!-- 意见反馈 HandleState 0:未处理,1:已处理--> <insert id="addFeedback" parameterType="map"> </insert> <!-- 用户评价 --> <insert id="addEvaluation" parameterType="map"> </insert> <!-- 获取最后评论 --> <select id="getLastEvaluation" parameterType="map" resultType="map"> </select></mapper>
第二种方式,通过注解,直接就写在代码中了
public interface FeedbackDao { @Select({ "select * from `user` where id = #{id}" }) User getUserById(int id); }
测试:
@Test public void queryListTest() { SqlSession session = sqlSessionFactory.openSession(); try { FeedbackDao feed= session.getUserById(IUserMapper.class); List<User> users = feed.getUserById(1); } finally { session.close(); } }
按照第一种在 mapper中的方式更灵活,
三,也可以在mapper中设置返回来的 resultType,其实和写好实体类,塞入没多大区别
<resultMap type="User" id="userList"><!-- type为返回列表元素的类全名或别名 --> <id column="id" property="id" /> <result column="name" property="name" /> <result column="age" property="age" /> <result column="address" property="address" /> </resultMap> <select id="getUsers" parameterType="string" resultMap="userList"><!-- resultMap为上面定义的User列表 --> select * from `user` where name like #{name} </select>
如果查询结果是 复合形式的
// 组合类 返回结果 Article + User <resultMap type="Article" id="articleList"> <id column="a_id" property="id" /> <result column="title" property="title" /> <result column="content" property="content" /> <association property="user" javaType="User"><!-- user属性映射到User类 --> <id column="id" property="id" /> <result column="name" property="name" /> <result column="address" property="address" /> </association> </resultMap> <select id="getArticlesByUserId" parameterType="int" resultMap="articleList"> select u.id, u.name, u.age, u.address, a.id a_id, a.title, a.content from article a inner join user u on a.user_id=u.id and u.id=#{id} </select>
标签有
<update id="creatLongLatTable" statementType="STATEMENT"> CREATE TABLE ${tableName}( aa INT ) </update>
删除
<delete id="deleteTableData" parameterType="Map" statementType="STATEMENT"> <![CDATA[ delete from ${table} where ${col} < ${date}]]> </delete>
0 0
- myBatis 接口 映射 sql
- mybatis接口映射
- MyBatis接口映射
- 三(一)mybatis接口映射sql 使用xml
- 三(二)mybatis接口映射sql使用注解
- Mybatis之SQL映射
- MyBatis SQL映射
- MyBatis (二) 注解映射接口
- Mybatis接口映射,嵌套查询
- mybatis的SQL映射配置文件
- mybatis的SQL映射配置文件
- mybatis的SQL映射配置文件
- MyBatis -- sql映射文件详解
- mybatis sql 映射文件问题
- MyBatis(3):SQL映射
- MyBatis(3):SQL映射
- MyBatis(3):SQL映射
- MyBatis(3):SQL映射
- java之十五篇:内核的东西java还真翻转不了
- Teamviewer 远程协助工具
- 苹果公司发布iPad Pro向Surface Pro发起挑战
- 杭电ACM2057java做法
- mongodb对日期范围查询
- myBatis 接口 映射 sql
- iOS编程——最简单的实现UITableView下拉时顶部图片放大消失的效果
- nginx+FastDFS+fastdfs-nginx-module配置分布式文件存储
- 用MediaCodec实现多段视音频的截取与拼接
- 伽马曲线矫正
- MongoDB整合Spring 详细讲解(含代码)
- 使用Linq的泛型功能
- 加密篇之一 - 对称加密算法 DES,AES,PBE
- java之十六篇:探测堆上对象的布局、深入理解对象