有哪位tomcat使用的jdk过jdk1.7

看看Java&1.7有什么更新了什么&(jdk1.7下载)
JVM已经升级到了1.7了,然而1.7和1.6相比有哪些新东西呢?
1.优化了对集合的支持,创建List / Set / Map 时写法更简单了。
List&String& list = ["item"];
String item = list[0];
Set&String& set = {"item"};
Map&String,Integer& map = {"key" : 1};int value = map["key"];
2.对资源的自动回收管理
try (BufferedReader br = new BufferedReader(new FileReader(path)) {
return br.readLine();
相对于以前版本,br不用代码进行回收管理了,也就是省去了
br.close();
3.对泛型实力创建过程中类型应用进行了简化,不用在重复指明泛型类型了
即这样写就行了:Map&String,String& hello = new Map&&();
3.可以在数字中使用下划线了
int billion = 1_000_000_000;
4.对字符串进行switch case
String str="News";
然而,这个功能在C#中早就支持了,java竟然这么迟才更新。假若想在Java1.7以下版本怎样实现switch
case字符串的选择呢。解决这一问题应该方法有很多,其中利用Java1.5的特性枚举不愧为最好的方法。
注意:在把字符串传进Switch case之前,别忘了检查字符串是否为Null。(这个功能在C#中早就支持)
5.你可用作二进制字符前加上 0b 来创建一个二进制类型。
int binary = 0b;
catch(IOException
NullPointerException
..........) {
◆Modularization 模块化& JSR 294 或者 Project Jigsaw
◆JVM 对动态语言的支持
◆更多新的 I/O APIs 即将完成,包括真正的异步I/O 和最终的真实的文件系统 file system API & JSR
◆对XML本地语言支持. (可能的probable)
◆Safe rethrow & 允许catch捕获语句让编译器更加聪明的知道基于什么情况下重新throw什么内容。
◆Null dereference expressions & Null 和 ‘?’ syntax 比较,语法类似 Groovy…
让开发者避免过多的空值验证。
◆更好的类型推断 Better type inference
◆多重捕获Multi-catch
◆JSR 296 & Swing 应用框架 application framework & 这方面需要更简单和简洁。
“小的”sun方面的修改有:
◆升级的类加载class loader 架构;
◆XRender pipeline for Java 2D:是Open JDK ntegrators Challenge
project项目;
◆Swing 更新 & JXLayer, DatePicker, CSS styling 等;
◆JavaFX
sun方面“快速”的修改,主要是性能更新:
◆并发方面的细微调整 concurrencytweaks (JSR 166),更好的支持Multicore
◆G1 垃圾收集器Garbage collector - 带来更小的中断时间,有希望替代 CMS (Concurrent mark
◆64 bit VM的压缩指针Compressed pointer
◆MVM-lite & 多个虚拟机能够独立运行应用和允许用kill -9杀死java应用。
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
阅读(957)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
在LOFTER的更多文章
loftPermalink:'',
id:'fks_',
blogTitle:'jdk1.7 64位 配置说明',
blogAbstract:'jdk1.7 64位下载介绍 \r\nJDK(Java Development Kit)是整个Java的核心,包括了Java运行环境、Java工具和Java基础类库。JDK作为JAVA开发的环境,不管是做JAVA开发还是做安卓开发,都必须在电脑上安装JDK。jdk环境变量配置方法:\r\n在安装完jdk后,还需要对jdk的环境变量进行配置才能正常使用,下面教大家如何配置jdk环境变量:\r\n1.右键选择 计算机→属性→高级系统设置→高级→环境变量\r\n',
blogTag:'',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:0,
publishTime:5,
permalink:'blog/static/',
commentCount:0,
mainCommentCount:0,
recommendCount:0,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'',
hmcon:'1',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}> 博客详情
摘要: jdk1.6与1.7垃圾回收
最近项目中遇到了个关于JVM中GC线程数的问题,做一下简单的总结
server:均为 sun公司的solaris 系统 CPU 128个
项目8.1时使用的 java版本: & jdk1.6_u38 升级到9.1后使用jdk1.7_U21 下面两图分别为1.6和1.7时的prstat输出情况,可明显发现1.7的cpu使用情况增大
做了一个简单的测试(测试机型同上)代码如下,运行时不加任何JVM参数
public class Test {
&& &public static void main(String[] args) { && &&& &List&OOM& oom = new ArrayList&OOM&(); && &&& &int i = 0; && &&& &int j = 0; && &&& &while (true) { && &&& &&& &oom.add(new OOM()); && &&& &&& &i++; && &&& &&& &if (i % 100000 == 0) { && &&& &&& &&& &j++; && &&& &&& &&& &System.out.println("force gc System.gc() " + j + " the i number is " + i); && &&& &&& &&& &System.gc(); && &&& &&& &&& &if (i & 0) { && &&& &&& &&& &&& &try { && &&& &&& &&& &&& &&& &System.out.println("the program is sleeping"); && &&& &&& &&& &&& &&& &Thread.sleep(10000); && &&& &&& &&& &&& &} catch (InterruptedException e) { && &&& &&& &&& &&& &&& &e.printStackTrace(); && &&& &&& &&& &&& &} && &&& &&& &&& &} && &&& &&& &} && &&& &} && &} && & && &static class OOM { && &&& &private S && &} }
下面两图分别为1.6和1.7的测试的结果,可看到在1.7中大量CPU在运行着,而1.6基本都是sleep
翻阅了一下 oracle官网中的 JVM参数介绍 http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html 发现
JDK1.6中对默认的GC 回收方式为:-XX:-UseParallelGC& 年轻代为并行年老代为串行,& 1.6中引入了新的参数设置-XX:-UseParallelOldGC 年轻代为并行,年老代也为并行
而在JDK1.7中默认的GC回收方式则变成了-XX:-UseParallelOldGC
另外通过在1.6的环境中加上-XX:-UseParallelOldGC次参数可以看到与1.7任何参数不加 相同的结果
最终在项目加入了 -XX:ParallelGCThreads=&n&来限定gc执行时的线程数,默认如果不加入的话 等于你服务器中CPU的个数(CPU&=8的时候)或者 cpu*5/8 (CP&=8的时候)
-XX:+UseParallelGC
使用Paralle收集器 + 老年代串行
-XX:+UseParallelOldGC
使用Paralle收集器 + 老年代并行
支付宝支付
微信扫码支付
打赏金额: ¥
已支付成功
打赏金额: ¥JDK免费下载
同时下载腾讯视频
资源大小:85.74 MB
月下载量:2,523次
软件属性:简体中文 免费软件
更新时间:
系统平台:Win7/WinXP/Win98兼容软件
官方网站:
用户推荐:
用户评分:
同类软件推荐:
JDK(Java Development Kit)是Sun Microsystems针对Java开发员的产品。自从Java推出以来,JDK已经成为使用最广泛的Java SDK。JDK 是整个Java的核心,包括了Java运行环境、Java工具和Java基础类库。
JDK(Java Development Kit)是Sun Microsystems针对Java开发员的产品。自从Java推出以来,JDK已经成为使用最广泛的Java SDK。JDK 是整个Java的核心,包括了Java运行环境、Java工具和Java基础类库。JDK是学好Java的第一步。而专门运行在x86平台的 Jrocket在服务端运行效率也要比Sun JDK好很多。从SUN的JDK5.0开始,提供了泛型等非常实用的功能,其版本也不断更新,运行效率得到了非常大的提高。&&&&
下载错误请点击举报
用户评分:
请打个分吧
请发表评论,字数不要少于10个哦~
小提示:您的评论对其他用户具有很重要的参考价值,请勿输入没有营养的点评内容,遇到问题请举报以方便我们及时处理。
1234567891011
12345678910
12345678910他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)

我要回帖

更多关于 tomcat使用的jdk 的文章

 

随机推荐