ibatis基本環境搭建

第一步:導入相關jar包
jar包

第二步:User.java

package com.dx.mobile_scm.test;

public class User {
    private Integer id;
    private String name;
    private String password;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
}

第三步:編寫相關配置文件
SqlMapConfig.xml配置文件內容:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMapConfig      
    PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"      
    "http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
    <transactionManager type="JDBC" commitRequired="false">
        <dataSource type="SIMPLE">
            <property name="JDBC.Driver" value="com.mysql.jdbc.Driver" />
            <property name="JDBC.ConnectionURL" value="jdbc:mysql://localhost:3306/test" />
            <property name="JDBC.Username" value="root" />
            <property name="JDBC.Password" value="123456" />
        </dataSource>
    </transactionManager>
    <sqlMap resource="com/dx/mobile_scm/test/user.xml"/>
</sqlMapConfig>

javabean映射配置文件

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE sqlMap      
    PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"      
    "http://ibatis.apache.org/dtd/sql-map-2.dtd">

<sqlMap>
    <select id="findUser" resultClass="com.dx.mobile_scm.test.User">
        select * from sys_user where id=#value#
    </select>
</sqlMap>

測試:

package com.dx.mobile_scm.test;

import java.io.FileInputStream;
import java.net.URL;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import com.ibatis.sqlmap.client.SqlMapClient;
import com.ibatis.sqlmap.client.SqlMapClientBuilder;
public class TestIbatis {
    public static void main(String[] args) {
        //testJdbc();
        testIbatis();
    }
    /**
     * 測試ibatis框架
     * @throws Exception
     */
    public static void testIbatis(){
        User u = null;
        SqlMapClient client = null;
        try {
            //獲取文件路徑(文件名中能含有空格)
            URL url = TestIbatis.class.getClassLoader().getResource("SqlMapConfig.xml");
            //加載配置文件,生成回話
            client = SqlMapClientBuilder.buildSqlMapClient(new FileInputStream(url.getPath()));
            //查詢數據
            u = (User)client.queryForObject("findUser", 3);
            System.out.println(u.getName());
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    /**
     * 測試jdbc
     */
    public static void testJdbc() {
        Connection conn = null;
        PreparedStatement pst = null;
        ResultSet rs = null;
        try {
            Class.forName("com.mysql.jdbc.Driver");
            String url = "jdbc:mysql://localhost:3306/test";
            String userName = "root";
            String pass = "123456";
            conn = DriverManager.getConnection(url, userName, pass);
            String sql = "select * from sys_user where id=?";
            pst = conn.prepareStatement(sql);
            pst.setInt(1, 3);
            rs = pst.executeQuery();
            while (rs.next()) {
                System.out.println(rs.getString("name"));
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (rs != null) {
                try {
                    rs.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            try {
                pst.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
            try {
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章