Mybatis框架簡單入門搭建
阿新 • • 發佈:2021-02-11
mybatis搭建框架基本步驟:
我用的是maven管理jar包,
第一步pom檔案配置
<!--mybatis核心包-->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.4</version>
</dependency>
<!--mysql驅動包-->
<dependency >
<groupId>org.wisdom-framework</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.34_1</version>
</dependency>
<!---->
<!--junit測試包-->
<dependency>
<groupId>junit</groupId>
<artifactId> junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
第二步建立表
DROP TABLE IF EXISTS `t_student`;
CREATE TABLE `t_student` (
`id` int(0) NOT NULL AUTO_INCREMENT,
`name` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
` sex` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of t_student
-- ----------------------------
INSERT INTO `t_student` VALUES (1, '小明', '男');
INSERT INTO `t_student` VALUES (2, '小紅', '女');
SET FOREIGN_KEY_CHECKS = 1;
第三步建立實體類
public class User {
/**
* 姓名
*/
private String name;
/**
* 性別
*/
private String sex;
@Override
public String toString() {
return "User{" +
"name='" + name + '\'' +
", sex='" + sex + '\'' +
'}';
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}
第四步建立實體類Mapper介面
public interface UserMapper {
/**
* 獲取學生基本資訊
* @return
*/
List<User> getAllUser();
}
第五步建立對映檔案
<?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="mapper.UserMapper">
<select id="getAllUser" resultType="pojo.User">
select * from t_student;
</select>
</mapper>
第六步配置檔案
可以在Mybatis官網進行查詢
<?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="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/mybatistest"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>
<!--指向Mapper對映檔案-->
<mappers>
<mapper resource="Mapper/UserMapper.xml"/>
</mappers>
</configuration>
第七步測試
import mapper.UserMapper;
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 pojo.User;
import java.io.IOException;
import java.io.Reader;
import java.util.List;
public class MybatisTest {
@Test
public void getAllStudentIfo(){
//定義獲取檔名
String resources="mybatis-config.xml";
//建立流
Reader reader = null;
//讀取配置檔案 到reader物件中
try {
reader = Resources.getResourceAsReader(resources);
} catch (IOException e) {
e.printStackTrace();
}
//初始化mbatis,建立SqlSessionFactory的例項
SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
SqlSessionFactory build = sqlSessionFactoryBuilder.build(reader);
// 建立session的例項
SqlSession sqlSession = build.openSession();
//獲取UserMapper物件
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
List<User> allUser = mapper.getAllUser();
System.out.println(allUser);
//關閉流
try {
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
輸出結果
[User{name=‘小明’, sex=‘男’}, User{name=‘小紅’, sex=‘女’}]