1.MyBatis的结构

2.MyBatis入门案例

a.创建java项目,并在其中导入相关开发包

b.导入约束文件

http://mybatis.org/dtd/mybatis-3-config.dtd

c.编写配置文件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="mysql">
<environment id="mysql">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf-8" />
<property name="username" value="root" />
<property name="password" value="root" />
</dataSource>
</environment>
</environments> </configuration>

d.创建表,创建bean

(1)创建表

-- 创建数据库
create database mybatis;
-- 创建表
use mybatis;
create table user (
id int primary key auto_increment,
name varchar(255),
age int(10)
);
-- 插入数据
insert into user values (null,'aaa',19),(null,'bbb',29),(null,'ccc',39),(null,'ddd',22),(null,'eee',33);

(2)创建bean

package cn.tedu.mybatis.beans;

public class User {
private int id;
private String name;
private int age;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "User [id=" + id + ", name=" + name + ", age=" + age + "]";
}
}

(3)编写映射文件,描述bean和表sql的映射关系

<?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"> <mapper namespace="cn.tedu.mybatis.beans.UserMapper">
<select id="queryAll" resultType="cn.tedu.mybatis.beans.User">
select * from user
</select>
</mapper>

(4)将映射文件配置到sqlMapConfig.xml中

    <!-- 声明映射文件 -->
<mappers>
<mapper resource="cn/tedu/mybatis/beans/UserMapper.xml"/>
</mappers>

(5)测试类测试

package cn.tedu.mybatis.test;

import java.io.InputStream;
import java.util.Arrays;
import java.util.List; 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 cn.tedu.mybatis.beans.User; public class MybatisTest { @Test
public void test01() throws Exception{
// 1.读取MyBatis核心配置文件
InputStream in = Resources.getResourceAsStream("sqlMapConfig.xml");
// 2.根据配置文件创建sqlSessionFactory
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);
// 3.创建sqlSession
SqlSession session = factory.openSession();
// 4.执行操作
List<User> list = session.selectList("cn.tedu.mybatis.beans.UserMapper.queryAll");
// 5.遍历结果
System.out.println(Arrays.toString(list.toArray()));
}
}

(6)调用过程

最新文章

  1. Maven使用archetype迅速生成项目骨架
  2. 设置apache登陆密码验证
  3. 【代码笔记】iOS-等待动画
  4. Knight Moves
  5. CCLabel在最大宽度已知的情况下如何获取实际宽高
  6. Java并发编程:并发容器之ConcurrentHashMap
  7. 原版本的jquery 开发过程中发现jquery好像更新了
  8. 使用Git上传本地项目代码到github
  9. 爬虫Larbin解析(二)——sequencer()
  10. Linux用户root忘记密码的解决(unbuntu16.04)
  11. Nagios+pnp4nagios+rrdtool 安装配置nagios被监控端NRPE配置(二)
  12. Java web入门
  13. iOS Touch ID 身份认证
  14. 第一个SpringMVC实例和解析(HelloSpringMVC)
  15. jaspersoft studio 的初级入门(一)
  16. Mac HomeBrew 常用命令
  17. Jenkins持续集成项目搭建与实践——基于Python Selenium自动化测试(自由风格)
  18. python中__del__使用方法
  19. 【算法导论】【排序】—— 计数排序(counting sort)
  20. ListView的setOnItemClickListener位置错乱问题

热门文章

  1. 在windows 上的RedisClient 上连接远程linux redis (&quot;jave.net.ConnectException: Connection refused:connect&quot;)
  2. 第15次Scrum会议(10/27)【欢迎来怼】
  3. 一台机器上安装两个tomcat
  4. libsvm使用总结
  5. 小米4c刷LineageOS
  6. [codeforces Mail.Ru Cup 2018 Round 1 D][ xor 操作]
  7. CF643D Bearish Fanpages
  8. day05 Spring中自定义注解的用处-之获取自定义的Servie
  9. access-control-allow-origin
  10. Android命令行工具学习总结