mybatis -- orm框架 支持定制化sql、存储过程


    1.引入依赖到pom


  org.mybatis
  mybatis
  3.0.5


    mysql
    mysql-connector-java
    5.1.25

    2.mybatis应用的关键在于SqlSessionFactory,用于创建session(会话)。SqlSessionFactory通过SqlSessionFactoryBuilder 创建。

        -- mybatis-config.xml构建SqlSessionFactory  ,配置数据源




    
        
        
    
    
        
            
            
                
                
                
                
            
        
    
    
        
    

    -- 读取配置(写在测试类中)

SqlSessionFactoryBuilder sqlSessionFactoryBuilder;
SqlSessionFactory sqlSessionFactory;
String resource = "mybatis-config.xml";(记得修改成自己的路径)
Reader reader = Resources.getResourceAsReader(resource);
sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
sqlSessionFactory = sqlSessionFactoryBuilder.build(reader);

    2.创建dao及其映射文件

package com.dto;

/**
 * Created by ltsd on 2017/2/28.
 */
public class User {
    private Integer userid;
    private String username;
    private String password;
    private String address;
    private String createtime;

    public Integer getUserid() {
        return userid;
    }

    public void setUserid(Integer 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;
    }

    public String getAddress() {
        return address;
    }

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

    public String getCreatetime() {
        return createtime;
    }

    public void setCreatetime(String createtime) {
        this.createtime = createtime;
    }

}
package com.dao;

import com.dto.User;

public interface UserDao {
    User queryUser(User user);
}



    
        select * from t_user where userid = #{userid}
    

3.测试

     --运行sql文件(添加一条记录)


package com;

import com.dao.UserDao;
import com.dto.User;
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 java.io.IOException;
import java.io.Reader;

/**
 * Created by ltsd on 2017/2/28.
 */
public class Test {
    public static void main(String[] args) throws IOException {
        SqlSessionFactoryBuilder sqlSessionFactoryBuilder;
        SqlSessionFactory sqlSessionFactory;
        String resource = "mybatis-config.xml";
        Reader reader = Resources.getResourceAsReader(resource);
        sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
        sqlSessionFactory = sqlSessionFactoryBuilder.build(reader);
        SqlSession session = null;
        try {
            session = sqlSessionFactory.openSession();
            UserDao userDao = session.getMapper(UserDao.class);
            User user = new User();
            user.setUserid(1);
            User user1 = userDao.queryUser(user);
            System.out.print(user1.getUsername());
            session.commit(true);
        } catch (Exception e) {
            session.rollback(true);
        } finally {
            session.close();
        }
    }
}