mapper.xml 映射文件
mybatis.xml 主配置文件
需要为这两个配置文件添加相关的约束
1、mapper.xml
一般放在dao层下
<?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 >
</mapper>
!DOCTYPE 后的 mapper就代表这个配置文件的根标签
然后就可以在mapper标签下写sql语句了
<mapper namespace="test">
<insert id="insertStudent" parameterType="com.beans.Student">
insert into student(name,age) value (#{name}, #{age})
</insert>
</mapper>
parameterType属性为实体类的包下的路径
#{name}和#{age}是通过get属性获取到值
2、mybatis.xml
一般直接放在src目录下
<?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">
<configuration >
</configuration>
!DOCTYPE 后的configuration就代表这个配置文件的根标签
下面的内容是直接从文件中直接复制进去的
<configuration>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" value="${driver}" />
<property name="url" value="${url}" />
<property name="username" value="${username}" />
<property name="password" value="${password}" />
</dataSource>
</environment>
</environments>
<!--注册映射文件-->
<mappers>
<mapper resource="org/mybatis/example/BlogMapper.xml" />
</mappers>
</configuration>
transactionManager的type属性取值有两个:
JDBC:底层使用conn.setAutoCommit(false)将自动提交功能关闭,代码需要使用conn.commit()将执行的SQL提交到DB。
Managed:将事务交由容器来管理(spring容器)。
dataSource的type属性取值:
UNPOOLED:不使用连接池,每次请求都会创建一个DB连接,使用完毕后马上关闭该连接,执行效率低
POOLED:使用数据库连接池维护连接
JNDI:通过JNDI这个第三方的外部容器获取DB连接
property的value属性:
name=“dirver” value=“com.mysql.jdbc.Driver”
name=“url” value=“jdbc:mysql:///test” 本地的话localhost可省略
name=“username” value=“root”
name=“password” value=“root”
mapper的resource属性:
填写mapper.xml文件所在包下的地址
resource=“com/dao/mapper.xml”
题外:
双击标签选中按F2可查看所包含的子标签
(xml文件中的“ ?”表示这个标签只能小于等于一,可以没有但不等多余一个。
xml文件中的“ ,”代表着子标签之间的声明顺序,只能按照规定的前后顺序进行声明,比如environments只能在mappers之前声明,顺序不能改变,中间相隔的标签也可以不写。
xml文件中的“ + ”表示标签大于等于一,至少得有一个。
xml文件中的“ * ”表示大于等于0,可以没有也可多个。
xml文件中的“ | ”表示标签之间没有先后顺序。
没有任何符号表示标签有且仅有。)