mybatis hellworld

用maven来进行搭建项目的~~

1. 搭建环境 pom.xml

  1. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <groupId>cn.jamkong</groupId>
        <artifactId>simpleMybatis</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <packaging>jar</packaging>
        <name>simpleMybatis</name>
        <url>http://maven.apache.org</url>
        <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        </properties>
        <dependencies>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>3.8.1</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>5.1.34</version>
            </dependency>
            <dependency>
                <groupId>org.mybatis</groupId>
                <artifactId>mybatis</artifactId>
                <version>3.3.0</version>
            </dependency>
        </dependencies>
    </project>

2. 创建数据库 test

test数据库中的 user 表

3. 创建实体User

  1. public class User {
        private int id;
        private String name;
        private String age;
        private String address;
        //省略get set方法
    }

4. 创建Dao接口 UserDao

  1. public interface UserDao {
        //查询所有User
        public List<User> list();
    }

5. 进入主题:配置mybatis的配置文件:configuration.xml (名字可以随意)

  1.  1 <?xml version="1.0" encoding="UTF-8"?>
     2 <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
     3 "http://mybatis.org/dtd/mybatis-3-config.dtd">
     4 <configuration>
     5     <!-- 对实体类进行设置别名,别名主要是用于映射文件上的,可以看UserDao.xml文件的resultType的值,该值就是用到这里的别名 -->
     6     <typeAliases>
     7         <typeAlias alias="User" type="cn.jamkong.mybatisDemo.domain.User"/>
     8     </typeAliases>
     9     <!-- 配置环境 -->
    10     <environments default="mysql">
    11         <environment id="mysql">
    12             <!-- 使用JDBC来管理事务 -->
    13             <transactionManager type="JDBC"/>
    14             <!-- 设置数据源 -->
    15             <dataSource type="POOLED">
    16                 <property name="driver" value="com.mysql.jdbc.Driver"/>
    17                 <property name="url" value="jdbc:mysql://localhost:3306/test"/>
    18                 <property name="username" value="root"/>
    19                 <property name="password" value="root"/>
    20             </dataSource>
    21         </environment>
    22     </environments>
    23     <!-- 映射文件 -->
    24     <mappers>
    25         <mapper resource="mapping/UserDao.xml"/>
    26     </mappers>
    27 </configuration>

6. 写Dao的映射文件:如UserDao.xml

  1.  1 <?xml version="1.0" encoding="UTF-8"?>
     2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     3 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
     4 <mapper namespace="cn.jamkong.mybatisDemo.dao.UserDao">
     5     <resultMap type="User" id="userMap">
     6         <id property="id" column="id"/>
     7         <result property="name" column="name"/>
     8         <result property="age" column="age"/>
     9         <result property="address" column="address"/>
    10     </resultMap>
    11
    12     <select id="list" resultType="User" resultMap="userMap">
    13         <![CDATA[
    14             SELECT * FROM `USER`
    15         ]]>
    16     </select>
    17 </mapper>

7. 现在已经都搭建好了,准备测试:

package mybatisDemo;
import java.io.IOException;
import java.io.Reader;
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.jamkong.mybatisDemo.domain.User;
/**
 * 测试类
 *
 * @author Administrator
 *
 */
public class Test1 {
    private static SqlSessionFactory sqlSessionFactory;
    private static Reader reader;
    static {
        try {
            reader = Resources.getResourceAsReader("configuration.xml");
            sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    public static SqlSession getSession() {
        return sqlSessionFactory.openSession();
    }
    @Test
    public void test() {
        SqlSession session = getSession();
        List<User> list = session.selectList("cn.jamkong.mybatisDemo.dao.UserDao.list");
        for (int i = 0; i < list.size(); i++) {
            System.out.println("id:" + list.get(i).getId() + " name:" + list.get(i).getName() + " age:"
                    + list.get(i).getAge() + " address:" + list.get(i).getAddress());
        }
    }
}

来自为知笔记(Wiz)

时间: 2024-10-07 05:01:24

mybatis hellworld的相关文章

使用MyBatis Generator自动生成实体、mapper和dao层

通过MyBatis Generator可以自动生成实体.mapper和dao层,记录一下怎么用的. 主要步骤: 关于mybatis从数据库反向生成实体.DAO.mapper: 参考文章:http://www.cnblogs.com/wangkeai/p/6934683.html第一种方式:main方法运行(推荐) 1.在pom.xml中加入插件依赖: 2.写mbgConfiguration.xml文件,jdbc.properties文件 3.写/SSM/src/main/java/main/Ge

SSM整合(spring,spirngmvc,mybatis)

整合思路   准备环境:导入jar包(spring mybatis  dbcp连接池  mysql驱动包 log4j) 工程结构: --------------------------- 1.  整合dao mybatis和spring进行整合   applicationContext-dao.xml 配置: 1.数据源 2.SqlSessionFactory 3.mapper扫描器 创建po以及mapper(通过逆向工程,这里不再演示) 针对综合查询mapper,一般情况会有关联查询,建议自定

SpringBoot 2.SpringBoot整合Mybatis

一.创建Springboot的配置文件:application.properties SpringApplication 会从 application.properties 文件中加载配置信息,下面是添加Spring配置信息的文件目录顺序: 当前目录下的/config子目录中 当前目录中 一个 classpath 包下的 /config 目录中 classpath 根目录中 大家根据自己习惯来即可. /application.properties 文件配置如下: spring.datasourc

springMVC+MyBatis+Spring 整合(3)

spring mvc 与mybatis 的整合. 加入配置文件: spring-mybaits.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xm

MyBatis学习(四)XML配置文件之SQL映射的XML文件

SQL映射文件常用的元素: 1.select 查询语句是MyBatis最常用的语句之一. 执行简单查询的select元素是非常简单的: <select id="selectUser" parameterType="int" resultType="hashmap"> SELECT * FROM PERSON WHERE ID = #{id} </select> 这个语句被称作selectUser,接受一个int类型的参数,

MyBatis框架中Mapper映射配置的使用及原理解析(七) MapperProxy,MapperProxyFactory

从上文<MyBatis框架中Mapper映射配置的使用及原理解析(六) MapperRegistry> 中我们知道DefaultSqlSession的getMapper方法,最后是通过MapperRegistry对象获得Mapper实例: public <T> T getMapper(Class<T> type, SqlSession sqlSession) { final MapperProxyFactory<T> mapperProxyFactory =

2017年9月3日 Spring及Mybatis中连接数据库的不同方式

连接数据库用spring和mybatis中使用的方法可以不同,mybaits可以不用写数据库的配置文件 Spring的连接方法 <!-- 读取属性文件(.properties)的内容 --> <!-- location:指定要读取的属性文件的位置及文件名. 注: classpath:表示依据类路径去查找 容器依据路径读取属性文件的内容, 并且将这些内容存放到Properties对象上 --> //数据库的登入数据文件 //文件名db.properties #db connectio

mybatis中&quot;#&quot;和&quot;$&quot;的区别

mybatis中"#"和"$"的区别 动态 sql 是 mybatis 的主要特性之一,在 mapper 中定义的参数传到 xml 中之后,在查询之前 mybatis 会对其进行动态解析.mybatis 为我们提供了两种支持动态 sql 的语法:#{} 以及 ${}. 在下面的语句中,如果 username 的值为 zhangsan,则两种方式无任何区别: select * from user where name = #{name}; select * from

mybatis中的mapper接口文件以及example类的实例函数以及详解

##Example example = new ##Example(); example.setOrderByClause("字段名 ASC"); //升序排列,desc为降序排列. example.setDistinct(false)//去除重复,boolean型,true为选择不重复的记录. Criteria criteria = new Example().createCriteria(); is null;is not null; equal to(value);not equ