mybatis--map映射文件 标签详解
来源:互联网 发布:excel重复数据高亮 编辑:程序博客网 时间:2024/05/16 05:51
在学习编程的过程中,遇到过很多的配置文件,我知道它们可以给有的工作带来很多便利,但却总是处理不了,这里记录下我遇到的每个配置文件,并将里面用到的标签一一弄清,希望累积到最后可以有个不错的丰收。
一、表设计
很简单的一个用户表,主键id,两个字段username,password
二、mapper映射文件
<?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="book.pojo.User"> <!-- 插入一条数据 --> <insert id="insertUser" parameterType="User" statementType="PREPARED" keyProperty="id" useGeneratedKeys="true"> insert into user(username,password) values(#{username,jdcb=VARCHAR},#{password,jdbc=VARCHAR}) </insert> <!-- 更新一条数据 --><update id="updateUser" paramterType="User">update user set userName = #{userName,jdbcType=VARCHAR},password = #{password,jdbcType=VARCHAR}WHERE id = #{id,jdbcType = INTEGER}</update> <!-- 删除一条数据 --><delete id="deleteUser" parameterType="int">delete from user where id=#{id}</delete> <!-- 查询一条数据 --> <select id="findById" parameterType="int" resultType="book.pojo.User"> select * from user where id=#{id} </select></mapper>
三、标签解释
mapper
map映射文件。
namespace
自定义一个名称,可以是aa,也可以是bb,假如现在map映射文件不止一个,(通常在工程中,一个实体类对应一个map映射文件)在session中调用sql语句是通过调用sql语句的id,那么倘若两个map映射文件里的id是一样的怎么办,这时就体现出namespace的作用了。
id
每条sql语句的唯一标识符,java代码通过索引特定的id,从而找到与之对应的那条sql语句。
parameterType
传入参数。如查询一条数据中,传入的是主键id,它的参数类型是int,而在插入一条数据中,传入的参数是个User对象,这里应该写User类的完整路径名,也就是book.pojo.User,这里直接写User,是因为在基本配置文件(mybatisconfig.xml)中配置了book.pojo.User的别名User,配置别名后在map映射文件中,User就可以代替book.pojo.User了。
statementType
学习jdbc都会碰到它,PREPARED表示预处理,也就是jdbc中的“?”,意位着这里需要传入一个参数,但是我还不知道这个参数是什么,所以先放一个占位符去占个位子,“#{ }”就是mybatis里的占位符。
keyProperty
User表中有个主键id,因为主键都是自增的,所以这里直接指明了主键是哪一个字段。
useGeneratedKeys
与keyProperty连用,上面指定了主键,这里就指定它自增。
resultType
在查询语句中个,会有个返回值,同parameterType一样,这里表示的是返回值得参数类型。
jdbc=VARCHAR
mybatis很智能的将java属性的数据类型和数据库中字段的数据类型相匹配,但有时复杂数据类型匹配不了时,可通过这种方法进行操作。
- mybatis--map映射文件 标签详解
- Mybatis 映射文件标签详解
- mybatis--映射文件详解
- MyBatis -- sql映射文件详解
- hibernate映射文件标签详解
- MyBatis中映射文件的组成标签
- MyBatis中的映射文件标签属性 parameterType
- Mybatis中Mapper映射文件详解
- MyBatis的Mapper映射文件详解
- mybatis 的mapper映射文件返回一个map
- MyBatis的映射文件mapper的select标签
- MyBatis的Mapper文件的标签详解
- Hibernate 之List ,Bag,Map三种映射文件详解
- Hibernate Map映射文件
- Spring集成Mybatis配置映射文件方法详解
- mybatis映射文件语法
- mybatis之映射文件
- MyBatis映射文件
- 杂谈之Windows共享文件机制的实现方法
- 谁将引领未来高清音频!杜比TrueHD对比DTS-HD
- Spring Bean装配:Bean注解实现以及定义
- Java接口与抽象(学习笔记)
- API接口非幂等性问题及使用redis实现简单的分布式锁
- mybatis--map映射文件 标签详解
- 【算法】错排——错误引发的讨论
- 搭建云服务器--移动应用开发
- 从堆栈快速定位出错的代码行
- uvalive 4992 半平面交
- 关联规则挖掘算法Aprior和FPGrowth对比与改进
- NAT工作原理
- http://lib.csdn.net
- java学习日记——super关键字