基本步骤:
- 加入jar包
- 定义dao接口
- 定义配置文件
- 实现dao接口
快速示例
环境
mysql数据库,已经表user,内有字段id,name,mark,其中id为主键,并且是自动递增类型
CREATE TABLE `user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(20) DEFAULT NULL,
`mark` varchar(100) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;
1.所需JAR包
mybatis-3.0.5.jar
2.对象实体类 User.java 包路径testMybatis.user
package testMybatis.user;
public class User {
Long id;
String name;
String mark;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getMark() {
return mark;
}
public void setMark(String mark) {
this.mark = mark;
}
@Override
public String toString() {
return "User [id=" + id + ", name=" + name + ", mark=" + mark + "]";
}
}
3.DAO层接口类 TestDao.java 包路径testMybatis.user
package testMybatis.user;
public interface TestDao {
public int insert(User user);
public User select(long id);
public List<User> selectAll();
public int delete(long id);
}
4.定义配置文件
(注意:文件位置与接口在同一位置,文件名与接口同名,后缀以.xml结尾)
示例文件TestDao.xml 位置 testMybatis.user;
<?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="testMybatis.user.TestDao">
<insert id="insert" parameterType="testMybatis.user.User" useGeneratedKeys="true" keyProperty="id">
insert into user (name,mark)
values (#{name},#{mark})
</insert>
<select id="select" parameterType="long" resultType="testMybatis.user.User">
select * from user
where name.id=#{id}
</select>
<select id="selectAll" resultType="testMybatis.user.User" >
select * from user
</select>
<delete id="delete" parameterType="long">
delete from user
where id = #{id}
</delete>
</mapper>
5.实现类TestDaoImp.java
(注意:本示例为快速测试使用的是编码配置数据源工厂,一般使用文件配置)
package testMybatis.user;
import java.util.List;
/**
* @author DingFengHua
* @since Apr 16, 2012
*/
public class TestDaoImp implements TestDao {
//当前用于快速测试,一般设计成单例使用工具类来调用
static SqlSessionFactory sqlSessionFactory;
static {
DataSource dataSource = new PooledDataSource("com.mysql.jdbc.Driver",
"jdbc:mysql://localhost/mybatis?userUnicode=true&characterEncoding=utf8", "admin", "123456");
Environment environment = new Environment("test", new JdbcTransactionFactory(), dataSource);
Configuration configuration = new Configuration(environment);
configuration.addMapper(TestDao.class);
sqlSessionFactory = new SqlSessionFactoryBuilder().build(configuration);
}
/*
* (non-Javadoc)
* @see testMybatis.user.testDao#insertName(testMybatis.user.User)
*/
@Override
public int insert(User user) {
SqlSession session = sqlSessionFactory.openSession();
int num = 0;
try {
TestDao dao = session.getMapper(TestDao.class);
num = dao.insert(user);
session.commit();
} finally {
session.close();
}
return num;
}
/*
* (non-Javadoc)
* @see testMybatis.user.testDao#select(long)
*/
@Override
public User select(long id) {
SqlSession session = sqlSessionFactory.openSession();
try {
TestDao dao = session.getMapper(TestDao.class);
return dao.select(id);
} finally {
session.close();
}
}
/*
* (non-Javadoc)
* @see testMybatis.user.testDao#delete(long)
*/
@Override
public int delete(long id) {
SqlSession session = sqlSessionFactory.openSession();
try {
TestDao dao = session.getMapper(TestDao.class);
int num = dao.delete(id);
session.commit();
return num;
} finally {
session.close();
}
}
/* (non-Javadoc)
* @see testMybatis.user.testDao#selectAll()
*/
@Override
public List<User> selectAll() {
SqlSession session = sqlSessionFactory.openSession();
try {
TestDao dao = session.getMapper(TestDao.class);
return dao.selectAll();
} finally {
session.close();
}
}
}
6.测试
public class Main {
public static void main(String... a) {
TestDao main = new TestDaoImp();
User user = new User();
user.setName("name1");
user.setMark("no mark");
System.out.println(main.insert(user));
//System.out.println(main.delete(1l));
for (User u : main.selectAll()) {
System.out.println(u);
}
}
}
完成
分享到:
相关推荐
2. **快速入门**:提供一个简单的示例,展示如何创建Mybatis的配置文件,以及如何集成到Java项目中,使开发者能快速上手。 3. **配置**:详细讲解Mybatis的配置文件,包括数据源配置、事务管理、日志配置等,这些...
SpringBoot简化了Spring应用程序的初始设置,而MyBatis则是一个优秀的持久层框架,它允许开发者将SQL语句直接编写在映射文件中,提供了灵活的数据访问能力。本文将深入探讨如何将这两个框架集成在一起,以创建一个...
这样的示例可以帮助初学者快速上手,了解MyBatis的基本工作流程。 【标签】"mybatis" 指出这个压缩包的内容主要围绕MyBatis框架。MyBatis的核心功能包括动态SQL、结果映射、事务管理等,这些都可以通过其提供的XML...
《SpringBoot+Spring+Mybatis项目工程Demo示例源代码》是一个典型的Java后端开发框架集成实例,旨在为开发者提供一个快速构建新项目的基础模板。这个压缩包包含了一个基于Spring Boot、Spring和Mybatis的简单工程...
MyBatis-Plus 是一个基于 MyBatis 的扩展框架,旨在简化开发流程,提供更高效、...通过与 SpringBoot 结合,可以快速构建数据库驱动的应用,提升开发效率。在使用过程中,不断探索其各种功能,可以进一步优化开发流程。
本项目示例将帮助你快速理解和上手SOHO-Mybatis框架。 ### 一、SOHO-Mybatis概述 SOHO-Mybatis旨在降低Mybatis的使用门槛,通过封装和抽象,提供了一套简洁的API,让开发者可以避免编写大量的XML配置和SQL映射文件...
### MyBatis详细示例操作知识点解析 #### 一、MyBatis简介及特性 ...从下载安装、项目创建到数据源配置、映射文件编写等各个环节进行了详细介绍,帮助初学者快速上手MyBatis框架,并为后续深入学习提供了坚实的基础。
MyBatis的资料库通常包含各种必要的组件和文档,以帮助开发者快速上手并有效使用这个框架。 在"MyBatis资料.zip"压缩包中,我们可以找到以下两个主要部分: 1. **2.资料**: 这部分可能包含了MyBatis的官方文档,...
- **简单易用**:MyBatis-Plus提供了简单的API,使得开发者能快速上手。 - **自动分页**:通过BaseMapper接口,自动处理分页逻辑。 - **条件构造**:通过QueryWrapper或LambdaQueryWrapper,可以方便地构造复杂...
这些内容可能帮助开发者快速上手 MyBatis 和 MyBatis-Spring 的整合,并在 MySQL 5.7 数据库平台上进行实际操作。 在使用 MyBatis 3.4.1 和 MyBatis-Spring 1.3.0 开发时,主要涉及以下知识点: 1. **MyBatis 配置...
标题中的“Spring_Mybatis_CRUD...对于初学者而言,这是一个很好的起点,可以帮助他们快速上手Spring和MyBatis的数据库操作。而对于有一定经验的开发者,这也能作为一个快速参考,理解如何在实际项目中进行CRUD操作。
- **简单易学**:MyBatis框架设计直观,学习成本低,开发者能快速上手。 - **灵活性**:允许自定义SQL语句、存储过程和高级映射,适应复杂业务场景。 - **降低耦合**:通过MyBatis,应用与数据库之间的耦合度显著...
SpringMVC 和 MyBatis 是两个非常流行的 Java 开发框架,它们在企业级 Web 应用开发中被广泛使用。...MyBatis 是一个轻量级的持久层框架,它简化了数据库操作,使开发者...这将有助于你在实际工作中快速上手和解决问题。
在 `fluent-mybatis-master` 压缩包中,包含了项目的源码、示例、文档以及构建脚本等资源,开发者可以通过研究这些内容,深入了解如何在实际项目中应用 `fluent-mybatis`,以提升 MyBatis 框架的使用体验。...
本压缩包"mybatis01.zip"显然是一个MyBatis的入门教程,包含快速上手的代码示例。下面,我们将深入探讨MyBatis的核心知识点。 首先,MyBatis 是一个基于 Java 的持久层框架,它提供了一个 SQL 映射框架,解决了将...
除此之外,可能还会有相关的示例代码、配置模板、教程文档等,帮助开发者快速上手和深入理解Mybatis的使用。 通过学习和实践这些资源,开发者能够更好地掌握Mybatis的精髓,提高开发效率,编写出更加健壮、可维护的...
MyBatis3_用户指南(附JavaDB实例).pdf:这是一份详细的MyBatis用户指南,包含了框架的使用方法、配置说明、API介绍以及示例。特别的是,这个版本还附带了一个使用JavaDB(Derby)数据库的实例,帮助开发者更好地理解...
《Java EE企业级应用开发教程》第二版,结合Spring、Spring MVC和MyBatis三大框架,为读者提供了全面...无论是对于初学者还是有经验的开发者,这都是一个宝贵的资源,能够帮助他们在实际项目中快速上手并提高开发效率。
**Spring整合Mybatis原理分析** 在Java Web开发中,Spring框架以其强大的依赖注入和面向切面编程能力,成为了事实上的核心框架。...同时,提供的SSM-shop项目可以作为实践操作的模板,帮助开发者快速上手。