使用Mybatis实例

本文介绍了Mybatis的优势和如何搭建项目。首先,Mybatis作为一款优秀的持久层框架,实现了SQL语句与Java代码的分离。然后,通过创建Java工程、导入必备的jar包、配置Mybatis的XML文件以及编写相应的Java代码,逐步展示了Mybatis项目的搭建过程。最终,运行测试代码,成功实现了预期的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

                                             Mybatis搭建实例


文章目录

       一、Mybatis的好处

       二、Mybatis搭建项目


 一、使用Mybatis的好处

MyBatis能够帮助我们将SQL语句和Java代码分离


二、Mybatis搭建项目

 1、创建Java工程,如图2-1,2-2所示

                                                                                         创建项目 2-1

                                                     创建项目 2-2

2、导入所需的jar包:创建folder——>导入jar包,如图2-3,2-4、2-5所示:

                                                                                导入jar包 2-3

                                                 导入jar包 2-4

                                                                     导入jar包 2-5

3、配置Mybatis文件:点击src——>new——>other,出现如图2-7的页面,搜索XML,创建mybatis的XML文件,完成后点击finish如图2-8所示

                                                  配置mybatis  2-7

                                                      配置mybatis  2-8

3、创建项目其余的模块,如图2-9所示:

                           项目模块  2-9

4、书写各部分的Java代码,如下所示:

 mybatis中的代码:

<?xml version="1.0" encoding="UTF-8"?>

<!-- 必需要有这天语句,否则无法使用configuration标签 -->
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
	
	<!--配置数据库信息,可以配置多个数据库,比如用于开发的,用于测试的-->
	<environments default="mysql"> <!-- 如果default的值与environment中id的值相等,则默认连接的是该数据库 -->
		<environment id="mysql">
			<transactionManager type="JDBC"></transactionManager>
			<dataSource type="POOLED">
				<property name="driver" value="com.mysql.jdbc.Driver"/>
				<property name="url" value="jdbc:mysql://39.106.122.229/venus"/>
				<property name="username" value="root"/>
				<property name="password" value="root"/>
			</dataSource>
		</environment>
	</environments>
	
	<!-- 注册mapper xml文件,即找到书写的有sql语句大那个文件 -->
	<mappers>
		<mapper resource="area.xml" />
	</mappers>
	
</configuration>

 area.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">

<!--只声明了接口,没有Dao层,由动态代理类创建的对象去实现接口里面的方法,并执行sql语句 -->
<mapper namespace="com.jd.area.IAreaDao">

	<!-- 唯一的的标识,方法名;resultType:返回值类型  -->
	<select id="getNames" resultType="java.lang.String">
		select name from area where code=#{code}
	</select>
	
</mapper>

IAreaDao中的代码:

package com.jd.area;

public interface IAreaDao {
	
	String getNames(String code);

}

Test中的代码:

public class Test {
	public static void main(String[] args) throws IOException {
		
		//获取SqlSessionFactory对象
		InputStream inputStream = Resources.getResourceAsStream("mybatis.xml");
		SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
		
		//获取SqlSession对象,代表与数据库的一次会话,用完需要关闭
		SqlSession sqlSession = sqlSessionFactory.openSession();
		
		//获取aAreaDao接口实现类对象,即动态代理类对象
		IAreaDao aAreaDao = sqlSession.getMapper(IAreaDao.class);
		
		//证明使用的是动态代理
		System.out.println(aAreaDao.getClass());
		
		//调用getNames,输出地域的名字输出结果,实际上是动态代理对象去处理,动态代理对象实现了IAreaDao接口,可以认为这里是接口回调,动态代理类是接口的实现类
		System.out.println(aAreaDao.getNames("370982"));
		
		//关闭sqlSession,释放资源
		sqlSession.close();
	}
}

5、运行Test内的代码,输出结果如图2-10所示:

                                                                                    结果 2-10

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值