MyBatis基本使用

使用流程

  1. 在src目录下创建sqlMapConfig.xml文件
  2. 创建mapper.xml文件
  3. 读取主配置文件
  4. 创建SQLSessionFactory
  5. 生产一个session
  6. 通过session调用sql语句

查询实例

导包

  1. 数据库驱动包
  2. mybatis包
  3. 其他

sqlMapConfig.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>
	<environments default="development">
		<environment id="development">
			<!-- 使用jdbc的事务 -->
			<transactionManager type="JDBC" />
			<!-- 使用连接池 连接数据库 -->
			<dataSource type="POOLED">
				<property name="driver" value="com.mysql.cj.jdbc.Driver" />
                <!-- 8.0数据库连接配置-->
				<property name="url" value="jdbc:mysql:///test?useSSL=false&amp;serverTimezone=UTC" />
				<property name="username" value="root" />
				<property name="password" value="123" />
			</dataSource>
		</environment>
	</environments>
	<!-- 通过配置文件方式
	<property name="driver" value="${jdbc.driver}" />
	<property name="url" value="${jdbc.url}" />
	<property name="username" value="${jdbc.username}" />
	<property name="password" value="${jdbc.password}" /> 
	-->
	<mappers>
		<mapper resource="mapper/userMapper.xml" />
	</mappers>
</configuration>

UserMapper.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="UserMapper">
	<select id="selectById" parameterType="Integer" resultType="bean.User">
		select * from user where id = #{id}
	</select>
</mapper>

Test.java

package 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 bean.User;

public class HelloMybatis {
	public static void main(String[] args) throws IOException {
		 
		//读取主配置文件
		InputStream in = Resources.getResourceAsStream("sqlMapConfig.xml");
		
		//创建sqlSessionFactory
		SqlSessionFactory ssf = new SqlSessionFactoryBuilder().build(in);
		
		//生产一个SQLSession
		SqlSession session = ssf.openSession();
		User user = session.selectOne("UserMapper.selectById", 1);
		System.out.println(user);
	}
}

db.properties文件方式

jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql:///test?&useSSL=false&serverTimezone=UTC
jdbc.username=root
jdbc.password=123

sqlMapConfig.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="db.properties"/>
	<environments default="development">
		<environment id="development">
			<!-- 使用jdbc的事务 -->
			<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>
	<!--value="${jdbc.driver}"与db中的名字一致-->


	<mappers>
		<mapper resource="mapper/userMapper.xml" />
	</mappers>
</configuration>
posted @ 2020-05-05 21:13  成为海贼王的男人  阅读(203)  评论(0)    收藏  举报