Mybatis的快速入门

Mybatis的快速入门

MyBatis开发步骤:

①添加MyBatis的坐标

②创建user数据表

③编写User实体类

④编写映射文件UserMapper.xml //内部是sql语句

⑤编写核心文件SqlMapConfig.xml //mybaits核心配置

⑥编写测试类

环境搭建

1)导入MyBatis的坐标和其他相关坐标


<dependency>
    <groupId>org.mybatisgroupId>
    <artifactId>mybatisartifactId>
    <version>3.4.5version>
dependency>

<dependency>    
    <groupId>mysqlgroupId>   
    <artifactId>mysql-connector-javaartifactId>    
    <version>5.1.6version>    
    <scope>runtimescope>
dependency>

<dependency>    
    <groupId>junitgroupId>    
    <artifactId>junitartifactId>    
    <version>4.12version>    
    <scope>testscope>
dependency>

<dependency>    
    <groupId>log4jgroupId>    
    <artifactId>log4jartifactId>    
    <version>1.2.12version>
dependency>
  1. 创建user数据表
  2. 编写User实体
public class User {    
	private int id;    
	private String username;    
	private String password;
    //省略get个set方法
}

4)编写UserMapper映射文件



<mapper namespace="userMapper">      //userMapper.findAll
	<select id="findAll" resultType="com.itheima.domain.User">        //查询结果集需要向哪个对象封装
		select * from User    
	select>
mapper>
  1. 编写MyBatis核心文件


<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:///test"/>                
				<property name="username" value="root"/>
				<property name="password" value="root"/>            
			dataSource>        
		environment>    
	environments>    
	
	<mappers> 
		<mapper resource="com/itheima/mapper/UserMapper.xml"/> 
	mappers>
configuration>

6)编写测试代码

    //加载核心配置文件
    InputStream resourceAsStream = Resources.getResourceAsStream("SqlMapConfig.xml");
    //获得sqlSession工厂对象
    SqlSessionFactory sqlSessionFactory = new            
                               SqlSessionFactoryBuilder().build(resourceAsStream);
    //获得sqlSession对象
    SqlSession sqlSession = sqlSessionFactory.openSession();
    //执行sql语句
    List<User> userList = sqlSession.selectList("userMapper.findAll");
    //打印结果
    System.out.println(userList);
    //释放资源
    sqlSession.close();

mybatis 是一个优秀的基于java的持久层框架,它内部封装了jdbc,使开发者只需要关注sql语句本身,而不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。

mybatis通过xml或注解的方式将要执行的各种 statement配置起来,并通过java对象和statement中sql的动态参数进行映射生成最终执行的sql语句。

最后mybatis框架执行sql并将结果映射为java对象并返回。采用ORM(object relation mapping对象关系映射 对象与数据表的关系)思想解决了实体和数据库映射的问题,对jdbc 进行了封装,屏蔽了jdbc api 底层访问细节,使我们不用与jdbc api 打交道,就可以完成对数据库的持久化操作。

MyBatis的映射文件

namespace结合id 成为一个名字

resulttype结果封装到实体类型

测试类只加载核心文件中的 数据连接池,映射文件
Mybatis的快速入门_第1张图片

你可能感兴趣的:(spring常用框架)