IDEA+mybatis的实例

1.导入mybatis的必需包

IDEA+mybatis的实例

 2.创建实体类

package com.tang.javabean;

public class Users {
    private int uid;
    private String uname;
    private String usex;
    private String uaddress;

    public Users() {
    }

    public Users(int uid, String uname, String usex, String uaddress) {
        this.uid = uid;
        this.uname = uname;
        this.usex = usex;
        this.uaddress = uaddress;
    }

    public int getUid() {
        return uid;
    }

    public String getUname() {
        return uname;
    }

    public String getUsex() {
        return usex;
    }

    public String getUaddress() {
        return uaddress;
    }

    public void setUid(int uid) {
        this.uid = uid;
    }

    public void setUname(String uname) {
        this.uname = uname;
    }

    public void setUsex(String usex) {
        this.usex = usex;
    }

    public void setUaddress(String uaddress) {
        this.uaddress = uaddress;
    }
}

3.创建实体类方法接口

package com.tang.pojo;

import com.tang.javabean.Users;

import java.util.List;

public interface UsersMapper {
    /* 展示方法 */
    List<Users> show();
    /* 增加方法 */
    void add(Users user);
}

 4.编写接口对应的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.tang.pojo.UsersMapper">
    <select id="show" resultType="com.tang.javabean.Users">
        SELECT * FROM USERS;
    </select>
    <insert id="add" parameterType="com.tang.javabean.Users">
        /* 添加的列不区分大小写,后面添加的具体的值,来自实体类的属性,必须与实体类属性完全一致 */
        INSERT INTO USERS (UNAME,USEX,UADDRESS) VALUES (#{uname},#{usex},#{uaddress});
    </insert>
</mapper>

5.编写mybatis.cfg.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>
    <!--         -->
    <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://localhost:3308/hib_demo1?useUnicode=true&amp;characterEncoding=UTF-8" />
                <property name="username" value="root" />
                <property name="password" value="123456" />
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="com/tang/pojo/UsersMapper.xml" />
    </mappers>
</configuration>

6.编写测试类(增加,查询)

package com.tang.mains;

import com.tang.javabean.Users;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import javax.swing.*;
import java.util.List;

public class Test1 {
    /* 打开session */
    static SqlSession opensession(){
        /*得到返回数据*/
        SqlSessionFactoryBuilder sqlb = new SqlSessionFactoryBuilder();
        /*读取数据连接*/
        SqlSessionFactory sqlf = sqlb.build(Action.class.getResourceAsStream("/mybatis.cfg.xml"));
        /* 打开session获取session对象 */
        SqlSession session = sqlf.openSession();
        return session;
    }
    /* 展示方法 */
    static void show(){
        /*得到返回数据*/
        SqlSessionFactoryBuilder sqlb = new SqlSessionFactoryBuilder();
        /*读取数据连接*/
        SqlSessionFactory sqlf = sqlb.build(Action.class.getResourceAsStream("/mybatis.cfg.xml"));
        /* 打开session获取session对象 */
        SqlSession session = sqlf.openSession();
        /* 调用session中的方法 */
        List<Users> list = session.selectList("show");
        for(Users u:list) {
            System.out.println(u.getUid() + "\t" + u.getUname() + "\t" + u.getUsex() + "\t" + u.getUaddress());
        }
        session.close();
    }
    /* 增加方法 */
    static void add(Users u){
        SqlSession session = opensession();
        try{
            /* 调用session中的方法 */
            session.insert("add",u);/* 参数1:add(方法名),参数2:u(变量) */
            session.commit();
        } catch(Exception e) {
            session.rollback();;
            e.printStackTrace();
        } finally{
            session.close();
        }
    };

    public static void main(String[] args) {

    }
}

 7.测试结果

IDEA+mybatis的实例

 注意事项:

1.导入mybatis的jar包的时候必需导入所有的必需包;

2.实体类的接口的xml文件的头文件以及mybatis.cfg.xml文件的头文件

mybatis的头文件:

<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>

接口的xml文件的头文件: 

 

<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">