本文链接:https://blog.csdn.net/gaoxin_gx/article/details/100183455
Config的约束:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
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">
PS:
1:一般这个config的配置文件的约束的名字叫做:SQLMapConfig.xml(在resources中)
2:Mapper的配置文件约束是在resources中与其main中java下接口的相应文件相对应,但是简单来书,main中文件夹是包属性例如:comgaoxin.dao,属于三级结构,但是在resources中目录属于一级结构,需注意。
举例(防止日后看不懂)
SQLMapConfig.xml:
1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE configuration 3 PUBLIC "-//mybatis.org//DTD Config 3.0//EN" 4 "http://mybatis.org/dtd/mybatis-3-config.dtd"> 5 <!--Mybatis的主配置文件--> 6 <configuration> 7 <!--配置环境--> 8 <environments default="mysql"> 9 <!--配置mysql的环境,注意,default中的属性,与下边environment中id的属性是一样的--> 10 <environment id="mysql"> 11 <!--配置事务的类型--> 12 <transactionManager type="JDBC"></transactionManager> 13 <!--配置数据源,也叫作连接池--> 14 <dataSource type="POOLED"> 15 <!--配置连接数据库的四个基本信息--> 16 <property name="driver" value="com.mysql.jdbc.Driver"/> 17 <property name="url" value="jdbc:mysql://localhost:3306/数据库的名字"/> 18 <property name="username" value="数据库用户名"/> 19 <property name="password" value="数据库的密码"/> 20 </dataSource> 21 </environment> 22 </environments> 23 <!--指定映射配置文件的位置,映射配置文件指的是每个dao独立的配置文件--> 24 <mappers> 25 <!--指定文件的位置,要与main中java的文件结构位置相同--> 26 <mapper resource="com.gaoxin.dao.IUserDao.xml"></mapper> 27 </mappers> 28 </configuration>
Mapper.xml(也就是java中dao包中接口文件相映射的文件名.xml)
1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE mapper 3 PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" 4 "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> 5 <mapper namespace="com.gaoxin.dao.IUserDao"> 6 <!--配置查询所有,resultType的作用就是返回封装的位置,如果你要是不写的话,最后mybatis是不知道你到底要封装到哪里,会出现错误,我这个是User表,查询的也是这个,最后返回的结果就封装在User类中--> 7 <select id="findAll" resultType="com.gaoxin.domain.User"> 8 SELECT *FROM USER 9 </select> 10 <!--注意在resources中,目录是一级结构,要一个一个创建,而com.gaoxin.dao是一个目录。而包是三级结构--> 11 </mapper>