<?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...persistence.usermanager.UserMapper">

<!-- 要对应到所有属性 才能使用-->
 <!--<resultMap id="users" type="User">
 <result property="userName" column="user_name"/>
 </resultMap>-->

<!-- 这里namespace必须是UserMapper接口的路径,不然要运行的时候要报错 "is not known to the MapperRegistry" -->
 <insert id="createUser" parameterType="User">
  <![CDATA[ insert into
  user_info (user_id, user_name, user_password,
  user_email,user_role) values (#{userId},#{userName}
  ,#{userPassword},#{userEmail},#{userRole})]]>
  <!-- 这里sql结尾不能加分号,否则报"ORA-00911"的错误 -->
 </insert>
 <!-- 这里的id必须和UserMapper接口中的接口方法名相同,不然运行的时候也要报错 -->
 <delete id="deleteUser" parameterType="java.lang.String">
  <![CDATA[ delete from user_info where id = #{id} ]]>
 </delete>

<update id="updateUsers" parameterType="User">
  <![CDATA[update user_info set
  user_name = #{userName},
  user_password = #{userPassword},
  user_email = #{userEmail},
  user_role = #{userRole}
  where user_id = #{userId} ]]>
 </update>

<select id="selectAllUsers" resultType="User">
  <![CDATA[select * from user_info ]]>
 </select>

<select id="selectUserById" resultType="User" parameterType="java.lang.String">
  <![CDATA[select * from user_info where user_id = #{userId}]]>
 </select>

<select id="selectUsers" resultType="User" parameterType="User">
  <![CDATA[select * from user_info ]]>
  <where>
   <if test="userName!=null">
    <![CDATA[And user_name like '%'||#{userName}||'%']]>
   </if>
   <if test="userRole!=null">
    <![CDATA[And user_role like '%'||#{userRole}||'%']]>
   </if>
  </where>
 </select>

<select id="selectUsersCount" resultType="int">
  <![CDATA[select count(*) from user_info ]]>
 </select>

<select id="selectUserByName" resultType="User" parameterType="java.lang.String">
  <![CDATA[select * from user_info where user_name = #{userName}]]>
 </select>

</mapper>

http://blog.csdn.net/tadpole1027/article/details/6736358

MyBatis入门实例 ——Mapper.xml(zz)的更多相关文章

  1. Mybatis中的Mapper.xml映射文件sql查询接收多个参数

    ​ 我们都知道,在Mybatis中的Mapper.xml映射文件可以定制动态SQL,在dao层定义的接口中定义的参数传到xml文件中之后,在查询之前mybatis会对其进行动态解析,通常使用#{}接收 ...

  2. Mybatis入门实例

    MyBatis 简介 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis ...

  3. Mybatis入门实例解析

    写在前面:本文全程根据Mybatis官网进行入门讲解.毫无疑问,官方文档是学习这门技术最权威的资料,与此同时我们也知道官方文档对待入门小白基本上不太友好,没有入门demo.开篇就是小白们不懂的内容.有 ...

  4. mybatis 学习三 mapper xml 配置信息

    mapper xml 映射文件 1,select 标签      简单是用就这样,其中resultType 代表从这条语句中返回的期望类型的类的完全限定名或别名.也可以使用resultMap对应的id ...

  5. mybatis(三)配置mapper.xml 的基本操作

    参考:https://www.cnblogs.com/wuzhenzhao/p/11101555.html XML 映射文件 本文参考mybatis中文官网进行学习总结:http://www.myba ...

  6. 2.mybatis入门实例 连接数据库进行查询

    1.新建项目,添加mybatis和mysql的jar包 2.在mysql中新建表user[id,name,age] CREATE TABLE `users` ( `id` ) NOT NULL aut ...

  7. mybatis中的mapper.xml

    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-/ ...

  8. 使用generator自动生成mybatis model、mapper.xml、mapper等(转)

    原文链接:http://www.cnblogs.com/lichenwei/p/4145696.html Mybatis属于半自动ORM,在使用这个框架中,工作量最大的就是书写Mapping的映射文件 ...

  9. mybatis 关联对象mapper.xml的写法

    https://github.com/zfrHJ/mybaties/blob/master/mybaties/src/com/itheima/mybatits/mapper/OrdersMapperC ...

随机推荐

  1. [整理]修改git 默认编辑器为vim

    git config --global core.editor vim

  2. python 调用RESTFul接口

    本周需要将爬虫爬下来的数据入库,因为之前已经写好PHP的接口的,可以直接通过python调用PHP接口来实现,所以把方法总结一下. //python编码问题,因为好久用,所以很容易出现 # -*- c ...

  3. html前端插件 ZenCoding 更名为Emmet

    eclipse下的使用方法   http://www.educity.cn/develop/651853.html visualstudio下的使用方式 http://www.johnpapa.net ...

  4. 怎么获取textarea中选中文字

    textarea设置select="saveSelectionText()" //保存选中内容 saveSelectionText: function () { var focus ...

  5. 为什么比IPVS的WRR要好?

    动机 五一临近,四月也接近尾声,五一节乃小长假的最后一天.今天是最后一天工作日,竟然感冒了,半夜里翻来覆去无法安睡,加上窗外大飞机屋里小飞机(也就是蚊子)的骚扰,实在是必须起来做点有意义的事了!    ...

  6. [poj] 2396 [zoj] 1994 budget || 有源汇的上下界可行流

    poj原题 zoj原题 //注意zoj最后一行不要多输出空行 现在要针对多赛区竞赛制定一个预算,该预算是一个行代表不同种类支出.列代表不同赛区支出的矩阵.组委会曾经开会讨论过各类支出的总和,以及各赛区 ...

  7. 无人值守安装linux系统

    需要使用到的服务:PXE + DHCP+TFTP+ Kickstart+ FTP KickStart是一种无人职守安装方式 执行 PXE + KickStart安装需要准备内容:  • DHCP 服务 ...

  8. 线程--promise furture 同步

    http://www.cnblogs.com/haippy/p/3279565.html std::promise 类介绍 promise 对象可以保存某一类型 T 的值,该值可被 future 对象 ...

  9. vue 时间戳转 YYYY-MM-DD h:m:s

    export default function(data = 1){ let myDate; if(data !== 1){ myDate = new Date(data * 1000); }else ...

  10. 特殊密码锁 的通过码是:(请注意,在openjudge上提交了程序并且通过以后,就可以下载到通过码。请注意看公告里关于编程作业的说明)

    // // main.cpp // openjudge特殊密码锁 // // Created by suway on 17/11/20. // Copyright © 2017年 suway. // ...