- 浏览: 139138 次
- 性别:
- 来自: 北京
最新评论
-
a1219542638:
我试了一下,没成功-。-
window.open以post方式提交 -
bitray:
yuxuguang 写道bambooman 写道难有显著提高, ...
ArrayList扩容问题 -
laogao3232:
应该看到,数组整体多拷贝了一次。所以数组越大,性能提升越明显。 ...
ArrayList扩容问题 -
小橙子:
我觉得理论上是提高了点性能,但是几乎可以忽略吧。扩容几次后,很 ...
ArrayList扩容问题 -
yuxuguang:
bambooman 写道难有显著提高,反而把代码逻辑搞复杂了。 ...
ArrayList扩容问题
文章列表
通过几个实验探索一下mysql for update锁的类型表结构
CREATE TABLE `test_user` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`login_name` varchar(20) NOT NULL DEFAULT '',
`name` varchar(30) NOT NULL DEFAULT '',
PRIMARY KEY (`id`),
UNIQUE KEY `idx_login_name` (`login ...
ArrayList扩容问题
- 博客分类:
- java
最近在看jdk的源码,看到ArrayList的时候发现一个问题,在插入的时候,如果进行扩容,会进行两次数组的copy。
第一次:
public void ensureCapacity(int minCapacity) {
modCount++;
int oldCapacity = elementData.length;
if (minCapacity > oldCapacity) {
Object oldData[] = elementData;
int newCapacity = (oldCapacity * 3)/2 + 1;
...
通过反射获取对象的值
- 博客分类:
- java
今天突然想到原先写过的一个反射类的效率问题,通过测试发现反射获取值的时间为直接获取值时间的9倍左右,于是加一个map缓存一部分结果,效率获得明显的提升取值时间大概为直接取值的三倍左右。
测试代码不贴了
测试结果
循环100000次
反射:890ms左右
加入map:300ms左右
直接调用:100ms左右
下面贴出改进代码
import java.lang.reflect.Field;
import java.util.HashMap;
import java.util.Map;
public class ReflectHelper {
pri ...
java截取中英文混杂字符串
- 博客分类:
- java
java截取中英文混杂字符串,原来找的一直存在字符编码问题,所以在网上找到了这个解决方案,亲测可用。
/**
* 截取一段字符的长度(汉、日、韩文字符长度为2),不区分中英文,如果数字不正好,则少取一个字符位
*
* @param str 原始字符串
* @param srcPos 开始位置
* @param specialCharsLength 截取长度(汉、日、韩文字符长度为2)
* @return
*/
public static String ...
oracal取从表最大值
- 博客分类:
- oracle
现在是遇到这种问题,比如两个表主表base与环节表process现在取主表base的记录和环节号最大的记录关联 base表: id, content process表 id, baseid, dealPerson, ...
个人认为写得比较好,转过来标记一下
表结构和数据如下(表名Test):
NO VALUE NAME1 a 测试11 b 测试21 c 测试31 d 测试42 e 测试54 ...
个人觉得这个函数其实很好用,sys_connect_by_path(字段名, 2个字段之间的连接符号),注意这里的连接符号不要使用逗号,oracle会报错,如果一定要用,可以使用replace替换一下,方法如下 REPLACE(字段名,原字符,',')。还有,这个函数使 ...
第一种方式
最近在做web项目,碰到需要跨页面传递参数的功能,就是那种需要把当前页面的内容带到新开的子窗体中,以前的做法是传一个id过去,然后在新窗口中去读数据库的内容。虽然不怎么麻烦,但是如果内容么有在数据库里保存,仅仅是处以拟稿状态时,就不能实现了,用户还常常认为是个bug。考虑采用get的方式传递,把需要的内容都序列化然后,通过url去传,显得很臃肿,而且get的传递内容长度有限制。于是就想到用post的方式传递,问题在于open方法不能设置请求方式,一般网页的post都是通过form来实现的。如果仅仅模拟form的提交方式,那么open方法里那种可设置窗体属性的参数又不能用。最后 ...
XML实体中不允许出现"&","<",">"等特殊字符,否则XML语法检查时将出错,如果出现这些字符,则将自动转换为"&","<",">",所以在读取XML文件的时候需要对这些特定的字符进行相应的处理;
附:XML的转义字符;
& & < < > > " " ...
众所周知Session cookie被广泛用来做浏览器用户身份校验。在近期的项目测试中就遇到一个相关的问题,发现在两不同的IE8窗口里面并以两个不同用户身份分别登录后,前面登录的用户页面会在第二个用户登录以后刷新成第二个用户信息页面,但是在IE6浏览器下测试是好的,并未发现类似问题。
查了整个项目中session设置的地方,并未发现问题。最后分析是session被浏览器共享了,于是网上查了IE8和IE7的区别,发现相比IE7, IE8的Session管理有很大变化,这是Web开发者需要注意的:
IE7中,同一个窗口(IE 进程)共享一个session。
IE8中,所有打开的IE窗口(I ...
MyEclipse 多项目对应配置多个Tomcat如果多个项目放在一个Tomcat下,在MyEclipse启动Tomcat时,会把其他项目也一起启动,速度会慢。现在设置多个项目,分别对应一个Tomcat。如果你设置多个Tomcat并行运行,那么就更爽了,不过你的电脑配置一定要好才行 ,呵呵最近处于两个项目的结合点,新的项目要做,刚做完的项目也还有很多需要修改的地方。所以经常需要来回切换,哥们儿们都知道来回倒腾几个项目的痛苦。。。今天终于突发奇想,能不能同时弄几个tomcat,这样就不用总是修改配置文件+重启了。 顺便请教一下,这种方法只能添加3个tomcat的server,如何能添加更多?因为m ...
PowerDesigner设计时表显示注释选项
PowerDesigner设计时表显示注释选项: 选定编辑的表,右键- >Properties- >Columns- >Customize Columns and Filter(或直接用快捷键Ctrl+U)- >Comment(前面打勾)- >OK
1.sql关键字1.union子句用法
union子句union操作符将两个查询结果合并为一个结果集。为连接查询合并两个表时:列的数日和顺序在查中必须一致;数据类型兼容语法:select 语句union [ all ] select 语句注意:1 .union运算从最终结果集中删除重复记录,如想不删除重复记录使用all关键字2 .第一个select语句中不能用order by或compute子句,只能是最后一个select语名后用 例:查询计算机系的学生式年龄不大于19岁的学习,按年龄倒排序select * from department where dept = ' ...
连接分为:内连接、外连接、交叉连接 一、内连接——最常用 定义:仅将两个表中满足连接条件的行组合起来作为结果集。 在内连接中,只有在两个表中匹配的行才能在结果集中出现 关键词:INNER JOIN 格式:SELECT 列名表 FROM 表 ...
select sum(DECODE(C810000125,'是',1,0))/COUNT(1) 合格率 FROM t581
统计合格率,如果 C810000125这个字段为“是”结果1,不为是结果为0
还可以这样写:
select sum(case when C810000125 = '是' then 1 else 0 end)/COUNT(1) 合格率 FROM t581
含义解释: decode(条件,值1,返回值1,值2,返回值2,...值n,返回值n,缺省值)
该函数的含义如下:IF 条件=值1 THEN RETURN(翻译值1)ELSIF 条件=值2 T ...