
JAVA
提前十分钟
一直努力着,确一直有些许迷茫
展开
-
java 可设置最大内存
测试方法:在命令行下用 java -XmxXXXXM -version 命令来进行测试,然后逐渐的增大XXXX的值,如果执行正常就表示指定的内存大小可用,否则会打印错误信息。堆(Heap)和非堆(Non-heap)内存按照官方的说法:“Java 虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配。堆是在 Java 虚拟机启动时创建的。”“在JVM中堆之外的内存称为转载 2015-01-07 19:29:42 · 1787 阅读 · 0 评论 -
jboss as7 访问ejb通用类
package com.synnex.ejb.util;import java.util.Properties;import javax.naming.Context;import javax.naming.InitialContext;import javax.naming.NamingException;public class EjbUtil { private stati转载 2015-09-15 16:15:28 · 525 阅读 · 0 评论 -
java 生成PDF文件增加密码
package com.me.test;import java.awt.*;import java.io.*;import com.lowagie.text.*;import com.lowagie.text.Font;import com.lowagie.text.Image;import com.lowagie.text.Rectangle;import com.lowagi转载 2015-09-16 08:30:04 · 3354 阅读 · 0 评论 -
读取web.xml文件中数据的三种方法
一,采用web.xml中的init-param标签web。xml中的配置如下: string hello 取的方法为:String s = request.getParameter("string");________________________________________________________________二,采用上下文参数转载 2015-10-19 16:02:37 · 2530 阅读 · 0 评论 -
HTTP使用BASIC认证的原理及实现方法
一. BASIC认证概述在HTTP协议进行通信的过程中,HTTP协议定义了基本认证过程以允许HTTP服务器对WEB浏览器进行用户身份证的方法,当一个客户端向HTTP服务器进行数据请求时,如果客户端未被认证,则HTTP服务器将通过基本认证过程对客户端的用户名及密码进行验证,以决定用户是否合法。客户端在接收到HTTP服务器的身份认证要求后,会提示用户输入用户名及密码,然后将用户名及密码以B转载 2015-10-09 14:46:50 · 3786 阅读 · 0 评论 -
HTTPURLConnection中接收数据流
ByteArrayOutputStream buffer = new ByteArrayOutputStream();int c;while((c = output.read()) >= 0){ buffer.write(c);}buffer.close();byte[] bytes = buffer.toByteArray();//当然有时候也要处理GZIP解压问题,代码如转载 2015-11-16 15:53:45 · 1746 阅读 · 0 评论 -
获取jvm启动时间
import java.lang.management.ManagementFactoryimport java.lang.management.RuntimeMXBean RuntimeMXBean bean = ManagementFactory.getRuntimeMXBean(); // Get start time long startTime = bean.g转载 2016-01-29 08:24:25 · 2572 阅读 · 0 评论 -
java随机数生成(固定位数)
随机生成 a 到 b (不包含b)的整数:(int)(Math.random()*(b-a))+a; 随机生成 a 到 b (包含b)的整数:(int)(Math.random()*(b-a+1))+a;转载 2016-02-16 15:48:40 · 3423 阅读 · 0 评论 -
Java多线程下载实现
package com.test;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;import java.io.RandomAccessFile;import java.net.HttpURLConnection;import java.net.Mal转载 2016-03-06 16:15:56 · 372 阅读 · 0 评论 -
Java多线程下载的实现方法
package cn.me.test;import java.io.InputStream;import java.io.RandomAccessFile;import java.net.HttpURLConnection;import java.net.URL;/** * 多线程下载 * 1:使用RandomAccessFile在任意的位置写入数据。 * 2:需要计算第一个线程下转载 2016-03-06 16:17:19 · 387 阅读 · 0 评论 -
java多线程网页下载代码
1.使用了java.util.concurrent包里的线程池,可以飙升到满带宽,在100M带宽上,可以达到10MB/s。2.使用了java.nio里的channels,性能比自己缓冲有一些提高。import java.io.FileOutputStream; 2 import java.io.FileOutputStream; 2 import java.io.InputSt转载 2016-03-06 16:27:15 · 487 阅读 · 0 评论 -
修改JAVA_HOME无效,java版本保持不变的问题解决
问题现象:在现公司,遇到一个问题,就是配置JAVA_HOME无效,不管怎么改,运行java -version始终是最初的那个java版本。直接在PATH环境变量里追加写死的java路径也没用。解决过程:曾经在一个人机器上发现此问题,然后又在两个机器上发现同样的问题,于是我迷茫了。 接着冷静下来想想,在以前的地方从未遇到过这种情况,在现公司三个机器都遇转载 2016-03-07 12:17:09 · 597 阅读 · 0 评论 -
java动态加载jar包,并运行其中的类和方法
动态加载jar包,在实际开发中经常会需要用到,尤其涉及平台和业务的关系的时候,业务逻辑部分可以独立出去交给业务方管理,业务方只需要提供jar包,就能在平台上运行。下面通过一个实例来直观演示:第一:定义一个抽象类 AbstractAction (稍后换成接口的实例)package com.java.loader;public abstract class AbstractA转载 2016-03-21 08:26:35 · 603 阅读 · 0 评论 -
java计算两个时间相差(天、小时、分钟、秒)
public static long dateDiff(String startTime, String endTime, String format, String str) { // 按照传入的格式生成一个simpledateformate对象 SimpleDateFormat sd = new SimpleDateFormat(format); long nd = 10转载 2015-09-14 08:38:17 · 10078 阅读 · 0 评论 -
JAVA取整以及四舍五入
import java.math.BigDecimal; //引入这个包public class Test { public static void main(String[] args) { double i = 3.856; // 舍掉小数取整 System.out.println("舍掉小数取整:Math.floor(3.856)=" + (int) Math.floo转载 2015-09-25 12:07:32 · 1048 阅读 · 0 评论 -
JVM调优
从JRE1.3开始, GC都采用了分代复制算法,这个算法根据对象的生存期将对象分成两代,新创建的对象在年轻代(Young Generation),当年轻代的内存分完的时候,GC将年轻代中少数尚未死亡的对象复制到另一块年老代(Tenured Generation),然后直接更新年轻代的指针,这个动作称为次要收集(minor collection),一次次要收集的时间取决于年轻代中存活的对象的数目,当转载 2015-01-08 10:45:52 · 403 阅读 · 0 评论 -
关于JAVA中内存溢出的解决办法
关于JAVA中内存溢出的解决办法J2ee应用系统是运行在J2EE应用服务器上的,而j2ee应用服务器又是运行在JVM上的,生成环境中JVM参数的优化和设置对于J2EE应用系统性能有着决定性的作用。要优化系统,则需要对JVM参数进行合理的设置,所以我们需要了解究竟在什么地方进行设置、有哪些参数以及各参数的意义分别是什么,并且我们还得了解JVM的内存管理机制究竟是个什么玩意儿?其实我们在网上搜转载 2015-01-09 09:58:33 · 444 阅读 · 0 评论 -
JVM调优总结 -Xms -Xmx -Xmn -Xss
堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。典型设置:java -Xmx3550m -Xms355转载 2015-01-08 10:26:49 · 414 阅读 · 0 评论 -
java.lang.OutOfMemoryError异常解决方法
java.lang.OutOfMemoryError异常解决方法 原因:常见的有以下几种:1.内存中加载的数据量过于庞大,如一次从数据库取出过多数据;2.集合类中有对对象的引用,使用完后未清空,使得JVM不能回收;3.代码中存在死循环或循环产生过多重复的对象实体;4.使用的第三方软件中的BUG;5.启动参数内存值设定的过小;常见错误提示:1.tomcat转载 2015-01-09 16:40:46 · 463 阅读 · 0 评论 -
解决 - java.lang.OutOfMemoryError: unable to create new native thread
工作中碰到过这个问题好几次了,觉得有必要总结一下,所以有了这篇文章,这篇文章分为三个部分:认识问题、分析问题、解决问题。 一、认识问题:首先我们通过下面这个测试程序来认识这个问题:运行的环境(有必要说明一下,不同环境会有不同的结果):32位 Windows XP,Sun JDK 1.6.0_18, eclipse 3.4,测试程序:import java.util.conc转载 2015-01-12 07:48:05 · 761 阅读 · 0 评论 -
Java发HTTP POST请求(内容为xml格式)
今天在给平台用户提供http简单接口的时候,顺便写了个调用的Java类供他参考。服务器地址:http://5.0.217.50:17001/VideoSend服务器提供的是xml格式的http接口,接口定义如下: %s service %s %s %s转载 2015-02-01 16:48:16 · 630 阅读 · 0 评论 -
jndi调用时,各种应用服务器InitialContext的写法
调用ejb时,如果客户端和ejb不在同一个jvm,就要设置InitialContext,不同的应用服务器InitialContext写法也不同.Context.INITIAL_CONTEXT_FACTORY:指定到目录服务的连接工厂Context.PROVIDER_URL:目录服务提供者URL//jboss:Context.INITIAL_CONTEXT_FACTORY, "org转载 2015-02-03 19:11:21 · 594 阅读 · 0 评论 -
Java 单例模式详解
概念: java中单例模式是一种常见的设计模式,单例模式分三种:懒汉式单例、饿汉式单例、登记式单例三种。 单例模式有一下特点: 1、单例类只能有一个实例。 2、单例类必须自己自己创建自己的唯一实例。 3、单例类必须给所有其他对象提供这一实例。 单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。在计算机系统中,线程池、缓存、日志对象、对话框、转载 2015-02-05 09:53:12 · 365 阅读 · 0 评论 -
获得java虚拟机的启动时间和运行时长
package cn.outofmemory.snippets.core;import java.lang.management.ManagementFactory;import java.lang.management.RuntimeMXBean;import java.util.Date;public class JVMStartTime { public static v转载 2015-01-19 16:12:16 · 1567 阅读 · 0 评论 -
commons-configuration-1.5.jar简单介绍
Commons Configuration是一个java应用程序的配置管理类库。可以从properties或者xml文件中加载软件的配置信息,用来构建支撑软件运行的基础环境。在一些配置文件较多较的复杂的情况下,使用该配置工具比较可以简化配置文件的解析和管理。也提高了开发效率和软件的可维护性。下面是一个加载 properties 配置文件的代码:CompositeConfigurat转载 2015-02-08 21:18:02 · 1451 阅读 · 0 评论 -
Java中的(PO,VO,TO,BO,DAO,POJO)缩写解释
摘要: PO是持久化对象。BO=business object—业务对象。PO可以严格对应数据库表,一张表对映一个PO。BO则是业...PO(persistant object) 持久对象 在o/r映射的时候出现的概念,如果没有o/r映射,没有这个概念存在了。通常对应数据模型(数据库),本身还有部分业务逻辑的处理。可以看成是与数据库中的表相映射的java对象。最简单的PO就是对应数转载 2015-01-21 13:35:38 · 1905 阅读 · 0 评论 -
java小技巧
数组转换为数组列表List list = Arrays.asList(arr);Arrays.asList()将返回一个数组内部是私有静态类的ArrayList,这不是java.util.ArrayList类,java.util.Arrays.ArrayList类有set()、 get()、 contains()方法,但是没有任何加元素的方法,因此它的大小是固定的。你应该这么做来创建一个真转载 2015-02-14 20:34:24 · 426 阅读 · 0 评论 -
Java 动态加载
第一部分:Java虚拟机启动时,关于类加载方面的一些动作当使用java ProgramName.class运行程序时,Java找到JRE,接着找到jvm.dll,把该动态库载入内存,这就是JVM。然后加载其它动态库, 并激活JVM。JVM激活之后会进行一些初始化工作,之后生成BootstrapLoader,该Class Loader是由C++写的。BootstrapLoader加载Laun转载 2016-03-21 08:47:51 · 567 阅读 · 0 评论