一个MyBatis入门小练习

一. 概述

MyBatis是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis可以使用简单的XML或注解来配置和映射原生信息,将接口和Java的POJOs(Plain Ordinary Java Object)映射成数据库中的记录。

简而言之,就是对数据库数据进行增删改查。使用MyBatis框架,SQL写XML里。接下来,我将举一个MyBatis入门小练习的例子。通过实操,来更好地了解和熟悉MyBatis框架。

二.工具

数据库:Mysql(Navicat)
开发平台:Eclipse

三.思路

1.创建数据

在Navicat里创建一个,名为person的数据库,然后建一张名为Person表。

设计表如下:
在这里插入图片描述
插入一条数据如下:
在这里插入图片描述

2.Mybatis和mysql驱动包下载和安装

jar包地址:https://github.com/mybatis/mybatis-3/releases

下载以下两个包:
在这里插入图片描述

项目文件结构
在这里插入图片描述
将下载好的mybatis-3.5.5.zip包中的mybatis-3.5.5.jar包导入到如上图位置(即将mybatis-3.5.5.jar包导入src包下,然后选中mybatis-3.5.5.jar包,右键builder path将jar包添加到了内路径)。同时,也可以按如上操作顺便导入mysql驱动程序,即mysql-connector-java-5.1.49.jar包。
mysql驱动程序下载地址:https://dev.mysql.com/downloads/connector/j/

进入界面后,按如下步骤安装需要的mysql驱动包
在这里插入图片描述
在这里插入图片描述

3.创建实体对象Person.java

package com.DAO.entity;

public class Person {
          private int id;
          private  String name ;
          private  int age;
          
          public Person() {		
  			
  		}
              
		public Person(int id, String name, int age) {		
			this.id = id;
			this.name = name;
			this.age = age;
		}
		
		public int getId() {
			return id;
		}
		public void setId(int id) {
			this.id = id;
		}
		public String getName() {
			return name;
		}
		public void setName(String name) {
			this.name = name;
		}
		public int getAge() {
			return age;
		}
		public void setAge(int age) {
			this.age = age;
		}

		@Override
		public String toString() {
			return this.id+","+this.name+","+this.age;
		}
          
          
}


4.配置SQL映射文件PersonMapper.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.DAO.entity.PersonMapper">

	<select id="personid" resultType="com.DAO.entity.Person" >
		select * from Person  where  id = #{id}
	</select>

</mapper>

5.配置核心文件conf.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">
			<transactionManager type="JDBC" />
			<dataSource type="POOLED">
			<!-- 配置数据库信息 -->
				<property name="driver" value="com.mysql.jdbc.Driver"/>
				<property name="url" value="jdbc:mysql://localhost:3306/person" />
				<property name="username" value="root" />
				<property name="password" value="root" />
			</dataSource>
		</environment>
	</environments>
	<mappers>
	<!-- 加载映射文件 -->
		<mapper resource="com/DAO/entity/PersonMapper.xml" />
	</mappers>
</configuration>

6.编写TestMybatis测试类

package com.DAO.entity;

import java.io.IOException;
import java.io.Reader;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

public class TestMybatis {

	public static void main(String[] args) throws  IOException {
		// 加载Mybatis 配置文件(为了访问数据库)
	   Reader reader=Resources.getResourceAsReader("conf.xml");
       SqlSessionFactory  sessionFactory=new SqlSessionFactoryBuilder().build(reader) ; 
       //session-connection
       SqlSession  session=sessionFactory.openSession();
       String statement="com.DAO.entity.PersonMapper.personid";
       Person person=session.selectOne(statement,100);
       System.out.println(person);
       session.close();
	}

}

7.查询结果

在这里插入图片描述

四.总结

思路: 创建数据>>Mybatis和数据库驱动包下载和安装>>创建实体对象>>配置SQL映射文件>>配置连接数据库和事务管理文件>>测试
难点(注意点):配置文件可能会稍微花多点时间,容易出错!

评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符 “速评一下”
©️2020 CSDN 皮肤主题: 1024 设计师:上身试试 返回首页