首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

ibatis 配置 连下 h2 数据库

2012-09-02 
ibatis 配置 连上 h2 数据库先说说ibatis配置吧新建一个项目我的项目名称是ibatis1,导入ibatis所需要的包,

ibatis 配置 连上 h2 数据库
先说说ibatis配置吧
新建一个项目
我的项目名称是ibatis

1,导入ibatis所需要的包,因为我使用了日志log4j,所以也把log4j的依赖包也导进来

ibatis-2.3.4.726.jar
commons-logging-api.jar
commons-logging-1.1.jar
commons-dbcp-1.2.2.jar
commons-pool.jar
h2-1.3.154.jar (h2数据库所需要jar包)

2,在src目录下创建一个xml文件 sqlmap-config.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><settings cacheModelsEnabled="true" enhancementEnabled="true"lazyLoadingEnabled="true" errorTracingEnabled="true" maxRequests="32"maxSessions="10" maxTransactions="5" useStatementNamespaces="false" /><transactionManager type="JDBC"><dataSource type="SIMPLE"><property name="JDBC.Driver" value="org.h2.Driver" /><property name="JDBC.ConnectionURL" value="jdbc:h2:database/h2db" /><property name="JDBC.Username" value="root" /><property name="JDBC.Password" value="" /><property name="Pool.MaximumActiveConnections" value="10" /><property name="Pool.MaximumIdleConnections" value="5" /><property name="Pool.MaximumCheckoutTime" value="120000" /><property name="Pool.TimeToWait" value="500" /><property name="Pool.PingQuery" value="select 1 from sample" /><property name="Pool.PingEnabled" value="false" /><property name="Pool.PingConnectionsOlderThan" value="1" /><property name="Pool.PingConnectionsNotUsedFor" value="1" /></dataSource></transactionManager><!-- 引入user操作文件 --><sqlMap resource="sqlmap/user-sql.xml"/></sqlMapConfig>


3,在src目录下创建文件夹 sqlmap,然后在文件夹下创建xml文件user-sql.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="User"><typeAlias alias="user" type="model.User" /><select id="getUser" parameterresultparameterparameterparametername="code">package model;import java.io.Serializable;public class User implements Serializable {private static final long serialVersionUID = 1L;private Integer id;private String name;private Integer sex;public User() {}public Integer getId() {return this.id;}public void setId(Integer id) {this.id = id;}public String getName() {return this.name;}public void setName(String name) {this.name = name;}public Integer getSex() {return this.sex;}public void setSex(Integer sex) {this.sex = sex;}}


5,在src目录下新建h2demo.java类
import java.io.Reader;import java.sql.SQLException;import java.util.List;import model.User;import com.ibatis.common.resources.Resources;import com.ibatis.sqlmap.client.SqlMapClient;import com.ibatis.sqlmap.client.SqlMapClientBuilder;/** *  * @代码功能:测试demo * @packageName  * @file_name h2demo.java * @type_name h2demo * @author jiangx * @Description  * * @email sziitjiang@163.com * @date 2011-4-22 下午11:13:07 */public class h2demo {public static void update() {// 首先初始化iBatis获得一个SqlMapClient对象String resource = "sqlmap-config.xml";SqlMapClient sqlMap = null;try {Reader reader = Resources.getResourceAsReader(resource);sqlMap = SqlMapClientBuilder.buildSqlMapClient(reader);} catch (Exception e) {e.printStackTrace();}// sqlMap系统初始化完毕,开始执行update操作try {sqlMap.startTransaction();User user = new User();user.setId(new Integer(1));user.setName("江伟雄");user.setSex(new Integer(1));sqlMap.update("updateUser", user);sqlMap.commitTransaction();} catch (SQLException e) {System.out.println(e.getMessage());} finally {try {sqlMap.endTransaction();} catch (SQLException e) {e.printStackTrace();}}}public static List getUser() {// 首先初始化iBatis获得一个SqlMapClient对象String resource = "sqlmap-config.xml";com.ibatis.sqlmap.client.SqlMapClient sqlMap = null;List user = null;try {java.io.Reader reader = com.ibatis.common.resources.Resources.getResourceAsReader(resource);sqlMap = SqlMapClientBuilder.buildSqlMapClient(reader);} catch (Exception e) {e.printStackTrace();}// sqlMap系统初始化完毕,开始执行getAllUser操作try {sqlMap.startTransaction();user = sqlMap.queryForList("getAllUser", null);sqlMap.commitTransaction();} catch (SQLException e) {System.out.println(e.getMessage());} finally {try {sqlMap.endTransaction();} catch (SQLException e) {e.printStackTrace();}}return user;}public static void main(String[] args) {update();List user = getUser();for (int i = 0; i < user.size(); i++){System.out.println(((User) user.get(i)).getName());}}}


6,在项目根目录下新建一个文件夹database,然后干什么呢?这个文件夹里面放的是数据库文件!里面有一个bat的配置启动数据库的文件,双击之后就打开h2数据库网页客户端界面,同时h2 数据库启动,记住,运行项目的时候要先把h2数据库关掉才可以,因为h2数据库是在项目中启动的!

最后,不足的是h2数据库官方说明文档是英文版的,我自己没有找到中文版的,有空得把它翻译翻译,如果大家有找到中文版的,告诉我一声啊,那我就不用浪费时间了!谢谢...

热点排行