- 浏览: 23095 次
- 性别:
- 来自: xm
最新评论
-
hgg923:
学习了,试试先
FileInputStream不支持从网络路径获取数据
文章列表
FileInputStream不支持从网络路径获取数据,否则有出问题:如
FileInputStream input = new FileInputStream("http://www.test.com/upload/test.xlsx")
抛出异常http:\www.test.com\upload\test.xlsx---因为是window系统
所以可以使用
URL url = new URL("http://www.test.com/upload/test.xlsx");
FileInputStream input = new Buffe ...
考虑引入gson,测试整理了工具类:
public class JsonUtils {
public static String toJson(Object arg) {
Gson gson = new Gson();
return gson.toJson(arg);
}
public static <T> T getObjectFromJson(String json, Class<T> classOfT) {
Gson gson = new Gson();
return gson.fromJson(json, class ...
平时开发,运行测试类,都直接使用开发平台:Run as->.....,此次有个自动服务,为了便于测试,测试人员要求能包装成可独立运行单个应用,自己就马上添加main函数包装,并在eclipse中Run as->Java Application顺利通过,因为要发布到测试环境,所以需要提供可运行的java命令串,折腾了大半天,终于写出正确命令串,感觉代码越写人越傻人, ,main函数:
public static void main(String[] args) {
String configPath = "classpath:applicationContext-x ...
转发自:http://www.cnblogs.com/pengkw/p/3674730.html
首先从wget https://github.com/alibaba/dubbo/archive/master.zip下载最新源码,目前最新版本为2.5.4-SNAPSHOT
解压文件
cd dubbo
mvn clean install -Dmaven.test.skip
报错:Non-resolvable parent POM: Could not transfer artifact com.alibaba:opensesame:pom:2.0 from/to opensesame ...
项目使用json-lib-2.4-jdk15.jar进行json<->pojo之间转换,今天发现一个悲剧问题:
String jsonString = "[{\"amount\":670526.32},{\"amount\":29473.68}]";
JSONObject jsonObject = JSONObject.fromObject(jsonString);
结果发现第一个数值转换后为670526.3,精度出现问题,网上搜索一番,没找到原因,蛮试试降低版本json-lib-2.3-jdk15.jar,竟然正确, ...
应用服务器,对于每个请求,会开设一个线程用于处理请求,为了提高响应速度,服务器端一般都会配置启用线程池,而线程池中的线程,是会存在复用的可能,这样对于使用ThreadLocal来让线程共享数据时,如果一个线程处理结束后,没有从ThreadLocal剔除数据时,可能存在数据被他用的可能,更严重导致内存泄露(见:http://my.oschina.net/ainilife/blog/261297)。截止目前,系统出现过2次因该原因,导致数据被他用:
1、利用threadlocal来存放当前操作人员信息,便于记录日志时,无需传参就可以拿到当前操作人员信息,结果发现日志记录的人员信息与真实不一致
...
前天下午,服务器突然没响应,日志出现内存溢出异常,最后确认CPU占用过高导致出现问题,使用jvisualvm来监控jvm,也无法连接上服务器,业务高峰期情况下,只能先启用备用服务器,以便检查,结果备用服务器没撑过10分钟,也出现同样现象,实际在线用户不多,按理并发量也不大,而且以前这个量也承受过来,在没办法情况下,只能再次启用多台备用服务器,然后一个人监控,负责kill,restart。留一台给我们做分析(在测试环境压测,无法重现改现象),jvisualvm监视视图,gc占用CPU并不高(感觉这个不准确),但整个堆内存将近封顶,之后只能尝试逐渐加上打印gc日志(-XX:+HeapDumpOn ...
远程tomcat进行调试
- 博客分类:
- Eclipse
tomcat服务器支持远程进行调试debug,步骤:
1、对tomcat服务器,开通远程调试端口
给JVM加上如下的启动参数:
-Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n
其中8787为端口,连接方式有两种,为dt_shmem和dt_socket,分别表示本机调试和远程调试。
然后正常启动tomcat
2、eclipse配置远程调试
“Run”->“Debug Configurations”->“Remote Java Application”,新建一个应用, ...
/*
* 1.线程分用户线程和守护线程,对于jvm来说,只要存在一个用户线程,就不会结束;如果不存在任何用户线程,不管有多少守护线程,jvm都会结束退出
* 2.设置为守护线程,通过setDaemon(true)来设置,如不设置,默认为false,设置方法必须在线程启动前调用,否则抛出异常;jvm垃圾回收线程,就是典型的守护线程应用
* */
public class Test {
public static void main(String[] aregs) {
Thread m = new MoreThread();
m.setDaemon(true); / ...