基于注解的方式搭建mybatis开发框架
1、创建工程
<groupId>com.hope</groupId>
<artifactId>day01_eesy_01mybatis</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
2、添加mybatis坐标
在pom.xml中添加如下的坐标:
<dependencies>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.5</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.6</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.12</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
</dependencies>
3、编写实体类和dao接口
4、编写 SqlMapConfig.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="mysql">
<!-- 配置mysql的环境 -->
<environment id="mysql">
<!-- 配置事务类型 -->
<transactionManager type="JDBC"/>
<!-- 配置数据源(连接池) -->
<dataSource type="POOLED">
<!-- 配置数据库的四个基本信息 -->
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/eesy"/>
<property name="username" value="root"/>
<property name="password" value="123"/>
</dataSource>
</environment>
</environments>
<!-- 指定映射配置文件的位置,映射配置文件指的是每个dao独立的配置文件 -->
<mappers>
<mapper class="com.hope.dao.IUserDao"/>
</mappers>
</configuration>
5、 编写测试类
2.2.7 编写测试类
/**
*
* <p>Title: MybatisTest</p>
* <p>Description: 测试 mybatis 的环境</p>
* <p>Company: http://www.itheima.com/ </p>
*/
public class MybatisTest {
public static void main(String[] args)throws Exception {
//1.读取配置文件
InputStream in = Resources.getResourceAsStream("SqlMapConfig.xml");
//2.创建 SqlSessionFactory 的构建者对象
SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
//3.使用构建者创建工厂对象 SqlSessionFactory
SqlSessionFactory factory = builder.build(in);
//4.使用 SqlSessionFactory 生产 SqlSession 对象
SqlSession session = factory.openSession();
//5.使用 SqlSession 创建 dao 接口的代理对象
IUserDao userDao = session.getMapper(IUserDao.class);
//6.使用代理对象执行查询所有方法
List<User> users = userDao.findAll();
for(User user : users) {
System.out.println(user);
}
//7.释放资源
session.close();
in.close();
}
}
最新文章
- react-native-vector-icons的简单使用,图片,按钮,标签视图,导航条
- python strip()函数 介绍
- JDBC数据库1
- Discuz的安装 (原创帖,转载请注明出处)
- C#代码示例_函数
- 最牛叉的街机游戏合集 &; 模拟器
- php框架推荐
- 客户端获取服务器SessionID (Asp.net SessionID)
- SQL错误:sql server 目录名无效
- <;jsp:include>;和<;%@include%>;的区别
- JDBC 连接Oracle
- 问题11:web前端开发规范手册(转)
- android activity之间用广播传输数据
- [UE4]传送门:场景切换
- nodejs ffi(DLL)
- java代码中实现android背景选择的selector-StateListDrawable的应用
- iOS - swift项目接入bugly - 报错, 配置符号表,下载Java环境,
- [LeetCode]SetMatrix Zero
- BZOJ1396: 识别子串(后缀自动机 线段树)
- python基础之协程函数、列表表达式、生成器表达式
热门文章
- &#127942;【Alibaba中间件技术系列】「RocketMQ技术专题」小白专区之领略一下RocketMQ基础之最!
- [hdu6581]Vacation
- C# 将Excel转为PDF时自定义表格纸张大小
- 快速入门上手Markdown
- BZOJ 4556 [HEOI2016/TJOI2016]字符串
- Codeforces 983E - NN country(贪心+倍增优化)
- UVA12267 Telephone Network
- [R] 如何在Linux命令行进行参数传入?
- 31-Longest Common Prefix
- EPOLL原理详解(图文并茂)