- 博客(45)
- 资源 (30)
- 收藏
- 关注
原创 oracle scott 用户下emp,dept,bonus等表的关联查询
--查询部门下有多少个员工(如果该部门下没有员工,则记 0)--(case when b.num is null then 0 else num end) as numselect t.deptno,t.dname,(case when b.num is null then 0 else num end) as num from dept t left join (select a.dep
2013-08-16 15:29:16 2799
原创 oracle外连接(左外连接,右外连接,全链接)
左外联接:a=a(+)这个是左连接相当于 a letf join a on左外联接的时候保证左面的表的数据是完整的然后从右面的表中符合条件的链接到左面的表当中。右外连接:a(+)=a这个是右连接相当于 a right join a on右外连接的话是保证右面的所有数据行连接以后都存在,从左面的表里面把符合条件的行链接到右表的操作。全连接:a(+)=a(+)这个是全链接相当于 a join a on
2013-08-15 10:02:01 1132
转载 Javascript四舍五入(Math.round()与Math.pow())
Javascript四舍五入(Math.round()与Math.pow()) //Math.round(x);返回数字最接近的整数,四舍五入取整数,即舍去小数部分 function f(){ alert(Math.round(123.567)); alert(Math.round(123.456));
2013-08-09 00:07:30 1454
转载 java中的问题
1.举例说明应用RandomAccessFile类进行随机文件读写的一般步骤2.为什么InputStream和OutputStream类不能够实例化?3. FileInputStream和FileOutputStream流类构造文件读/写的一般格式是什么?4.什么是对象的序列化?举例说明实现对象序列化的步骤。1.在API中的官方描述:此类的实例支持对随机访问文件的读取和写入。随机
2013-08-09 00:02:54 768
原创 java.io.EOFException是什么异常?
文件结尾了还继续读文件,就导致这个错误抛出。本来EOF的数值就是-1,但是是一种用于错误标识的记号
2013-08-08 23:50:25 16418
原创 java线程的几种状态
线程的几种状态: 在Java当中,线程通常都有五种状态:创建、就绪、运行、阻塞和死亡。 第一是创建状态。在生成线程对象,并没有调用该对象的start方法,这是线程处于创建状态。 第二是就绪状态。当调用了线程对象的start方法之后,该线程就进入了就绪状态,但是此时线程调度程序还没有把该线程设置为当前线程,此时处于就绪状态。在线程运行之后,从等待或者睡眠中回来之后,也会处于就
2013-08-08 23:47:38 1576
转载 Spring事务隔离级别
事务的四个属性:原子性(atomicity)、一致性(consistency)、隔离性(isolation)和持久性(durability)。1.原子性(Atomic) 最重要的原则,也是最容易理解的原则。被事务管理的所有方法,要么一起被提交,要么一起回滚。举例:在股票交易时,除了记录交易的过程,还要更新交易完成之后的账户状态。2.一致性(Consistency)
2013-08-08 23:42:14 850
转载 Hibernate与iBATIS的比较
1.出身 hibernate 是当前最流行的o/r mapping框架,它出身于sf.net,现在已经成为jboss的一部分了。 ibatis 是另外一种优秀的o/r mapping框架,目前属于apache的一个子项目了。 2.原理 相对hibernate“o/r”而言,ibatis是一种“sql mapping”的orm实现。hibernate 对数据库结构提供了较为完整的
2013-08-08 23:33:40 644
转载 jdbc与hibernate的优缺点比较
一、 Hibernate是JDBC的轻量级的对象封装,它是一个独立的对象持久层框架,和App Server,和EJB没有什么必然的联系。Hibernate可以用在任何JDBC可以使用的场合,例如Java应用程序的数据库访问代码,DAO接口 的实现类,甚至可以是BMP里面的访问数据库的代码。从这个意义上来说,Hibernate和EB不是一个范畴的东西,也不存在非此即彼的关系。二、Hibernat
2013-08-08 23:26:03 591
转载 hibernate的优缺点
Hibernate优点(1) 对象/关系数据库映射(ORM)它使用时只需要操纵对象,使开发更对象化,抛弃了数据库中心的思想,完全的面向对象思想(2) 透明持久化(persistent)带有持久化状态的、具有业务功能的单线程对象,此对象生存期很短。这些对象可能是普通的JavaBeans/POJO,这个对象没有实现第三方框架或者接口,唯一特殊的是他们正与(仅仅一个)Session相关联
2013-08-08 23:22:48 599
转载 hibernate的缓存机制
缓存是位于应用程序与物理数据源之间,用于临时存放复制数据的内存区域,目的是为了减少应用程序对物理数据源访问的次数,从而提高应用程序的运行性能. Hibernate在查询数据时,首先到缓存中去查找,如果找到就直接使用,找不到的时候就会从物理数据源中检索,所以,把频繁使用的数据加载到缓存区后,就可以大大减少应用程序对物理数据源的访问,使得程序的运行性能明显的提升. Hibernat
2013-08-08 23:18:05 472
转载 hibernate的缓存机制(面试)
这是面试中经常问到的一个问题,首先说下Hibernate缓存的作用(即为什么要用缓存机制),然后再具体说说Hibernate中缓存的分类情况,最后可以举个具体的例子。Hibernate缓存的作用: Hibernate是一个持久层框架,经常访问物理数据库,为了降低应用程序对物理数据源访问的频次,从而提高应用程序的运行性能。缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读
2013-08-08 23:13:47 595
转载 Hibernate延迟加载机制
延迟加载: 延迟加载机制是为了避免一些无谓的性能开销而提出来的,所谓延迟加载就是当在真正需要数据的时候,才真正执行数据加载操作。在Hibernate中提供了对实体对象的延迟加载以及对集合的延迟加载,另外在Hibernate3中还提供了对属性的延迟加载。下面我们就分别介绍这些种类的延迟加载的细节。A、实体对象的延迟加载:如果想对实体对象使用延迟加载,必须要在实体的映射配置
2013-08-08 23:01:04 506
转载 数据库连接池
数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出。对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标。数据库连接池正是针对这个问题提出来的。数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而再不是重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连
2013-08-07 23:32:29 938
转载 EJB与JavaBean的区别
什么是EJB:EJB是sun的服务器端组件模型,最大的用处是部署分布式应用程序当然,还有许多方式可以实现分布式应用,类似微软的.net技术。凭借java跨平台的优势,用EJB技术部署的分布式系统可以不限于特定的平台。EJB (Enterprise JavaBean)是J2EE的一部分,定义了一个用于开发基于组件的企业多重应用程序的标准。其特点包括网络服务支持和核心开发工具(SDK)。 在J2E
2013-08-07 23:25:07 11824
转载 oracle 表空间,表,数据文件的关系
数据库的物理结构是由数据库的操作系统文件所决定,每一个Oracle数据库是由三种类型的文件组成:数据文件、日志文件和控制文件。数据库的文件为数据库信息提供真正的物理存储。 每一个Oracle数据库有一个或多个物理的数据文件(data file)。一个数据库的数据文件包含全部数据库数据。逻辑数据库结构(如表、索引等)的数据物理地存储在数据库的数据文件中。数据文件通常为*.dbf格式,例如:u
2013-08-07 23:08:10 918
转载 Oracle SQL优化 总结(大师级别)
SQL 的优化主要涉及几个方面:(1) 相关的统计信息缺失或者不准确(2) 索引问题(3) SQL 的本身的效率问题,比如使用绑定变量,批量DML 采用bulk等,这个就考验写SQL的基本功了,这一点也是最主要的一点。 一.SQL 编写注意事项 1.1 查看SQL对于生产环境上的SQL,可以从AWR 或者 Statspack 报告中获取相关的SQL 信
2013-08-07 22:57:39 1213
转载 Oracle SQL性能优化
(1) 选择最有效率的表名顺序(只在基于规则的优化器中有效):ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersection table)作为基础表, 交叉表
2013-08-07 22:50:07 1003 2
转载 Struts1和Struts2的区别
一、Servlet依赖性 由于Action在被调用的时候,HttpServletRequest和HttpServletResponse被传递到execute()方法,struts1的Action对Servlet API有依赖 性,但如果在struts2中,Action就不会对容器有依赖性了,因为struts2的Action是由简单的POJO组成,在struts2中
2013-08-05 22:46:15 566
转载 struts2的执行流程及工作原理
Struts 2框架本身大致可以分为3个部分:核心控制器FilterDispatcher、业务控制器Action和用户实现的企业业务逻辑组件。核心控制器FilterDispatcher是Struts 2框架的基础,包含了框架内部的控制流程和处理机制。业务控制器Action和业务逻辑组件是需要用户来自己实现的。用户在开发Action和业务逻辑组件的同时,还需要编写相关的配置文件,供核心控制器Fi
2013-08-05 22:37:52 920
原创 struts1的工作原理及基本配置详解
一、引入strutsModel 1结构如图1所示: Mode11是一个以JSP文件为中心的模式,在这种模式中JSP页面不仅负责表现逻辑,也负责控制逻辑。专业书籍上称之为逻辑耦合在页面中,这种处理方式,对一些规模很小的项目如:一个简单的留言簿,也没什么太大的坏处,实际上,人们开始接触一些对自己来说是新的东西的时候,比如,用JSP访问数据库时,往往喜欢别人能提供一个包含这一切的单
2013-08-05 13:18:43 6857
转载 struts1的工作原理
struts1的工作原理图: 1.初始化:struts框架的总控制器ActionServlet是一个Servlet,它在web.xml中配置成自动启动的 Servlet,在启动时总控制器会读取配置文件(struts-config.xml)的配置信息,为struts 中不同的模块初始化相应的对象。(面向
2013-08-05 12:57:09 629
转载 MVC工作原理以及优缺点
模型-视图-控制器(MVC)是Xerox PARC在八十年代为编程语言Smalltalk-80发明的一种软件设计模式,至今已被广泛使用。最近几年被推荐为Sun公司J2EE平台的设计模式,并且受到越来越多的使用 ColdFusion 和 PHP 的开发者的欢迎。模型-视图-控制器模式是一个有用的工具箱,它有很多好处,但也有一些缺点。MVC工作原理图:MVC如何工作MVC是一个设计模式,它强
2013-08-05 12:18:31 1364
转载 springMVC工作原理
Spring的MVC框架主要由DispatcherServlet、处理器映射、处理器、视图解析器、视图组成。Spring MVC的原理框图:整个处理过程从一个HTTP请求开始:1)DispatcherServlet接收到请求后,根据对应配置文件中配置的处理器映射,找到对应的处理器映射项(HandlerMapping),根据配置的映射规则,找到对应的处理器(Handler)。
2013-08-05 12:07:22 789
转载 Spring工作原理
Spring工作流程如下:1.springmvc请所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责负责对请求进行真正的处理工作。2.DispatcherServlet查询一个或多个HandlerMapping,找到处理请求的Controller.3.DispatcherServlet请请求提交到目标Controller4.Cont
2013-08-05 11:59:02 523
转载 Hibernate、Spring和Struts2工作原理(理论)
Hibernate、Spring和Struts2工作原理 1. Hibernate 的工作原理 1.读取并解析配置文件 2.读取并解析映射信息,创建SessionFactory 3.打开Sesssion 4.创建事务Transation 5.持久化操作 6.提交事务 7.关闭Session 8.关闭Sesstion
2013-08-05 11:56:16 673
转载 HashMap,LinkedHashMap,TreeMap的区别(精辟)
Map主要用于存储健值对,根据键得到值,因此不允许键重复(重复了覆盖了),但允许值重复。Hashmap 是一个最常用的Map,它根据键的HashCode 值存储数据,根据键可以直接获取它的值,具有很快的访问速度,遍历时,取得数据的顺序是完全随机的。HashMap最多只允许一条记录的键为Null;允许多条记录的值为 Null;HashMap不支持线程的同步,即任一时刻可以有多个线程同时写Hash
2013-08-04 19:01:51 522
转载 Java NIO与IO的区别和比较(代码级别)
导读J2SE1.4以上版本中发布了全新的I/O类库。本文将通过一些实例来简单介绍NIO库提供的一些新特性:非阻塞I/O,字符转换,缓冲以及通道。一. 介绍NIONIO包(java.nio.*)引入了四个关键的抽象数据类型,它们共同解决传统的I/O类中的一些问题。1. Buffer:它是包含数据且用于读写的线形表结构。其中还提供了一个特殊类用于内存映射文件的I/O操作。2.
2013-08-04 18:27:26 591
转载 NIO与传统IO的区别(概述)
传统的socket IO中,需要为每个连接创建一个线程,当并发的连接数量非常巨大时,线程所占用的栈内存和CPU线程切换的开销将非常巨大。使用NIO,不再需要为每个线程创建单独的线程,可以用一个含有限数量线程的线程池,甚至一个线程来为任意数量的连接服务。由于线程数量小于连接数量,所以每个线程进行IO操作时就不能阻塞,如果阻塞的话,有些连接就得不到处理,NIO提供了这种非阻塞的能力。 小量的线
2013-08-04 18:25:04 523
转载 ORACLE SQL 优化的若干方法(详细)
一、 先介绍一下oracle的SGA:数据库的系统全局区,SGA主要由三部分构成:共享池、数据缓冲区、日志缓冲区。1、 共享池又由两部分构成:共享SQL区和数据字典缓冲区。共享SQL区专门存放用户SQL命令,oracle使用最近最少使用等优先级算法来更新覆盖;数据字典缓冲区(library cache)存放数据库运行的动态信息。数据库运行一段时间后,DBA需要查看这些内存区域的命中率以从数据库
2013-08-04 18:07:04 1165
转载 oracle sql的优化方法(精简)
1. /*+ALL_ROWS*/ 表明对语句块选择基于开销的优化方法,并获得最佳吞吐量,使资源消耗最小化. 例如: SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO=’SCOTT’; 2. /*+FIRST_ROWS*/ 表明对语句块选择基于开销的优化方法,并获得最佳响
2013-08-04 18:04:47 485
转载 oracle sql的优化方法(概述)
在很多人眼里,SQL优化就是走索引,就是用走索引来取代全表扫描。实际上这种认识是非常肤浅的。尽管大部分SQL优化的问题都可以通过增加或者减少索引的方式来解决,但这绝不是全部”!Oracle SQL优化方法论 据崔华老师介绍,Oracle数据库里SQL优化的终极目标就是要缩短目标SQL语句执行时间。要达到上述目的,我们通常只有如下三种方法可以选择: 降低目标SQL语句
2013-08-04 18:02:46 772
转载 spring的事务管理,事务隔离级别(代码级别)
Spring事务配置的五种方式前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识。通过这次的学习发觉Spring的事务配置只要把思路理清,还是比较好掌握的。 总结如下: Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource、TransactionManager和
2013-08-04 17:52:21 3868
转载 spring的事务管理有几种方式实现,如何实现
Spring+Hibernate的实质:就是把Hibernate用到的数据源Datasource,Hibernate的SessionFactory实例,事务管理器HibernateTransactionManager,都交给Spring管理。那么再没整合之前Hibernate是如何实现事务管理的呢?通过ServletFilter实现数据库事务的管理,这样就避免了在数据库操作中每次都要进行数
2013-08-04 17:48:57 2497
转载 String 和StringBuffer,StringBuilder的区别
String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全) 简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常
2013-08-04 17:30:08 432
转载 heap,stack区别
1.heap是堆,stack是栈。2.stack的空间由操作系统自动分配和释放,heap的空间是手动申请和释放的,heap常用new关键字来分配。3.stack空间有限,heap的空间是很大的自由区。在Java中,若只是声明一个对象,则先在栈内存中为其分配地址空间,若再new一下,实例化它,则在堆内存中为其分配地址。4.举例:数据类型 变量名
2013-08-04 17:25:24 541
转载 hashmap,hashtable,hashset区别
HashTable的应用非常广泛,HashMap是新框架中用来代替HashTable的类,也就是说建议使用HashMap,不要使用HashTable。可能你觉得HashTable很好用,为什么不用呢?这里简单分析他们的区别。一:HashMap与HashTable的区别 1.HashTable的方法是同步 的,在方法的前面都有synchronized来同步,HashMap未经同步,所以在多线
2013-08-04 17:22:02 581
转载 ArraList,LinkList,List,Vector的区别
API在由Ken Arnold等编著的《Java Programming Language》(Addison-Wesley, June 2000)一书中有这样的描述,Vector类似于ArrayList.。所有从API的角度来看这两个类非常相[b]似。但他们之间也还是有一些主要的区别的。同步性Vector是同步的。这个类中的一些方法保证了Vector中的对象是线程安全的。而ArrayL
2013-08-04 17:00:28 1355
原创 在tomcat和eclipse进行远程调试的配置
在做远程调试时,在windows系统和非windows系统下的配置,Tomcat中会有所差别,具体如下:第一步、配置tomcat一、在windows系统中:打开%CATALINE_HOME%/bin下的文件catalina.bat,加入下面这行:set CATALINA_OPTS=-server -Xdebug-Xnoagent-Djava.compiler=NONE-Xrunjd
2013-08-01 11:04:47 641
原创 oracle日期截取
截断日期:先执行命令:alter session set nls_date_format='yyyy-mm-dd hh24:mi:hh';截取今天:SQL> select sysdate,trunc(sysdate,'dd') from dual;SYSDATE TRUNC(SYSDATE,'DD')-------------------
2013-08-01 10:54:30 1941
S2SH_DEMO(struts2.3/hibernate3.6/spring3.2.9)
2014-06-15
java项目参考源码
2011-09-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人