`
m654352
  • 浏览: 26786 次
社区版块
存档分类
最新评论

mybatis学习笔记一(环境配置)

 
阅读更多
万里之行起于小步,从搭建环境开始。

一、下载好jar包,既然是基本环境搭建就不用弄的太复杂就加入三个最基本的jar包

1、mybatis-3.1.0-SNAPSHOT.jar
2、mysql-connector-java-5.0.8-bin.jar
3、log4j-1.2.16.jar

二、mybatis是基于log4j日志框架的,恩,把log4j的日志数据配置文件也配置一下,就先把级别设定在debug的级别上

# Rules reminder:
# DEBUG < INFO < WARN < ERROR < FATAL

# Global logging configuration
log4j.rootLogger=DEBUG, stdout

# My logging configuration...
log4j.logger.org.mybatis.jpetstore=DEBUG

## Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p %d %C: %m%n


三、现在就开始对mybatis进行配置,配置文件为一个xml文件,文件名自己决定,暂且就叫Configuration.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>
	<typeAliases>
		<!-- simple alias for full class name -->
		<typeAlias alias="User" type="com.akwolf.domain.User"/>
	</typeAliases>
    <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://192.168.2.110:3306/mybatis"/>
                <property name="username" value="zhangh"/>
                <property name="password" value="123456"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="com/akwolf/persistence/UserMapper.xml"/>
    </mappers>
</configuration>


面这个配置文件相当于一个全局的配置,所以在这里面配置也会影响到其他的配置文件

这里先对上面几个标签陌生标签解释一下

<typeAliases>就是为为一个完整的类名去一个别名,我猜你不会愿意在每次用到一个类时都把类的完整路劲给带上,所以上面的User就可以代表com.akwolf.domain.User

这样做的确是一件很省力气的事

<environments default="development">也就是在不同的环境中选择不同的配置,如果现在是开发环境连接的数据库可能就与测试连接数据库的配置不同,default代表的就是一个默认使用的环境。
<mappers>也就是注册你写了哪些Mapper映射文件。
这个就先简单介绍一下,下一篇文章就把每一个标签的使用和用处罗嗦一遍。

四、建立领域模型User

import java.io.Serializable;


public class User implements Serializable {
	private static final long serialVersionUID = 1L;

	private int id;

	private String name;
	private int age;
	
	//setter && getter
}


五、建立对数据库操作的dao接口
package com.akwolf.persistence;

import com.akwolf.domain.User;

public interface UserMapper {

	/**
	 * 通过id查询用户
	 * 
	 * @param id
	 *            用户id
	 * @return 用户实体
	 */
	public User getUserById(int id);
}


六、编写对dao接口进行实现的Mapper【UserMapper.xml】,就是一些sql语句
<?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.akwolf.persistence.UserMapper">
    <select id="getUserById" parameterType="int" resultType="User">
        select * from tbl_user where id = #{id}
    </select>
</mapper>


#{id}表示传入的参数,是一个变量

到此一个基本的mybatis运行环境已经搭建起来,用测试类测试一下
package com.akwolf.test;

import java.io.IOException;
import java.io.Reader;

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.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;

import com.akwolf.domain.User;
import com.akwolf.persistence.UserMapper;

public class UserTest {
	
	private static SqlSession session ;
	
	@BeforeClass
	public static void init(){
		// 配置文件的路径
		String res = "com/akwolf/conf/Configuration.xml" ;
		try {
			// 1、加载配置文件
			Reader reader = Resources.getResourceAsReader(res);
			// 2、创建SqlSessionFactory,用于取得SqlSession
			SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader) ;
			// 3、取得一个SqlSession(对Jdbc中connection的封装)
			session = factory.openSession() ;
		} catch (IOException e) {
			e.printStackTrace();
		} 
	}

	@Test
	public void testGet() {
		// 4、取得mybatis实现并实例化好的UserMapper接口实例
		UserMapper mapper = session.getMapper(UserMapper.class) ; 
		// 5、进行dao层的操作
		User u = mapper.getUserById(1) ;
		System.out.println(u);
	}
	
	@AfterClass
	public static void destory(){
		// 6、关闭SqlSession
		session.close() ;
	}
}

上面测试类的主要建立数据库连接并对数据库进行的操作,为了方便以后查看和大家的理解,注释写的很详细。


好,到这里第一个mybatis程序运行成功,下一次就研究一下Mybatis配置文件的详细配置。
分享到:
评论

相关推荐

    mybatis学习笔记

    这篇“mybatis 学习笔记”将带你深入理解 MyBatis 的核心概念和主要功能。 1. **MyBatis 概述**: MyBatis 是一个轻量级的 Java ORM(对象关系映射)框架,它的核心是 SQL 映射文件和 SqlSessionFactory。ORM 技术...

    MyBatis学习笔记.zip

    在这些MyBatis学习笔记中,我们可以期待涵盖以下几个关键知识点: 1. **MyBatis简介**:首先会介绍MyBatis的起源、目标和优点,例如简化数据库操作、提高开发效率、易于维护等。 2. **环境搭建**:包括如何下载...

    Mybatis学习笔记

    本学习笔记是作者在大学期间深入学习Mybatis后的整理,旨在帮助初学者快速入门并掌握其核心概念与功能。 笔记共分为11个章节,涵盖Mybatis的基础到高级应用,以下是主要知识点的详细讲解: 1. **Mybatis简介**:...

    MyBatis学习笔记

    ### MyBatis学习笔记 #### 一、MyBatis简介及环境搭建 **MyBatis** 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis...

    MyBatis学习笔记(一):MyBatis configuration和mapper xml配置总结

    本笔记将详细解析MyBatis的configuration配置文件和Mapper XML配置,帮助你深入掌握这两个核心组件。 首先,我们来看MyBatis的`configuration`配置文件。这个XML文件是MyBatis系统的核心,包含了MyBatis运行所需的...

    马士兵 mybatis学习笔记

    马士兵老师的MyBatis学习笔记主要涵盖了以下几个核心知识点: 1. **MyBatis安装与环境搭建**:首先,你需要配置Java开发环境,并了解Maven或Gradle构建工具,因为MyBatis通常与这些工具结合使用来管理依赖。然后,...

    《MyBatis 基础笔记》源代码

    使用MyBatis首先需要创建`mybatis-config.xml`配置文件,这里包含数据源配置、事务管理器配置、环境配置等,它是整个MyBatis系统的总配置文件。 3. **Mapper接口**: 在MyBatis中,你可以定义Mapper接口,这些...

    MyBatis学习笔记2

    【标题】"MyBatis学习笔记2"涵盖了MyBatis框架的深入理解和实践应用,是进一步提升对这个流行持久层框架理解的关键。MyBatis是一个优秀的、轻量级的Java ORM(对象关系映射)框架,它使得数据库操作与业务逻辑更加...

    MyBatis学习笔记(一)

    本学习笔记将带你逐步了解并掌握MyBatis的基本用法。 在开始之前,你需要先了解数据库基本概念和SQL语言,这是使用MyBatis的基础。MyBatis允许你在XML或注解中定义SQL语句,这样可以将数据访问逻辑和业务逻辑分离...

    Mybatis学习笔记与代码.zip

    在这个"Mybatis学习笔记与代码.zip"压缩包中,包含了学习Mybatis的重要资源,包括笔记文档和实际操作的代码示例。笔记文档可能涵盖了以下几个核心知识点: 1. **Mybatis简介**:介绍Mybatis的基本概念,解释其为何...

    【原创】Mybatis学习笔记(一)——Spring集成Mybatis

    在本篇【原创】Mybatis学习笔记(一)——Spring集成Mybatis中,我们将探讨如何将流行的持久层框架Mybatis与Spring框架进行整合,以便在实际项目开发中实现灵活、高效的数据库操作。以下是对相关知识点的详细说明: ...

    传播智客-mybatis课堂笔记(2天)

    2. 安装与配置:笔记会涵盖MyBatis的环境搭建,包括添加依赖、配置mybatis-config.xml文件以及数据库连接信息等。 3. SQL映射文件:MyBatis中的SQL映射文件是核心部分,它包含了SQL语句及其执行逻辑。笔记中会详细...

    狂神说Java-Mybatis学习笔记

    ### 狂神说Java-Mybatis学习笔记 #### 一、MyBatis概述与环境搭建 ##### 1.1 什么是MyBatis MyBatis是一款优秀的持久层框架,其核心设计理念在于避免几乎所有的JDBC代码和手动设置参数以及获取结果集的过程。通过...

    【MyBatis学习笔记二】——MyBatis配置说明.zip

    本学习笔记主要围绕MyBatis的核心配置进行深入讲解。 首先,MyBatis的配置文件是整个框架的入口,通常命名为`mybatis-config.xml`。这个文件包含了MyBatis的基本设置,如数据源、事务管理器、环境配置等。在配置...

    Mybatis的笔记pdf

    Mybatis 的中文文档可以在官方网站上找到,这对于学习和理解框架的使用非常有帮助。 在软件开发中,数据持久化是至关重要的,它确保数据在程序运行中断后仍能保留。内存中的数据不具备持久性,一旦系统关闭或断电,...

    【狂神说】mybatis学习总结笔记(全)PDF格式文档 MyBatis.pdf

    MyBatis学习总结笔记 MyBatis是一个优秀的持久层框架,它支持自定义SQL、存储过程以及高级映射。MyBatis免除了几乎所有的JDBC代码以及设置参数和获取结果集的工作。MyBatis可以通过简单的XML或注解来配置和映射原始...

Global site tag (gtag.js) - Google Analytics