iBATIS框架配置

1.写sqlMapConfig.xml 配置文件  这个文件是iBATIS中的核心文件
文件头写
<?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">
文件中必须两个标签<setting><sqlmapconfig>
settings 
cachemodelsenabled="true" 全局控制sqlmapclient的缓存 
enhancementenabled="true" 全局控制运行时字节码增强,优化javabean的属性性能 
lazyloadingenabled="true" 延迟加载 
errortracingenabled="true" 
maxrequests="32" 同时执行sql语句的最大线程数,通常大小是maxtransactions的10倍,并且总是大于                 maxtransactions和 maxsessions的总和。减小这个值能够提高性能。 
maxsessions="10" 
maxtransactions="5" 
usestatementnamespaces="false"  是否启动全局的sqlmap名字空间。如果启动则应用时,必须加上名字                                空间:queryforobject(sqlmap的名字空间.statementname) 
 / 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>properties resource=""在这里将项目(工程)的所有资源文件包含进来,将相对与src路径的资源                          文件的路径以及文件名包含进来
</sqlmapconfig>

2.写与数据库相对应的pojo类3.写映射文件,文件名最好与pojo类一样的.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">
改别名
<typeAlias alias="Account" type="com.mydomain.domain.Account"/>
写sql语句
<select id="selectAllAccounts" resultMap="AccountResult">
    select * from ACCOUNT
  </select>
 <insert id="insertAccount" parameterClass="Account">
    insert into account (
      ACC_ID,
      ACC_FIRST_NAME,
      ACC_LAST_NAME,
      ACC_EMAIL)
    values (
      #id#, #firstName#, #lastName#, #emailAddress#
    )
  </insert>
  <update id="updateAccount" parameterClass="Account">
    update ACCOUNT set
      ACC_FIRST_NAME = #firstName#,
      ACC_LAST_NAME = #lastName#,
      ACC_EMAIL = #emailAddress#
    where
      ACC_ID = #id#
  </update>
  <delete id="deleteAccountById" parameterClass="int">
    delete from ACCOUNT where ACC_ID = #id#
  </delete>

4.写测试类
String resource ="com/mydomain/data/SqlMapConfig.xml";
Reader reader;
try {
   reader = Resources.getResourceAsReader(resource);    必写
   SqlMapClient sqlMap = SqlMapClientBuilder.buildSqlMapClient(reader);  必写
   查询
   List list = sqlMap.queryForList("selectAllAccounts");
   新增
   sqlMap.insert("insertAccount", account);
   修改
   sqlMap.update("updateAccount", account);
   删除
   sqlMap.delete("deleteAccountById", 2);   
} catch (Exception e) {
 // TODO Auto-generated catch block
   e.printStackTrace();
        }

猜你喜欢

转载自love398146779.iteye.com/blog/1160656