mybatis入门_动力节点Java学院整理
发布时间 - 2026-01-11 03:06:55 点击率:次本文为大家分享了mybatis入门学习资料,供大家参考,具体内容如下

所需要用到的其他工具或技术:
项目管理工具 : Maven
测试运行工具 : Junit
数据库 : Derby
废话不多说,直接代码
Maven Dependencies:
<dependencies>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.2.7</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.9</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.derby</groupId>
<artifactId>derby</artifactId>
<version>10.10.2.0</version>
</dependency>
<dependency>
<groupId>org.apache.derby</groupId>
<artifactId>derbyclient</artifactId>
<version>10.10.2.0</version>
</dependency>
</dependencies>
SQL 建表及数据插入:
CREATE TABLE USER_TEST_TB( ID INT PRIMARY KEY, USERNAME VARCHAR(20) NOT NULL, PASSWORD VARCHAR(20) NOT NULL, NICKNAME VARCHAR(20) NOT NULL ); INSERT INTO USER_TEST_TB VALUES(1,'1st','111','Jack'); INSERT INTO USER_TEST_TB VALUES(2,'2nd','222','Rose'); INSERT INTO USER_TEST_TB VALUES(3,'3rd','333','Will');
Mybatis配置文件 src/main/resource源目录下
test-mybatis-configuration.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>
<properties>
<property name="driver" value="org.apache.derby.jdbc.ClientDriver" />
<property name="url"
value="jdbc:derby://localhost:1527/freud;create=true" />
</properties>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" value="${driver}" />
<property name="url" value="${url}" />
</dataSource>
</environment>
</environments>
<mappers>
<!-- <mapper class="com.freud.practice.UserMapper" /> -->
<mapper resource="com/freud/practice/UserMapper.xml" />
</mappers>
</configuration>
UserMapper.xml Mapper文件(src/main/java/com.freud.practice目录下)
<?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="com.freud.practice.UserMapper">
<select id="getUser" resultType="com.freud.practice.User">
select *
from USER_TEST_TB
</select>
</mapper>
User.Java对象类(src/main/java/com.freud.practice目录下)
package com.freud.practice;
public class User
{
private Integer id;
private String username;
private String password;
private String nickname;
public Integer getId()
{
return id;
}
public void setId(Integer id)
{
this.id = id;
}
public String getUsername()
{
return username;
}
public void setUsername(String username)
{
this.username = username;
}
public String getPassword()
{
return password;
}
public void setPassword(String password)
{
this.password = password;
}
public String getNickname()
{
return nickname;
}
public void setNickname(String nickname)
{
this.nickname = nickname;
}
}
UserMapper.java Mapper类(src/main/java/com.freud.practice目录下)
package com.freud.practice;
import java.util.List;
import org.apache.ibatis.annotations.Select;
public interface UserMapper
{
//@Select("SELECT * FROM USER_TEST_TB")
public List<User> getUser();
}
测试类TestMyBatis.java(src/test/java/com.freud.practice目录下)
package com.freud.practice;
import java.io.InputStream;
import java.text.MessageFormat;
import java.util.List;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Before;
import org.junit.Test;
public class TestMyBatis
{
private String source;
private InputStream inputStream;
private SqlSessionFactory sqlSessionFactory;
@Before
public void setUp()
{
source = "test-mybatis-configuration.xml";
}
@Test
public void testXMLConfingureSessionFactory()
{
try
{
inputStream = TestMyBatis.class.getClassLoader().getResourceAsStream(source);
sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
SqlSession session = sqlSessionFactory.openSession();
List<User> users = (List) session.selectList("com.freud.practice.UserMapper.getUser");
System.out.println("Query by XML configuration...");
this.printUsers(users);
UserMapper userMapper = session.getMapper(UserMapper.class);
System.out.println("\r\nQuery by annotation configuration...");
this.printUsers(userMapper.getUser());
}
catch (Exception e)
{
e.printStackTrace();
}
}
private void printUsers(final List<User> users)
{
int count = 0;
for (User user : users)
{
System.out.println(MessageFormat.format("==User[{0}]=================", ++count));
System.out.println("User Id: " + user.getId());
System.out.println("User UserName: " + user.getUsername());
System.out.println("User Password: " + user.getPassword());
System.out.println("User nickname: " + user.getNickname());
}
}
}
以上是使用XML作为Mapper配置文件的一个入门,其实Mybatis还支持Annotation的方式,具体操作如下:
1. 打开UserMapper.java中的注释。
2. 打开test-mybatis-configuration.xml中的注释,并注释掉现有的Mapper
3. 删除UserMapper.xml文件
这种是Mybatis的Annotation方式的Mapper配置。个人比较偏向于XML方式,所以后续的教程会更倾向于XML配置的方式来写。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# mybatis
# 入门
# 一小时迅速入门Mybatis之bind与多数据源支持 Java API
# JAVA MyBatis入门学习过程记录
# 深入浅出JAVA MyBatis-快速入门
# Java持久层框架Mybatis入门详细教程
# Java Mybatis框架入门基础教程
# Java之MyBatis入门详解
# 目录下
# 配置文件
# 多说
# 大家分享
# 所需要
# 倾向于
# 具体内容
# 大家多多
# 来写
# 具体操作
# 学习资料
# src
# main
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?
使用Dockerfile构建java web环境
Laravel用户密码怎么加密_Laravel Hash门面使用教程
手机软键盘弹出时影响布局的解决方法
制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?
Laravel如何记录日志_Laravel Logging系统配置与自定义日志通道
,怎么在广州志愿者网站注册?
制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?
详解Huffman编码算法之Java实现
Java解压缩zip - 解压缩多个文件或文件夹实例
齐河建站公司:营销型网站建设与SEO优化双核驱动策略
如何在阿里云虚拟主机上快速搭建个人网站?
如何在阿里云购买域名并搭建网站?
Linux后台任务运行方法_nohup与&使用技巧【技巧】
如何在建站之星绑定自定义域名?
如何快速搭建高效服务器建站系统?
Laravel Octane如何提升性能_使用Laravel Octane加速你的应用
如何在云主机上快速搭建网站?
Laravel Telescope怎么调试_使用Laravel Telescope进行应用监控与调试
Laravel如何使用Passport实现OAuth2?(完整配置步骤)
如何彻底删除建站之星生成的Banner?
如何在宝塔面板中修改默认建站目录?
在线教育网站制作平台,山西立德教育官网?
济南网站建设制作公司,室内设计网站一般都有哪些功能?
西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?
Laravel与Inertia.js怎么结合_使用Laravel和Inertia构建现代单页应用
Laravel如何实现密码重置功能_Laravel密码找回与重置流程
高端建站三要素:定制模板、企业官网与响应式设计优化
简单实现Android文件上传
香港服务器租用费用高吗?如何避免常见误区?
香港服务器建站指南:外贸独立站搭建与跨境电商配置流程
如何用景安虚拟主机手机版绑定域名建站?
美食网站链接制作教程视频,哪个教做美食的网站比较专业点?
简历没回改:利用AI润色让你的文字更专业
Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID
Laravel怎么生成URL_Laravel路由命名与URL生成函数详解
网站制作大概要多少钱一个,做一个平台网站大概多少钱?
武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?
logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?
瓜子二手车官方网站在线入口 瓜子二手车网页版官网通道入口
Laravel如何与Pusher实现实时通信?(WebSocket示例)
Laravel中的withCount方法怎么高效统计关联模型数量
php增删改查怎么学_零基础入门php数据库操作必知基础【教程】
HTML5打空格有哪些误区_新手常犯的空格使用错误【技巧】
Windows驱动无法加载错误解决方法_驱动签名验证失败处理步骤
Laravel Artisan命令怎么自定义_创建自己的Laravel命令行工具完全指南
HTML5建模怎么导出为FBX格式_FBX格式兼容性及导出步骤【指南】
java ZXing生成二维码及条码实例分享
Laravel如何处理CORS跨域问题_Laravel项目CORS配置与解决方案
Windows家庭版如何开启组策略(gpedit.msc)?(安装方法)
下一篇:可信计算技术在能源领域的应用
下一篇:可信计算技术在能源领域的应用

