mybatisConfig.xml 配置主要作用是连接数据源
配置的前提是在完成mybatis的jar包基础之上进行的
同时要确保数据用户名和密码是否正确
一:密码写在 mybatisConfig.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> <!-- mybatis的环境配置,此信息在开发中只需照搬即可 --> <environments default="development"> <environment id="development"> <!-- 配置JDBC事务,此事务由mybatis管理 --> <transactionManager type="JDBC"></transactionManager> <!-- 配置连接池,此连接池为mybatis连接池 --> <dataSource type="POOLED">
<!-- 如果是mysql8.0.11 必须 com.mysql.cj.jdbc.Driver --> <property name="driver" value="com.mysql.jdbc.Driver"/>
<!-- 如果是mysql8.0.11 -->
<!--必须 jdbc:mysql://localhost:3306/job_kjfwpt_com_gather?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC&useSSL=false
--> <property name="url" value="jdbc:mysql://localhost:3306/test"/> <property name="username" value="root"/> <property name="password" value="asplover"/> </dataSource> </environment> </environments> <!--尝试查询数据库 --> <!-- 映射文件 (加载所需要的局部配置) Mappers <mapper resource=’’/> 使用相对于类路径的资源 如:<mapper resource="sqlmap/User.xml" /> <mapper url=’’/> 使用完全限定路径 如:<mapper url="file:///D:workspace_spingmvcmybatis_01configsqlmapUser.xml" /> <mapper class=’’/> 使用mapper接口的全限定名 如:<mapper class="com.sjg.dao.UserMapper"/> 注意:此种方法要求mapper接口和mapper映射文件要名称相同,且放到同一个目录下; <package name=’’/>(推荐) 注册指定包下的所有映射文件 如:<package name="com.sjg.dao"/> 注意:此种方法要求mapper接口和mapper映射文件要名称相同,且放到同一个目录下; --> <!-- <mappers> <mapper resource="config/User.xml"/> <package name="com.sjg.dao"/> </mappers> --> </configuration>
二:配置第二种方式
把数据如mysql 路径端口 用户名 密码 单独放在一个文件中db.properties
db.properties 代码如下
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/test
name=root
password=asplover
通过mybatisConfig.xml 引用指定的文件db.properties
mybatisConfig.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> <!-- 引用db.properties配置文件 --> <properties resource="db.properties"/> <!-- development : 开发模式 work : 工作模式 --> <environments default="development"> <environment id="development"> <transactionManager type="JDBC" /> <!-- 配置数据库连接信息 --> <dataSource type="POOLED"> <!-- value属性值引用db.properties配置文件中配置的值 --> <property name="driver" value="${driver}" /> <property name="url" value="${url}" /> <property name="username" value="${name}" /> <property name="password" value="${password}" /> </dataSource> </environment> </environments> <!-- <mappers> <mapper resource="com/ibaiqi/entity/StudentMapper.xml"/> </mappers>--> </configuration>
三:无论上边哪种方式配置成功,都要通过执行来测试,不报错为成功
package com.ibaiqi.action; import java.io.Console; import java.io.IOException; import java.io.InputStream; import java.util.List; 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 com.ibaiqi.entity.Student; public class Main { static SqlSessionFactory sqlSessionFactory=null; public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("main()"); init(); } /** * 初始化,配置数据库连、 * */ public static void init() { // 配置文件的名称,采用哪种配置注意名称和路径正确 String configFile = "mybatisConfig.xml"; // 通过类加载器获取输入字节流 InputStream is = null; try { is = Resources.getResourceAsStream(configFile); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } // 通过SqlSessionFactoryBuilder创建SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(is); System.out.println("运行到此数据连接成功"); } }