第一次搭建mybatis环境

什么是MyBatis?
MyBatis是一流的持久性框架,支持自定义SQL,存储过程和高级映射。MyBatis消除了几乎所有的JDBC代码以及参数的手动设置和结果检索。MyBatis可以使用简单的XML或注释进行配置,并将图元,映射接口和Java POJO(普通的旧Java对象)映射到数据库记录。

导入mybatis的jar包

(1)Maven导包:

<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.4.6</version>
</dependency>

(2)手动导包:自己下载好mybatis.jar包,放入到项目中
在这里插入图片描述

从XML构建SqlSessionFactory

每个MyBatis应用程序都以SqlSessionFactory实例为中心。可以使用SqlSessionFactoryBuilder获取SqlSessionFactory实例。SqlSessionFactoryBuilder可以从XML配置文件或Configuration类的自定义准备好的实例中构建SqlSessionFactory实例。

下面就是mybatis.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">
			<!-- 事务管理 -->
			<transactionManager type="JDBC" />
			<!-- 配置数据源 -->
			<dataSource type="POOLED">
				<!-- 数据库驱动 -->
				<property name="driver" value="${driver}" />
				<!-- 数据库url地址:mysql://{本机号:127.0.0.1}{mysql端口号:3306}/{要操作的数据库名} -->
				<property name="url" value="${url}" />
				<!-- 用户名 -->
				<property name="username" value="${user}" />
				<!-- 密码 -->
				<property name="password" value="${password}" />
			</dataSource>
		</environment>
	</environments>

	<mappers>
		<!-- 映射文件路径 -->
		<mapper resource="com/yjj/dao/user/UserMapper.xml" />
	</mappers>

</configuration>

db.properties:

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/smbms
user=root
password=a
动态的SQL语句的映射
 sql语句可以由XML或注释定义。但是一般我们选择使用XML的方式。
 MyBatis提供的全部功能可以通过使用基于XML的映射语言来实现。
  1. UserMapper.xml 也就是sql语句的xml文件,支持对数据的增删改查等一系列功能。
    映射的时候,xml文件里,每条sql语句的id属性的值必须与对应映射的接口文件里对应方法的方法名一样.
<?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.yjj.dao.user.IUserMapper">

  <!-- 查询smbms_user所有记录数  resultType:返回值的数据类型-->
  <select id="selectUser" resultType="int">
    select count(id) from smbms_user
  </select>
  
  <!-- 模糊查询 parameterType:参数的数据类型,可以使对象,就比如这里的User对象 -->
  <select id="selectName" parameterType="string" resultType="com.yjj.dao.enity.User">
  	select userName,gender from smbms_user where userName like concat(#{uname},'%')
  </select>
  
</mapper>
  1. 与这些动态sql语句相映射的接口文件,IUserMapper.java
package com.yjj.dao.user;

import java.util.List;

import com.yjj.dao.enity.User;

public interface IUserMapper {
	//接口里面的方法的方法名必须与mapp.xml里面对应的sql语句的id属性同名
	public int selectUser();
	
	public List<User> selectName(String uname);
}
从SqlSessionFactory获取SqlSession

测试类:UserTest.java:

public class UserTest {
	@Test
	public void Test(){
		//读取配置文件
		String resources="mybatis-config.xml";
		try(InputStream is=Resources.getResourceAsStream(resources)){
			//通过读取xml文件构建SqlSessionFactory
			SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(is);
			//从SqlSessionFactory获取SqlSession
			SqlSession sqlSession=sqlSessionFactory.openSession();
			//SqlSession执行sql语句
			int count=sqlSession.selectOne("selectUser");
			System.out.println(count);
			
			List<User> list=sqlSession.selectList("selectName", "李");
			System.out.println(list);
			
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
	
	
}
总结

上面就是基本搭建一下mybatis环境,并2个简单的实例。
如果有问题可以一起交流哦…
下面附上mybatis的官网,里面讲的很全面。mybatis官网

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值