Mybatis01- 环境搭建以及搜索测试

  • Mybatis简介

  个人认知:用于dao层的框架,如:Hibernate。主要用于数据库增删改查。

  api地址:http://www.mybatis.org/mybatis-3/zh/index.html

  • Mybatis环境搭建

   1.是导入jar包(mybatis和mysql-connector-java), 然后进行Build Path中的Add to build path操作。

   2.要书写配置mybatis-config.xml(在src下),需要先编写文档头,然后进行环境配置。

  • 事务管理器(transactionManager):

(1)JDBC – 这个配置就是直接使用了 JDBC 的提交和回滚设置,它依赖于从数据源得到的连接来管理事务作用域。

(2)MANAGED – 这个配置几乎没做什么。它从来不提交或回滚一个连接,而是让容器来管理事务的整个生命周期。

  • 数据源(dataSource)

    分为UNPOOLED,POOLED与JNDI。

    注:加载映射文件则是为了建立mybatis-config.xml与TestMapper.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="shxt">
		<environment id="shxt">
			<transactionManager type="JDBC"></transactionManager>
			<dataSource type="POOLED">
				<property name="driver" value="com.mysql.jdbc.Driver" />
				<property name="url" value="jdbc:mysql://localhost:3306/ty7" />
				<property name="username" value="root" />
				<property name="password" value="root" />
			</dataSource>
		</environment>
	</environments>
	<!-- 加载映射文件 -->
	<mappers>
		<mapper resource="com/shxt/test/TestMapper.xml"/>
	</mappers>
</configuration>

至此,Mybatis的大环境就算搭建好了,接下来我们来测试下是否好用。

  •  Mybatis环境测试:

1.书写测试类

package com.shxt.test;

import java.io.IOException;
import java.io.InputStream;
import java.util.Map;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

public class MybatisTest {
	public static void main(String[] args) {
		SqlSession sqlSession = null;
		try {
			//加载核心配置文件
			InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
			//创建sqlsession工厂 -->相当于connection
			SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(is);
			//获取session -->相当于执行sql语句对象
			sqlSession = sqlSessionFactory.openSession();
			//执行sql
			Map<String,Object> map = sqlSession.selectOne("com.shxt.model.User.load");
			System.out.println(map);
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally {
			if(sqlSession!=null) {
				sqlSession.close();
			}
		}
	}
}

2.书写映射文件

<?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.shxt.model.User">
  	<!-- 通过id返回数据 -->
	<select id="load" resultType="map">
		select * from user where user_id=1	
	</select>  
  </mapper>

注:(1)TestMapper.xml(在src下),命名规则为实体类+Mapper.xml为命名,同样首先进行的是文档头的编写.

    (2)namespace(相当于id)能够定位到这篇文档,select标签中的id则能定位到该语句。

    (3)resultType="map"中的map是类型别名。当返回一条数据时写返回数据的类型,返回多条数据时写返回数据的泛型。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值