MyBatis的初步使用

MyBatis:是一个轻量级的数据库管理框架,更多的使用配置文件来设置连接数据库的属性,达到解耦合的效果。

在项目路径下创建一个conf文件(Source Folder类型)用来存放配置文件,conf文件(与src文件同级)下的文件最终会和src文件下的文件合并到bin文件,即与src同级文件的路径也作为类路径。

        如:conf文件下有1.txt   文件的路径为 :1.txt

bin文件下也称作类路径下。

总结:1、全局配置文件注册sql映射文件

           2、sql映射文件绑定接口,接口方法,以及Bean类。

           3、测试获得接口实例化对象,调用方法获得数据库映射到Bean类的实例化对象。

1、新建一个全局配置文件mybatis-config.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/mybatis"/>
		<property name="username" value="root"/>
		<property name="password" value="123456"/>
	</dataSource>
	</environment>
	</environments>
	<!-- 将我们写好的sql映射文件(EmployeeMapper.xml)一定要注册到全局配置文件(mybatis-config.xml)中 -->
	<mappers>
		<mapper resource="EmployeeMapper.xml"/>
	</mappers>
	
</configuration>

每个sql映射文件都需要在全局配置文件下的mappers标签下通过添加<mapper>进行注册:

        <mapper resource="sql映射文件名.xml"/>

2、在conf目录下继续新建一个sql映射文件EmployeeMapper.xml来存放sql语句:此处存放一个查询语句

<?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">
    <!-- 
    sql映射文件:用来存放sql语句,需要在全局配置文件中注册

    namespace:名称空间;绑定的接口的全类名
    id:唯一标识符,用来绑定接口的方法名
    resultType:返回值类型
    #{id}:相当于占位符,#{Bean对象的属性名},由select标签的id值即接口的方法传入参数来确定占位符
           实际值,与该方法的参数名无关,参数名不需要与bean属性名对应

    public Employee getEmpById(Integer id);
     -->
 

<mapper namespace="mybatis.dao.EmployeeMapper">
	<select id="getEmpById" resultType="mybatis.bean.Employee">
		select id,last_name lastName,email,gender from tb1_employee where id = #{id}
	</select>
</mapper>

同样的sql配置文件也需要一个<mapper>来设置属性,如从数据库中映射到对象的类(resultType)、获取占位id实际值使用的方法(实际就是该方法传入的参数就是占位符实际值)、以及sql映射文件对应的接口(namespace)。

 

3、当然我们还需要设置该接口以及对应方法:

package mybatis.dao;

import mybatis.bean.Employee;

public interface EmployeeMapper {
	public Employee getEmpById(Integer id);
}

 

4、最后执行sql语句代码:

	//获取工厂对象方法
	private static SqlSessionFactory getSqlSessionFactory() throws IOException {
		String resource = "mybatis-config.xml";
		InputStream inputStream = Resources.getResourceAsStream(resource);
		SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
		return sqlSessionFactory;
	}
	public static void main(String[] args) throws Exception {
		//获取工厂对象
		SqlSessionFactory sqlSessionFactory = getSqlSessionFactory();
		
		//获取session,session表示一个会话即对数据库的一次操作
		SqlSession session = sqlSessionFactory.openSession();
		
		try {
			// session对象的getMapper方法传入接口class获得代理对象(接口的实例化对象)
			EmployeeMapper mapper = session.getMapper(EmployeeMapper.class);
			//通过设置好的方法传入占位符值得到Bean对象
			Employee employee = mapper.getEmpById(1);
		} finally {
			//会话使用完要进行关闭
			session.close();
		}
	}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值