自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(0)
  • 资源 (15)
  • 收藏
  • 关注

空空如也

hibernate中文参考文档(PDF)

非常详细的hibernate参考文档

2007-09-06

Hibernate开发指南(PDF)

本文是由笔者2003 年底一个咨询项目中,为客户做的持久层设计培训文案整理而来。 <br><br> 其中的内容涉及Hibernate 的使用,以及一部分笔者实际咨询项目中的经验积累,另一方面,大部分是笔者在Hibernate 的官方论坛中与众多技术专家交流所得。 <br><br>既来于斯,则归于斯。希望能聊有所用。 <br><br> 本文并非试图替代Hibernate Reference,相对而言,Hibernate Reference的编写目的是为开发者提供更简便的条目索引,而本文目标则在于为开发人员提供一个入门和掌握ibernate的途径。 <br><br>本文需结合Hibernate Reference使用。 <br>

2007-09-06

Eclipse整合开发工具(基础篇)<PDF>

Eclipse就像软件开发者的『打铁铺』,它一开始备有火炉、铁钻与铁锤。就像铁匠会用现有的工具打造新的工具,也能用Eclipse打造新工具来开发软件-这些新工具可扩充Eclipse的功能。(Eclipse其中一个卖点就是它的扩充性)

2007-09-06

Struts入门(PDF)

本书位入门者准备的,其中讲述了Struts的一些基础东西.<br>首先由MVC的概念进入Struts,然后讲解了Struts标签库的使用.<br>其中也穿插了不少的实际例子

2007-09-06

Cascading Style Sheet 样式表中文手册

CSS 中文帮助手册

2007-09-06

<Spring>Spring 开发指南

本文正是针对SpringFramework的开发指南,讲述了SpringFramework的设计思想以及在开发中的实际使用。同时穿插了一些笔者在项目实作中的经验所得。<br><br>Spring初探......... 6<br>准备工作.................. 6<br>构建Spring基础代码...................... 7<br>Spring 基础语义...............................13<br>Dependency Injection ...........13<br>依赖注入的几种实现类型...........16<br>Type1 接口注入.............16<br>Type2 设值注入..........17<br>Type3 构造子注入.......17<br>几种依赖注入模式的对.....................17<br>Spring Bean封装机制...............19<br>Bean Wrapper...........................19<br>Bean Factory...........................20<br>ApplicationContext........................23<br>Web Context................28<br>Spring 高级特性....................29<br>Web应用与MVC..................29<br>Spring MVC...................30<br>Spring MVC指南.............30<br>基于模板的Web表示层技术...........................................44<br>Web应用中模板技术与JSP技术的对比.........................49<br>输入验证与数据绑定........51<br>异常处理.......................62<br>国际化支持.................64<br>WebWork2

2007-07-31

<Spring>J2EE 和Spring 实用编程

自从J2EE 诞生以来,它已经成为大型企业应用软件的最佳平台。在2002 年,Rod Johnson 的书Expert Oneon-<br>One J2EE Design and Development 更进一步地改变我们的J2EE 编程。很多JAVA 书是后学院式的讲解,<br>但是这本书却是经验和实践的结晶,从而成为一本经典著作。Spring 框架是在这本书中范例的基础上拓展出<br>来的。自从Spring 框架1.0 发布以来,它很快地被J2EE 社区所接受。有人评论说,Spring 框架又把OO 编程<br>带回到J2EE 中来了。今天,Spring 框架已经相当成熟,远远超出了Rod 在他书中所陈述的,而且它还在不断<br>地完善和拓展。<br>我们将首先陈述大型企业应用编程中的一些常见问题和需求,然后解释Spring 是如何解决这些问题和满足这<br>些需求的。这样做会比近乎宗教式的说教更具有针对性和实用性。Spring 框架是实践和经验的积累,不是某<br>个天才坐在办公室凭空想象出来的(当然,我们不排除这种可能性,某一天被苹果砸一下后会有超出寻常的想<br>法)。但是我们所见到的Spring 框架已经是这些积累的抽象了,所以,了结它所解决的问题及上下文会有助<br>于理解和使用Spring 框架。我们因为经验有限,不可能概括所有的方方面面,所以只讨论我们认为最常见的<br>和最重要的案例<br><br>1 SPRING 简介........................... 4<br>1.1 J2EE 应用软件........................ 4<br>1.2 SPRING 框架.......................... 5<br>1.3 面向对象的准则........................ 5<br>1.3.1 开闭原则(OCP,THE OPEN-CLOSED PRINCIPLE).......... 6<br>1.3.2 依赖反向原则(DIP,DEPENDENCY INVERSION PRINCIPLE)............................ 6<br>1.3.3 接口分离原则(ISP,INTERFACE SEGREGATION PRINCIPLE) .......................... 6<br>1.3.4 迪米特法则(LAW OF DEMETER)................... 6<br>1.3.5 组合/继承原则(CRP,COMPOSITE REUSE PRINCIPLE) ................................. 6<br>1.3.6 李斯可夫代换原则(LISKOV SUBSTITUTION PRINCIPLE)......... 6<br>1.3.7 参考资料............................. 6<br>2 SPRING 核心包(CORE)和CONTEXT 包.......... 7<br>2.1 BEANWRAPPER 类及其应用................. 7<br>2.1.1 简单例子........................ 8<br>2.1.2 新的类型转换................... 9<br>2.2 BEANFACTORY 接口和它的实现类....... 10<br>2.2.1 BEANFACTORY 的实现类............. 11<br>2.2.1.1 由Properties 定义的BeanFactory ......11<br>2.2.1.2 在BeanFactory 中对象间的引用............11<br>2.2.1.3 新的类型转换................12<br>2.2.1.4 用XML 来定义对象......................13<br>2.2.1.5 用CustomEditorConfigurer 来定义数据类型转换.14<br>2.2.1.6 外部配置文件.............16<br>2.2.1.7 JVM 系统参数...........17<br>2.2.1.8 两个外部配置文件...........18<br>2.2.1.9 其它的配置方式...............19<br>2.2.2 BEANFACTORY 是一个对象容器...... 20<br>2.2.2.1 单例和多例.....................20<br>2.2.2.2 父Bean 和抽象Bean .........20<br>2.2.2.3 内部Bean..............20<br>2.2.2.4 别名(alias)............20<br>2.2.2.5 输入其它XML 配置(Import) ...........21<br>2.2.2.6 Spring 自带的一些工厂方法...............21<br>2.2.2.7 BeanFactoryWare 接口和Spring 扩展.........21<br>2.3 APPLICATIONCONTEXT 接口和它的实现类.......... 29<br>2.3.1 同时载入几个配置文件.............. 30<br>2.3.2 资源载入........................ 31<br>2.3.3 国际化支持.......................... 34<br>2.4 启动APPLICATIONCONTEXT 的几种方式............. 34<br>2.5 控制倒置(IOC),依赖注入(DEPENDENCY INJECTION)和轻型容器.................... 35<br>3 SPRING 面向方面包(AOP PACKAGE)............ 37<br>4 SPRING 网页包(WEB PACKAGES)........... 38<br>5 用JAVA 制做网页的几种技术选择.................. 38<br>6 SPRING 持久性存贮包(PERSISTENCE PACKAGES)和事务处理............................. 38<br>7 用JAVA 做持久性存贮的几种技术选择.............. 38<br>8 SPRING 网络包......... 38<br>9 SPRING 其他的J2EE 包......................... 38<br>10 J2EE 编程的几点考虑................ 38

2007-07-31

<数据结构>数据结构程序设计题典(PDF)

数据结构是计算机科学及相关专业的重要核心课程。本书通过程序全面讨论了数据结构算法的实现过程。书中收集了大量富于启发性的例题和习题,并全部给出了答案,供读者融会贯通。 本书可作为计算机科学及相关专业的本、专科学生学习数据结构课程的参考书,对于考研和计算机等级水平考试者而言,本书也具有一定的参考价值。

2007-07-31

Xsl参考(pdf)

本文主要介绍了XSL标签的用法

2007-07-31

XML轻松学习手册(chm)

XML越来越热,关于XML的基础教程网络上也随处可见。可是一大堆的概念和术语往往让人望而生畏,很多朋友问我:XML到底有什么用,我们是否需要学习它?我想就我个人学习过程的心得和经验,写一篇比较全面的介绍文章。首先有两点是需要肯定的: <br><br>第一:XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解,等待只会让你失去机会; <br><br>第二:新知识肯定会有很多新概念,尝试理解和接受,您才可能提高。不要害怕和逃避,毕竟我们还年轻。<br><br>· 第一章:XML快速入门<br>· 一. 什么是XML? <br>· 二. XML是新概念吗?<br>· 三. 使用XML有什么好处?<br>· 四. XML很难学吗?<br>· 五. XML和HTML的区别 <br>· 六. XML的严格格式 <br>· 七. 关于XML的更多 <br>· 第二章:XML概念<br>· 一. 扩展性 <br>· 二. 标识 <br>· 三. 语言 <br>· 四. 结构化 <br>· 五. Meta数据 <br>· 六. 显示<br>· 七. DOM <br>· 第三章:XML的术语<br>· 导言 <br>· 一.XML文档的有关术语<br>· 二.DTD的有关术语<br>· 第四章:XML的语法<br>· 一.XML语法规则<br>· 二.元素的语法<br>· 三.注释的语法<br>· 四.CDATA的语法<br>· 五.Namespaces的语法<br>· 六.entity的语法<br>· 七.DTD的语法<br>· 第五章:XML实例解释<br>· 一.定义新标识 <br>· 二.建立XML文档<br>· 三.建立相应的HTML文件 <br>· 第六章:XML相关资源

2007-07-31

XML数据库技术(PDF)

本书是在作者博士论文的基础上扩充而成的,共分6章。第1章介绍有关的基础知识,包括XML、DTD、XML模式、XPath和XQuery等;第2章在介绍了XML数据的编码方案之后,对纯XML数据库的存储结构、索引技术和事务管理进行了综述;第3章讨论了基于关系的XML数据库技术,首先对各种映射XML数据到关系存储的方法进行了综述,然后重点讨论了新提出的X-RESTORE索引结构、关系存储模式以及查询中间件;第4章讨论了X—RESTORE下的XML查询的计算策略和转换XPath路径表达式到SQL查询的算法;第5章讨论了XML结构连接技术,包括各种计算祖先/后裔关系(含双亲/孩子关系)结构连接的直接归并结构连接算法、基于缓存的归并结构连接算法和twig模式结构连接算法,以及计算文档位置关系的结构连接算法;第6章讨论了XML的查询优化技术,主要包括查询最小化、视图查询、估算查询结果大小和选择结构连接顺序等。

2007-07-31

ibatis 开发指南(pdf)

ibatis 开发指南ibatis Quick Start............................................................................................ 5 准备工作.......................................................................................................... 5 构建ibatis 基础代码.................................................................................... 5 ibatis 配置........................................................................................................... 11 ibatis 基础语义...................................................................................................... 16 XmlSqlMapClientBuilder................................................................... 16 SqlMapClient ........................................................................................... 16 SqlMapClient 基本操作示例.......................................................... 16 OR 映射........................................................................................................... 19 ibatis 高级特性...................................................................................................... 26 数据关联........................................................................................................ 26 一对多关联............................................................................................ 26 一对一关联............................................................................................ 28 延迟加载........................................................................................................ 30 动态映射........................................................................................................ 31 事务管理........................................................................................................ 35 基于JDBC 的事务管理机制................................................................ 35 基于JTA 的事务管理机制................................................................... 36 外部事务管理......................................................................................... 38 Cache .............................................................................................................. 39 MEMORY 类型Cache 与WeakReference ........................................ 40 LRU 型Cache ....................................................................................... 42 FIFO 型Cache ...................................................................................... 43 OSCache................................................................................................. 43 ibatis 开发指南相对Hibernate 和Apache OJB 等“一站式”ORM 解决方案而言,ibatis 是一种“半自动化”的ORM 实现。所谓“半自动”,可能理解上有点生涩。纵观目前主流的ORM ,无论Hibernate 还是Apache OJB,都对数据库结构提供了较为完整的封装,提供了从POJO 到数据库表的全套映射机制。程序员往往只需定义好了POJO 到数据库表的映射关系,即可通过Hibernate 或者OJB 提供的方法完成持久层操作。程序员甚至不需要对SQL 的熟练掌握, Hibernate/OJB 会根据制定的存储逻辑,自动生成对应的SQL 并调用JDBC 接口加以执行。大多数情况下( 特别是对新项目,新系统的开发而言),这样的机制无往不利,大有一统天下的势头。但是,在一些特定的环境下,这种一站式的解决方案却未必灵光。在笔者的系统咨询工作过程中,常常遇到以下情况: 1. 系统的部分或全部数据来自现有数据库,处于安全考虑,只对开发团队提供几条Select SQL(或存储过程)以获取所需数据,具体的表结构不予公开。2. 开发规范中要求, 所有牵涉到业务逻辑部分的数据库操作,必须在数据库层由存储过程实现(就笔者工作所面向的金融行业而言,工商银行、中国银行、交通银行,都在开发规范中严格指定)3. 系统数据处理量巨大,性能要求极为苛刻,这往往意味着我们必须通过经过高度优化的SQL 语句(或存储过程)才能达到系统性能设计指标。面对这样的需求,再次举起Hibernate 大刀,却发现刀锋不再锐利,甚至无法使用,奈何?恍惚之际,只好再摸出JDBC 准备拼死一搏……,说得未免有些凄凉,直接使用JDBC 进行数据库操作实际上也是不错的选择,只是拖沓的数据库访问代码,乏味的字段读取操作令人厌烦。“半自动化”的ibatis,却刚好解决了这个问题。这里的“半自动化”,是相对Hibernate 等提供了全面的数据库封装机制的“全自动化”ORM 实现而言,“全自动”ORM 实现了POJO 和数据库表之间的映射,以及SQL 的自动生成和执行。而ibatis 的着力点,则在于POJO 与SQL 之间的映射关系。也就是说,ibatis 并不会为程序员在运行期自动生成SQL 执行。具体的SQL 需要程序员编写,然后通过映射配置文件,将SQL 所需的参数,以及返回的结果字段映射到指定POJO 。使用ibatis 提供的ORM 机制,对业务逻辑实现人员而言,面对的是纯粹的Java 对象, 这一层与通过Hibernate 实现ORM 而言基本一致,而对于具体的数据操作,Hibernate 会自动生成SQL 语句,而ibatis 则要求开发者编写具体的SQL 语句。相对Hibernate 等“全自动”ORM 机制而言,ibatis 以SQL 开发的工作量和数据库移植性上的让步,为系统设计提供了更大的自由空间。作为“全自动”ORM 实现的一种有益补充,ibatis 的出现显得别具意义。ibatis Quick Start 准备工作1. 下载ibatis 软件包(http://www.ibatis.com)。2. 创建测试数据库,并在数据库中创建一个t_user 表,其中包含三个字段: . id(int) . name(varchar) . sex(int) 。3. 为了在开发过程更加直观,我们需要将ibatis 日志打开以便观察ibatis 运作的细节。ibatis 采用Apache common_logging,并结合Apache log4j 作为日志输出组件。在CLASSPATH 中新建log4j.properties 配置文件,内容如下:log4j.rootLogger=DEBUG, stdout log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%c{1} -%m%n log4j.logger.java.sql.PreparedStatement=DEBUG 构建ibatis 基础代码ibatis 基础代码包括: 1. ibatis 实例配置一个典型的配置文件如下(具体配置项目的含义见后): <!DOCTYPE sqlMapConfigPUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN""http://www.ibatis.com/dtd/sql-map-config-2.dtd"><settingscacheModelsEnabled="true"enhancementEnabled="true"lazyLoadingEnabled="true"errorTracingEnabled="true"maxRequests="32"maxSessions="10"maxTransactions="5"useStatementNamespaces="false" /> <property name="JDBC.Driver" value="com.p6spy.engine.spy.P6SpyDriver"/> <property name="JDBC.ConnectionURL" value="jdbc:mysql://localhost/sample"/> <property name=value="10"/> <property name=value="120000"/> <property name="Pool.PingQuery" ="select 1 from ACCOUNT"/> <property name=value="1"/> <property name=value="1"/> valuevalue"Pool.MaximumActiveConnections" "Pool.MaximumIdleConnections" "Pool.MaximumCheckoutTime" valuevaluevalue"Pool.PingConnectionsOlderThan" "Pool.PingConnectionsNotUsedFor" 2. POJO(Plain Ordinary Java Object) 下面是我们用作示例的一个POJO: public class User implements Serializable { private Integer id; private String name; private Integer sex; private Set addresses = new HashSet(); /** default constructor */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; } }3. 映射文件与Hibernate 不同。因为需要人工编写SQL 代码,ibatis 的映射文件一般采用手动编写(通过Copy/Paste,手工编写映射文件也并没想象中的麻烦)。针对上面POJO 的映射代码如下:<!DOCTYPE sqlMapPUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN""http://www.ibatis.com/dtd/sql-map-2.dtd"><select id="getUser"parameterClass="java.lang.String"resultClass="user"><![CDATA[select name, sex from t_user where name = #name# ]]><update id="updateUser"parameterClass="user"> <![CDATA[UPDATE t_user SETname=#name#, sex=#sex# WHERE id = #id# ]]><insert id="insertUser"parameterClass="user">INSERT INTO t_user ( name, sex)VALUES ( #name#,#sex# ) <delete id="deleteUser"parameterClass="java.lang.String">delete from t_user where id = #value# 从上面的映射文件可以看出,通过、、、四个节点,我们分别定义了针对TUser 对象的增删改查操作。在这四个节点中,我们指定了对应的SQL 语句,以update 节点为例: ……<update id="updateUser" ⑴ parameterClass="user"> ⑵ <![CDATA[ ⑶ UPDATE t_user ⑷ SET ( IBATIS Developer’s Guide Version 1.0 name=#name#, ⑸ sex=#sex# ⑹ ) WHERE id = #id# ⑺ ]]> …… ⑴ ID 指定了操作ID,之后我们可以在代码中通过指定操作id 来执行此节点所定义的操作,如:sqlMap.update("updateUser",user); ID 设定使得在一个配置文件中定义两个同名节点成为可能(两个update 节点,以不同id 区分) ⑵ parameterClass 指定了操作所需的参数类型,此例中update 操作以com.ibatis.sample.User 类型的对象作为参数,目标是将提供的User 实例更新到数据库。parameterClass="user"中,user 为“com.ibatis.sample.User” 类的别名,别名可通过typeAlias 节点指定,如示例配置文件中的:⑶ 通过节点,可以避免SQL 中与XML 规范相冲突的字符对XML 映射文件的合法性造成影响。⑷ 执行更新操作的SQL,这里的SQL 即实际数据库支持的SQL 语句, 将由ibatis 填入参数后交给数据库执行。⑸ SQL 中所需的用户名参数,“#name#”在运行期会由传入的user 对象的name 属性填充。⑹ SQL 中所需的用户性别参数“#sex#”, 将在运行期由传入的user 对象的sex 属性填充。⑺ SQL 中所需的条件参数“#id#”, 将在运行期由传入的user 对象的id 属性填充。对于这个示例,ibatis 在运行期会读取id 为“updateUser”的update 节点的SQL 定义,并调用指定的user 对象的对应getter 方法获取属性值,并用此属性值,对SQL 中的参数进行填充后提交数据库执行。此例对应的应用级代码如下,其中演示了的基本使用方法:String resource ="com/ibatis/sample/SqlMapConfig.xml"; Reader reader; ibatis SQLMap reader = Resources.getResourceAsReader(resource); XmlSqlMapClientBuilder xmlBuilder =new XmlSqlMapClientBuilder(); SqlMapClient sqlMap = xmlBuilder.buildSqlMap(reader); //sqlMap系统初始化完毕,开始执行update操作try{ sqlMap.startTransaction(); User user = new User(); user.setId(new Integer(1)); user.setName("Erica"); user.setSex(new Integer(1)); sqlMap.update("updateUser",user); sqlMap.commitTransaction(); finally{ sqlMap.endTransaction(); } 其中,SqlMapClient 是ibatis 运作的核心,所有操作均通过SqlMapClient 实例完成。可以看出,对于应用层而言,程序员面对的是传统意义上的数据对象,而非JDBC 中烦杂的ResultSet,这使得上层逻辑开发人员的工作量大大减轻,同时代码更加清晰简洁。数据库操作在映射文件中加以定义,从而将数据存储逻辑从上层逻辑代码中独立出来。而底层数据操作的SQL 可配置化,使得我们可以控制最终的数据操作方式,通过SQL 的优化获得最佳的数据库执行效能,这在依赖SQL 自动生成的“全自动”ORM 机制中是所难以实现的。ibatis 配置结合上面示例中的ibatis 配置文件。下面是对配置文件中各节点的说明: PUBLIC "> <settings ⑴cacheModelsEnabled=enhancementEnabled=lazyLoadingEnabled=errorTracingEnabled=maxRequests=maxSessions=maxTransactions=useStatementNamespaces=/> ⑵ ⑶<property name="JDBC.Driver" value="com.p6spy.engine.spy.P6SpyDriver"/> <property name="JDBC.ConnectionURL" value="jdbc:mysql://localhost/sample"/> <property name=value="10"/> <property name=value="120000"/> <property name="Pool.PingQuery" ="select 1 from ACCOUNT"/> <property name=value="1"/> <property name=value="1"/> <!DOCTYPE sqlMapConfig "-//iBATIS.com//DTD SQL Map Config 2.0//EN" "http://www.ibatis.com/dtd/sql-map-config-2.dtd"true" "true" "true" "true" "32" "10" "5" "false" valuevalue"Pool.MaximumActiveConnections" "Pool.MaximumIdleConnections" "Pool.MaximumCheckoutTime" valuevaluevalue"Pool.PingConnectionsOlderThan" "Pool.PingConnectionsNotUsedFor" ⑷ ⑴ Settings 节点参数描述cacheModelsEnabled 是否启用SqlMapClient 上的缓存机制。建议设为"true" enhancementEnabled 是否针对POJO 启用字节码增强机制以提升getter/setter 的调用效能,避免使用Java Reflect 所带来的性能开销。同时,这也为Lazy Loading 带来了极大的性能提升。建议设为"true" errorTracingEnabled 是否启用错误日志,在开发期间建议设为"true" 以方便调试lazyLoadingEnabled 是否启用延迟加载机制,建议设为"true" maxRequests 最大并发请求数(Statement 并发数) maxTransactions 最大并发事务数maxSessions 最大Session 数。即当前最大允许的并发SqlMapClient 数。maxSessions 设定必须介于maxTransactions 和maxRequests 之间,即maxTransactions<maxSessions=< maxRequests useStatementNamespaces 是否使用Statement 命名空间。这里的命名空间指的是映射文件中,sqlMap 节点的namespace 属性,如在上例中针对t_user 表的映射文件sqlMap 节点: 这里,指定了此sqlMap 节点下定义的操作均从属于"User"命名空间。在useStatementNamespaces="true"的情况下,Statement 调用需追加命名空间,如:⑵ transactionManager 节点sqlMap.update("User.updateUser",use r); 否则直接通过Statement 名称调用即sqlMap.update("updateUser",user); 但请注意此时需要保证所有映射定义无重名。可,如:文件中,Statement transactionManager 节点定义了ibatis 的事务管理器,目前提供了以下几种选择: . JDBC 通过传统JDBC Connection.commit/rollback 实现事务支持。. JTA 使用容器提供的JTA 服务实现全局事务管理。. EXTERNAL 外部事务管理, 如在EJB 中使用ibatis,通过EJB 的部署配置即可实现自动的事务管理机制。此时ibatis 将把所有事务委托给外部容器进行管理。此外,通过Spring 等轻量级容器实现事务的配置化管理也是一个不错的选择。关于结合容器实现事务管理,参见“高级特性”中的描述。⑶ dataSource 节点dataSource 从属于transactionManager 节点,用于设定ibatis 运行期使用的DataSource 属性。type 属性: dataSource 节点的type属性指定了dataSource 的实现类型。可选项目: . SIMPLE: SIMPLE 是ibatis 内置的dataSource 实现,其中实现了一个简单的数据库连接池机制,对应ibatis 实现类为com.ibatis.sqlmap.engine.datasource.SimpleDataSourceFactory 。. DBCP: 基于Apache DBCP 连接池组件实现的DataSource 封装,当无容器提供DataSource 服务时,建议使用该选项,对应ibatis 实现类为com.ibatis.sqlmap.engine.datasource.DbcpDataSourceFactory 。. JNDI: 使用J2EE 容器提供的DataSource 实现,DataSource 将通过指定的JNDI Name 从容器中获取。对应ibatis 实现类为com.ibatis.sqlmap.engine.datasource.JndiDataSourceFacto ry。dataSource 的子节点说明(SIMPLE

2007-07-31

iBATIS SQL Maps开发指南 (pdf)

使用SQL Map,能够大大减少访问关系数据库的代码。SQL Map使用简单的XML配置文件将Java Bean映射成SQL语句,对比其他的数据库持续层和ORM框架(如JDO的实现,Hibernate等),SQL Map最大的优点在于它简单易学。要使用SQL Map,只要熟悉Java Bean,XML和SQL,就能使您充分发挥SQL语句的能力。

2007-07-31

XML初学入门教程(pdf)

第一章:在学习XML之前你应该掌握什么 2<br>第二章:怎么使用XML 3<br>第三章:XML的语法 4<br>第四章:文档类型定义 DTD(Document Type Definition) 6<br>第五章:在NetScape和IE中的XML 8<br>第六章:微软的XML解释器 9<br>第七章:XML DOM 11<br>第八章:XSL - The Style Sheet Language of XML(XML的样式表语言) 12<br>第九章:XML Behaviors - 新的DHTML 15<br>第十章:使用IE5浏览XML文件 17<br>第十一章:一个很典型的XML文件例子 25<br>第十二章:格式化XML(一) 36<br>第十三章:格式化XML(二) 38<br>第十四章:XML的典型运用(一) 52<br>第十五章:XML的运用(二) 58<br>第十六章:XML的运用(三) 60<br>第十七章:如何使用XSL和正则表达式来验证数据的有效性(一) 62<br>第十八章:如何使用XSL和正则表达式来验证数据的有效性(二) 67

2007-07-16

iBATIS_DBL-2.2.0.638

iBATIS 2.2.0 is the last release that includes the iBATIS DAO framework. After 2.2.0, the DAO iBATIS framework is removed from the downloads. We suggest converting iBATIS framework DAOs to the Spring Framework. <br>

2007-07-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除