一、配置文件详解
<?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>
<!--方法一、配置属性资源路径,项目路径-->
<properties resource="jdbc.properties"></properties>
<!--方法二、配置属性资源路径,网络路径-->
<!--<properties url="file:/d:\\jdbc.properties"></properties>-->
<!--<properties url="http://www.baidu.com"></properties>-->;
<!--配置别名,简化mapper文件的结果类型以及参数类型-->
<!--方法三、直接写-->
<!--<properties>-->
<!--<property name="driver" value="${driver}"/>-->
<!--<property name="url" value="${url}"/>-->
<!--<property name="username" value="${username}"/>-->
<!--<property name="password" value="${password}"/>-->
<!--</properties>-->
<!--<typeAliases>-->
<!--<!–<typeAlias type="pojo.User" alias="user"></typeAlias>–>-->
<!--<!–配置当前包下所有类,简化名称为类名称简化为小写,效果同上–>-->
<!--<package name="pojo"></package>-->
<!--</typeAliases>-->
<!--配置sqlsessionFactory的环境,default对于环境id-->
<environments default="development">
<environment id="development">
<!--事务管理器,JDBC默认使用jdbc默认事务管理配置,Manager则放弃事务管理,由其他事务管理代替,如Spring-->
<transactionManager type="JDBC"/>
<!--数据源:UNPOOLED不使用连接池,POOLED:使用默认连接池,JNDI:自定义连接池,用于web项目中,通过在web容器(tomcat,jboos)中而配置获取数据源-->
<dataSource type="POOLED">
<!--value与配置文件名称相同-->
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</dataSource>
</environment>
<!--环境,id可以自己写-->
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<!--value与配置文件名称相同-->
<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="mapper/UserMapper.xml"/>
<!--可以直接在接口上面用注释方式写SQL语句,则可以不需要配置文件-->
<!--<mapper class="mapper.IUserMapper"></mapper>-->
</mappers>
</configuration>
二、案例

前提:
1、准备jdbc.properties文件(内容为jdbc配置);2、以及数据库内容;3、数据库驱动jar包;4、mybaties的jar包;5、Juntil单元测试jar包
1、mybatis-config.xml
<?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>
<!--路径规则:包名/文件名-->
<properties resource="configs/jdbc.properties"></properties>
<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="configs/jobs.xml"/>
</mappers>
</configuration>
2、Jobs.java
普通Javabean
3、Jobs.xml
<?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="mapper.JobsMapper">
<!--路径规则:包路径-->
<select id="selectAll" resultType="pojo.Jobs">
select * from jobs where id = #{id}
</select>
</mapper>
4、JobsMapper.java
package mapper;
import pojo.Jobs;
import java.util.List;
public interface JobsMapper {
public List<Jobs> selectAll(Jobs jobs);
}
5、testJobs.java
public class TestJobs {
SqlSession sqlSession=null;
@Before
public void myinit(){
//相对路径,packages显示
String resource = "configs/mybatis-config.xml";
try {
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
sqlSession = sqlSessionFactory.openSession(true);
} catch (IOException e) {
e.printStackTrace();
}
}
@Test
public void test(){
JobsMapper jobsMapper = sqlSession.getMapper(JobsMapper.class);
Jobs jobs = new Jobs();
jobs.setId(1);
List<Jobs> jobss = jobsMapper.selectAll(jobs);
System.out.println(jobss);
}
}

本文详细介绍MyBatis配置文件的各个元素,包括属性、别名、环境设置、数据源和映射器,并通过具体案例展示如何配置和使用MyBatis进行数据库操作。
2669

被折叠的 条评论
为什么被折叠?



