您现在的位置是:首页 > 文章详情

My Baits入门(一)mybaits环境搭建

日期:2018-11-28点击:496

1)在工程下引入mybatis-3.4.1.jar包,再引入数据库(mysql,mssql..)包.

2)在src下新建一个配置文件conf.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>

<!-- 引入外部配置文件 -->

     <properties resource="jdbc.properties"  />

   <!-- 配置mybatis运行环境 -->

     <environments default="development">

        <environment id="development">

            <!-- type="JDBC" 代表使用JDBC的提交和回滚来管理事务 -->

            <transactionManager type="JDBC" />            

            <!-- mybatis提供了3种数据源类型,分别是:POOLED,UNPOOLED,JNDI -->

            <!-- POOLED 表示支持JDBC数据源连接池 -->

            <!-- UNPOOLED 表示不支持数据源连接池 -->

            <!-- JNDI 表示支持外部数据源连接池 -->

            <dataSource type="POOLED">

                <property name="driver" value="${driver}" />

                <property name="url" value="${url}" />

                <property name="username" value="${username}" />

                <property name="password" value="${password}" />

            </dataSource>

        </environment>

    </environments>  

    <mappers>

        <mapper resource="userMapper.xml"/>

    </mappers>   

</configuration>


这里是通过外部配置文件来存储数据库存信息的,所以加入一个jdbc.properties的数据库存信息


driver=com.microsoft.sqlserver.jdbc.SQLServerDriver

url=jdbc:sqlserver://127.0.0.1;databaseName=test

username=sa

password=123456


3)建立一个映射文件 userMapper.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="hw.com.ser.IUser">

      <!-- 查询全部用户 -->

      <select id="queryUsers" resultType="hw.com.pojo.User">

          select * from MS_User

      </select>

      <selectid="queryUserById" resultType="hw.com.pojo.User" parameterType="int">

          Select * From Ms_User Where id=#{id}

      </select> 

</mapper>


(这里要注意的是,namespace属性,因为,此实例是通过接口映射的方式,所以,namespace属性一点要写成接口的路径)附图:


face/nRewRFmM6M3XSr4NBdYJSiyw7Je35DM2.png


4)建一个映射接口类


package hw.com.ser;

import java.util.List;

import hw.com.pojo.User;


public interface IUser {

    public List<User>    queryUsers();

    public User queryUserById(int id);

}


5)建立一个SqlSessionFactory


package hw.com.util;

import java.io.IOException;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.io.Reader;

import java.util.Properties;


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 SqlSessionFactoryUtil {

    private static SqlSessionFactory sqlSessionFactory = null;

    private static final Class CLASS_LOCK = SqlSessionFactoryUtil.class;


    private SqlSessionFactoryUtil() {

        

    }


    public static SqlSessionFactory initSqlSessionFactory() {

        String resource = "conf.xml";

        InputStream inputStream = null;

        try {

            inputStream = Resources.getResourceAsStream(resource);            

        } catch (IOException e) {

            e.printStackTrace();

        }

        synchronized (CLASS_LOCK) {

            if (sqlSessionFactory == null) {

                sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);

            }

        }

        return sqlSessionFactory;

    }

    

    public static SqlSession openSqlSession(){

        if(sqlSessionFactory==null){

            initSqlSessionFactory();

        }

        return sqlSessionFactory.openSession();

    }

}


6)建一个pojo


package hw.com.pojo;

import java.util.Date;

public class User {

    private String Id;

    private String UserName;

    private String UserPwd;

    private int DeptmentId;

    private String UserTrueName;

    private String Email;

    private int LearnCenterId;

    private Date CreateDate;

    private Date LastModifyDate;

    private int UserStatus;

    public User() {

        super();

        // TODO Auto-generated constructor stub

    }

    public String getId() {

        return Id;

    }

    public void setId(String id) {

        Id = id;

    }

    public String getUserName() {

        return UserName;

    }

    public void setUserName(String userName) {

        UserName = userName;

    }

    public String getUserPwd() {

        return UserPwd;

    }

    public void setUserPwd(String userPwd) {

        UserPwd = userPwd;

    }

    public int getDeptmentId() {

        return DeptmentId;

    }

    public void setDeptmentId(int deptmentId) {

        DeptmentId = deptmentId;

    }

    public String getUserTrueName() {

        return UserTrueName;

    }

    public void setUserTrueName(String userTrueName) {

        UserTrueName = userTrueName;

    }

    public String getEmail() {

        return Email;

    }

    public void setEmail(String email) {

        Email = email;

    }

    public int getLearnCenterId() {

        return LearnCenterId;

    }

    public void setLearnCenterId(int learnCenterId) {

        LearnCenterId = learnCenterId;

    }

    public Date getCreateDate() {

        return CreateDate;

    }

    public void setCreateDate(Date createDate) {

        CreateDate = createDate;

    }

    public Date getLastModifyDate() {

        return LastModifyDate;

    }

    public void setLastModifyDate(Date lastModifyDate) {

        LastModifyDate = lastModifyDate;

    }

    public int getUserStatus() {

        return UserStatus;

    }

    public void setUserStatus(int userStatus) {

        UserStatus = userStatus;

    }

    @Override

    public String toString() {

        return "User [Id=" + Id + ", UserName=" + UserName + ", UserPwd=" + UserPwd + ", DeptmentId=" + DeptmentId

                + ", UserTrueName=" + UserTrueName + ", Email=" + Email + ", LearnCenterId=" + LearnCenterId

                + ", CreateDate=" + CreateDate + ", LastModifyDate=" + LastModifyDate + ", UserStatus=" + UserStatus

                + "]";

    }

}


7) 在main方法下做测试


package hw.com.Day1.main;

import java.util.List;

import org.apache.ibatis.session.SqlSession;

import hw.com.pojo.User;

import hw.com.ser.IUser;

import hw.com.util.SqlSessionFactoryUtil;


public class UserTest {

    public static void main(String[] args) {        

        SqlSession sqlSession=null;

        try {

            sqlSession=SqlSessionFactoryUtil.openSqlSession();

            IUser iUser=sqlSession.getMapper(IUser.class);

            List<User> users=iUser.queryUsers();

            if(users.size()>0){

                for (User user : users) {

                    System.out.println(user.toString());

                }

            }

        } catch (Exception e) {

            e.printStackTrace();

        }


    }


}


转自:http://www.cnblogs.com/lijianhua/p/6201158.html

原文链接:https://blog.roncoo.com/article/126536
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章