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和数据库的关联对应。

mybaties 的一些点的更多相关文章

  1. myBaties 和 mysql开发中遇到的问题

    最近开发内部平台遇到mysql 中的一个问题,order by语句需要在limit 之后. myBaties在parameterType="java.lang.String" 不能 ...

  2. mybaties # , $

    mybaties会对#引入的值加上双引号, 如: #{buildingName} -------->"buildingName";mybaties会将$引入的值直接显示到sq ...

  3. springMVC 缓存(入门 spring+mybaties+redis一)

    使用redis之前需要咋电脑上安装redis: 使用spring+mybaties+redis的本质是扩展类   org.apache.ibatis.cache.Cache:在我们自己扩展的Cache ...

  4. spring+springmvc+mybaties整合实例

    spring+springmvc+mybaties即SSM框架整合在ecpliseee中开发:很么多西都是只有只有自己上手做,才会懂.昨晚熬了很久,才弄出来.也希望对新手有帮助!下面整理一下思路:关键 ...

  5. Java-----SSM(SpringMVC+Spring+mybaties)框架整合

    在进行整合之前,首先了解这个框架的作用 Mybaties: 丰富的标签库,可写动态sql,并统一的在.XML文件中编写,方便统一管理,解耦 SpringMVC: 标准的MVC思想(mode,view, ...

  6. springBoot(7)---整合Mybaties增删改查

    整合Mybaties增删改查 1.填写pom.xml <!-- mybatis依赖jar包 --> <dependency> <groupId>org.mybati ...

  7. 2017年4月12日16:53:54 mysql 还有没看过的命令,spring boot rabbitmq的几种应用场景,mybaties的几种句柄及其映射规则

    ON DUPLICATE KEY UPDATE rabbitmq:http://www.cnblogs.com/ityouknow/p/6120544.html      http://blog.cs ...

  8. 【SpringBoot】数据库操作之整合Mybaties和事务讲解

    ========================8.数据库操作之整合Mybaties和事务讲解 ================================ 1.SpringBoot2.x持久化数 ...

  9. Spring Boot初识(2)- Spring Boot整合Mybaties

    一.本文介绍 首先读这篇文章之前如果没有接触过Spring Boot可以看一下之前的文章,并且读这篇文章还需要你至少能写基本的sql语句.我在写这篇文章之前也想过到底是选择JPA还是Mybaties作 ...

随机推荐

  1. 【XLL API 函数】 xlGetInst

    返回正在调用 DLL 的 Excel 实例的实例句柄. 原型 Excel4(xlGetInst, LPXLOPER pxRes, 0); /* returns low part only */ Exc ...

  2. ios 中清除webView的缓存

    在UIWebView下,可以使用 [[NSURLCache sharedURLCache] removeAllCachedResponses];//清除缓存 来实现清除缓存,但当替换使用WKWebVi ...

  3. xcode 自定义Eclipse里边常用的快捷键

    之前在用Eclipse写Java的 时候,有几个常用的快捷键,比如删除当前行,在当前行下面插入空行,向上/下移动当前行等等,到了Xcode里怎么也找不到这些快捷键,一直觉得 Xcode自带的快捷键不够 ...

  4. IOS- 自定义 UIButton

    #pragma mark init方法内部默认会调用initWithFrame: - (id)initWithFrame:(CGRect)frame { self = [super initWithF ...

  5. 在微信浏览器中如何让他自动关闭当前页面回到会话框js

    <script type="text/javascript"> wx.config(jssdkconfig); require(['jquery', 'util'], ...

  6. 安装jdk源码

    step1:打开选择Window->Preference step2:选择Java->Installed JREs step3:选中你所安装的jre,点击Edit,进入Edit JRE,如 ...

  7. (1)Underscore.js入门

    1. Underscore对象封装 Underscore并没有在原生的JavaScript对象原型中进行扩展,而是像jQuery一样,将数据封装在一个自定义对象中(下文中称"Undersco ...

  8. WMI测试

    https://social.msdn.microsoft.com/Forums/windowshardware/zh-CN/c5af7959-95d3-4e1b-ab40-96a2a31c2af2/ ...

  9. Linux系统监控命令及如何定位到Java线程

    >>PID.TID的区分 uid是user id,即用户id,root用户的uid是0,0为最高权限,gid是group id,用户组id,使用 id 命令可以很简单的通过用户名查看UID ...

  10. Delphi中exit、break、continue等跳出操作的区别

    Delphi中表示跳出的有break,continue,abort,exit,halt,runerror等 1.break 强制退出最近的一层循环(注意:只能放在循环里:而且是只能跳出最近的一层循环) ...