第一章介绍线程的优点使用多处理器对异步事件的处理用户界面的更加响应性线程的风险1.安全危险2.活跃度危险3.性能危险线程无处不在1.定时器2.JSP3.RMI4.Swing和AWT第二章线程安全编写线程安全的代码,本质上就是管理对状态的访问,而通常都是共享的、可变的状态无论何时,只要有多余一个的线程访问给定的状态变量,而且其中某个线程会写入该变量,此时必须使用同步来协调线程对该变量的访问。在没有正确同步的情况下,如果多个线程访问了同一个变量,你的程序就存在
系统 2019-08-12 09:29:59 2204
废话就不多说了,开始。。。对于文本编辑软件我推荐EditPlus,EditPlus是很多程序员非常熟习的编辑工具,它以占用系统资源小、操作简便灵巧、支撑文件类型丰硕(还能自定义文件类型)等长处而被普遍使用。EditPlus除了拥有编辑程序的功能,还有灵巧的编译功能,上面就简单介绍一下EditPlus对Java编译设置。在配置EditPlus之前是先将Java的运行环境安装且调试好,然后进入EditPlus,从菜单“工具(Tools)”;“配置用户工具...
系统 2019-08-12 09:27:05 2204
首先探讨一下为什么要使用nginx:1、类似于apache+resin,nginx用于提供静态页面服务,比java服务器要强。虽然这些java服务器的性能都不赖,tomcat新版甚至还支持了epoll,但是用nginx来处理静态文件是一定比这些服务器更稳妥并更快速的。2、nginx在配合java应用服务器时相比apache耦合度更低,所以它可以用相同的方式连上所有能支持http服务能力的java应用服务器,无论是tomcat、resin、weblogic、
系统 2019-08-12 01:32:19 2204
点击这里使用RSS订阅本Blog:
面对Java反射机制,会有种令人敬畏而又好奇的感觉,觉得非常强大,深不可测!呵,其实是懒惰的表现,总是找借口和理由不去深入学习这些东西,觉得实际开发中很少会用到,能混就混混吧。真该死。下面就来浅谈下反射,也总结下这几天学习的心得,仅供个人总结,不足之处请大家看在小弟能力有限学习未深的份上多多包涵呵。每个class都其实都对应一个Class对象,该对象就包含在我们编写完一个类编译之后在相应的路径下产生一个.class文件中,该Class对象就用于表示这个类的
系统 2019-08-29 23:37:43 2203
欢迎点击此处订阅本Blog
系统 2019-08-29 22:40:44 2203
Java代码#!/bin/bash#wuzhong@taobao.com#打包工程用usage(){echo'build.sh-s(svnup)-x(antx.properties)-m(mvncleanpackage)-a(doall)kjava/wtm]'exit1}#usageNEED_MVN=1whilegetopts"sxma:"options;docase$optionsins)echo"svnup"HAS_OPT=1NEED_SVN=1;;x
系统 2019-08-29 22:02:15 2203
java中函数使用变长参数2010-01-0121:09当参数个数不确定时,开发者很想使用变长参数,让调用者以更灵活的方式调用。此种方法和方法重载有同样的效果,但是个人感觉比方法重载用着简洁。一直知道Java支持变长参数函数,然而项目中一直没有用到,前几天在项目中看到前辈大量使用变长参数,感觉有很好的效果。特别是API设计中能够解决很多不确定因素。下面是一个简单的变长参数示例变长参数使用的形式是Type...argsName,即类型+省略号+参数名Java
系统 2019-08-12 09:29:32 2203
今天在ubuntu12.04LTS上安装Matlab时总是出错,显示拷贝jar包(cp“xx.jar”)出现错误,在网上搜索了一下发现原来是没有安装java。自己打算安装oracle官方的java版本,所以就进行了一下安装:(也可以使用软件源中的openjava)1.删除openjava安装包:sudoapt-getpurgeopenjdk*2.安装oraclejava7,打开终端运行下面的命令(这里是有错误的):sudoadd-apt-repositor
系统 2019-08-12 01:52:19 2203
美国时间3月17日,在Oracle收购SunMicrosystems之后,Java之父JamesGosling首度在公开场合露面,他一如既往保持着对Java的高度关注,并表示Java在Oracle的掌管下令人放心,随后他还透露了Java的发展方向。Gosling是在TheServerSideJavaSymposium上发表这份公开说明的,当时他的报告主题是JavaTodayandTomorrow。他表示目睹了Oracle掌舵Java的方向之后,他深受鼓舞,
系统 2019-08-12 01:32:44 2203
前言Docker旨在提供一种应用程序的自动化部署解决方案,在Linux系统上迅速创建一个容器(轻量级虚拟机)并部署和运行应用程序,并通过配置文件可以轻松实现应用程序的自动化安装、部署和升级,非常方便。因为使用了容器,所以可以很方便的把生产环境和开发环境分开,互不影响,这是docker最普遍的一个玩法。更多的玩法还有大规模web应用、数据库部署、持续部署、集群、测试环境、面向服务的云计算、虚拟桌面VDI等等。主观的印象:Docker使用Go语言编写,用cgr
系统 2019-08-12 01:32:40 2203
《JavaWeb整合开发与项目实战》这本书很适合入门的朋友学习,并且它被几所软件学院选用。近期我会将PPT制作完成,并提下载。欢迎大家跟贴留下mail,近期会逐一奉送.如果需要此书,请加QQ20112789,标注JSP书,可享受75折优惠。《JavaWeb整合开发与项目实战》PPT近期提供派送
系统 2019-08-29 22:44:29 2202
最近需要进行网络传输大文件,于是对基于socket的文件传输作了一个初步的了解。在一位网友提供的程序基础上,俺进行了一些加工,采用了缓冲输入/输出流来包装输出流,再采用数据输入/输出输出流进行包装,加快传输的速度。废话少说,先来看服务器端的程序。1.服务器端packagesterning;importjava.io.BufferedInputStream;importjava.io.DataInputStream;importjava.io.DataOut
系统 2019-08-12 09:29:40 2202
转自http://fuliang.iteye.com/blog/175035Matcher类:使用Matcher类,最重要的一个概念必须清楚:组(Group),在正则表达式中()定义了一个组,由于一个正则表达式可以包含很多的组,所以下面先说说怎么划分组的,以及这些组和组的下标怎么对应的.下面我们看看一个小例子,来说明这个问题引用\w(\d\d)(\w+)这个正则表达式有三个组:整个\w(\d\d)(\w+)是第0组group(0)(\d\d)是第1组gro
系统 2019-08-12 09:29:31 2202
转自:http://blog.csdn.net/gaulhor/archive/2007/03/20/1535280.aspx相信大家常常会看到很多统计数字,来自各家厂商、各种传播媒体、各个政治团体,但是数字虽然会说话,却常常各说各话。前阵子出现一篇比较微软.NET和JavaJ2EE架构执行效率的报告,常常被微软阵营拿来当成打击J2EE的证据。例如以下这段话﹕"而据微软宣称,VisualStudio.Net能支持25种语言,和Java相比具有节省2/3程序
系统 2019-08-29 23:22:48 2201