使用mybatis步骤和注意事项

1建立一个java项目,建立一个config目录放置配置文件,建立lib文件放置架包:导入架包java



2,建立全局配置文件SqlMapConfig.xml和局部映射文件user.xml放在config目录下sql

3:在SqlMapConfig.xml中配置环境,环境中包含了事物管理和数据源数据库


4:建立实体类pojo属性和数据库的字段对应mybatis


5:在user.xml中配置命名空间能够任意名字,配置查询和删除,修改,添加的sql,根据不一样的sql需传入的参类型parameterType,返回值类型resultType
框架


6:建立测试类测试

7:注意的事项传递参数若是是基本数据类型如:intrger和String,mybatis提供了2种格式的传参:ui

${}是sql中的链接符,所传的参数保持原类型,${value}中只能写value,而且${value}存在sql注入隐患,全部要少用,通常使用在排序时动态获取排序名.3d

#{}=?是表示一个站位符,所传的参数会进行包装.相对${},他能够使用在简单类型和包装类型中(javaBean),包装类型能够将所传的多个参数封装xml

在javaBean中避免只能传一个参数的尴尬blog

8:在添加行数据,mybatis提供了返回添加行的id的配置具体以下

<insert id="insertusergetid" parameterType="com.wenchen.pojo.User">
<!-- 查询主键在插入以后执行的,keyProperty传入的参数,是由com.wenchen.pojo.User提供,resultType="int"返回值类型

order="AFTER"表示在insert以后执行默认是BEFORE以前执行 -->
<!-- 如下配置能够获得插入后这一行的id -->
<selectKey keyProperty="id" resultType="int" order="AFTER">
   SELECT LAST_INSERT_ID();
</selectKey>

insert into user(username,birthday,sex,address) values(#{username},#{birthday},#{sex},#{address});
</insert>


9:还能够获得UUID的配置

<insert id="insertusergetuuid" parameterType="com.wenchen.pojo.User">
<!-- 查询主键在插入以后执行的,keyProperty传入的参数,是由com.wenchen.pojo.User提供,resultType="int"返回值类型

order="AFTER"表示在insert以后执行默认是BEFORE以前执行 -->
<!-- 如下配置能够获得插入后这一行的id -->
<selectKey keyProperty="id" resultType="String" order="BEFORE">
   SELECT UUiD();
</selectKey>

insert into user(id,username,birthday,sex,address) values(#{id},#{username},#{birthday},#{sex},#{address});
</insert>

10:以上只是简单的单配置使用mybatis框架进行简单的运用.做为复习和练习的参考