- 作者:xiaoxiao
- 发表时间:2020-12-23 10:39
- 来源:未知
本文章将从一个Ibatis的具体示例,帮助你快速了解IBatis框架。
一个简单的IBatis应用包含以下基本步骤:
一、 配置文件1. 配置SqlMapConfig.properties文件
2. 配置SqlMapConfig.xml文件
3. 配置SqlMap.xml文件(可能有多个文件,一般情况下,可以一个表对应一个SqlMap.xml文件,文件名称可以与表名相同)
注意:上面所述的SqlMapConfig.xml文件必须在类路径中,SqlMapConfig.properties和SqlMap.xml文件可以在类路径中,也可以不在类路径中。当SqlMapConfig.properties和SqlMap.xml文件不在类路径中的时候,配置也不同,在本文中,这三个文件都放在类路径中。
二、 程序调用1. 初始化SqlMapClient对象。
2. 运行Sql语句:你可以调用SqlMapClient对象的queryfor...()、insert()、update()、delete()来分别执行select、insert、update和delete操作。
好了,下面我们结合实例进行讲解:三、实例:
下面的例子是以mysql为例进行说明,建立了一个author表,为了方便调试代码,你可以将ibatis-common-2.jar、ibatis-dao-2.jar、ibatis-sqlmap-2.jar和lib目录下的所有的jar都加载到你的程序中,在后续的文章中,将会说明每个Jar的用途。
(一) 创建数据库和表创建一个名字为IBatisExample的数据库CREATE TABLE author ( auth_id int(8) NOT NULL auto_increment, auth_name varchar(100) NOT NULL default '', auth_age int(3) NOT NULL default '0', auth_tel varchar(100) NOT NULL default '', auth_address varchar(100) NOT NULL default '', PRIMARY KEY (auth_id)) TYPE=MyISAM;INSERT INTO author VALUES (1, '作者一', 30, '025-12345678', '南京');INSERT INTO author VALUES (2, '作者二', 30, '025-12345678', '南京');
(二) 配置文件
1. 配置SqlMapConfig.properties文件文件内容:driver=org.gjt.mm.mysql.Driverurl=jdbc:mysql://192.168.0.26:3306/IBatisExample?useUnicode=true&characterEncoding=GB2312username=rootpassword=123456
2. 配置SqlMapConfig.xml文件文件内容:<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE sqlMapConfigPUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN""http://www.ibatis.com/dtd/sql-map-config-2.dtd"><!-- Always ensure to use the correct XML header as above! --><sqlMapConfig><!-- The properties (name=value) in the file specified here can be used placeholders in this configfile (e.g. “${driver}”. The file is relative to the classpath and is completely optional. --><properties resource="SqlMapConfig.properties" /><!-- These settings control SqlMapClient configuration details, primarily to do with transactionmanagement. They are all optional (more detail later in this document). --><settingscacheModelsEnabled="true"enhancementEnabled="true"lazyLoadingEnabled="true"maxRequests="32"maxSessions="10"maxTransactions="5"useStatementNamespaces="false"/>