`

myBatis系列之一:搭建开发环境

阅读更多

一.工程结构



二.在类路径下创建mybatis的配置文件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><!-- 别名 -->
		<typeAlias alias="User" type="com.bijian.study.model.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://10.60.222.65:3306/test" />
			<property name="username" value="test" />
			<property name="password" value="test" />
		</dataSource>
	  </environment>
	</environments>
	
	<mappers><!-- ORM映射文件 -->
		<mapper resource="com/bijian/study/model/User.xml" />
	</mappers>
</configuration>

 

三.执行创建数据库和表的sql

-- Create the database named 'hbatis'.
-- It's OK to use `, not OK to use ' or " surrounding the database name to prevent it from being interpreted as a keyword if possible.
CREATE DATABASE IF NOT EXISTS `hbatis`
DEFAULT CHARACTER SET = `UTF8`;

-- Create a table named 'User'
CREATE TABLE `user` (
	`id` int(11) NOT NULL AUTO_INCREMENT,
	`name` varchar(50) DEFAULT NULL,
	`age` int(11) DEFAULT NULL,
	`address` varchar(200) DEFAULT NULL,
	PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;

-- Insert a test record
Insert INTO `user` VALUES ('1', 'bijian', '120', 'hangzhou,westlake');

-- drop table
drop table `user`;

 

四.User类

package com.bijian.study.model;

public class User {
    
    private int id;
    private String name;
    private int age;
    private String address;
    
    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;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    // 如果有带参数的构造器,编译器不会自动生成无参构造器。当查询需要返回对象时,ORM框架用反射来调用对象的无参构造函数,导致异常:java.lang.NoSuchMethodException: com.bijian.study.model.User.<init>()
    // 这时需要明确写出:
    public User() {
    }

    public User(int id, String address) {
        this.id = id;
        this.address = address;
    }

    public User(String name, int age, String address) {
        this.name = name;
        this.age = age;
        this.address = address;
    }
}

        User.java对应的User.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.bijian.study.model.UserMapper">
	<select id="getUserById" parameterType="int" resultType="User">
		select * from `user` where id = #{id}
	</select>
</mapper>

 

五.测试类

package com.bijian.study.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.BeforeClass;
import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import com.bijian.study.model.User;

public class MyBatisBasicTest {

    private static final Logger log = LoggerFactory.getLogger(MyBatisBasicTest.class);
    private static SqlSessionFactory sqlSessionFactory;

    private static Reader reader;

    @BeforeClass
    public static void initial() {
        try {
            reader = Resources.getResourceAsReader("Configuration.xml");
            sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
        } catch (IOException e) {
            log.error("Error thrown while reading the configuration: {}", e);
        } finally {
            if (reader != null) {
                try {
                    reader.close();
                } catch (IOException e) {
                    log.error("Error thrown while closing the reader: {}", e);
                }
            }
        }
    }

    @Test
    public void queryTest() {
        SqlSession session = sqlSessionFactory.openSession();
        User user = (User) session.selectOne("com.bijian.study.model.UserMapper.getUserById", 1);
        log.info("{}: {}", user.getName(), user.getAddress());
    }
}

        运行单元测试结果:

00:28:18.710 [main] INFO  com.bijian.study.test.MyBatisBasicTest - bijian: hangzhou,westlake

 

文章来源:http://czj4451.iteye.com/blog/1976365

  • 大小: 19.7 KB
分享到:
评论

相关推荐

    mybatis系列一:开发环境搭建

    在本篇中,我们将深入探讨"Mybatis系列一:开发环境搭建"的相关知识,这将包括如何设置一个基于Maven的Mybatis开发环境,以及如何理解并使用Mybatis的核心概念。首先,我们需要明白Mybatis是一个优秀的持久层框架,...

    MyBatis之一(环境搭建)

    这篇博客“MyBatis之一(环境搭建)”将引导我们逐步搭建一个基本的MyBatis开发环境。 首先,我们需要理解MyBatis的核心概念。MyBatis是一个轻量级的ORM(对象关系映射)框架,它的主要任务是将数据库操作与业务...

    asp.net搭建mybatis开发环境

    ASP.NET 搭建 MyBatis 开发环境详解 在.NET开发领域,ASP.NET一直以其高效、稳定的特点受到广大开发者青睐。...希望这篇文章能帮助你避免那些错误引导,顺利搭建起MyBatis的开发环境,开启高效编码之旅。

    Eclipse搭建MyBatis智能开发环境.docx

    "Eclipse搭建MyBatis智能开发环境" Eclipse 是一个功能强大且广泛使用的集成开发环境(IDE),而 MyBatis 是一个流行的持久层框架。为了提高开发效率和质量,需要在 Eclipse 中安装相应的插件,以便更好地支持 ...

    mybatis初步环境搭建

    ### MyBatis初步环境搭建详解 #### 一、MyBatis概述 MyBatis是一个半自动的ORM(Object Relational Mapping)框架,在当前的企业级应用开发中占据着重要的位置。ORM框架的主要目的是为了简化Java应用程序与数据库...

    maven+Spring+SpringMVC+mybatis+mybatis-generator 搭建SSM开发环境

    本文将深入探讨如何使用Maven来搭建一个基于SSM的开发环境,并结合MyBatis Generator进行自动化代码生成。 **一、Maven简介** Maven是一个项目管理和综合工具,它通过读取项目配置文件(pom.xml)来管理项目的构建...

    Spring Boot整合Mybatis环境搭建示例

    我们将通过以下几个关键步骤来搭建这个环境: 1. **环境准备**: - 首先确保你的开发环境中已经安装了Java JDK和Maven,这两个是Spring Boot项目的基础。 - 接下来,你需要一个IDE,如IntelliJ IDEA或Eclipse,...

    MyBatis-搭建MyBatis开发环境一(MyEclipse版)

    MyEclipse则是一个集成开发环境(IDE),专为Java应用程序开发而设计,支持多种框架,包括MyBatis。这篇文章将指导初学者如何在MyEclipse中搭建MyBatis的开发环境。 首先,确保你已经安装了MyEclipse。如果你还没有...

    SpringMVC+Spring+Mybatis集成开发环境

    这个集成开发环境旨在提供一个高效、灵活的开发平台,以实现业务逻辑与数据访问的分离,提高代码的可维护性和可扩展性。 SpringMVC作为Spring框架的一部分,是一个用于构建Web应用程序的轻量级MVC(Model-View-...

    Mybatis环境搭建

    在这里,我们将讨论如何搭建一个Mybatis的开发环境,并通过一个简单的增删查改(CRUD)实例来理解其基本用法。 首先,我们需要以下基本环境: 1. **Java Development Kit (JDK)**:确保安装了JDK,并且环境变量配置...

    Mybatis Plus环境搭建项目代码

    在这个"mybatis plus的环境搭建"项目中,我们将深入探讨如何配置并使用这个工具,以便在实际开发中提高效率。 首先,我们从`pom.xml`文件开始。`pom.xml`是Maven项目的配置文件,用于管理项目的依赖关系。为了引入...

    mybatis环境搭建

    以上步骤详细介绍了如何在IntelliJ IDEA 14和Maven环境下搭建Mybatis的基础开发环境。通过这个过程,开发者可以快速地开始编写SQL语句,实现与数据库的交互。记得根据实际项目需求调整pom.xml中的依赖版本,确保兼容...

    MyBatis环境搭建详细过程

    本教程将详细讲解如何搭建MyBatis的开发环境,以便开始愉快的MyBatis编程之旅。 1. **环境需求** 在开始搭建MyBatis环境前,确保已安装以下基础软件: - Java Development Kit (JDK):MyBatis是用Java编写的,...

    CXF Restful + Spring3 + Mybatis 后台开发环境搭建

    CXF Restful + Spring3 + Mybatis 后台开发环境搭建

    mybatis+struts+spring搭建好的框架

    这三种技术结合在一起,能够提供一个强大的、灵活的、可扩展的后端开发环境。 **Spring框架**:作为核心,Spring是一个全面的开源应用框架,它主要解决的是企业应用开发中的复杂性问题。Spring提供了依赖注入(DI)...

    Mybatis环境搭建所需Jar包

    在搭建MyBatis开发环境时,确保正确地引入必要的Jar包是至关重要的步骤。这里我们将详细讨论MyBatis 3.2.7版本的环境搭建过程中所需的核心Jar包以及它们在开发中的作用。 1. **mybatis-3.2.7.jar**:这是MyBatis的...

    Maven+Spring+Spring MVC+MyBatis+MySQL,搭建SSM框架环境

    SSM框架是Java开发中常用的一种组合,由Maven、Spring、Spring MVC和MyBatis四个组件构成,加上MySQL作为数据库支持,形成了一个强大的企业级应用开发基础。下面将详细介绍这些组件及其在搭建环境中扮演的角色。 1....

Global site tag (gtag.js) - Google Analytics