一个简单的mybatis案例

简介: 创建一个简单的mybatis案例   案例功能 写一个Java程序通过mybatis连接MySQL数据库并插入一条记录。   项目步骤 1.新建一个Java项目mybatistest 2.引入jar包 log4j-1.

创建一个简单的mybatis案例:

 

案例功能:

写一个Java程序通过mybatis连接MySQL数据库并插入一条记录。

 

项目步骤:

1.新建一个Java项目mybatistest

2.引入jar包:

  • log4j-1.2.17.jar
  • mybatis-3.4.6.jar
  • mysql-connector-java-5.1.29.jar

3.src下新建2个包:

  • com.radish.domain
  • com.radish.mapper
  • test

4.新建表:


CREATE TABLE `tb_user` (
  `ID` int(11) NOT NULL AUTO_INCREMENT,
  `NAME` varchar(18) DEFAULT NULL,
  `SEX` char(2) DEFAULT NULL,
  `AGE` int(11) DEFAULT NULL,
  PRIMARY KEY (`ID`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;


5.创建POJO  src/com/radish/domain/User.java:


private Integer id;
private String name;
private String sex;
private Integer age;


省略构造方法和get/set方法

6.创建mybatis-config.xml

详见我的另外一篇博文

 

7.创建log4j.properties:


 
log4j.rootLogger=ERROR, stdout
 
log4j.logger.com.radish.mapper.UserMapper=DEBUG
 
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n


 

8.创建测试类:


package Test;
 
import java.io.InputStream;
 
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
 
import com.radish.domain.User;
 
public class MybatisTest {
public static void main(String[] args) throws Exception{
// 读取mybatis-config.xml的配置
InputStream inputStream = Resources.getResourceAsStream("mybatis-config.xml");
// 初始化mybatis,创建SqlSessionFactory类的实例
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder()
.build(inputStream);
// 创建session对象
SqlSession session = sqlSessionFactory.openSession();
User user = new User("admin", "男", 26);
session.insert("com.radish.mapper.UserMapper.save", user);
session.commit();
session.close();
}
}


执行结果:

控制台输出日志信息


数据库:



  • 另外提一下在练习中遇到一次preparedstatement is close 的异常提示。这是因为之前在做的时候顺手拉进了一个MySQL的3.X的驱动包,可能是这个版本的驱动包的preparedstatement类的源码实现有差异吧,以后有兴致再回去翻阅,目前是将项目中的驱动jar包改成了5.X的版本,问题解决。


项目在附录中,欢迎指点。

相关文章
|
4月前
Mybatis+mysql动态分页查询数据案例——测试类HouseDaoMybatisImplTest)
Mybatis+mysql动态分页查询数据案例——测试类HouseDaoMybatisImplTest)
|
4月前
|
Java 关系型数据库 数据库连接
Mybatis+MySQL动态分页查询数据经典案例(含代码以及测试)
Mybatis+MySQL动态分页查询数据经典案例(含代码以及测试)
|
4月前
Mybatis+mysql动态分页查询数据案例——条件类(HouseCondition)
Mybatis+mysql动态分页查询数据案例——条件类(HouseCondition)
|
4月前
Mybatis+mysql动态分页查询数据案例——分页工具类(Page.java)
Mybatis+mysql动态分页查询数据案例——分页工具类(Page.java)
|
4月前
Mybatis+mysql动态分页查询数据案例——房屋信息的实现类(HouseDaoMybatisImpl)
Mybatis+mysql动态分页查询数据案例——房屋信息的实现类(HouseDaoMybatisImpl)
|
4月前
|
SQL JavaScript Java
springboot+springm vc+mybatis实现增删改查案例!
springboot+springm vc+mybatis实现增删改查案例!
|
17天前
|
Java 数据库连接 Spring
后端框架入门超详细 三部曲 Spring 、SpringMVC、Mybatis、SSM框架整合案例 【爆肝整理五万字】
文章是关于Spring、SpringMVC、Mybatis三个后端框架的超详细入门教程,包括基础知识讲解、代码案例及SSM框架整合的实战应用,旨在帮助读者全面理解并掌握这些框架的使用。
后端框架入门超详细 三部曲 Spring 、SpringMVC、Mybatis、SSM框架整合案例 【爆肝整理五万字】
|
4月前
Mybatis+mysql动态分页查询数据案例——工具类(MybatisUtil.java)
Mybatis+mysql动态分页查询数据案例——工具类(MybatisUtil.java)
|
3月前
|
SQL Java 数据库连接
2万字实操案例之在Springboot框架下基于注解用Mybatis开发实现基础操作MySQL之预编译SQL主键返回增删改查
2万字实操案例之在Springboot框架下基于注解用Mybatis开发实现基础操作MySQL之预编译SQL主键返回增删改查
52 2
|
2月前
|
XML Java 数据格式
支付系统----微信支付20---创建案例项目--集成Mybatis-plus的补充,target下只有接口的编译文件,xml文件了,添加日志的写法
支付系统----微信支付20---创建案例项目--集成Mybatis-plus的补充,target下只有接口的编译文件,xml文件了,添加日志的写法