摘要: (1) 选择最有效率的表名顺序(只在基于规则的优化器中有效):ORACLE的解析器按照从右到左的顺序处理FROM子句中的表 名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersection table)作为基础表, 交叉表是指那个被其他表所引用的表.(2) WHERE子句中的连接顺序.:ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前, 那些可以过滤掉最大数量记录的条件必须 阅读全文
posted @ 2011-12-08 14:42 birlt 阅读(537) 评论(0) 推荐(0) 编辑
摘要: Spring Autowire自动装配在应用中,我们常常使用<ref>标签为JavaBean注入它依赖的对象。但是对于一个大型的系统,这个操作将会耗费我们大量的资源,我们不得不花费大量的时间和精力用于创建和维护系统中的<ref>标签。实际上,这种方式也会在另一种形式上增加了应用程序的复杂性,那么如何解决这个问题呢?Spring为我们提供了一个自动装配的机制,尽管这种机制不是很完善,但是在应用中结合<ref>标签还是可以大大的减少我们的劳动强度。前面提到过,在定义Bean时,<bean>标签有一个autowire属性,我们可以通过指定它来让容器为受 阅读全文
posted @ 2011-12-08 14:30 birlt 阅读(592) 评论(0) 推荐(0) 编辑
摘要: 在Oracle数据库中进行排序、分组汇总、索引等到作时,会产生很多的临时数据。如有一张员工信息表,数据库中是安装记录建立的时间来保存的。如果用户查询时,使用Order BY排序语句指定按员工编号来排序,那么排序后产生的所有记录就是临时数据。对于这些临时数据,Oracle数据库是如何处理的呢?通常情况下,Oracle数据库会先将这些临时数据存放到内存的PGA(程序全局区)内。在这个程序全局区中有一个叫做排序区的地方,专门用来存放这些因为排序操作而产生的临时数据。但是这个分区的容量是有限的。当这个分区的大小不足以容纳排序后所产生的记录时,数据库系统就会将临时数据存放到临时表空间中。这就是临时表空间 阅读全文
posted @ 2011-12-08 14:27 birlt 阅读(561) 评论(0) 推荐(0) 编辑
摘要: Failed to load class org.slf4j.impl.StaticLoggerBinderThis error is reported when the org.slf4j.impl.StaticLoggerBinder class could not be loaded into memory. This happens when no appropriate SLF4J binding could be found on the class path. Placing one (and only one) of slf4j-nop.jar, slf4j-simple.ja 阅读全文
posted @ 2011-12-08 00:03 birlt 阅读(803) 评论(0) 推荐(0) 编辑
摘要: ssh框架整合过程,包含struts1,struts2,hibernate,spring的框架整合过程,整合步骤如下:0、在web.xml中增加spring配置、struts1、struts2:<listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener><context-param><param-name>contextConfigLocation</param- 阅读全文
posted @ 2011-12-07 23:50 birlt 阅读(724) 评论(0) 推荐(0) 编辑
摘要: B树索引的相关概念索引与表一样,也属于段(segment)的一种。里面存放了用户的数据,跟表一样需要占用磁盘空间。只不过,在索引里的数据存放形式与表里的数据存放形式非常的不一样。在理解索引时,可以想象一本书,其中书的内容就相当于表里的数据,而书前面的目录就相当于该表的索引。同时,通常情况下,索引所占用的磁盘空间要比表要小的多,其主要作用是为了加快对数据的搜索速度,也可以用来保证数据的唯一性。但是,索引作为一种可选的数据结构,你可以选择为某个表里的创建索引,也可以不创建。这是因为一旦创建了索引,就意味着oracle对表进行DML(包括INSERT、UPDATE、DELETE)时,必须处理额外的工 阅读全文
posted @ 2011-12-07 23:44 birlt 阅读(400) 评论(0) 推荐(0) 编辑
摘要: JDBC TypeJava TypeCHARStringVARCHARStringLONGVARCHARStringNUMERICjava.math.BigDecimalDECIMALjava.math.BigDecimalBITbooleanBOOLEANbooleanTINYINTbyteSMALLINTshortINTEGERintBIGINTlongREALfloatFLOATdoubleDOUBLEdoubleBINARYbyte[]VARBINARYbyte[]LONGVARBINARYbyte[]DATEjava.sql.DateTIMEjava.sql.TimeTIMESTAM 阅读全文
posted @ 2011-12-07 23:13 birlt 阅读(313) 评论(0) 推荐(1) 编辑
摘要: Spring中加载XML配置文件的方式spring 中加载xml配置文件的方式,好像有3种, xml是最常见的spring 配置源。Spring中的几种容器都支持使用xml装配bean,包括: XmlBeanFactory , ClassPathXmlApplicationContext , FileSystemXmlApplicationContext , XmlApplicationContext 一:XmlBeanFactory 引用 Resource resource = new ClassPathResource("appcontext.xml"); BeanFa 阅读全文
posted @ 2011-12-07 23:06 birlt 阅读(340) 评论(0) 推荐(0) 编辑
摘要: 1、c:\> cd oracle\product\10.2.0\db_1\oc4j\j2ee\isqlplus\application-deployments\isqlplus2、D:\oracle\product\10.2.0\db_1\jdk\bin\java -Djava.security.properties=D:\oracle\product\10.2.0\db_1\oc4j\j2ee\home\config\jazn.security.props -jar D:\oracle\product\10.2.0\db_1\oc4j\j2ee\home\jazn.jar -user 阅读全文
posted @ 2011-12-07 22:42 birlt 阅读(310) 评论(0) 推荐(0) 编辑
摘要: Hibernate First Level Cache & Second Level CacheBirlt by 2010一、一级缓存Session的操作与维护1.Hibernate对象的三种状态: transient, persistent, detached1) transient:瞬时状态利用new关键字创建的对象,没有与Hibernate实施交互的,也无法保证与数据库中某条记录对应的对象被称为瞬时状态,也就是生命周期非常短的意思,因为没有任何组件管理的对象非常容易被Java虚拟机回收。例:Customer cus = new Customer();//瞬时状态对象2) pers 阅读全文
posted @ 2011-12-07 22:30 birlt 阅读(417) 评论(0) 推荐(0) 编辑
摘要: (系统版本 Windows 7 旗舰版)Windows 7真是让人又爱又恨啊!本人电脑之前已安装 SQL Server 2005,安装过程都没什么问题,很快搞定,可是装一个Oracle 10g却花了我一个晚上的时间!不过总算安装成功了!虽然还没有正式开始使用,但是兴奋之余迫不及待要和大家分享一下经验!首先要下载支持Vista版本的Oracle 10g(以下链接地址在浏览器中打开没用,复制下面地址然后在迅雷中新建下载任务即可下载),下载完成后解压出来:http://download.oracle.com/otn/nt/oracle10g/10203/10203_vista_w2k8_x86_pr 阅读全文
posted @ 2011-12-07 22:12 birlt 阅读(497) 评论(2) 推荐(0) 编辑
摘要: taglib被称为自定义标签库用自定义标签库,可以在简单的标签中封装复杂的功能,实现自定义标签按如下步骤进行:1、开发自定义标签类为了能让美工人员更好地参与JSP 页面的开发,所以使用标签类,可以使用简单的标签来封装复杂的功能,从而使团队更好地协作开发。自定义标签类都必须继承一个父类: java.Servlet.jsp.tagext.TagSupport,并且还有以下要求:1)、如果标签类包含属性,每个属性都有对应的getter 和setter 方法。2)、重写doStartTag()或doEndTag()方法,这两个方法生成页面内容。3)、如果需要在销毁标签之前完成资源回收,则重写relea 阅读全文
posted @ 2011-12-07 22:08 birlt 阅读(305) 评论(0) 推荐(0) 编辑
摘要: 一、Prototype JavaScript 特性Prototype 是最受欢迎的AJAX框架之一。Ajaxian.com网站2006年的调查结果显示,Prototype同框架规模庞大的Yahoo! User Interface, Google Web Toolkit, and Atlas.等相比较起来,其排名竟然遥遥领先,这不能不令人感到惊异。答案很简单:Prototype使用起来就像是对于JavaScript语言的自然扩展。尝试过Prototype框架后,我坚信Prototype框架应该被纳入JavaScript语言。function getInfo() { //load params f 阅读全文
posted @ 2011-12-07 21:59 birlt 阅读(362) 评论(0) 推荐(0) 编辑
摘要: Spring 实现两种设计模式在Spring 中大量使用的以下两种设计模式:工厂模式 单态模式工厂模式可将Java 对象的调用者从被调用者的实现逻辑中分离出来,调用者只需关心被调用者必须满足的规则(接口) ,而不必关心实例的具体实现过程。这是面向接口编程的优势,能提高程序的解耦,避免所有的类以硬编码方式耦合在一起。如果所有的类直接藕合,极易形成"骨牌效应",假如B 类调用了A 类,一旦A 类需要修改,则B 类也需要修改:假如C 类调用了B 类,则C 类也需要修改......依次类推,从而导致整个系统都需要改写。造成"牵一发而动全身",而系统重构的代价是相 阅读全文
posted @ 2011-12-05 23:27 birlt 阅读(766) 评论(0) 推荐(1) 编辑
摘要: DWR、YUI、GWT区别和使用这几个框架都是比较通用的,现在分别介绍他们的使用方法,并从中了解他们的区别和作用:1、DWR — 令人激动的服务器端集成DWR (Direct Web Remoting) 的重点是浏览器/服务器的交互。DWR框架的大部分API函数也是针对这种交互的。DWR是基于java的框架,最适用于后端运行java应用的情况。因为这些特性,DWR为开发请求中心应用提供了一种有趣的途径。这种方法不再使用AJAX控制从服务器返回的文本信息,而是使用javascript调用DWR框架的远程异步对象。实现起来很简单:通过在浏览器端的JavaScript构造和调用PBX和相关JAVA对 阅读全文
posted @ 2011-12-05 00:24 birlt 阅读(762) 评论(3) 推荐(0) 编辑