mybatis中的一些标签使用

主要有两个配置文件,一个是主配置文件SqlConfig.xml,java

还有一个是dao接口实现类相对应的mapper的配置文件 。好比userDao的userDao.xml配置文件。sql

1.resultType 标签数据库

用在userDao.xml 中,用在增删改查标签中,用于指定结果的返回类型,好比说下面这样。app

 

 

 2.resultMap标签dom

用在userDao.xml中,这个标签能够用来解决数据库字段和实体字段名称不匹配的问题,至关因而对咱们配置的数据库表的字段起别名。用来和咱们实体字段匹配,一个对一个的匹配。spa

 

 上面的 id=“userMap” ,就是给这个resultMap标签有一个惟一id,用来给下面的语句引用,type="domain.User" 表示咱们配置的是哪一个实体类,3d

下面的id表示主键相对应,result表示普通属性。  记住:resultType和resultMap只能用一个,咱们若是用了resultMap就等于想要的id就能够了,而后在查询出结果返回时就会自动用这个里面的属性进行匹配。xml

3.#{}字符blog

它表示占位符,至关于原来jdbc中sql语句中的?,用来在实际执行时替换实际的数据,具体数据是由#{}里面的内容决定的,这是咱们须要传入的参数。接口

4.select last_insert_id()

这是用来查询自增加的id,若是咱们往数据库中插入一条记录,可是若是id是自增加的,那么你若是取到这个id就能够经过这个语句。

5.模糊查询的%

对于模糊查询咱们在sql语句中是不须要写出%的,就只须要留一个#{string}就能够,其余的能够在传参的时候给出,这样的话,sql中就会是这样 like ?

6.#{}和${}的区别

#{}表示一个占位符号经过#{}能够实现preparedStatement向占位符中设置值,自动进行java类型和jdbc类型转换,#{}能够有效防止sql注入。#{}能够接收简单类型值或pojo属性值。若是parameterType传输单个简单类型值,#{}括号中能够是value或其它名称。
${}表示拼接sql串经过${}能够将parameterType传入的内容拼接在sql中且不进行jdbc类型转换,${}能够接收简单类型值或pojo属性值,
若是parameterType传输单个简单类型值,${}括号中只能是value。

7.properties属性

是在SqlConfig.xml中的配置属性。对于properties属性,这是用来将数据库链接信息和程序解耦,若是不用resource就是被注释掉的内容,resource能够用来引入另外的配置文件中的属性配置。

 

 8.typeAliases标签

这是在SqlConfig中的配置,这个标签就是用来给咱们的domain下的实体类起别名的,这个是在主配置文件中使用的,配置了之后就能够在任意地方使用咱们配好的别名,至关于少些几个字,package使用就能够自动使别包下的类名看成别名。

 

 9。mapper标签

这是主配置文件中使用的标签。表示映射器的意思,这样使用就能够自动找到咱们对应的每一个映射文件的位置,mappers标签是大的mapper标签的父类,里面不少的mapper标签,每一个都表示一个映射配置文件,而这个映射配置文件对应着一个dao的实现。

相关文章
相关标签/搜索