环境
优质
小牛编辑
129浏览
2023-12-01
在开始实际开发工作之前,您必须为iBATIS设置适当的环境。 本章介绍如何为iBATIS设置工作环境。
iBATIS安装
执行以下简单步骤在Linux机器上安装iBATIS -
$ unzip ibatis-2.3.4.726.zip
inflating: META-INF/MANIFEST.MF
creating: doc/
creating: lib/
creating: simple_example/
creating: simple_example/com/
creating: simple_example/com/mydomain/
creating: simple_example/com/mydomain/data/
creating: simple_example/com/mydomain/domain/
creating: src/
inflating: doc/dev-javadoc.zip
inflating: doc/user-javadoc.zip
inflating: jar-dependencies.txt
inflating: lib/ibatis-2.3.4.726.jar
inflating: license.txt
inflating: notice.txt
inflating: release.txt
$pwd
/var/home/ibatis
$set PATH=$PATH:/var/home/ibatis/
$set CLASSPATH=$CLASSPATH:/var/home/ibatis\
/lib/ibatis-2.3.4.726.jar
数据库设置
使用以下语法在任何MySQL数据库中创建EMPLOYEE表 -
mysql> CREATE TABLE EMPLOYEE (
id INT NOT NULL auto_increment,
first_name VARCHAR(20) default NULL,
last_name VARCHAR(20) default NULL,
salary INT default NULL,
PRIMARY KEY (id)
);
Create SqlMapConfig.xml
考虑以下 -
我们将使用JDBC访问数据库testdb 。
MySQL的JDBC驱动程序是“com.mysql.jdbc.Driver”。
连接URL是“jdbc:mysql:// localhost:3306/testdb”。
我们将分别使用用户名和密码作为“root”和“root”。
我们在所有操作中的sql语句映射将在“Employee.xml”中描述。
基于上述假设,我们必须创建一个名为SqlMapConfig.xml的XML配置文件, SqlMapConfig.xml包含以下内容。 这是您需要提供iBatis所需的所有配置的地方 -
重要的是,文件SqlMapConfig.xml和Employee.xml都应该存在于类路径中。 现在,我们将Employee.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 useStatementNamespaces="true"/>
<transactionManager type="JDBC">
<dataSource type="SIMPLE">
<property name="JDBC.Driver" value="com.mysql.jdbc.Driver"/>
<property name="JDBC.ConnectionURL" value="jdbc:mysql://localhost:3306/testdb"/>
<property name="JDBC.Username" value="root"/>
<property name="JDBC.Password" value="root"/>
</dataSource>
</transactionManager>
<sqlMap resource="Employee.xml"/>
</sqlMapConfig>
您也可以使用SqlMapConfig.xml文件设置以下可选属性 -
<property name="JDBC.AutoCommit" value="true"/>
<property name="Pool.MaximumActiveConnections" value="10"/>
<property name="Pool.MaximumIdleConnections" value="5"/>
<property name="Pool.MaximumCheckoutTime" value="150000"/>
<property name="Pool.MaximumTimeToWait" value="500"/>
<property name="Pool.PingQuery" value="select 1 from Employee"/>
<property name="Pool.PingEnabled" value="false"/>