- 博客(231)
- 收藏
- 关注
原创 Session 与 cookie
一 Session: 保存在服务端的会话信息Session是另一种记录客户状态的机制,不同的是Cookie保存在客户端浏览器中,而Session保存在服务器上。当程序需要为某个客户端的请求创建一个Session的时候,服务器首先检查这个客户端的请求里是否已包含一个Session标识(称为Session id),如果包含了一个Session id则说明以前已经为此客户端创建过Sess...
2013-09-27 17:58:58
263
oracle sql优化
1.绑定变量 不适用在OLAP系统中。 因为在OLAP中,对应某个参数会查询出较大的结果集,这样,oracle会判断这条sql不适用与索引(因为索引查询到的数据时少量的),而进行全表扫描。2.oracle会解析sql语句,以基于cost的标准(11G等较高版本已经基本弃用基于规则的解析)来确定执行计划。3.在较高版本如11G等,已经可以排除一些操作的影响,如 in, unio...
2013-09-23 14:29:27
271
原创 单元测试 mock 特殊对象
1. easymock 和powermock的相关使用可参考官方网站,都有比较详细的介绍。2.特殊的,powermock可以mock方法内部的对象的new方法。例如在某个方法内部有 Object o = new Object();此时可以用PowerMock.expectNew(。。。。)来mock:PowerMock.expectNew(ArrayList.class)....
2013-09-04 18:07:50
311
原创 阅读笔记 SQL
Start with...Connect By子句递归查询一般用于一个表维护树形结构的应用。对于oracle进行简单树查询(递归查询)DEPTID PAREDEPTID NAMENUMBER NUMBER CHAR (40 Byte)部门id 父部门id(所属部门id) 部门名称通过子节点向根节点追朔.[code="sql"] select * from p...
2013-08-14 18:24:53
229
原创 oracle 锁 分析
1.分为 tx 和 tm 。即 行级 和 表级其中行级是 X表级是 S X RS RX SRXS:整个表是share的X:整个表是X的RS:表中某些行是share的RX:表中某些行是exclucive的SRX:在某个事务执行的过程中, 先加了S锁, 然后还请求了RX锁2. 加锁过程是先在表上加表级锁再在确定的某一些行上加行级锁...
2013-06-18 10:57:23
1841
原创 Oracle的TX锁(行级锁、事务锁)
问题:如何使用事务?回答:一共有三步。1、先开启事务。[color=red]•在Oracle中,事务是在上一次事务结束以后,数据“第一次”被修改时自动开启。•在java中,设置连接为手动提交模式开始。代码:connection.setAutoCommit(false)。[/color]2、进行(多次)数据操作(增删改)……3、结束事务: commit、rollback。...
2013-06-18 10:04:04
302
原创 java condition lock
[code="java"]package com.cn.whu;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import java.util.concurrent.locks.Condition;import java.util.concurrent.lo...
2013-06-14 14:13:36
146
原创 javascript跨域访问
javascript跨域访问是web开发者经常遇到的问题。A.同源策略 同源策略,它是由Netscape提出的一个著名的安全策略。现在所有支持JavaScript 的浏览器都会使用这个策略。所谓同源是指,域名,协议,端口相同。当一个浏览器的两个tab页中分别打开来 百度和谷歌的页面当浏览器的百度tab页执行一个脚本的时候会检查这个脚本是属于哪个页面的,即检查是...
2013-06-14 10:32:53
289
原创 maven 和 sonar的集成
maven 和 sonar的集成1.须运行 Sonar 服务器2.配置 Sonar 支持 Maven ,需要在 Maven 的 settings.xml 文件中进行配置(详见最下方)3.通过 mvn sonar:sonar 来执行代码分析需要在maven的setting.xml文件中假如以下配置信息 sonar ...
2013-05-22 18:34:21
265
原创 bat 使用笔记
1.对于 set, 注意左侧不要有空格set myname=asdf 正确set myname[color=red][b] =[/b][/color]asdf [color=red]错误[/color]
2013-05-14 14:10:34
153
原创 regex
[code="js"]var regexEnum = { intege:"^-?[1-9]\\d*$", //整数 intege1:"^[1-9]\\d*$", //正整数 intege2:"^-[1-9]\\d*$", //负整数 num:"^([+-]?)\\d*\\.?\\d+$", //数字 num1:"^[1-9]\\d*|0$.
2013-05-14 12:18:38
181
原创 通过计算机名 获取 IP
注意: 红色部分可能根据需要进行修改yourTestPCname 即是你需要测试的计算机名称红色的数字部分是由跟环境的ip地址有关联复制以下代码到bat文件即可。@echo offset pcName=[color=red]yourTestPCname[/color]ping %pcName% -4@echo -for /f "tokens=2 delims...
2013-05-14 11:56:33
360
原创 servletcontext 的获取
容器在初始化servlet时,会为其注入servletconfig。 该servletconfig会保持一个sevletcontext引用。http的servlet一般会继承于genericservlet,该genericservlet有getServletcontext方法。genericservlet getServletcontext()...
2013-05-12 20:10:33
178
原创 观察者/监听器 在 Entity 上的应用
1.创建 业务Entity 时, 不同的entity可以选择附加上不同的listener(如通过注解来标识)。这样在 entity manager 中,通过执行listener来实现自动化的处理。比如, 监控该entity的流程, 自动保存该entity关联的文档, 自动创建相关的event log等。2....
2013-05-09 16:10:13
182
原创 设置eclipse的 content assist 热键 为 ctl+space
eclipse 默认的是ctl+space这个很多人的不起作用。然后网上都建议设置为alt+\这个是很不方便的,但是很多人的就是设置不过来,包括我自己。后来看到一个人的办法,彻底解决此问题。首先,既然热键设置了,那么不起作用的原因,肯定是热键冲突了。那怎么解决冲突呢? 看看输入法等等的热键,貌似也看不出来。好,现在下载一个设置热键的工具即可。 如 IME T...
2013-04-27 16:51:05
309
原创 从spec开始做系统(页面tmplate问题)
好久不做页面了,差点搞不清页面之间的关系。原来是因为在spec的分析中出了问题。首先呢,spec的书写顺序是tmplate说明use case说明Entity 说明Menu 说明其他如导航等说明因为一直按照顺序读下来,难免有点云里雾里。后来感觉:首先呢,需要先大概浏览一下Entity定义,这样对于该模块结构有个整体上的了解。然后,就可以知道t...
2013-04-26 18:12:16
262
原创 动态级联列表
1.典型如国家区域省级等。数据结构:code: group internal_code parent_internal_codecode_desc: group internal_code external_codecode_group: group PARENT_GROUP_CODE EXTERNAL_CODE_REQUIRED TOU...
2013-04-25 15:17:04
278
原创 cache 的应用
1. 情境:在用户注册时,需要注册的信息较多,如需要身份信息,住址信息,附件信息,branch信息,账户,offical,等等多达十几种信息。如果页面的每次修改都需要到数据库查询的话,会很慢。所以将这些信息保存在session中。但是信息较多,需要好的办法来实现。2.分析:不同的用户会有不同的ID,不同的请求类型,不同的操作类型等。将这些经过处理作为...
2013-04-11 18:54:44
303
原创 以用户请求为中心的实现
1. 定义抽象GenericRequest类。 该类具有处理用户请求的一般性抽象方法让子类实现,如submit,approve,validate,reject,cancel等等。 该类具有request,entitymanager等公用属性来保存和处理用户请求。(其中VO request中,有internalID,status等属性来保存请求id和状态,entitymanager是...
2013-04-10 11:25:23
185
原创 记录用户操作历史
1. 异步,通过jms来实现。2. 容易改造,通过EntityManager来实现。3. 容易配置,通过degister来解析xml文件,生成初始化监听器。4. 容易coding。 在需要触发的地方,调用entitymabager的方法即可。...
2013-04-10 10:30:53
241
原创 mysql 时间戳自动更新
-- Table "pnodetail" DDLCREATE TABLE `pnodetail` ( `id` varchar(100) NOT NULL, `flag` varchar(2) DEFAULT NULL, `time` int(11) DEFAULT NULL, `pho` varchar(100) DEFAULT NULL, [color=r...
2013-04-09 10:24:29
175
原创 js Date() 对象 及 格式化
2011-11-25 11:39:11| 分类: JavaScript | 标签:js |字号 订阅 Date 对象用于处理日期和时间。 创建 Date 对象的语法: var myDate=new Date() Date 对象会自动把当前日期和时间保存为其初始值。 参数形式有以下5种: new Date("month dd,yyyy hh:mm:...
2013-04-01 17:59:40
189
原创 取得下一个sequence。 getNextInterval
1. 初始sequence值放置于数据库。2. 启动时产生一定数量的sequence放置于缓存,并更新数据库。3。 需要时从缓存组件中获取sequence。
2013-03-15 11:47:58
498
原创 TreeMap 的应用
1. 应用场景。对于一对多的映射A --B --C --D --E当取得A时,即使BCDE也是有顺序的。但是如果对于C,需要根据另一个配置表F进行再次装配,并且需要按照F的某一个字段进行排序,这种情况下可以利用TreeMap 实现。2. 实现概述。由于框架限制,一些其他方法不可行。所以实现如下:SortedMap sortedMap...
2013-03-06 18:40:04
310
原创 jquery学习笔记
1. window中的一些对象 json相关: if ( [color=red]window.JSON && window.JSON.parse[/color] ) { return window.JSON.parse( data ); } xml相关: // 解析XML 跨浏览器 // pa...
2013-03-01 12:04:07
145
原创 javascript 阅读笔记
1. 未用var显示的声明时,创建的变量是全局的。2. 没有块级作用域。 在函数中声明的变量,无论是在什么位置声明的,在整个函数中,他们都是有定义的。这一点和java等不同。这里是没有块级作用域的。 详细代码参照P763.javascript解释器开始执行的时候,会自动创建全局对象。在顶层代码(即函数之外)中,可以通过this关键字引用。4. JavaScri...
2013-02-25 16:13:59
190
原创 JS中函数声明与函数表达式的不同- -1
Js中的函数声明是指下面的形式:[code="java"]function functionName(){}[/code] 这样的方式来声明一个函数,而函数表达式则是类似表达式那样来声明一个函数,如:[code="java"]var functionName = function(){}[/code] 可能很多朋友在看到这两一种写法时会产生疑...
2013-02-25 15:50:04
163
原创 sonar 安装问题汇总
首先参照 [url]http://www.cnblogs.com/cuiliqiang/archive/2012/10/15/2725146.html[/url] 进行安装。 问题汇总 1. sonar.properties 这个配置的时候,如果选型mysql,直接在mysql那段的模版配置即可。我当初只配置了url,没有配置driver。 2. 数...
2013-02-21 15:15:44
269
原创 Bat命令学习
基础部分:======================================================================一、基础语法: 1.批处理文件是一个“.bat”结尾的文本文件,这个文件的每一行都是一条DOS命令。可以使用任何文本文件编辑工具创建和修改。 2.批处理是一种简单的程序,可以用 if 和 goto 来控制流程,...
2013-02-20 12:11:13
602
原创 定时执行bat
1. 需求说明 要求每天定时执行自动化测试。例如每天晚上9点2. 执行bat文件,想系统添加schedule任务。 首先,删除旧的任务:schtasks /delete /tn %task7% /f 然后添加新的任务: schtasks /create /sc daily /tn %task1% /tr E:\%runbat1%.bat /st 21:00 ...
2013-02-19 16:38:41
405
原创 frame 与 iframe 及其区别
1. html5 不支持frame。2. iframe 可以单独在任意位置。3. 访问iframe内对象的方法和普通一样。 iframe内访问外部时用parent.XXX4. 注意target属性。 是根据iframe的name属性来关联的。5. iframe的src属性是要显示的资源的地址。 可以是图片,也可以是一个请求:/showForm?for...
2013-02-18 15:09:30
247
原创 synonym
建立一个同义词可以排除一个对象名字的限制.如果你的数据库有多个用户,USER_A要访问USER_B的TABLE1,只能使用USER_B.TABLE1建一个同义词abc指向USER_B.TABLE1,那你就可以select * from abc了,而且public的同义词会直接出现在所有用户的面前,开发不就方便多了~Oracle中创建同义词语句:create synonym ta...
2013-02-07 16:58:25
190
原创 oracle schema
A schema is a collection of database objects (used by a user.).Schema objects are the logical structures that directly refer to the database’s data.A user is a name defined in the database that ca...
2013-02-07 16:50:19
137
原创 物化视图的使用分析
1. 在 深入浅出 系列中,作者列举了一个例子来说明。 起因:系统中存在一些需要排序的sql查询,而且某些查询需要扫描多个基表,且这几个基表数据量较大(超百万),而且采用了全表扫描。这样再加上最终的排序就会消耗大量的io等操作。 解决: 建立中间查询的物化视图,并且根据排序字段建立降序索引,且该视图每天更新一次。这样只需从该视图查询排序即可。 又因为排序和索引字段...
2013-02-05 17:27:31
261
原创 tomcat 阅读笔记 3
1. lifesycleListener是通过在container中组合一个support类来实现。所有的实现都交给这个support,包括addListener,fireEvent。2. thread与classloader
2013-02-05 16:32:54
116
原创 java 脚本,编译与注解处理
[color=red]1.java中支持脚本调用[/color]通过脚本引擎来执行。Object ret = engine.eval(javascript);当然,javascript还可以保存在文件中。通过构造reader来执行。engine.eval(reader);[color=red]2. 注解[/color]注解实质上就是一个标记,...
2013-02-05 10:04:16
210
原创 java 安全管理器
1.在java语言实现中,扩展和系统加载器都是java实现的,都是URLClassloader的实例。2.每个线程都有一个对类加载器的引用,称为上下文类加载器。主线程的上下文加载器是系统加载器。 当新线程创建时,他的上下文加载器被设置为创建他的线程的上下文加载器。3.字节码校验--》安全管理器与访问权限...
2013-02-04 11:24:08
151
原创 Oracle编程艺术阅读笔记-2
1. 位图索引。 不适合频繁更新的表。因为更新时会锁定位图索引对应的一系列记录, 这样其他用户就会被阻塞。 他不同于B*索引。因为B*索引和记录是一一对应的。 一条索引只有唯一的记录和他对应。 而一条位图索引,则对应着很多条记录,这点详细可以参照位图索引的结构来分析。 所以更新时B*只会锁定他对应的当前记录,而位图索引则会锁定很多条。2. 函...
2013-01-29 10:40:22
208
原创 Oracle:位图索引与死锁-2
[color=red]位图索引被存储为压缩的索引值,其中包含了一个范围内的ROWID,因此ORACLE必须针对一个给定值锁定所有范围内的ROWID,不支持行级别的锁定。 换一种描述方法:使用位图索引时,一个键指向多行(成百上千),如果更新一个位图索引键,会同时将其他行对应位图索引字段进行锁定![/color] 较之B-Tree索引优点: 位图以一种压缩格式存放,因此占用的磁盘...
2013-01-28 18:24:48
257
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人