【MyBatis】<properties>--把数据源配置,从mybatis.xml中单独抽取出

package com.mybatis.dao;
import com.mybatis.bean.Employee;
public interface EmployeeMapper {
	public Employee getEmpById(Integer id);
}
package com.mybatis.test;
import java.io.IOException;
import java.io.InputStream;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Test;
import com.mybatis.bean.Employee;
import com.mybatis.dao.EmployeeMapper;
public class MyBatisTest {
	@Test	
	public void test() throws IOException {
		SqlSessionFactory sqlSessionFactory = getSqlSessionFactory();
		SqlSession openSession = sqlSessionFactory.openSession();
		EmployeeMapper mapper = openSession.getMapper(EmployeeMapper.class);
		try {
			System.out.println(mapper.getClass());
			Employee employee = mapper.getEmpById(1); 
			System.out.println(employee);
		} finally {
			openSession.close();
		}

	}
}
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/mybatis
jdbc.username=root
jdbc.password=root
<?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="com.mybatis.dao.EmployeeMapper">
<!-- 此时namespace必须指定为接口的全限定名 -->
	<select id="getEmpById" resultType="com.mybatis.bean.Employee">
		select * from tbl_employee where id = #{id}
	</select>
</mapper>
<?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="dbconfig.properties"></properties>
	<environments default="development">
		<environment id="development">
			<transactionManager type="JDBC" />
			<dataSource type="POOLED">
				<property name="driver" value="${jdbc.driver}" />
				<property name="url" value="${jdbc.url}" />
				<property name="username" value="${jdbc.username}" />
				<property name="password" value="${jdbc.password}" />
			</dataSource>
		</environment>
	</environments> 
	
	<mappers>
		<mapper resource="EmployeeMapper.xml" />
	</mappers>
</configuration>

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这段代码是一个 Spring 配置文件,用于配置数据库连接和 Myatis 的相关设置。 首先,通过 `<context:property-placeholder>` 标签加载 `jdbc.properties` 文件的内容,并将其作为属性注入到后续的 bean 。这样可以将数据库连接的相关信息(如驱动、URL、用户名、密码)配置在外部的 `jdbc.properties` 文件,方便进行配置管理。 接下来,定义了一个名为 `dataSource` 的 bean,使用了 `org.apache.commons.dbcp.BasicDataSource` 类作为数据源。`BasicDataSource` 是 Apache Commons DBCP(数据库连接池)提供的一个实现类,它用于管理数据库连接。通过设置各个属性(如驱动类名、URL、用户名、密码、最大活动连接数、最大空闲连接数),来配置数据源。 然后,定义了一个名为 `sqlSessionFactory` 的 bean,使用了 `org.mybatis.spring.SqlSessionFactoryBean` 类作为 MyBatis 的 Session 工厂。通过设置 `dataSource` 属性,将上述配置好的数据源注入到 Session 工厂。同时,通过设置 `configLocation` 属性,指定了 MyBatis 的全局配置文件 `sqlMapConfig.xml` 的位置。 最后,定义了一个名为 `MapperScannerConfigurer` 的 bean,用于扫描并注册 MyBatis 的 Mapper 接口。通过设置 `basePackage` 属性,指定了需要扫描的 Mapper 接口所在的包路径。同时,通过设置 `sqlSessionFactoryBeanName` 属性,指定了上述配置好的 Session 工厂的 bean 名称。 总而言之,这段配置文件主要是配置数据库连接和 MyBatis 的相关设置,可以通过外部的 `jdbc.properties` 文件进行灵活的配置管理,并使用数据库连接池和 MyBatis 的 Session 工厂来管理数据库连接和执行 SQL 操作。最后,通过扫描并注册 Mapper 接口,方便进行数据库操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值