MyBatis学习笔记(1)

5 篇文章 0 订阅
5 篇文章 0 订阅

什么是MyBatis?


MyBatis 世界上流行最广泛的 SQL 映射框架,由 Clinton Begin 在 2002 年创建,其后,捐献给了 Apache基金会,成立了 iBatis 项目。2010 年 5 月,将代码库迁致 Google Code,并更名为 MyBatis。
关于以前的版本,请访问 http://ibatis.apache.org/
关于更名后最新的版本,请访问:http://code.google.com/p/mybatis/

MyBatis 是一个可以自定义 SQL、存储过程和高级映射的持久层框架。MyBatis 摒除了大部分的 JDBC代码、手工设置参数和结果集重获。MyBatis 只使用简单的 XML 和注解来配置和映射基本数据类型 、Map 接口和 POJO 到数据库记录。


MyBatis入门程序

  • 编写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="development">
		<environment id="development">
		
			<transactionManager type="JDBC" />
			
			<dataSource type="POOLED">
				
				<property name="driver" value="com.mysql.jdbc.Driver"/>
				<property name="url" value="jdbc:mysql://127.0.0.1:3306/mybatis?useUnicode=true&characterEncoding=UTF-8" />
				<property name="username" value="root"/>
				<property name="password" value="123456"/>
				
			</dataSource>
		
		</environment>
	
	</environments>
	
	<mappers>
		<mapper resource="com/icss/dao./UserMapper.xml"/>
	</mappers>
	
</configuration>

注意: 在xml文件中有以下几类字符要进行转义替换:

&lt;

<

小于号

&gt;

>

大于号

&amp;

&

&apos;

'

单引号

&quot;

"

双引号

  • 映射文件UserMapper.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="com.icss.dao.UserMapper" >
  <resultMap id="BaseResultMap" type="com.icss.po.User" >
    <id column="userId" property="userid" jdbcType="INTEGER" />
    <result column="userName" property="username" jdbcType="VARCHAR" />
  </resultMap>
  <sql id="Base_Column_List" >
    userId, userName
  </sql>
  <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
    select 
    <include refid="Base_Column_List" />
    from tbl_user
    where userId = #{userid,jdbcType=INTEGER}
  </select>

</mapper>
  • 编写测试类TestMybatis.java
package com.icss;


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.icss.po.User;

public class TestMybatis {

	@Test
	public void findUserById() throws IOException {
		
		
		//mybatis配置文件
		String resourse = "SqlMapConfig.xml";
		
		
		//获取配置文件流
		InputStream is = Resources.getResourceAsStream(resourse);
		
		//创建会话工厂
		SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(is);
		
		//通过会话工厂获取SqlSession
		SqlSession sqlSession = sqlSessionFactory.openSession();
		
		
		User user = sqlSession.selectOne("com.icss.dao.UserMapper.selectByPrimaryKey", 1);
		
		System.out.println(user);
		
		sqlSession.close();
		
	}

}

结果:User [userid=1, username=Mr_Li]

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值