1、SQL映射的XML文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.happy.data.mappers.QCallMapper">
<resultMap type="com.happy.data.pojo.MerQueue" id="QTakeResultMap">
<id property="_id" column="_id"/>
<result property="merchantId" column="merchant_id"/>
<result property="cusPhone" column="cus_phone"/>
<result property="queuePhone" column="queue_phone"/>
<result property="queueNo" column="queue_no"/>
<result property="queueType" column="queue_type"/>
<result property="takeTime" column="take_time"/>
<result property="eatType" column="eat_type"/>
<result property="queuePeople" column="queue_people"/>
<result property="tag" column="tag"/>
<result property="today" column="today"/>
<result property="breakTimes" column="break_times"/>
<result property="isOut" column="is_out"/>
<result property="remark1" column="remark1"/>
<result property="remark2" column="remark2"/>
</resultMap>
<!--查询大中小桌的队列信息
add by lxx 20130219-->
<select id="getQuInfo" resultMap="QTakeResultMap">
SELECT *
from t_merchant_queue tmq
where tmq.merchant_id=#{merchantId}
and tmq.eat_type=#{eatType}
AND YEAR(NOW())=YEAR(tmq.today)
AND MONTH(NOW())=MONTH(tmq.today)
AND DAY(NOW()) = DAY(tmq.today)
</select>
<insert id="insertAuthor" parameterType="domain.blog.Author">
insert into Author (id,username,password,email,bio)
values (#{id},#{username},#{password},#{email},#{bio})
</insert>
<update id="updateAuthor" parameterType="domain.blog.Author">
update Author set
username = #{username},
password = #{password},
email = #{email},
bio = #{bio}
where id = #{id}
</update>
<delete id="deleteAuthor” parameterType="int">
delete from Author where id = #{id}
</delete>
</mapper>
2、映射器mappers(上面博文提到的接口):绑定映射语句的接口
public interface QCallMapper{
public List<MerQueue> getQuInfo(@Param("merchantId")String merchantId,@Param("eatType")int eatType );
}
为了告诉MyBatis到哪里去找到sql语句,映射器中的方法名称同XML映射文件中select的id相同。
①在命名空间com.happy.data.mappers.QCallMapper中,定义了一名为“getQuInfo”的映射语句。这样就允许你使用完全限定名com.happy.data.mappers.QCallMapper.getQuInfo来调用映射语句。
②注意参数注释:
merchantId
这就告诉MyBatis创建一个PreparedStatement(预处理语句)参数
③jdbcType
在这个表格之后的所支持的JDBC类型列表中的类型。JDBC类型是仅仅需要对插入,更新和删除操作可能为空的列进行处理。这是JDBC的需要,而不是MyBatis的。如果你直接使用JDBC编程,你需要指定这个类型-但仅仅对可能为空的值。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.happy.data.mappers.QCallMapper">
</mapper>
2、映射器mappers(上面博文提到的接口):绑定映射语句的接口
public interface QCallMapper{
为了告诉MyBatis到哪里去找到sql语句,映射器中的方法名称同XML映射文件中select的id相同。
①在命名空间com.happy.data.mappers.QCallMapper中,定义了一名为“getQuInfo”的映射语句。这样就允许你使用完全限定名com.happy.data.mappers.QCallMapper.getQuInfo来调用映射语句。
②注意参数注释:
merchantId
这就告诉MyBatis创建一个PreparedStatement(预处理语句)参数
③jdbcType
在这个表格之后的所支持的JDBC类型列表中的类型。JDBC类型是仅仅需要对插入,更新和删除操作可能为空的列进行处理。这是JDBC的需要,而不是MyBatis的。如果你直接使用JDBC编程,你需要指定这个类型-但仅仅对可能为空的值。