码迷,mamicode.com
首页 > 其他好文 > 详细

mybatis(一)环境的搭建

时间:2016-11-14 07:40:37      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:utf-8   XML   dtd   led   标签   from   static   参考   项目   

项目模型:

技术分享

 

一、创建一个web项目ssm001

1、1准备数据

在数据创建表并添加数据

技术分享

1、2在web-INF下lib加入mybatis所需jar包:

技术分享

1、3在项目src下配置mybatis配置文件config.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://www.mybatis.org/dtd/mybatis-3-config.dtd">
<!--    configuration根标签             -->
<configuration>
    <!--    二、(1)定义实体bean名和数据库列名相对应  type:实体的路径   alias:实体的别名         -->
    <typeAliases>
        <typeAlias type="com.ckx.entity.User" alias="User" />
    </typeAliases>
    
    <!--    一、    配置环境信息          -->
    <environments default="development">
        <environment id="development">
            <!--    指定事务管理机制          -->
            <transactionManager type="JDBC"></transactionManager>
            <!--    配置数据源   POOLED: 连接池         -->
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver" />
                <property name="url" value="jdbc:mysql://localhost:3306/ssm001?useUnicode=true&amp;characterEncoding=utf8" />
                <property name="username" value="root" />
                <property name="password" value="123456" />
            </dataSource>
        </environment> 
    </environments>
    <!--     二、 (2)引入关系映射文件!!!这里有严格顺序!不能放在数据源配置前    -->
    <mappers>
        <mapper resource="com/ckx/entityMapper/User.xml" />
    </mappers>
    

</configuration>

请注意注释  “二、 (2)引入关系映射文件!!!这里有严格顺序!不能放在数据源配置前 ”,lz当时人为一个映射地址放在那里斗舞所谓,

结果报错,莫名其妙的找了好久的错,关于原因请参考:http://www.cnblogs.com/ckxlovejava/p/6059960.html

二、创建实体与映射文件:

2、1创建和数据库对应的实体user类,注意变量和数据库字段的对应

 

package com.ckx.entity;

public class User {
    private int userId;
    private String userName;
    private String passWord;
    
    
    public int getUserId() {
        return userId;
    }
    public void setUserId(int userId) {
        this.userId = userId;
    }
    public String getUserName() {
        return userName;
    }
    public void setUserName(String userName) {
        this.userName = userName;
    }
    public String getPassWord() {
        return passWord;
    }
    public void setPassWord(String passWord) {
        this.passWord = passWord;
    }

}

 

2.2配置与实体相对的映射文件用于存放sql语句(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.ckx.entityMapper.User">
    
    <select id="selectRoolByuserId" parameterType="int" resultType="User">
        select * from ckx_user where UserId=#{UserId}
    </select>
    
    
</mapper>

三、测试

创建测试类UserlTest.java:

package com.ckx.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 com.ckx.entity.User;

public class UserlTest {
    //获取org.apache.ibatis.session.SqlSessionFactory很重要
    static SqlSessionFactory sessionFactory;
    static Reader reader;
    public User user;
    
    static{
        try {
            //获取org.apache.ibatis.io.Resources从config.xml的读入流
            reader= Resources.getResourceAsReader("config.xml");
            sessionFactory = new SqlSessionFactoryBuilder().build(reader);
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

    //从数据库读取一条信息
    private void selectRoolByuserId() {
        SqlSession session = sessionFactory.openSession();
        user= session.selectOne("com.ckx.entityMapper.User.selectRoolByuserId",1 );
        System.out.println(user.getUserName());
    }
    
    
    public static void main(String[] args) {
        UserlTest ut = new UserlTest();
        ut.selectRoolByuserId();

    }

}

运行:ckx

综合说明:

技术分享

 

mybatis(一)环境的搭建

标签:utf-8   XML   dtd   led   标签   from   static   参考   项目   

原文地址:http://www.cnblogs.com/ckxlovejava/p/6060542.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!