環境:windows Server2003, Eclipse helios, MS SqlServer 2008
step 1: SQL:
Create table Person(id_1 bigint identity primary key,firstName_1 varchar(20),lastName_1 varchar(20),weightInKilograms_1 decimal,heightInMeters_1 decimal)
step 2: dbConfig.xml
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN" "http://www.ibatis.com/dtd/sql-map-config-2.dtd"><sqlMapConfig><properties resource="db.properties" /><settings cacheModelsEnabled="true" enhancementEnabled="true"lazyLoadingEnabled="true" maxRequests="32" maxSessions="10"maxTransactions="5" useStatementNamespaces="false" /><transactionManager type="JDBC"><dataSource type="SIMPLE"><property name="JDBC.Driver" value="${driver}" /><property name="JDBC.ConnectionURL" value="${url}" /><property name="JDBC.Username" value="${user}" /><property name="JDBC.Password" value="${password}" /></dataSource></transactionManager><sqlMap resource="com/ibatis/Person.xml" /></sqlMapConfig>
step 3: db.properties
driver=com.microsoft.sqlserver.jdbc.SQLServerDriverurl=jdbc:sqlserver://192.168.10.144;databaseName=Test;user=sapassword=xxxxxx
step 4: Person.java
package com.ibatis;public class Person {private int id; private String firstName; private String lastName; private double weightInKilograms;private double heightInMeters;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getFirstName() {return firstName;}public void setFirstName(String firstName) {this.firstName = firstName;}public String getLastName() {return lastName;}public void setLastName(String lastName) {this.lastName = lastName;}public double getWeightInKilograms() {return weightInKilograms;}public void setWeightInKilograms(double weightInKilograms) {this.weightInKilograms = weightInKilograms;}public double getHeightInMeters() {return heightInMeters;}public void setHeightInMeters(double heightInMeters) {this.heightInMeters = heightInMeters;}}
step 5: Person.xml
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd"><sqlMap namespace="Person"><!-- Use primitive wrapper type (e.g. Integer) as parameter and allow results to be auto-mapped results to Person object (Java Bean) properties --><select id="getPerson" parameterClass="int" resultClass="com.ibatis.Person">SELECTid_1 as id,firstName_1 as firstName,lastName_1 as lastName,weightInKilograms_1 as weightInKilograms,heightInMeters_1 asheightInMetersFROM PERSONWHERE id_1 = #id# </select></sqlMap>
step 6: Test
package com.test;import java.io.IOException;import java.io.Reader;import java.sql.SQLException;import com.ibatis.Person;import com.ibatis.common.resources.Resources;import com.ibatis.sqlmap.client.SqlMapClientBuilder;public class TestPerson {private static final String resource = "dbConfig.xml";public static void main(String[] args) {try {com.ibatis.sqlmap.client.SqlMapClient sqlMap = null;Reader reader = Resources.getResourceAsReader(resource);sqlMap = SqlMapClientBuilder.buildSqlMapClient(reader);Person person = (Person) sqlMap.queryForObject("getPerson",new Integer(1));System.out.println(person.getFirstName()); // 列印System.out.println(person.getLastName()); // 列印System.out.println(person.getHeightInMeters()); // 列印System.out.println(person.getWeightInKilograms()); // 列印} catch (IOException e) {e.printStackTrace();} catch (SQLException e1) {e1.printStackTrace();}}}
參考網路資源。