- 博客(26)
- 资源 (6)
- 收藏
- 关注
原创 对已有数据做delete+insert会导致在uk上产生GAP锁导致
2. 把delete+insert的写法改成update。(注:用replace into的写法来替代delete+insert,会导致一样的锁状态,所以在本例中用replace into写法不能解决问题)1. 从应用角度考虑能否把唯一索引改为普通索引。
2023-01-11 15:38:16
257
java事务基本概念
要理解这个java事务,我们需要依次来回答下面几个问题:1、什么是事务? 事务这个概念来自于数据库,它必需满足ACID的基本原则,所谓ACID即是atomicity(原子性),consistency(一致性),isolation(隔离性)和durability(执久性)的首字母的缩写;原子性表示一个事务内的所有操作是一个整体,要 么全部成功,要么全失败;一致性表示一个事务内有一个操作...
2010-08-23 21:14:39
273
原创 ff中select的onchange事件
select的onchange事件在IE中正常,但在FF中不能正常触发,需要配合回车,或者onblur事件,所以多给select加个onkeyup的事件即可解决这个问题: <select name="sel" id="sel#i#" onchange=" ( function here )" onkeyup="this.blur();this.focus();">...
2010-07-01 10:04:42
163
poi3.6对excel2007的读写
前两天项目需用到excel2007/2010,发现以前的POI包已经不能支持得到了,赶紧的到网上找了个最新的POI3.6包,可这个解析方式给我们来了个大变样,以前的在excel2003中用的那一套已经不能适用,网上能找到的又只是一些很简单的例子,没办法,自己来搞吧,好了,开工吧,本文件分别把2007的读文件和写文件的关键代码贴了出来供大家参考,如有更简洁的方式,欢迎指正: ...
2010-06-21 11:53:09
293
原创 dom4j去掉xml头
dom4j生成的xml可能需要转成String,这个时候这个xml的header可能会碍事,特别是这个header和下面的正文之间还会换行,好了,赶紧把这个碍眼的东东去掉吧,可能你首先相到的会像下面的做法一样: // 这个只是一类做法,用正则表达式也可以写得比较优雅 s.replaceAll("", ""); so bad!如果你正好想到如上方法,或已经采用了...
2010-06-12 09:08:06
413
二、synchronized详解
在上一篇中,我们讲到了多线程是如何处理共享资源的,以及保证他们对资源进行互斥访问所依赖的重要机制:对象锁。本篇中,我们来看一看传统的同步实现方式以及这背后的原理。很多人都知道,在Java多线程编程中,有一个重要的关键字,synchronized。但是很多人看到这个东西会感到困惑:“都说同步机制是通过对象锁来实现的,但是这么一个关键字,我也看不出来Java程序锁住了哪...
2010-03-14 20:37:20
161
一、线程的先来后到
我们来举一个Dirty的例子:某餐厅的卫生间很小,几乎只能容纳一个人如厕。为了保证不受干扰,如厕的人进入卫生间,就要锁上房门。我们可以把卫生间想象成是共享的资源,而众多需要如厕的人可以被视作多个线程。假如卫生间当前有人占用,那么其他人必须等待,直到这个人如厕完毕,打开房门走出来为止。这就好比多个线程共享一个资源的时候,是一定要分出先来后到的。有人说:那如果我没有这道门会怎样呢?让两个线程相...
2010-03-14 20:33:40
182
提高SQL查询效率
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:select id...
2010-03-10 22:18:49
111
原创 项目管理经验
终于一天早上,睁开极不情愿被睁开的眼睛,厌倦了文档、厌倦了没完没了的BUG、需求反复、项目延期,做出一个极为重要的决定:自己干。忽悠到2个人,于是创业开始。第一个项目时间很紧张,是经过层层外包转包而来,尽管利润微薄,但是3个人在一起非常开心,我们做持续集成、做自动化测试,所有问题都经过集体讨论解决,很累,但每个人都很努力,因为大家的目的都是一致的。终于,项目按时完成,我们拿到自己挣到的第一...
2010-02-05 11:50:29
147
原创 Ansi,UTF8,Unicode,ASCII编码
从ASCII编码谈起: 我们需要了解的最早编码是ASCII码。它用7个二进制位来表示,由于那个时期生产的大多数计算机使用8位大小的字节,因此用户不仅可以存放所有可能的ASCII字符,而且有整整一位空余下来。如果你技艺高超,可以将该位用做自己离奇的目的:WordStar中那个发暗的灯泡实际上设置这个高位,以指示一个单词中的最后一个字母,同时这也宣示了WordStar只能用于英语文本。 由...
2010-01-25 10:19:17
124
原创 浅谈Java内部类的四个应用场景
Java内部类是Java言语的一个很重要的概念,《Java编程思想》花了很大的篇幅来讲述这个概念。但是我们在实践中很少用到它,虽然我们在很多时候会被动的使用到它,但它仍然像一个幕后英雄一样,不为我们所知,不为我们所用。本文不试图来讲述Java内部类的今生前世、来龙去脉,这些在网络上都已经汗牛充栋。如果读者想了解这些,可以在网络上搜索来学习。Java内部类总是躲在它的外部类里,像一个幕后英雄一样...
2009-11-14 17:03:10
102
理解 JavaScript 闭包四
五、意外的闭包在创建可访问的内部函数的函数体之外解析该内部函数就会构成闭包。这表明闭包很容易创建,但这样一来可能会导致一种结果,即没有认识到闭包是一种语言特性的 JavaScript 作者,会按照内部函数能完成多种任务的想法来使用内部函数。但他们对使用内部函数的结果并不明了,而且根本意识不到创建了闭包,或者那样做意味着什么。正如下一节谈到 IE 中内存泄漏问题时所提及的,意外创...
2009-09-23 10:27:20
90
理解 JavaScript 闭包三
四、标识符解析、执行环境和作用域链1、执行环境执行环境是 ECMAScript 规范(ECMA 262 第 3 版)用于定义 ECMAScript 实现必要行为的一个抽象的概念。对如何实现执行环境,规范没有作规定。但由于执行环境中包含引用规范所定义结构的相关属性,因此执行环境中应该保有(甚至实现)带有属性的对象--即使属性不是公共属性。所有 JavaScript 代码都是在一个...
2009-09-23 10:25:57
100
理解 JavaScript 闭包二
三、值的读取当读取对象的属性值时,原型对象的作用便体现出来。如果对象的原型中包含属性访问器(property accessor)所使用的属性名,那么该属性的值就会返回:/* 为命名属性赋值。如果在赋值前对象没有相应的属性,那么赋值后就会得到一个:*/objectRef.testNumber = 8;/* 从属性中读取值 */var val = objectRef...
2009-09-23 10:23:30
77
理解 JavaScript 闭包一
Closure 所谓“闭包”,指的是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。 闭包是 ECMAScript (JavaScript)最强大的特性之一,但用好闭包的前提是必须理解闭包。闭包的创建相对容易,人们甚至会在不经意间创建闭包,但这些无意创建的闭包却存在潜在的危害,尤其是在比较常见的浏览器环境下。如果想要扬长避短地使用闭包这一...
2009-09-23 10:22:00
88
原创 Mondrian--olap引擎
一、引言Mondrian, 蒙得里安·皮特1872-1944荷兰画家,作品以交错的三原色为基色的垂直线条和平面为特点,他的著作包括 新造型主义(1920年),对抽象艺术的发展曾经产生很深影响。——金山词霸如是说。不过,本文所要讨论的可不是这位艺术家。那到底mondrian是什么呢?Mondrian是一个开源项目。一个用Java写成的OLAP(在线分析性处理)引擎。它用MDX...
2009-09-17 14:46:17
167
Oracle OLAP之活动目录视图
OLAP(OnLine Analytical Processing),联机分析系统,和通常的OLTP(OnLine Transaction Processing)系统不同。OLTP主要用户生产库的事务处理,每个事务相对较小,短时间内需要同时处理大量的事务,整个系统要求有较好的响应时间(response time)。而OLAP则主要用于读取大量数据并进行分析,事务数不是太多,系统要求较高的吞吐率(t...
2009-09-17 10:23:49
150
原创 浅谈JavaScript的回调函数,附实例
1、背景 Javascript中的回调函数,相信大家都不陌生,最明显的例子是做Ajax请求时,提供的回调函数,实际上DOM节点的事件处理方法(onclick,ondblclick等)也是回调函数。在使用DWR的时候,回调函数可以作为第一个或者最后一个参数出现,如:function callBack(result){}myDwrService.doSomething(p...
2009-09-16 17:04:30
124
原创 oracle 拆分字符串函数
create or replace function split_str(var_str in varchar2, var_split in varchar2)/**************************************************** 注意 先执行下面语句 创建类型 ...
2009-09-13 13:29:39
128
原创 网页和屏幕的高宽
网页可见区域宽:document.body.clientWidth; 网页可见区域高:document.body.clientHeight; 网页可见区域高:document.body.offsetWidth (包括边线的宽);网页可见区域高:document.body.offsetHeight (包括边线的宽);网页正文全文宽:document.body.scrollWidt...
2009-09-04 10:50:31
119
sqlserver2008的分布式事务管理原理
分布式事务跨越两个或多个称为资源管理器的服务器。称为事务管理器的服务器组件必须在资源管理器之间协调事务管理。如果分布式事务由 Microsoft 分布式事务处理协调器 (MS DTC) 之类的事务管理器或其他支持 Open Group XA 分布式事务处理规范的事务管理器来协调,则在这样的分布式事务中,每个 SQL Server 数据库引擎实例都可以作为资源管理器来运行。有关详细信息,请参阅 MS...
2009-08-31 18:02:26
167
JDK动态代理为什么必须用接口以及与CGLIB的对比
这两天对AOP原理感兴趣了,试验了JDK动态代理与CGLIB动态代理。从Spring的AOP框架介绍中得知对于使用接口的类,Spring使用JDK动态代理(原来做项目中试图从Bean强制转换为实现类,结果报错,原来是这么回事),没有接口的就使用别的AOP框架aspectj,但这些都是依赖于Java字节码工具ASM生成一个原类的新类,调用Callback 但是JDK动态代理为什么必须使用接口...
2009-08-27 21:24:16
241
urlrewrite使用介绍
urlrewrite是一个类似于apache的mod_rewrite模块的基于web服务器的filter之上的开源java工具主要功能:1.实现url地址的伪静态化,有利于搜索引擎收录 例如可以把http://www.flyox.com/showBlog.jspx?id=55 的请求重定向或转发到http://www.flyox.com/blog/55,这样做就避免了url...
2009-08-27 14:43:43
258
liferay学习笔记三 tagLig渲染
这里以input field为例。其他的应该也差不多,没去细了解。Liferay里提供了liferay-ui 的taglib,要在jsp页面里使用的话,就在前面加上不过大部分时候可以加上,里面已经有添加了很多liferay的taglib了。除非不想要那些。加入要在页面里加一个电话号码的input field,则可以使用:其中com.liferay.portal....
2009-08-25 10:03:28
121
liferay学习笔记二 框架学习
一、JSP中如何使用TabLiferay的jsp页面中,如果用了tab的选项,则tab1为第一层,tab2为第二层,tab3为第三层,从上到下,为父子关系。如何开发一个带选择框的列表应用?1、建立数据库模型(废话)2、建立dao及相关portlet.service服务框架,接口和Util3、实现服务接口;4、开发对应的JSP页面;5、开发相应的Action;...
2009-08-25 09:30:48
157
liferay portal学习总结一
这段时间由于公司要开发一个portal产品,特意选取liferay portal研究了一下,现将前段时间学习的东西总结下。 选取的技术:liferay+cas+openldap 都是开源的框架。 功能要求:a.单点登录。b.系统集成。c.自定义样式。d.信息发布。e.搜索(对于OA,实现起来还是有点为大现实)。 b.系统集成: 系统集成主要有以下...
2009-07-01 16:44:49
117
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人