一个小例子来看下MyBatis的运行过程:
1、添加mybatis依赖包
在github上有下载:https://github.com/mybatis/mybatis-3/releases
2、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> <!-- 尽管可以配置多个环境,每个 SqlSessionFactory 实例只能选择其一 每个数据库对应一个 SqlSessionFactory 实例 --> <environments default="development"> <environment id="development"> <!-- 如果你正在使用 Spring + MyBatis,则没有必要配置事务管理器, 因为 Spring 模块会使用自带的管理器来覆盖前面的配置。 --> <transactionManager type="JDBC"></transactionManager> <!-- UNPOOLED:无连接池 POOLED:有连接池 JNDI:集中或者在外部配置数据源 --> <dataSource type="POOLED"> <property name="driver" value="${driver}"/> <property name="url" value="${url}"/> <property name="username" value="${username}"/> <property name="password" value="${password}"/> </dataSource> </environment> </environments> <mappers> <mapper resource="conf/sql/userMapper.xml" /> <mapper resource="conf/sql/classMapper.xml"/> <mapper resource="conf/sql/userDMapper.xml"/> <mapper resource="conf/sql/userPMapper.xml"/> </mappers> </configuration>
3、sql数据映射文件
一个简单的SQL映射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"> <!-- 1、完全限定名(比如“com.mypackage.MyMapper.selectAllThings”)将被直接查找并且找到即用。 2、短名称(比如“selectAllThings”)如果全局唯一也可以作为一个单独的引用。 如果不唯一,有两个或两个以上的相同名称(比如“com.foo.selectAllThings ”和“com.bar.selectAllThings”), 那么使用时就会收到错误报告说短名称是不唯一的,这种情况下就必须使用完全限定名。 --> <mapper namespace="org.mybatis.UserMapper"> <select id="selectUser" resultType="User"> select * from user </select> <select id="selectUserById" resultType="User" parameterType="int"> select * from user where id = #{id} </select> <!-- useGeneratedKeys="true" keyProperty="id" 在mysql环境下,可以返回主键 --> <insert id="saveUser" useGeneratedKeys="true" keyProperty="id" parameterType="User"> insert into user(name,sex,age) values(#{name},#{sex},#{age}) </insert> <update id="updateUser" parameterType="User"> update user set name = #{name}, sex = #{sex},age = #{age} where id = #{id} </update> <delete id="deleteUser" parameterType="int"> delete from user where user.id = #{id} </delete> </mapper>
4、获取sqlSessionFactory,以及SqlSession.
获取SqlSessionFactory有两种方式,这里我们先来看第一种,以XML配置文件来创建sqlSessionFactory
/** * 使用XML配置文件获取sqlsession * @return */ public static SqlSession createSqlSessionByXML(){ //获取config.xml文件 String resource = "conf/config.xml"; InputStream input = null; try { input = Resources.getResourceAsStream(resource); //获得sqlsession SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(input); session = factory.openSession(); return session; } catch (IOException e) { e.printStackTrace(); return null; } }
5、执行映射SQL
在这里,使用junit4来测试执行方法,如下:
@Test public void queryUsersByXML(){ //使用xml配置执行 try{ session = SessionUtil.createSqlSessionByXML(); //使用mapper.xml文件执行 User user = session.selectOne("org.mybatis.UserMapper.selectUserById",1); }finally{ session.close(); } }
相关推荐
mybatis在持久层框架中还是比较火的,一般项目都是基于ssm。虽然mybatis可以直接在xml中...《MyBatis-Plus入门文档》主要介绍了MyBatis-Plus入门使用,以及关于mybatis-plus的更多介绍及特性,感兴趣的可以下载学习一下
这个“mybatis-plus快速入门项目”是专为初学者设计的,旨在帮助他们快速掌握MyBatis-Plus的基本操作。在这个项目中,你将学习到如何配置、使用以及执行各种SQL操作。 1. **MyBatis-Plus简介** MyBatis-Plus(简称...
MyBatis-Plus是一个在MyBatis基础上进行扩展的轻量级框架,它极大地简化了对数据库的操作,提供了包括插入、删除、更新、查询在内的多种便捷功能。在本示例中,我们将探讨如何使用MyBatis-Plus与Spring Boot集成,以...
在这个名为 "mybatis-plus-demo.zip" 的压缩包文件中,我们可以看到一个基础的 MyBatis-Plus 入门示例,通常包括配置文件、实体类、Mapper接口、Service以及Controller等关键组件。 1. **MyBatis-Plus 简介**: ...
在本文中,我们将深入探讨"Mybatis-Plus入门第二天讲义1"所涵盖的知识点,主要涉及ActiveRecord模式、Mybatis-Plus的基本操作以及如何在Java中使用这些概念。 首先,我们来理解什么是ActiveRecord。ActiveRecord是...
首先,快速入门是了解任何技术的第一步。Mybatis-Plus提供了简单易用的配置和快速初始化方法,使得开发者能快速建立数据库连接并进行数据操作。在实践中,我们需要理解其基本的实体类、Mapper接口以及XML或注解方式...
Mybatis-Plus入门案例** 为了开始使用Mybatis-Plus,我们需要进行以下步骤: - **添加日志输出**:在配置文件中设置日志级别,以便在开发过程中查看SQL执行情况。 - **编辑POJO对象**:使用Lombok注解如`@Data`、...
#### 第二章:入门 1. **安装** - 要使用MyBatis-Spring模块,只需在项目类路径中添加`mybatis-spring-1.0.0.jar`文件即可。 - 如果使用Maven,可以在`pom.xml`文件中添加以下依赖项: ```xml <groupId>org....
5. **README.md**或**README.html**:通常包含项目的基本信息、安装指南、快速入门教程等内容,帮助用户理解和使用MyBatis。 MyBatis的主要特点包括: - **XML或注解配置**:MyBatis支持通过XML配置文件或者Java...
mybatis-第1天讲义.md
在"spring boot +Mybatis-Plus 入门学习 搭建我的第一个项目"中,我们将探讨如何结合这两个工具来创建一个基本的Java Web应用。以下是一些核心知识点: 1. **Spring Boot基础知识**: - **自动配置**:Spring Boot...
本案例 "mybatis-plus-dynamic.rar" 提供了一个多数据源入门项目,其中包含了 Swagger 工具用于 API 文档的生成以及 Maven(POM 文件)作为项目构建工具。 1. **MyBatis-Plus**:MyBatis-Plus 是 MyBatis 的增强...
MyBatis-Plus的入门和使用也十分简单。以MySQL为例,首先需要创建数据库,然后创建数据表,创建表后进行数据插入操作,最后通过查询操作来验证数据的插入。这些操作与传统的SQL编写没有太大的区别,但MyBatis-Plus...
通过“start.spring.io”服务,开发者可以便捷地选择所需的Spring Boot starter依赖,例如"spring-boot-starter-data-jpa"和"spring-boot-starter-web",前者用于JPA数据访问,后者则是Web应用的入门依赖。...
示例配置文件有助于快速理解和使用Mybatis Generator,通常会包含一些常见配置选项的注释,帮助新手入门。 使用Mybatis Generator时,首先需要在项目的类路径下放置配置文件,并指定要操作的数据库表。配置文件中...
编译器版本:IntelliJ IDEA 2020.3.2 x64 JDK版本:java 1.8.0_111 SpringBoot集成MyBatis-Plus快速入门Demo,包括CRUD操作、多条件查询、性能分析等代码实现。
3. **快速入门** 初始化MyBatis-Plus,需要在Spring Boot的配置文件中添加MyBatis-Plus的相关依赖,然后创建实体类、Mapper接口和对应的XML文件,最后通过BaseMapper接口实现基本的CRUD操作。 4. **Lambda查询** ...
本课程全面讲解了Mybatis-Plus框架的使用,从快速入门到原理分析再到插件的应用。每一个知识点都有案例进行演示学习,最终通过学习你将全面掌握MP的使用,从而使Mybatis的的开发更加的高效,达到事半功倍的效果。 ...
本教程将向您详细介绍如何利用SpringBoot、MyBatis-Plus和Swagger2构建一个优雅的全注释入门项目。这个项目不仅提供了代码生成器,还带有详细的注释,能够自动生成Swagger2注解,使您的代码更加规范和易读。我们将...
### myBatis-spring安装与快速入门指南 在本文档中,我们将详细介绍如何利用myBatis-spring模块来搭建一个简单且高效的事务处理应用程序。myBatis-spring是myBatis框架的一个扩展,它简化了myBatis与Spring框架集成...