IBatis--- 创建SqlMapClient

以下是创建一个SqlMapClient的示例,IBatis官方推荐的做法是使用一个辅助类来提供SqlMapClient的实例,见示例12.3

12.3IbatisSQLMapConfig.java

package struts.sample.cap11.sample2.ibatisConfig;

 

import java.io.Reader;

import com.ibatis.common.resources.Resources;

import com.ibatis.sqlmap.client.SqlMapClient;

import com.ibatis.sqlmap.client.SqlMapClientBuilder;

 

public class IbatisSQLMapConfig {

    private static final SqlMapClient sqlMap;

    //在静态区块中初试化返回

    static {

        try {

            //声明配置文件的名称(映射文件被定义在其中)

            String resource = "sql_map_config.xml";

            //利用工具类Resources来读取到配置文件

            Reader reader = Resources.getResourceAsReader(resource);

            //创建SqlMapClient接口的变量实例

            sqlMap = SqlMapClientBuilder.buildSqlMapClient(reader);

        } catch (Exception e) {

            e.printStackTrace();

            throw new RuntimeException(

                    "Error initializing MyAppSqlConfig class. Cause: " + e);

        }

    }

 

    public static SqlMapClient getSqlMapInstance() {

        //提供静态方法返回静态区块中得到的SqlMapClient

        return sqlMap;

    }

}

对于这个辅助类,之前的解释已经很清楚了,从代码的注释总也可以看到它的工作方式。其实也可以按照介绍Hibernate框架时所用的方式将这个类改变成单例类。

一旦创建好了SqlMapClient那么对数据库的操作就十分简单了。

SqlMapClient提供了如下的一些功能:

q        显式的调用事务。

q        执行对数据库的常规操作。

q        批量处理非查询的SQL语句。

你可能感兴趣的:(sql,框架,Hibernate,ibatis,struts)