自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(42)
  • 问答 (1)
  • 收藏
  • 关注

原创 浅析VO、DTO、DO、PO的概念、区别和用处

概念:VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负载,但在这里,我泛指用于展示层与服务层之间的数据传输对象。...

2010-12-09 16:59:03 112

原创 代码覆盖率浅谈【ZZ】

在做单元测试时,代码覆盖率常常被拿来作为衡量测试好坏的指标,甚至,用代码覆盖率来考核测试任务完成情况,比如,代码覆盖率必须达到80%或 90%。于是乎,测试人员费尽心思设计案例覆盖代码。用代码覆盖率来衡量,有利也有有弊。本文我们就代码覆盖率展开讨论,也欢迎同学们踊跃评论。首先,让我们先来了解一下所谓的“代码覆盖率”。我找来了所谓的定义:代码覆盖率 = 代码的覆盖程度,一种度量方式。上面...

2010-09-20 14:31:55 194

原创 ConcurrentModificationException主要原因及处理方法

当使用 fail-fast iterator 对 Collection 或 Map 进行迭代操作过程中尝试直接修改 Collection / Map 的内容时,即使是在单线程下运行, java.util.ConcurrentModificationException 异常也将被抛出。  Iterator 是工作在一个独立的线程中,并且拥有一个 mutex 锁。 [b]Iterator ...

2009-07-04 10:22:41 104

原创 in和exists的区别与SQL执行效率分析

本文对in和exists的区别与SQL执行效率进行了全面整理分析……最近很多论坛又开始讨论in和exists的区别与SQL执行效率的问题,本文特整理一些in和exists的区别与SQL执行效率分析SQL中in可以分为三类:  1、形如select * from t1 where f1 in ('a','b'),应该和以下两种比较效率  select * from...

2009-06-29 15:09:03 81

原创 Hibernate程序性能优化的考虑要点

本文依照HIBERNATE帮助文档,一些网络书籍及项目经验整理而成,只提供要点和思路,具体做法可以留言探讨,或是找一些更详细更有针对性的资料。  初用HIBERNATE的人也许都遇到过性能问题,实现同一功能,用HIBERNATE与用JDBC性能相差十几倍很正常,如果不及早调整,很可能影响整个项目的进度。  大体上,对于HIBERNATE性能调优的主要考虑点如下:  Ø 数据库设计调...

2009-06-18 22:06:17 75

原创 Struts2 Hello World实例

Struts2的配置稍显繁琐,有时候一次成功,有时候想运行个Hello World都非很大劲,总是有这样那样的错误。避免这种问题出现的唯一办法就是,理解每个配置文件,理解为什么这样或那样做,记录疑惑,尤其要记录解决了疑惑的答案。我们唯一的目的就是:遇到某个曾经遇到的问题、一时又想不起来怎么解决的时候,一查笔记全部搞定。 Struts2 Hello World实例 使用:...

2009-05-13 16:06:11 102

原创 Struts1和Struts2的区别和对比(转)

1.Action 类:• Struts1要求Action类继承一个抽象基类。Struts1的一个普遍问题是使用抽象类编程而不是接口。• Struts 2 Action类可以实现一个Action接口,也可实现其他接口,使可选和定制的服务成为可能。Struts2提供一个ActionSupport基类去实现 常用的接口。Action接口不是必须的,任何有execute标识的POJO对象都可以用作...

2009-05-13 16:04:44 78

原创 javaScript中的call方法

javaScript 中的 call() 是一个奇妙的方法,但也是一个让人迷惑的方法,先看一下官方的解释:call 方法请参阅应用于:Function 对象要求版本 5.5调用一个对象的一个方法,以另一个对象替换当前对象。call([thisObj[,arg1[, arg2[, [,.argN]]]]])参数thisObj可选项。将被用作当前对象...

2009-05-12 17:17:00 94

原创 深入认识javascript中的eval函数

发现为本文起一个合适的标题还不是那么容易,呵呵,所以在此先说明下本文的两个目的:(1)介绍javascript中的eval函数的用法(2)如何在函数内执行全局代码►先来说eval的用法,内容比较简单,熟悉的可以跳过。eval函数接收一个参数s,如果s不是字符串,则直接返回s。否则执行s语句。如果s语句执行结果是一个值,则返回此值,否则返回undefined。需要特别注意的是...

2009-04-28 11:10:39 103

原创 prototype属性使用说明

prototype 是在 IE 4 及其以后版本引入的一个针对于某一类的对象的方法,而且特殊的地方便在于:它是一个给类的对象添加方法的方法!这一点可能听起来会有点乱,别急,下面我便通过实例对这一特殊的方法作已下讲解:  首先,我们要先了解一下类的概念,JavaScript 本身是一种面向对象的语言,它所涉及的元素根据其属性的不同都依附于某一个特定的类。我们所常见的类包括:数组变量(Arra...

2009-03-18 15:03:14 77

原创 java访问权限修饰符public protected friendly private用法总结

首先声明:java中,friendly这个修饰符并没有显式的声明,在成员变量和方法前什么修饰符也不用,默认的就是friendly。 为了条理清晰,分三种不同情况来总结。 一 访问权限修饰符修饰成员变量和方法 public:表明该成员变量和方法是共有的,能在任何情况下被访问。 protected:必须在同一包中才能被访问。(说的比较简单,看个例子就明白...

2009-03-13 18:11:07 90

原创 JSP内置对象(9个常用的内置对象)

1.request对象客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。它是HttpServletRequest类的实例。序号 方 法 说 明1 object getAttribute(String name) 返回指定属性的属性值2 Enumeration getAttributeNames() 返回所有可用属性名的枚举...

2009-02-27 15:43:02 77

原创 Hibernate中的inverse和cascade

首先引用另一个blog的说法:1.cascade="..."?cascade属性并不是多对多关系一定要用的,有了它只是让我们在插入或删除对像时更方便一些,只要在cascade的[b]源头(主控方?)[/b]上插入或是删除,所有cascade的关系就会被自己动的插入或是删除。便是为了能正确的cascade,unsaved- value是个很重要的属性。Hibernate通过这个属...

2009-02-27 15:37:54 76

原创 hibernate延时加载

延迟加载: 延迟加载机制是为了避免一些无谓的性能开销而提出来的,所谓延迟加载就是当在真正需要数据的时候,才真正执行数据加载操作。在Hibernate中提供了对实体对象的延迟加载以及对集合的延迟加载,另外在Hibernate3中还提供了对属性的延迟加载。下面我们就分别介绍这些种类的延迟加载的细节。 A、实体对象的延迟加载: 如果想对实体对象使用延迟加载,必须要在实体的映射配置文件中进...

2009-02-27 15:14:07 92

原创 hibernate的各种保存方式的区别 (save,persist,update,saveOrUpd

hibernate的保存hibernate对于对象的保存提供了太多的方法,他们之间有很多不同,这里细说一下,以便区别:一、预备知识:在所有之前,说明一下,对于hibernate,它的对象有三种状态,transient、persistent、detached下边是常见的翻译办法:transient:瞬态或者自由态persistent:持久化状态detached:脱管状态或...

2009-02-26 21:06:03 88

原创 Hibernate数据更新——Session.update/Session.saveOrUpdate

Hibernate数据更新——Session.update/Session.saveOrUpdate Session.update执行步骤: 1. 首先根据待更新实体对象的Key,在当前session的内部缓存中进行查找,如果发现,则认为当前实体对象已经处于Persistent状态,返回。从这一点可以看出,对一个Persistent状态的实体对象调用update语句并不会发生任何作用。...

2009-02-26 19:23:24 360

原创 Index索引

一、索引的概念 索引就是加快检索表中数据的方法。数据库的索引类似于书籍的索引。在书籍中,索引允许用户不必翻阅完整个书就能迅速地找到所需要的信息。在数据库中,索引也允许数据库程序迅速地找到表中的数据,而不必扫描整个数据库。 二、索引的特点 1.索引可以加快数据库的检索速度 2.索引降低了数据库插入、修改、删除等维护任务的速度 3.索引创建在表上,不能创建在视图上 4.索引...

2009-02-25 14:33:35 152

原创 select into 和 insert into select 两种表复制语句

select * into destTbl from srcTbl insert into destTbl(fld1, fld2) select fld1, 5 from srcTbl 以上两句都是将 srcTbl 的数据插入到 destTbl,但两句又有区别的。 第一句(select into from)要求目标表(destTbl)不存在,因为在插入时会自动创建。 ...

2009-02-25 14:32:23 81

原创 公司面试题目之取出数据库中重复的记录

一道笔试题,就是查询出数据表中重复的记录,应该来说用过分组查寻的,这道题并不在话下,我们先来看看这张表[img]http://www.cnblogs.com/images/cnblogs_com/eflylab/200707/20070712113710.gif[/img]上图高亮部分的是重复的数据行,那么如何取出其中高亮的部分,聚合函数在解决这个问题前,我们必需先讲讲sql语言中...

2009-02-25 14:30:29 81

原创 Hibernate中对象的三种状态

在Hibernate中,对象有三种状态:临时状态、持久状态和游离状态。临时状态:当new一个实体对象后,这个对象处于临时状态,即这个对象只是一个保存临时数据的内存区域,如果没有变量引用这个对象,则会被jre垃圾回收机制回收。这个对象所保存的数据与数据库没有任何关系,除非通过Session的save或者SaveOrUpdate把临时对象与数据库关联,并把数据插入或者更新到数据库,这个对象才转换为...

2009-02-25 14:22:58 61

原创 Hibernate锁机制 悲观锁和乐观锁

hibernate锁机制1.悲观锁它指的是对数据被外界修改持保守态度。假定任何时刻存取数据时,都可能有另一个客户也正在存取同一笔数据,为了保持数据被操作的一致性,于是对数据采取了数据库层次的锁定状态,依靠数据库提供的锁机制来实现。基于jdbc实现的数据库加锁如下:select * from account where name="Erica" for update...

2009-02-25 14:22:10 82

原创 Spring AOP 使用通知者和切入点

首先回想一下,之前我们所给出的所有例子都是通过拦截所有的方法调用来完成AOP的实现的。但是我们会遇到两个问题:我们如何只让某一个或者某一类的方法调用被AOP钩到(hook)而不是所有的方法,从而提高效率? 我们如何不用通过必须在AOP逻辑中硬编码方法名称列表的方式,去检测方法名称,从而找到正确的方法? 对于第一个问题,因为Spring会对不需要被AOP逻辑处理的方法进行优化,而P...

2009-02-25 14:20:05 119

原创 基础知识

如何用二进制来表示一个负数?比如,假设有一 int 类型的数,值为5,那么,我们知道它在计算机中表示为:00000000 00000000 00000000 000001015转换成二制是101,不过int类型的数占用4字节(32位),所以前面填了一堆0。现在想知道,-5在计算机中如何表示? 在计算机中,负数以其正值的补码形式表达。什么叫补码呢?...

2009-02-25 14:19:03 96

原创 hibernate一级缓存和二级缓存的区别与联系

缓存是介于应用程序和物理数据源之间,其作用是为了降低应用程序对物理数据源访问的频次,从而提高了应用的运行性能。缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读写数据,在特定的时刻或事件会同步缓存和物理数据源的数据。   缓存的介质一般是内存,所以读写速度很快。但如果缓存中存放的数据量非常大时,也会用硬盘作为缓存介质。缓存的实现不仅仅要考虑存储的介质,还要考虑到管理缓存的并...

2009-02-25 14:17:01 55

原创 SQL 连接 JOIN 例解。(左连接,右连接,全连接,内连接,交叉连接,自连接)...

最近公司在招人,同事问了几个自认为数据库可以的应聘者关于库连接的问题,回答不尽理想~现在在这写写关于它们的作用假设有如下表:[img]http://www.cnblogs.com/images/cnblogs_com/eflylab/200706/20070624235515.jpg[/img]一个为投票主表,一个为投票者信息表~记录投票人IP及对应投票类型,左右连接实际说是我...

2009-02-25 14:07:17 130

原创 Hibernate.cfg.xml配置文件(包括主键生成策略介绍)

Hibernate.cfg.xml配置文件: java:comp/env/jdbc/quickstart net.sf.hibernate.connection.DatasourceConnectionProvider net.sf.hibernate.dialect.SQLSer...

2009-02-24 22:27:20 96

原创 JavaScript动态为下拉框添加选项

web开发中,经常需要给select动态添加数据,常用的方法有几种:1.基于dom方式的添加2.使用innerHTML添加3.object方式添加 1 < html > 2 < head > 3 < script > 4 5 var city = new Array(); 6 city[ 0 ] = ...

2009-02-05 21:32:45 1054

原创 详解Javascript匿名函数的使用

一、什么是匿名函数?在Javascript定义一个函数一般有如下三种方式: 1. 函数关键字(function)语句: function fnMethodName(x){alert(x);} 2. 函数字面量(Function Literals): var fnMethodName = function(x){alert(x);} 3...

2008-12-22 17:53:39 82

原创 JavaScript常用的Event对象介绍

javascript中常用的event对象Javascript的Event对象用来描述Javascript的事件,它主要作用于IE4和NN4以后的各个浏览器版本中。Event代表事件状态,如事件发生的元素,键盘状态,鼠标位置和鼠标按钮状态。一旦事件发生,便会生成Event对象,如单击一个按钮,浏览器的内存中就产生相应的 event对象。IE对事件的引用在IE4以上版...

2008-12-18 14:35:03 74

原创 表单提交中get和post方式的区别

1. get是从服务器上获取数据,post是向服务器传送数据。2. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。3. 对于get方式,服务器端用Reques...

2008-12-04 12:06:56 109

原创 mysql查询缓存

可将如下语句query_cache_size = 268435456query_cache_type = 1query_cache_limit = 1048576存放到/etc/my.cnf文件的[mysqld]下然后重启mysql数据库service mysqld restart就会启动mysql的缓存机制Query Cache。 在使用中,查询缓存会存储一个 SEL...

2008-11-27 10:01:30 85

原创 MYSQL性能优化设置

Mysql服务器如何得到最佳性能优化My favorite question during Interview for people to work as MySQL DBAs or be involved with MySQL Performance in some way is to ask them what should be tuned in MySQL Server straigh...

2008-11-26 17:53:32 90

原创 escape、encodeURI 與 encodeURIComponent 的比較

很多情況下, 我們需要將資料傳送到別的網頁, 都需要先將資料編碼後送出。由於使用者輸入的資料千奇百怪, 如果沒有編碼, 很可能在接收頁面就出現錯誤。尤其在現在的網站幾乎都大量運用 Ajax, 使用 Ajax 來傳值幾乎是家常便飯。所以這三個 javascript 的 method 就一定要知道如何運用及使用時機了。一般情況下, 最好選擇 encodeURIComponent()。以...

2008-11-12 18:04:57 61

原创 该死的IE系列之一

今天在前台开发项目中发现一个费解的问题:我想使用document.getElementsByName获得页面中一些拥有相同name属性的TD标签元素.该功能代码在FireFox下调试的一切正常,但是转到IE下无论是IE6还是IE7无法正确获得这些元素,调试时发现得到的返回的数组长度为0.既然FF下正常工作,那么这很明显是一个浏览器兼容问题,查找资料后得到如下结论:在IE下只有以下标...

2008-11-10 15:00:21 89

ANT-build.xml文件详解

Ant的概念可能有些读者并不理解什么是Ant以及入可使用它,但只要使用通过Linux系统得读者,应该知道make这个命令。当编译Linux内核及一些软件的源程序时,经常要用这个命令。Make命令其实就是一个项目管理工具,而Ant所实现功能与此类似。像make,gnumake和nmake这些编译工具都有一定的缺陷,但是Ant却克服了这些工具的缺陷。最初Ant开发者在开发跨平台的应用时,用样也是基...

2008-06-02 11:29:18 65

python中的排序

[code="java"] 1. # sort.py 2. # 这个类用来演示如何对自定义对象进行排序 3. class Sortobj: 4. a = 0 5. b = '' 6. def __init__(self, a, b): 7. self.a = a 8...

2008-05-30 14:01:07 91

python中的字符串操作

#Python字符串操作'''1.复制字符串'''#strcpy(sStr1,sStr2)sStr1 = 'strcpy'sStr2 = sStr1sStr1 = 'strcpy2'print sStr2'''2.连接字符串'''#strcat(sStr1,sStr2)sStr1 = 'strcat'sStr2 = 'append'sStr1 += sS...

2008-05-30 13:17:25 182

在线简明Python教程

http://linux.chinaitlab.com/Python/37192.html

2008-05-28 23:02:55 356

HTML标签大全

超文本链接 创建超文本链接 ,其中的url为链接目标地址 创建自动发送电子邮件的链接 ..[阅读全文] 地址标记 地址标记 粗体字 粗体字 基准字体标记 基准字体标记 字体加大 字体加大 向右缩排 向右缩排 文件本体 设置背景颜色。使用名字或RGB的十六进制值   设置背景图片中国站长第一...

2008-05-27 09:17:21 74

How to use mercurial?

在网上发现了一个很不错的关于如何使用mercurial的教程,不把文章转载过来的原因是因为转载过来之后会糟蹋这篇好文章- -!why?去看下就知道了。http://www.selenic.com/mercurial/wiki/index.cgi/ChineseTutorial...

2008-05-26 00:00:41 72

空空如也

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

TA关注的人

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