上一节讲解了mybatis的概要介绍及宏观流程,可能大家知道一些概念,本章我们来一个简单的demo
1.创建数据库course_mybatis,并在其上创建表class_info:
CREATE TABLE `class_info` (
`classid` int(11) unsigned NOT NULL AUTO_INCREMENT,
`classname` varchar(255) DEFAULT NULL,
`classlocation` varchar(255) DEFAULT NULL,
`memo` varchar(255) DEFAULT NULL,
PRIMARY KEY (`classid`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8;
2.创建java项目 mybatisdemo01,并创建一个lib文件夹
3.导入jar包
4.将jar包添加到build path... 这一步就不贴图了,截止这里,工程文件就创建好了。
5.在项目上添加source folder -->config
6.在config中添加全局配置文件,名称建议是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="defaultEnvironment">
<environment id="defaultEnvironment">
<transactionManager type="JDBC"></transactionManager>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver" />
<property name="url"
value="jdbc:mysql://localhost:3306/course_mybatis?useUnicode=true&characterEncoding=utf8" />
<property name="username" value="root" />
<property name="password" value="root" />
</dataSource>
</environment>
</environments>
</configuration>
7.如下为解释:
8.创建pojo类,用来映射输出结果的类型
package com.jumore.mybatisdemo01.pojo;
public class ClassInfo {
private int classid;
private String classname;
private String classlocation;
private String memo;
public int getClassid() {
return classid;
}
public void setClassid(int classid) {
this.classid = classid;
}
public String getClassname() {
return classname;
}
public void setClassname(String classname) {
this.classname = classname;
}
public String getClasslocation() {
return classlocation;
}
public void setClasslocation(String classlocation) {
this.classlocation = classlocation;
}
public String getMemo() {
return memo;
}
public void setMemo(String memo) {
this.memo = memo;
}
@Override
public String toString() {
return "ClassInfo [classid=" + classid + ", classname=" + classname + ", classlocation=" + classlocation
+ ", memo=" + memo + "]";
}
}
9.在config文件夹中创建ClassInfoMapper.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">
<mapper namespace="mybatisdemo01">
<select id="findClassById" parameterType="int"
resultType="com.jumore.mybatisdemo01.pojo.ClassInfo">
SELECT * from class_info where classid=#{id}
</select>
</mapper>
10.对代码的解释
11.创建测试代码
package mybatisdemo01.test;
import java.io.IOException;
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 org.junit.Test;
import com.jumore.mybatisdemo01.pojo.ClassInfo;
public class Mybatis01Test {
@Test
public void findUserByIdTest() throws IOException{
//全局配置文件的文件名
String resource="SqlMapConfig.xml";
//将全局配置文件加载到Stream中
InputStream is=Resources.getResourceAsStream(resource);
//根据全局配置文件创建SqlSessionFactory
SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(is);
//生成SqlSession
SqlSession sqlSession=sqlSessionFactory.openSession();
//使用SqlSession执行指定的statement,并将结果返回给指定参数
ClassInfo classInfo=sqlSession.selectOne("mybatisdemo01.findClassById", 1);
//打印结果
System.out.println(classInfo);
}
}
12.整体的目录结构为:

本文详细介绍了一个使用MyBatis实现的简单示例项目。从数据库创建、项目搭建、配置文件解析到测试代码编写,一步步引导读者完成一个基本的增删改查操作。
1320

被折叠的 条评论
为什么被折叠?



