一、
SqlMapConfig.xml为工程ibatis的配置文件
com.test.domain.Employe.java为一个Employ的实体类
com.sql.Employ.xml为Employ.java的映射文件
com.test.util.SQLMapClient.java为获得sqlmap的一个工具
com.test.domain.EmploySQLMapper.java Employe的dao类
二、文件内容
1、Employ.java
package com.test.domain;
public class Employ {
private int id;
private String enployName;
private int salary;
public Employ() {
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getEnployName() {
return enployName;
}
public void setEnployName(String enployName) {
this.enployName = enployName;
}
public int getSalary() {
return salary;
}
public void setSalary(int salary) {
this.salary = salary;
}
}
2、Employ.xml
<?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 namespace="Employ"> <!-- Use type aliases to avoid typing the full classname every time. --> <typeAlias alias="Employ" type="com.test.domain.Employ"/> <!-- Result maps describe the mapping between the columns returned from a query, and the class properties. A result map isn't necessary if the columns (or aliases) match to the properties exactly. --> <resultMap id="EmployResult" class="Employ"> <result property="id" column="id"/> <result property="enployName" column="employ_name"/> <result property="salary" column="salary"/> </resultMap> <!-- Select with no parameters using the result map for Account class. --> <select id="selectAllEmploy" resultMap="EmployResult"> <![CDATA[ select * from employees ]]> </select> <!-- A simpler select example without the result map. Note the aliases to match the properties of the target result class. --> <!-- Insert example, using the Account parameter class --> <insert id="insertEmploy" parameterClass="Employ"> <![CDATA[ insert into employees (employ_name, salary) values(#enployName#, #salary#) ]]> </insert> <!-- Update example, using the Account parameter class --> <!-- Delete example, using an integer as the parameter class --> </sqlMap>
3、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> <!-- Configure a built-in transaction manager. If you're using an app server, you probably want to use its transaction manager and a managed datasource --> <transactionManager type="JDBC" commitRequired="false"> <dataSource type="SIMPLE"> <property name="JDBC.Driver" value="com.mysql.jdbc.Driver"/> <property name="JDBC.ConnectionURL" value="jdbc:mysql:///test"/> <property name="JDBC.Username" value="root"/> <property name="JDBC.Password" value="root"/> </dataSource> </transactionManager> <!-- List the SQL Map XML files. They can be loaded from the classpath, as they are here (com.domain.data...) --> <sqlMap resource="com/sql/Employ.xml"/> <!-- List more here... <sqlMap resource="com/mydomain/data/Order.xml"/> <sqlMap resource="com/mydomain/data/Documents.xml"/> --> </sqlMapConfig>
4、SQLMapClient.java
package com.test.util;
import java.io.IOException;
import java.io.Reader;
import sun.misc.Resource;
import com.ibatis.common.resources.Resources;
import com.ibatis.sqlmap.client.SqlMapClient;
import com.ibatis.sqlmap.client.SqlMapClientBuilder;
public class SQLMapClient {
private static SqlMapClient sqlMaper = null;
static {
String resource = "SqlMapConfig.xml";
try {
Reader reader = Resources.getResourceAsReader(resource);
sqlMaper = SqlMapClientBuilder.buildSqlMapClient(reader);
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
public static SqlMapClient getSqlMaper() {
return sqlMaper;
}
}
5、EmploySQLMapper.java
package com.test.domain;
import java.sql.SQLException;
import java.util.List;
import com.ibatis.sqlmap.client.SqlMapClient;
import com.test.util.SQLMapClient;
public class EmploySQLMapper {
private SqlMapClient sqlMapper = null;
public EmploySQLMapper() {
sqlMapper = SQLMapClient.getSqlMaper();
}
public void insertEmploy(Employ employ) throws SQLException {
sqlMapper.insert("insertEmploy", employ);
}
public List<Employ> selectAllEmploy() throws SQLException {
return sqlMapper.queryForList("selectAllEmploy");
}
public static void main(String[] args) throws SQLException {
Employ employ = new Employ();
employ.setEnployName("sun");
employ.setSalary(1500);
//
EmploySQLMapper employSQLMapper = new EmploySQLMapper();
// employSQLMapper.insertEmploy(employ);
List<Employ> employees = employSQLMapper.selectAllEmploy();
for (Employ e : employees) {
System.out.println(e.getEnployName() + ":" + e.getSalary());
}
}
}