Ibatis学习笔记
- 格式:pdf
- 大小:72.17 KB
- 文档页数:5
配置文件 (2)iBaits中SqlMapClientTemplate的使用 (8)iBatis2之SqlMap配置总结(18条) (10)parameterMap (15)配置文件(1)jdbc连接的属性文件driver=com.mysql.jdbc.Driverurl=jdbc:mysql://localhost:3306/testusername=rootpassword=roots(2)总配置文件<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE sqlMapConfigPUBLIC "-////DTD SQL Map Config 2.0//EN""/dtd/sql-map-config-2.dtd"><sqlMapConfig><properties resource="examples/domain/SqlMapConfigExample.properties" /><settings cacheModelsEnabled="true" enhancementEnabled="true"lazyLoadingEnabled="true" maxRequests="32" maxSessions="10"maxTransactions="5" useStatementNamespaces="false" /><transactionManager type="JDBC"><dataSource type="SIMPLE"><property name="JDBC.Driver" value="${driver}" /><property name="JDBC.ConnectionURL" value="${url}" /><property name="ername" value="${username}" /><property name="JDBC.Password" value="${password}" /> </dataSource></transactionManager><sqlMap resource="examples/domain/Person.xml" /></sqlMapConfig>⑴ Settings 节点参数描述cacheModelsEnabled是否启用SqlMapClient 上的缓存机制。
ibatis 学习之道:iBatis 简单入门教程iBatis 简介:iBatis 是apache 的一个开源项目,一个O/R Mapping 解决方案,iBatis 最大的特点就是小巧,上手很快。
如果不需要太多复杂的功能,iBatis 是能够满足你的要求又足够灵活的最简单的解决方案,现在的iBatis 已经改名为Mybatis 了。
官网为:mybatis/搭建iBatis 开发环境:1、导入相关的jar 包,ibatis-2.3.0.677.jar、mysql-connector-java-5.1.6-bin.jar2、编写配置文件:Jdbc 连接的属性文件总配置文件,SqlMapConfig.xml关于每个实体的映射文件(Map 文件)Demo:Student.java:publicclassStudent { // 注意这里需要保证有一个无参构造方法,因为包括Hibernate 在内的映射都是使用反射的,如果没有无参构造可能会出现问题privateintid; privateString name; privateDate birth; privatefloatscore; publicintgetId() { returnid; publicvoidsetId(intid) { this.id = id; publicString getName() { returnname; publicvoidsetName(String name) { = name; publicDate getBirth() { returnbirth; publicvoidsetBirth(Date birth) { this.birth = birth; publicfloatgetScore() { returnscore; publicvoidsetScore(floatscore) { this.score = score; @Override publicString toString() { return”id=“+id +”\tname=“+name +”\tmajor=“+birth +”\tscore=“+ score +”\n”;?xmlversion=“1.0”encoding=“UTF-8”?!DOCTYPE sqlMap PUBLIC “-//ibatis.apache//DTD SQL Map 2.0//EN”“ibatis.apache/dtd/sql-map-2.dtd”sqlMap !--。
iBatis学习总结1.创建iBatis工程的步骤 (2)2.iBatis与传统JDBC比较 (2)3.Hibernate和ibatis的映射关系 (2)4.认识SqlMapClient接口 (2)5.SqlMapConfig标签详解 (3)(1)<properties>元素 (3)(2)<settings> 元素 (4)(3)<typeAlias>元素 (4)(4)<transactionManager>元素 (4)(5)<datasource>元素 (4)(6)<sqlMap >元素 (5)6.SqlMap标签详解 (5)(1)<cacheModel> (5)(2)<typeAlias> 类别名 (5)(3)<parameterMap> 参数类型外联映射关系 (5)(4)<resultMap>返回类型显示映射关系 (6)(5)<select> (6)(6)<insert> (7)(7)<update> (8)(8)<delete> (8)(9)<procedure> (8)(10)<statement> 执行DDL语句 (9)(11)<sql> SQL语句片段 (9)(12)<include> 组合语句 (9)(13)<selectKey> (9)7.SQL参数详解 (10)8.ibatis事务处理 (10)9.动态SQL (10)(1)一元条件标签 (11)(2)二元条件标签 (11)1.创建iBatis工程的步骤(1)建立数据库(2)创建工程(3)添加lib(4)编写sqlmapconfig.xml(5)编写sqlmap.xml(6)编写代码2.iBatis与传统JDBC比较(1)iBatis比使用JDBC编程减少了61%的代码量(2)iBatis是最简单的持久化框架(3)iBatis框架使SQL代码从程序代码中彻底分离,并且SQL语句可以重用.(4)增强了项目中的分工和项目的可移植性。
核心提示:SqlMap的配置是iBatis中应用的核心。
这部分任务占据了iBatis 开发的70的工作量。
1、命名空间: sqlMap namespace=Account,在此空间外要引用此空间的元素,则需要加上命名空间名。
2、实体的别名: typeAlias alias=Account type=vasoft.ibatissut.simSqlMap的配置是iBatis中应用的核心。
这部分任务占据了iBatis开发的70的工作量。
1、命名空间:<sqlMap namespace="Account">,在此空间外要引用此空间的元素,则需要加上命名空间名。
2、实体的别名:<typeAlias alias="Account"type="vasoft.ibatissut.simple.domain.entity.Account"/>如果有用到的全名的地方,可以用别名代替,受命名空间约束。
3、插入操作对于自增主键的表,插入可以不配置插入的主键列。
否则是必须的。
4、获取主键插入语句之前配置:主要是针对Sequence主键而言,插入前必须指定一个主键值给要插入的记录。
Oracle、DB2亦如此,方法是在插入语句标签<insert....>之前配置上:<insert id="insertAccount" parameterClass="Account"><selectKey resultClass="long" keyProperty="sctId">SELECT SEQ_TEST.NEXTVAL FROM DUAL</selectKey>insert into .... ........</insert>插入语句之后配置:主要是针对自增主键的表而言,这类表在插入时不需要主键,而是在插入过程自动获取一个自增的主键。
Ibatis学习笔记DOCUMENT HISTORY目录一、Ibatis优点 (6)A.优点 (6)1.ibatis把sql语句从Java源程序中独立出来,放在单独的XML文件中编写,给程序的维护带来了很大便利。
(6)2.ibatis封装了底层JDBC API的调用细节,并能自动将结果集转换成Java Bean对象,大大简化了Java数据库编程的重复工作。
(6)3.简单易于学习,易于使用,非常实用。
(6)4.因为Ibatis需要程序员自己去编写sql语句,程序员可以结合数据库自身的特点灵活控制sql语句,因此能够实现比hibernate等全自动orm框架更高的查询效率,能够完成复杂查询。
(6)5.阿里巴巴、慧点科技等多家知名软件公司都使用Ibatis。
(6)B.与JDBC相比较 (6)1.减少了61%的代码量 (6)2.简单 (6)3.架构级性能增强 (7)4.Sql语句与程序代码分离 (7)5.简化项目中的分工 (7)6.增强了移植性 (7)C.缺点 (7)1.参数数量只能一个 (7)2.需要手写sql (7)D.简介 (7)二、准备ibatis环境 (8)A.搭建环境:导入相关的jar包 (8)1.数据库驱动包 (8)2.Ibatis包 (8)B.配置文件: (8)1.Jdbc连接的属性文件 (8)2.总配置文件 (8)3.关于每个实休的映射文件(map文什) (8)C.属性文件 (8)D.总配置文件:SqlMapConfig.xml (9)E.映射文件 (9)F.读取配置 (11)G.CRUD 借助SqlMapClient中的方法 (13)1.queryForObject 查询单条记录 (13)2.queryForList 查询多条记录 (13)3.insert 新增 (13)4.delete 删除 (13)5.update 更新 (13)6.select 查询 (13)H.标签使用 (13)1.typealias 类型别名 (13)三、查询所有的对象 (14)A.select 标签 (14)B.业务逻辑查询所有对象 (14)四、查询指定id的单个对象 (15)A.select 标签 (15)B.业务逻辑查询单个对象 (15)五、插入一个实体对象 (16)A.insert 标签 (16)B.业务逻辑插入一个实体对象 (16)六、删除指定id的单个对象 (17)A.delete 标签 (17)B.业务逻辑删除单个对象 (17)七、修改实体对象 (18)A.update 标签 (18)B.业务逻辑修改单个对象 (18)八、模糊查询实体对象 (19)A.select 标签 (19)B.业务逻辑模糊查询 (19)九、sql主键生成方式 (20)A.insert 标签,使用序列的方式来生成主键 (20)B.业务逻辑插入数据的主键生成方式 (20)十、代码整理 (21)A.项目结构图 (21)1.DAO接口IStudentDAO.java (21)2.DAO接口实现类IStudentDAOImpl.java (22)3.JavaBean实体对象Student.java (25)4.实体类映射文件Student.xml (27)5.日志文件log4j.properties (29)6.属性文件SqlMap.properties (31)7.总配置文件SqlMapConfig.xml (31)8.Junit4测试文件IStudentDAOImplTest.java (32)一、Ibatis优点A. 优点1.ibatis把sql语句从Java源程序中独立出来,放在单独的XML文件中编写,给程序的维护带来了很大便利。
ibatis学习笔记(一)>>>>>>>sqlMapConfig.xml文件详解1.sqlMapConfig.xml配置文件详解:Xml代码1.<?xml version="1.0"encoding="UTF-8"?>2.<! DOCTYPE sqlMapConfig3.P UBLIC "-////DTD SQL Map Config 2.0//EN"4."/dtd/sql-map-config-2.dtd" >5.<sqlMapConfig>6.<settings7.cacheModelsEnabled ="true" <!--是否启用缓存机制-- >zyLoadingEnabled="true"<!-- 是否启用延迟加载机制 -->9.enhancementEnabled="true"<!-- 是否启用字节码增强机制 -->10.errorTracingEnabled="true"<!-- 是否启用错误处理机制 -->11.maxRequests="32"<!-- 最大并发请求数 -->12.maxSessions="10"<!-- 最大Session数 -->13.maxTransactions="5"<!-- 最大并发事务数 -->eStatementNamespaces="true"/><!-- 是否启用名称空间 -->15.<transactionManager type ="JDBC"><!-- 定义了ibatis的事务管理器有3中(JDBC,JTA,EXTERNAL) -->16.<dataSource type ="SIMPLE"><!-- type属性指定了数据源的链接类型,也有3种类型(SIMPLE,DBCP,JNDI) -->17.<property name ="JDBC.Driver"value ="com.mysql.jdbc.Driver"/>18.<property name ="JDBC.ConnectionURL"value ="jdbc:mysql://localhost/test"/>19.<property name ="ername"value ="root"/>20.<property name ="JDBC.Password"value ="wyq"/>21.<property name ="Pool.MaximumActiveConnections"value ="10"/><!-- 连接池维持的最大容量 -->22.<property name ="Pool.MaximumIdleConnections"value ="5"/><!-- 连接池允许挂起的最大连接 -->23.<property name ="Pool.MaximumCheckoutTime"value ="120000"/><!-- 连接被某个任务所允许占用的最大时间 -->24.<property name ="TimeToWait"value ="500"/><!-- 线程允许等待的最大时间 -->25.26.</dataSource>27.</transactionManager>28.<sqlMap resource ="com/wyq/map/userMap.xml"/>29.</sqlMapConfig>一transactionManager节点transactionManagerab 定义了ibatis的事务管理器,目前提供了以下几种选择:1) JDBC通过传统JDBC mit/rollback实现事务支持.2) JTA使用容器提供的JTA服务实现全局事务管理.3) EXTERNAL外部事务管理,如在EJB中使用ibatis,通过EJB的部署配置即可实现自动的事务管理机制.此时ibatis将把所有事务委托给外部容器进行管理.此外,通过Spring等轻量级容量实现事务的配置化管理也是一个不错的选择.二dataSource 节点dataSource 从属于transactionManager, 用于设定ibatis运行期使用DataSource属性.type 属性: dataSource 元素的type 属性指定了dataSource 的实现类型.可选项目:1) SIMPLE:SIMPLE 是ibatis 内置的dataSource 实现,其中实现了一个简单的数据库连接池机制,对应ibatis 实现类为com.ibatis.sqlmap.engine.datasource.SimpleDataSourceFactory.JDBC 使用数据库自己的事务(局部事务),connect.beginTranstion(), mit()等.2) DBCP基于Apache DBCP连接池组件实现的DataSource封装,当无容器提供DataSource服务时,建议使用该选项,对应ibatis实现类为com.ibatis.sqlmap.engine.datasource.DbcpDataSourceFactory.JTA :使用jta 事务管理器管理事务(全局事务),使用userTranstion对象.3) JNDI使用J2EE容器提供的DataSource实现, DataSource将通过指定的JNDI Name从容器中获取.对应ibatis实现类为com.ibatis.sqlmap.engine.datasource.JndiDataSourceFactory.Ibatis 不控制事务,事务交由外部控制,一般在CTM,或spring托管事务中使用.JNDI的配置大部分都在应用服务器中进行,所以在ibatis中的配置相对简单(1)jdbc事务控制的JNDI配置Xml代码1.<transctionManager type ="JDBC">2.<dataSource type ="JNDI">3.<property name ="DataSource"value ="java:comp/env/jdbc/myDataSource"/>4.</dataSource>5.</transctionManager>(2)JTA事务控制的JNDI配置Xml代码1.<transctionManager type ="JTA">2.<property name ="UserTransaction"value ="java:/ctx/con/UserTransaction"/>3.<dataSource type ="JNDI">4.<property name ="DataSource"value ="java:comp/env/jdbc/myDataSource"/>5.</dataSource>6.</transctionManager>sqmMap节点指定了映射文件的位置,配置文件中可以定义多个sqlMap元素,以指定项目内所包含的所有映射文件.ibatis学习笔记(二)>>>>>>>sqlMapConfig.xml文件详解ibatis基础代码包括:1.ibatis实例配置一个典型的配置文件如下(具体配置项目的含义见后):<? xml version="1.0" encoding="UTF-8" ?><! DOCTYPE sqlMapConfigPUBLIC "-////DTD SQL Map Config 2.0/"[url]/dtd/[/url]sql-map-config-2.dt<sqlMapConfig >< settingscacheModelsEnabled ="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 ="com.p6spy.engine.spy.P6SpyDriver" />< property name ="JDBC.ConnectionURL" value="jdbc:mysql://localhost/sample" />< property name ="ername" value ="user" />< property name ="JDBC.Password" value ="mypass" />< 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 ACCOUNT" />< property name ="Pool.PingEnabled" value ="false" />< property name ="Pool.PingConnectionsOlderThan" value ="1" />< property name ="Pool.PingConnectionsNotUsedFor" value ="1" /></ dataSource ></ transactionManager >< sqlMap resource ="com/ibatis/sample/User.xml" /></ sqlMapConfig >⑴Settings 节点cacheModelsEnabled是否启用SqlMapClient上的缓存机制。
目录Ibatis知识点学习总结 (2)简介 (2)特点 (2)资源 (3)第Ⅰ部分:使用ibatis开发第一个程序 (3)准备与测试 (3)使用ibatis完成对数据表的增、删、改、查操作 (4)第Ⅱ部分:Ibatis知识点总结 (11)JDBC回顾 (11)Ibatis配置文件— sqlMapConfig (12)Ibatis OR映射文件— sqlMap (16)第Ⅲ部分:SqlMap API使用方法学习总结 (24)SqlMap API使用方法与简单编程 (24)SqlMap API中重要类学习总结 (25)第Ⅳ部分:Ibatis系统架构与映射原理 (28)Ibatis框架的主要类层次结构 (28)Ibatis框架的设计策略 (29)Ibatis框架的运行原理 (30)Ibatis对SQL语句的解析 (31)Ibatis数据库字段映射到Java对象 (31)Ibatis知识点学习总结简介ibatis一词来源于“internet”和“abatis”的组合,是一个由Clinton Begin在2001年发起的开放源代码项目。
最初侧重于密码软件的开发,现在是一个基于Java的持久层框架。
2010年这个项目由apache software foundation 迁移到了google code,并且改名为mybatis。
特点优点:✧简单易于掌握从只懂得JDBC操作到能够使用ibatis进行创建(Create)、更新(Update)、读取(Read)和删除(Delete)等操作可能只需要一天的时间。
✧易于进行sql优化从第一次开始使用,就会明白,用这个持久层框架需要自己完成sql语句的书写。
而hibernate可以全自动的帮我们完成这个工作。
这个半自动的ORM实现可以让我们进行sql语句的优化。
在项目中我们是使用分库分表进行数据操作,使用的数据库是开源数据库MySql。
我问过师兄这个问题,MySql能不能承受的住这么大的数据库操作频率以及复杂的业务逻辑。
什么是iBatis?iBatis是一种“半自动”的ORM工具,其对SQL进行了封装(像函数一样设置输入获得输出)和外部化(将SQL代码从java程序中分离出去,在单独的XML映射文件中开发和维护),iBatis的API都是面向对象的,也就是说这些API的输入输出都是通过对象(javabean,Map,基本类型及其封装类,XML)来传递的。
iBatis的几点主要特性:iBatis利用XML来封装SQL。
iBatis所处的位置:iBatis架构位于数据持久层,位于应用程序的业务逻辑层和数据库之间,使代码更容易维护。
感觉这几个层的具体代码实现上都是通过类来组织起来的,就像c是通过函数来组织起来的。
ORM工具将数据库表及其列映射为应用程序中的类及字段,元数据映射正是适合使用ORM 工具的地方。
ORM工具将数据库表及其列映射为应用程序中的类及字段。
iBatis和O/RM不同,不是直接把类映射为数据库表或者把类的字段映射为数据表列,而是把SQL语句的参数和结果(输入输出)映射为类。
iBatis主要有SQL Map配置文件,SQL Map文件,以及相关的API组成。
SQL Map配置文件:<properties>元素,在主配置文件之外提供一个名/值对列表,有两个属性resource 和url,前者在应用程序的类路径上定位资源,后者则是以绝对路径来获取资源。
<properties resource = “db.properties”/><property name = “JDBC.Driver”value = “${driver}”/><settings>元素,有元素lazyLoadingEnabled,延迟加载,只加载必要信息而推迟加载其他未明确请求的数据的技术,用于指定相关联的已映射语句时,是否使用延迟加载,默认值为true. cacheModelsEnabled,用户提高程序性能的技术,基于用过的数据往往很快又会被用的假设,默认值为true,必须为已映射语句配置高速缓存模型。
/62575/83896iBatis2学习笔记:基本原理和配置iBatis2是一个轻量级的数据持久化框架,它是一个半自动化的ORMapping工具,数据库的操作依赖程序员自己书写的SQL,因此可以最大限度发挥JDBC的性能。
据测试,它的性能和JDBC是一个级别的,但代码比JDBC简单的多,据说相对JDBC节省了60%的代码量。
缺点是映射不灵活,有时候感觉很别扭。
当领域对象关系复杂的时候,关联基本上行不通。
--复杂关系通过存储过程解决吧by scott注.iBatis2整个框架的jar包就一个,337KB,相比Hibernate等其他框架非常的小巧可爱,并且有.net语言版本。
iBatis2的优缺点不是关心的重点,主要是在实际中扬长避短。
下面是iBatis2的框架图:和Hibernate的SessionFactory类似,iBatis2有SqlMapClientBuilder一个类,通过配置文件SqlMapConfig.xml类构建,这个是线程安全的类,并且是单例模式,从它里面可以获取SqlMapClient,SqlMapClient相当于Hibernate的session,用来执行预定义的SQL语句。
因此SqlMapClient Builder、SqlMap Config.xml、SqlMap Client将是学习iBatis2的核心。
以后会逐渐展开,下面是从变成角度来构建SqlMapClientBuilder。
String resource ="SqlMapConfig.xml";Reader reader = Resources.getResourceAsReader(resource);SqlMapClient sqlMap = SqlMapClientBuilder.buildSqlMapClient(reader);由于SqlMapClient Builder的构建是相当耗时的,因此一般都是在程序启动的时候构建一次,并反复使用。
Ibatis学习笔记1.下载Ibatis软件包/java.cgi2. 创建测试数据库,数据库中创建一个testdb,有如下字段:id:namesexaddress3. 为了在开发过程更加直观,我们需要将ibatis 日志打开以便观察ibatis 运作的细节。
ibatis 采用Apache common_logging,并结合Apache log4j 作为日志输出组件。
在CLASSPATH 中新建log4j.properties 配置文件,内容如下:log4j.rootLogger=DEBUG, stdoutlog4j.appender.stdout=org.apache.log4j.ConsoleAppenderyout=org.apache.log4j.PatternLayoutyout.ConversionPattern=%c{1} -%m%nlog4j.logger.java.sql.PreparedStatement=DEBUG4.创建工程4.1 导入相关的jar文件导入ibatis.jar,我在此用的是ibatis-2.3.4.726.jar。
在学习的过程中发现ibatis3.0的版本与以前的版本有很大的不同。
第一次学习ibatis,还没深入研究。
导入数据库驱动、以及日志。
4.2 创建SqlMapConfig.xml文件<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE sqlMapConfigPUBLIC "-////DTD SQL Map Config 2.0//EN""/dtd/sql-map-config-2.dtd"><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/testdb"/><property name="ername" value="root"/><property name="JDBC.Password" value="root"/></dataSource></transactionManager><sqlMap resource="com/zsw/entity/UserInfo.xml"/></sqlMapConfig>4.3创建数据中表对应的实体类UserInfo.javaprivate int id;private String name;private String sex;private String address;4.4 创建实体类对应的UserInfo.xml<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE sqlMapPUBLIC "-////DTD SQL Map 2.0//EN""/dtd/sql-map-2.dtd"><sqlMap namespace="UserInfo"><!-- Use type aliases to avoid typing the full classname every time. --><typeAlias alias="UserInfo" type="UserInfo"/><!-- Result maps describe the mapping between the columns returnedfrom a query, and the class properties. A result map isn'tnecessary if the columns (or aliases) match to the propertiesexactly. --><resultMap id="UserInfoResult" class="erInfo"><result property="id" column="id"/><result property="name" column="name"/><result property="sex" column="sex"/><result property="address" column="address"/></resultMap><!-- Select with no parameters using the result map for Account class. --><select id="selectAllUserInfo" resultMap="UserInfoResult">select * from UserInfo</select><!-- A simpler select example without the result map. Note thealiases to match the properties of the target result class. --> <select id="selectUserInfoById" parameterClass="int"resultClass="erInfo">selectid,name,sex,addressfrom UserInfowhere id = #id#</select><!-- Insert example, using the Account parameter class --><insert id="insertUserInfo"parameterClass="erInfo">insert into UserInfo (id,name,sex,address)values (#id#, #name#, #sex#, #address#)</insert><!-- Update example, using the Account parameter class --><update id="updateUserInfo"parameterClass="erInfo">update UserInfo setname = #name#,sex = #sex#,address = #address#whereid = #id#</update><!-- Delete example, using an integer as the parameter class --><delete id="deleteUserInfoById" parameterClass="int">delete from UserInfo where id = #id#</delete></sqlMap>现在要写的最基本的文件都OK了,下面就是进行添、删、改、查进行测试了。
5.测试文件public class UserInfoTest {public static SqlMapClient getSqlMapClient() throws Exception {=Resources.getResourceAsReader("SqlMapConfig.xml");readerReaderSqlMapClientBuilder.buildSqlMapClient(reader);=SqlMapClientsqlMapperreader.close();returnsqlMapper;}public static void main(String[] args) throws Exception {SqlMapClient sqlMapClient = Common.getSqlMapClient();/*<------------------添加--------------------->*/UserInfo user = new UserInfo();user.setName("小周");user.setSex("男");user.setAddress("深圳");user);sqlMapClient.insert("insertUserInfo",// /*<---------------------根据id查询UserInfo------------------>*/// UserInfo user = (UserInfo)sqlMapClient.queryForObject("selectUserInfoById", 2); // System.out.println("姓名------------>:"+user.getName());/*<----------------修改信息----------------->*/// UserInfo userSZ = (UserInfo)sqlMapClient.queryForObject("selectUserInfoById", 1); // userSZ.setAddress("湖北");// UserInfo userJZ = (UserInfo)sqlMapClient.queryForObject("selectUserInfoById", 2); // userJZ.setAddress("湖北");//userSZ);// sqlMapClient.update("updateUserInfo",userJZ);// sqlMapClient.update("updateUserInfo",// /*<----------------查询所有信息----------------->*/// List list = sqlMapClient.queryForList("selectAllUserInfo");// for(int i = 0;i<list.size();i++){(UserInfo)list.get(i);=// UserInfouser// System.out.println("名称:"+user.getName()+"地址:"+user.getAddress()); // }/*<----------------删除数据---------------->*/5);sqlMapClient.delete("deleteUserInfoById",}}Ibatis的对数据库的基本的添、删、改、查到此为止。