zoukankan      html  css  js  c++  java
  • mybaties 的一些点

    resultMap

    resutType

    mybaties缓存

    待续

    mybaties对应关系是bean和数据库字段的对应。

    1、mybaties 的返回值是对象的话定义为resultMap="resultMap"

    值resultMap在文件首部进行重定义避免返回值为空,现在对象存储都是hashmap如下所示       

    <resultMap id="resultMap" type="java.util.HashMap">
    <result column="USER_ID" property="userId" jdbcType="BIGINT" />
    <result column="USER_ERP" property="erp" jdbcType="VARCHAR" />
    <result column="USER_NAME" property="name" jdbcType="VARCHAR" />
    <result column="USER_EMAIL" property="email" jdbcType="VARCHAR" />
    <result column="USER_PHONE" property="phone" jdbcType="VARCHAR" />
    <result column="USER_ROLE" property="role" jdbcType="VARCHAR" />
    </resultMap>

    <insert id="add" parameterType="com.jd.app.server.irp.common.beans.User">
    INSERT INTO irp_user (
    USER_ID,
    USER_ERP,
    USER_NAME,
    USER_EMAIL,
    USER_PHONE,
    USER_ROLE)
    VALUES (
    #{userId,jdbcType=BIGINT},
    #{erp,jdbcType=VARCHAR},
    #{name,jdbcType=VARCHAR},
    #{email,jdbcType=VARCHAR},
    #{phone,jdbcType=VARCHAR},
    #{role,jdbcType=VARCHAR})
    </insert>

    <select id="getUserByErp" resultMap="resultMap" parameterType="java.lang.String">
    SELECT USER_ID,
    USER_ERP,
    USER_NAME,
    USER_EMAIL,
    USER_PHONE,
    USER_ROLE
    FROM irp_user
    WHERE 1=1
    AND USER_ERP = #{erp,jdbcType=VARCHAR}
    </select>

    2.mybaties分页dao不需要包含分页字段,sql传值需要注意到将分页值传参数为#{0},#{1}如下所示

    <select id="getUsersByPage" resultMap="resultMap" parameterType="java.lang.Integer">
    SELECT USER_ID,
    USER_ERP,
    USER_NAME,
    USER_EMAIL,
    USER_PHONE,
    USER_ROLE
    FROM irp_user
    LIMIT #{0},#{1}
    </select>

     3.ibaties获取单个对象

    ibaties 需要bean对象和xml中的字段对应,需要字段生成映射。通过对应关系建立bean和数据库的

    对应关系。

    <resultMap id="userMap" type="com.jd.app.server.irp.common.beans.User" >
    <id column="USER_ID" property="userId" jdbcType="BIGINT" />
    <result column="USER_ERP" property="erp" jdbcType="VARCHAR" />
    <result column="USER_NAME" property="name" jdbcType="VARCHAR" />
    <result column="USER_EMAIL" property="email" jdbcType="VARCHAR" />
    <result column="USER_PHONE" property="phone" jdbcType="VARCHAR" />
    <result column="USER_ROLE" property="role" jdbcType="VARCHAR" />
    </resultMap>

    <select id="getUserById" resultMap="userMap" parameterType="java.lang.Long">
    SELECT * FROM irp_user WHERE 1=1 AND USER_ID = #{userId,jdbcType=BIGINT}
    </select>

    userMap的type类型为bean这样实现了bean和数据库的关联对应。

  • 相关阅读:
    "开关"组件:<h-switch> —— 快应用组件库H-UI
    "范围选择器"组件:<range> —— 快应用组件库H-UI
    "滑动选择器"组件:<h-slider> —— 快应用组件库H-UI
    "星级评分"组件:<rate> —— 快应用组件库H-UI
    "价格"组件:<price> —— 快应用组件库H-UI
    "长整数"组件:<long> —— 快应用组件库H-UI
    javaweb简单的学生信息录入系统
    java简单验证码生成程序
    请写一个java类,在任何时候都可以向它查询“你已经创建了多少个对象?”
    java静态初始化块的执行顺序
  • 原文地址:https://www.cnblogs.com/freedommovie/p/5757635.html
Copyright © 2011-2022 走看看