Java
文章平均质量分 70
wodestudy
IT Java Web
展开
-
Java使用Arrays、ArrayList、LinkedList、Vector实现插入查询性能分析
看到过相关的JVM运行时性能问题的优化,包括许多使用局部变量、StringBuffere、少用二维数组、尽量使用System.arraycopy()代替通过来循环复制数组、少用synchronized、适当场合使用单例模式开发……现在就关于在你的java程序中使用列表项目Arrays、ArrayList、LinkedList、Vector的性能及底层数据结构分析:1、Array:简单的数组,可原创 2012-08-14 11:35:36 · 1946 阅读 · 0 评论 -
JVM-1
1、java -Xms -XmxXmx是java的一个选项,用来设置你的应用程序能够使用的最大内存数(看好,致使你的应用程序,不是整个jvm),如果你的程序要花很大内存的话,那就需要修改缺省的设置,比如配置tomcat的时候,如果流量啊程序啊都很大的话就需要加大这个值了,不过有一点是要记住的,不要大得超过你的机器的内存,那样你的机器会受不了的,到时候就死翘翘了。 X原创 2013-12-16 17:25:17 · 726 阅读 · 0 评论 -
Java -Web性能测试必备
1、在Win7上,监控资源利用 创建快捷方式 perfmon.exe /res2、loadRunner11工具3、JDK自带的Jconsole4、JDK自带的jvisualvm.exe,随时监控5、Apache开源的tcpmon.jar的网络包拦截器工具也可以使用的jvisualvm.运行时打开profiler监视CUP(方法调用)或内存原创 2013-12-17 09:53:09 · 964 阅读 · 0 评论 -
java内存泄露(1)
1、关于String的subString内存泄露问题,子串将会占用整个原串,使原串不会被回收,浪费大量存储空间。String xx = "222233333333"; xx =xx.substring(2); String yy =xx.substring(5)+""; xx = null; System.out.println(yy); System.out.print原创 2014-01-18 10:25:18 · 476 阅读 · 0 评论 -
Java-超出打开游标的最大数
java里每次打开一个statement对象jdbc都会在数据库中打开一个游标来执行操作,做完业务后必须马上关闭,否则一旦多次打开且不关闭就会造成ORA-01000: 超出打开游标的最大数错误,如果需要循环建立statement对象最后统一提交,可以在循环里执行完活动马上关闭,关闭后业务处于未提交状态,直到执行connection.commit事件时活动才会提交. oracle数据库中open原创 2014-04-16 23:47:04 · 17354 阅读 · 4 评论 -
64位JVM带来的问题及解决
解决内存占用及JVM GC时间延迟影响应用性能,主要采用的方式,指针压缩选项:参考 http://it.deepinmind.com/jvm/2014/05/05/hotspot-32-bit-to-64-bit-upgrade-what.html原创 2014-05-05 10:00:24 · 751 阅读 · 0 评论 -
Java堆、对象、操作系统占用 (IBM)
参考:http://www.ibm.com/developerworks/cn/java/j-codetoheap/转载 2014-05-05 10:15:01 · 508 阅读 · 0 评论 -
Java实现定时任务的三种方法
Java实现定时任务的三种方法在应用里经常都有用到在后台跑定时任务的需求。举个例子,比如需要在服务后台跑一个定时任务来进行垃圾回收(译者注:个人觉得用定时任务来跑垃圾回收不是很好的例子,从译者接触到的项目来看,比较常见的是用定时任务来进行非实时计算,清除临时数据、文件等)。在本文里,我会给大家介绍3种不同的实现方法:普通thread实现TimerTask实现Schedu转载 2014-04-10 08:58:51 · 517 阅读 · 0 评论 -
Java request.getInpuStream()异常问题
Servlet的Request.getInputStream()只能读取一次问题 - 悠悠小竹子返回脚本百事通 这个星期公司的项目接口进行改造,公司的接口有的采用了WebService的方式,有的使用的是Http协议+Servlet的形式,对于WebService的形式还真没有接触过,闲着没事的时候学习一下,毕竟新接口都采用这种方式,也是一种趋势。在改造Http协议+Servle转载 2014-04-28 15:46:03 · 1458 阅读 · 0 评论 -
Hibernaet更新update效率问题
在实际应用中,使用Hibernatez作为chijiu原创 2014-06-07 00:13:08 · 2462 阅读 · 0 评论 -
java工厂模式 多数据源
今天又同学说到一个应用多数据源切换问题,我大概x原创 2014-07-18 11:15:57 · 1890 阅读 · 1 评论 -
Hibernate 处理查询 in 字句
在处理Hibernate的实体查询,一般可以采用多种方式处理复杂的查询,必然要原创 2014-07-28 00:53:24 · 20191 阅读 · 3 评论 -
final static 常量 编译时就已经确定
晚上因为需求,需要更改一个开源包的源码实现一个不同的功能。原创 2014-08-23 03:43:37 · 1924 阅读 · 1 评论 -
findbugs ant 使用报错 java.text.ParseExceptio n: Unparseable date: "12/20/2011 09:17 PM EST"
最近使用Findbugs集成cruiseCon原创 2014-08-23 01:04:20 · 2043 阅读 · 0 评论 -
Java Web 并发单元测试(2)
使用GroboUtils进行简单并发单元测试,实现测试和监控和单个线程执行的控制,这里展示简单案例的测试过程:1、建立要测试的线程TestRunnable1/** * */package com.dtsz.groboTest;import net.sourceforge.groboutils.junit.v1.TestRunnable;/** * @author xiao原创 2013-12-04 15:47:41 · 2268 阅读 · 0 评论 -
Java编码建议-1
根据GC的工作原理,我们可以通过一些技巧和方式,让GC运行更加有效率,更加符合应用程序的要求。以下就是一些程序设计的几点建议。最基本的建议就是尽早释放无用对象的引用。大多数程序员在使用临时变量的时候,都是让引用变量在退出活动域(scope)后,自动设置为null。我们在使用这种方式时候,必须特别注意一些复杂的对象图,例如数组,队列,树,图等,这些对象之间有相互引用关系较为复杂。对于这类原创 2013-12-02 20:15:33 · 598 阅读 · 0 评论 -
Java对象初始化详解
在Java中,一个对象在可以被使用之前必须要被正确地初始化,这一点是Java规范规定的。本文试图对Java如何执行对象的初始化做一个详细深入地介绍(与对象初始化相同,类在被加载之后也是需要初始化的,本文在最后也会对类的初始化进行介绍,相对于对象初始化来说,类的初始化要相对简单一些)。1.Java对象何时被初始化Java对象在其被创建时初始化,在Java代码中,有两种行为可以引起对象的创建。转载 2013-09-30 13:29:53 · 521 阅读 · 0 评论 -
java Override注释
java多态之Override Override(重写)是子类与父类的一种多态性体现。 Override允许子类改变父类的一些行为。 为什么需要Override:当父类不满足子类的一些要求时我们就需要子类对父类的一些行为进行重写。 例如:某公司里的员工的电话号码不允许对外公开,而销售人员(员工)的电话号码则需要对外公开。 这时我们就可以这样做: Java转载 2012-12-03 10:17:53 · 939 阅读 · 0 评论 -
关于数据库连接组件Proxool配置及使用(一)
近期项目使用了proxool进行数据库连接,大大简化了Dao层的开发工作,将其记录自己的分析过程:一、相关配置: 在项目中导入proxool-0.9.1.jar、proxool-cglib.jar两个包,可以下载到相关组件且内部有相关配置及使用说明,大致有5中配置连接的方法,包括写属性文件,xml文件、还可以直接在连接处编写相关代码连接,下面只对项目中用到的写xml配置文件做简原创 2012-12-02 14:02:09 · 6771 阅读 · 1 评论 -
sql where 1=1和 0=1
sql where 1=1和 0=1 的作用 where 1=1; 这个条件始终为True,在不定数量查询条件情况下,1=1可以很方便的规范语句。一、不用where 1=1 在多条件查询中的困扰 举个例子,如果您做查询页面,并且,可查询的选项有多个,同时,还让用户自行选择并输入查询关键词,那么,按平时的查询语句的动态构造,代码大体如下: string M转载 2012-12-03 11:13:11 · 641 阅读 · 0 评论 -
Java持久化bean原理(一)
关于hibernate中通过配置文件得到一个Session ,通过该对象,我们可以直接调用其save()方法将一个对象持久化到数据库中,这就是ORM1、具体实现我们可以想到,项目中的bean我们通过配置文件已经将其映射到一个表中,字段等规范也已经做好了,如下:<hibernate-mapping><class name="hello.Message" table="MESSAGES">原创 2012-12-10 16:46:20 · 2813 阅读 · 0 评论 -
Java Web控制层发送Json对象数据(二)
Ext数据查询类表显示:案例:学生管理系统,采用Ext中AJax异步获取数据库中数据并且展现在网页前端1、客户端简单实现:createWindow : function(){ var desktop = this.app.getDesktop(); var win = desktop.getWindow('test-win'); i原创 2012-12-12 15:30:08 · 6212 阅读 · 1 评论 -
Java API实现国际化资源文件
问题:关于一些大型项目中会使用不同语言版本的视图,比如在一个Java web开发中,在struts中九提供了改种文件的配置项及在View中通过标签来根据浏览器不同语言形式来展示页面,实现多语言的互操作。这里自己将所遇到的这类问题,查看相关资料,通过JDK自带的相关API实现这种国际化操作。使用到的类主要有:import java.util.Locale; import java.util.原创 2012-12-14 11:44:08 · 2445 阅读 · 0 评论 -
Java UUID生成
GUID是一个128位长的数字,一般用16进制表示。算法的核心思想是结合机器的网卡、当地时间、一个随即数来生成GUID。从理论上讲,如果一台机器每秒产生10000000个GUID,则可以保证(概率意义上)3240年不重复。UUID含义是通用唯一识别码 (Universally Unique Identifier),这 是一个软件建构的标准,也是被开源软件基金会 (Open Software F原创 2012-12-14 13:07:33 · 5788 阅读 · 0 评论 -
关于数据库语句小记(一)
这里将学习过程中关于Mysql数据库操作遇到的新东西记下:1、select name,value,`show`,`orderid`,name as pname,value as pvalue from sys_const where 1=1…… 以上将查询结果打印六列,其中show、orderid字段为整型加单引号否则报错;where 1=1,自己有相关文章记载主要用于多条件查询时。原创 2012-12-12 18:17:06 · 531 阅读 · 0 评论 -
struts、spring国际化资源文件使用简介
前面记录了关于Java API来配置有使用国际化(i18n)的操作,这里将自己了解到的国际化操作在实际应用中的情况记录下来…… (一)、struts中的国际化简介:1、配置struts-config.xml:在 <form-bean name="helloForm" type="org.lxh.struts.form.HelloForm" />原创 2012-12-14 18:23:50 · 825 阅读 · 0 评论 -
mysql数据库编码转换小记
环境: 实际项目应用中,有时会一个项目使用多个数据库,可能数据库设计之初两处设计不周,使得两个数据库字符集不一样,可能一个会使用默认的Latin1西文编码,使得你创建的表,及表中数据在连接层都是以Latin1编码;而另外一处数据库使用UTF-8编码。这样在开发中,我们操作不同数据库表时,将要对sql语句中传入得参数做必要的修改,否则将会操作失误。比如:一般的网站中,我们通过Re原创 2012-12-16 16:37:08 · 830 阅读 · 0 评论 -
JVM使用配置内部原理详解
Java虚拟机(JVM)中的内存设置详解 在一些规模稍大的应用中,Java虚拟机(JVM)的内存设置尤为重要,想在项目中取得好的效率,GC(垃圾回收)的设置是第一步。PermGen space:全称是Permanent Generation space.就是说是永久保存的区域,用于存放Class和Meta信息,Class在被Load的时候被放入该区域Heap space:存放Insta转载 2013-03-06 13:00:46 · 707 阅读 · 0 评论 -
java数据转换--十六进制
在一些应用中需要将数据包中的十六进制数进行转换,或者数据加密后传送,这里只针对十六进制与字符串在java中的简单转换记录: package com.xiaoli.test;public class EncodeT { // 转化字符串为十六进制编码 public static String toHexString(String s) { String原创 2013-03-24 16:33:08 · 1258 阅读 · 0 评论 -
Java 数据库连接大全
Java数据库连接(JDBC)由一组用 Java 编程语言编写的类和接口组成。JDBC 为工具/数据库开发人员提供了一个标准的 API,使他们能够用纯Java API 来编写数据库应用程序。然而各个开发商的接口并不完全相同,所以开发环境的变化会带来一定的配置变化。本文主要集合了不同数据库的连接方式。一、连接各种数据库方式速查表下面罗列了各种数据库使用JDBC连接的方式,可以作为一个手册使用转载 2013-03-24 11:29:47 · 505 阅读 · 0 评论 -
关于Ehcahce缓存技术在集群环境宕机失效问题
系统开发较早,使用的是较为原创 2014-08-17 22:32:57 · 1621 阅读 · 0 评论