什么是mybatis
MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除
了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索。MyBatis可以使用简单的
XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通的
Java对象)映射成数据库中的记录。
每一个MyBatis的应用程序都以一个SqlSessionFactory 对象的实例为核心。SqlSessionFactory 对 象的 实例 可以 通 过SqlSessionFactoryBuilder 对 象 来获 得 。SqlSessionFactoryBuilder 对象可以通过XML配置文件,或从以往使用惯例中准备好的Configuration类实例中来构建SqlSessionFactory对象。
备注:mybatis指的是ibatis3,它和ibatis2有很大的区别。mybatis3需要jdk1.5以上的支持,因为其中增加了注解和泛型。
从XML中构建SqlSessionFactory对象
从XML中构建SqlSessionFactory实例,建议使用类路径下的资源文件来配置。
String resource = "Configuration.xml";
Reader reader = Resources.getResourceAsReader(resource);
sqlMapper = new SqlSessionFactoryBuilder().build(reader);
XML配置文件的内容包含对mybatis系统的核心配置,包含获取数据库连接实例的数据源和决定事务范围和控制的事务管理器。简单实例如下:写道
<?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://127.0.0.1:3306/test1"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="org/mybatis/example/BlogMapper.xml"/>
</mappers>
</configuration>
在XML中还有很多的信息可以配置,以上实例只是指出最关键的部分。
从SqlSessionFactory中获取sqlsession
现在已经知道了如何获取SqlSessionFactory对象了,我们可以通过代码
写道
SqlSession session = sqlMapper.openSession();
来获得SqlSession的实例。
SqlSession对象完全包含以数据库为背景的所有执行SQL操作的方法。我们可以用SqlSession对象实例来直接执行已经映射的SQL语句。
SqlSession session = sqlSessionFactory.openSession();
try {
BlogMapper mapper = session.getMapper(BlogMapper.class); //映射BlogMapper接口的实现
Blog blog = mapper.selectBlog(101);
} finally {
session.close();
}
在通过XML文件创建SqlSessionFactory时,在XML文件中,配置了一个基于XML的映射语句
<mappers>
<mapper resource="org/mybatis/example/BlogMapper.xml"/>
</mappers>
BlogMapper.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="org.mybatis.example.BlogMapper">
<select id="selectBlog" parameterType="int" resultType="Blog">
select * from Blog where id = #{id}
</select>
</mapper>
分享到:
相关推荐
Mybatis是一个流行的持久层框架,它在企业级开发中被广泛应用。它主要用于解决与数据库交互时的映射问题,是一种半ORM(对象关系映射)框架。Mybatis通过使用简单的XML或注解的方式,将对象与数据库表进行映射,从而...
MyBatis是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs...
本示例将探讨如何整合SpringMVC和MyBatis框架来实现一个基于Oracle数据库的登录功能。首先,让我们详细了解一下这两个框架以及它们在登录系统中的作用。 SpringMVC是Spring框架的一部分,它是一个用于构建Web应用...
关于mybatis-plus的更多介绍及特性,可以参考本文档,详细的介绍了从入门到提高的一个过程,感兴趣的可以下载了解。 MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增 强不做改变,为...
以上只是MyBatis框架的一部分关键知识点,完整的中文离线文档将详细介绍每个概念,并提供丰富的示例,帮助开发者深入理解和使用MyBatis。通过学习这份文档,你可以掌握如何高效地操作数据库,构建高性能的数据访问层...
总的来说,《一头扎进MyBatis3》第一讲主要介绍了MyBatis的基本使用流程,包括环境搭建、配置文件设置、Mapper接口和XML文件的编写,以及如何通过MyBatis执行SQL操作。这个HelloWorld示例为后续深入学习MyBatis的...
以上是Mybatis的基本知识点,这份文档详细介绍了Mybatis的各个方面,包括使用方法、最佳实践以及常见问题的解决方案,对于理解和应用Mybatis有着极大的帮助。无论是初学者还是经验丰富的开发者,都能从中受益匪浅。
《SpringBoot整合TkMybatis:实现高效优雅的CRUD操作》 在当今的软件开发领域,...通过本文的介绍,相信你已经对如何在SpringBoot项目中集成并使用TkMybatis有了深入的理解,让我们一起享受更加优雅的编程体验吧!
这份"MyBatis 中文官方文档"是学习和理解MyBatis的重要资源,其中包含了详细的介绍、示例和最佳实践。 首先,MyBatis 的核心组件包括SqlSessionFactory和SqlSession。SqlSessionFactory是创建SqlSession的工厂,而...
MyBatis是一个流行的Java持久化框架,它的设计目标是将SQL数据库访问与Java对象之间的映射关系解耦,提供了一种高效且灵活的方式来处理数据库操作。这个框架的主要特点是它的简单易用性、灵活性、对SQL的完全控制...
MyBatis提供了一个实用工具类来帮助完成这一过程。 ### 配置XML 配置XML文件是MyBatis的核心组成部分之一,用于定义数据源、事务管理器、映射器等核心组件的配置信息。XML配置文件允许灵活地控制MyBatis的行为,...
mybatis实战教程mybatis in action之一开发环境搭建 mybatis实战教程mybatis in action之二以接口的方式编程 mybatis实战教程mybatis in action之三实现数据的增删改查 mybatis实战教程mybatis in action之四实现...
MyBatis的两个关键版本,即mybatis-3.2.8和mybatis-3.3.0-SNAPSHOT,具有各自的特点和改进,以下将详细介绍这两个版本的知识点。 首先,mybatis-3.2.8是MyBatis的一个稳定发布版,主要关注于性能优化和一些bug修复...
本篇文章将详细介绍两个针对MyBatis框架的IntelliJ IDEA插件——MyBatisCodeHelper-Pro和MybatisX,它们都是为了提升MyBatis开发体验而设计的。 首先,我们来看MyBatisCodeHelper-Pro。这款插件是专为MyBatis开发者...
1. **MyBatisX插件介绍** MyBatisX插件是针对IntelliJ IDEA集成开发环境的一款增强工具,主要服务于MyBatis框架的使用者。它提供了诸如智能代码提示、快速生成Mapper XML、自动同步Mapper接口与XML、自定义SQL片段...
本篇将详细介绍如何将Spring MVC与Mybatis进行整合,并提供相关配置和操作步骤。 **1. Spring MVC 概述** Spring MVC是Spring框架的一部分,它是一个基于模型-视图-控制器(MVC)设计模式的Web应用框架。它负责处理...
【标题】"Mybatis系列教程Mybatis插件共8页.pdf.z" 提供的信息表明,这是一个关于Mybatis框架的教程,特别关注Mybatis插件的使用。Mybatis是一款流行的Java持久层框架,它允许开发者直接编写SQL语句,提供灵活的数据...
MybatisX是一款针对IntelliJ IDEA的高效MyBatis开发插件,版本为1.6.1。这个插件旨在简化MyBatis框架在IDEA中的使用,提高开发效率,帮助开发者快速完成与MyBatis相关的各种任务。下面将详细介绍这款插件的主要功能...