10001---MyBatis介绍

MyBatis是支持普通SQL查询存储过程高级映射的优秀持久层框架

MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。

MyBatis可以使用简单的XML或注解用于配置和原始映射,

将接口和JavaPOJOPlain Old Java Objects,普通的Java对象)映射成数据库中的记录.

编写第一个基于mybaits的测试例子:
添加jar包
  mybatis-3.1.1.jar
  mysql-connector-java-5.1.7-bin.jar

建库+表
  create database mybatis;
  use mybatis;
  CREATE TABLE users(id INT PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(20), age INT);
  INSERT INTO users(NAME, age) VALUES('Tom', 12);
  INSERT INTO users(NAME, age) VALUES('Jack', 11);

添加Mybatis的配置文件conf.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>
	<environments default="development">
		<environment id="development">
			<transactionManager type="JDBC" />
			<dataSource type="POOLED">
				<property name="driver" value="com.mysql.jdbc.Driver" />
				<property name="url" value="jdbc:mysql://localhost:3306/mybatis" />
				<property name="username" value="root" />
				<property name="password" value="root" />
			</dataSource>
		</environment>
	</environments>
</configuration>

定义表所对应的实体类
public class User {
	private int id;
	private String name;
	private int age;
    //get,set方法
}

定义操作users表的sql映射文件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="com.mybatis.userMapper"> 
	<select id="selectUser" parameterType="int" resultType="com.mybatis.User">
		select * from users where id=#{id}
	</select>
</mapper>

在conf.xml文件中注册userMapper.xml文件
<mappers>
	<mapper resource="com/mybatis/userMapper.xml"/>
</mappers>

编写测试代码:执行定义的select语句
public class Test {
	public static void main(String[] args) throws IOException {
		String resource = "conf.xml"; 
		//加载mybatis的配置文件(它也加载关联的映射文件)
		Reader reader = Resources.getResourceAsReader(resource); 
		//构建sqlSession的工厂
		SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader);
		//创建能执行映射文件中sql的sqlSession
		SqlSession session = sessionFactory.openSession();
		//映射sql的标识字符串
		String statement = "com.mybatis.userMapper"+".selectUser";
		//执行查询返回一个唯一user对象的sql
		User user = session.selectOne(statement, 1);
		System.out.println(user);
	}
}
---
	public static void main(String[] args) throws IOException {
		String resource = "conf.xml"; 
		InputStream is = Test.class.getClassLoader().getResourceAsStream(resource);
		
		SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);
		
		SqlSession session = factory.openSession();
		
		String statement = "com.atguigu.day03_mybaits.test1.userMapper.getUser";
		
		User user = session.selectOne(statement, 2);
		System.out.println(user);
	}
}



 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值