Quartz是一个开源的作业调度框架,它完全由Java写成,并设计用于J2SE和J2EE应用中。它提供了巨大的灵活性而不牺牲简单性。你能够用它来为执行一个作业而创建简单的或复杂的调度。它有很多特征,如:数据库支持,集群,插件,EJB作业预构建,JavaMail及其它,支持cron-like表达式等等。
你曾经需要应用执行一个任务吗?这个任务每天或每周星期二晚上11:30,或许仅仅每个月的最后一天执行。一个自动执行而无须干预的任务在执行过程中如果发生一个严重错误,应用能够知到其执行失败并尝试重新执行吗?你和你的团队是用Java编程吗?如果这些问题中任何一个你回答是,那么你应该使用Quartz调度器。
旁注:Matrix目前就大量使用到了Quartz。比如,排名统计功能的实现,在Jmatrix里通过Quartz定义了一个定时调度作业,在每天凌晨一点,作业开始工作,重新统计大家的Karma和排名等。还有,RSS文件的生成,也是通过Quartz定义作业,每隔半个小时生成一次RSS
XML文件。
Quartz让作业调度简单
Quartz是一个完全由Java编写的开源作业调度框架。不要让作业调度这个术语吓着你
Java内部类是Java言语的一个很重要的概念,《Java编程思想》花了很大的篇幅来讲述这个概念。但是我们在实践中很少用到它,虽然我们在很多时候会被动的使用到它,但它仍然像一个幕后英雄一样,不为我们所知,不为我们所用。
本文不试图来讲述Java内部类的今生前世、来龙去脉,这些在网络上都已经汗牛充栋。如果读者想了解这些,可以在网络上搜索来学习。Java内部类总是躲在它的外部类里,像一个幕后英雄一样。但是幕后英雄也有用武之地,在很多时候,恰当的使用Java内部类能起到让人拍案叫绝的作用。本文试图谈一谈让这个幕后英雄也有用武之地的四个场景,希望引起大家对使用Java内部类的兴趣。
以下的文字,要求大家熟悉Java内部类的概念后来阅读。
场景一:当某个类除了它的外部类,不再被其他的类使用时
我们说这个内部类依附于它的外部类而存在,可能的原因有:1、不可能为其他的类使用;2、出于某种原因,不能被其他类引用,可能会引起错误。等等。这个场景是我们使用内部类比较多的一个场景。下面我们以一个大家熟悉的例子来说明。
在我们的企业级Java项
J1.垃圾收集算法的核心思想
Java语言建立了垃圾收集机制,用以跟踪正在使用的对象和发现并回收不再使用(引用)的对象。该机制可以有效防范动态内存分配中可能发生的两个危险:因内存垃圾过多而引发的内存耗尽,以及不恰当的内存释放所造成的内存非法引用。
垃圾收集算法的核心思想是:对虚拟机可用内存空间,即堆空间中的对象进行识别,如果对象正在被引用,那么称其为存活对象,反之,如果对象不再被引用,则为垃圾对象,可以回收其占据的空间,用于再分配。垃圾收集算法的选择和垃圾收集系统参数的合理调节直接影响着系统性能,因此需要开发人员做比较深入的了解。
2.触发主GC(Garbage Collector)的条件
JVM进行次GC的频率很高,但因为这种GC占用时间极短,所以对系统产生的影响不大。更值得关注的是主GC的触发条件,因为它对系统影响很明显。总的来说,有两个条件会触发主GC:
①当应用程序空闲时,即没有应用线程在运行时,GC会被调用。因为GC在优先级最低的线程中进行,所以当应用忙时,GC线程就不会被调用,但以下条件除外。
②Java堆内存不足时,GC会被调用。当应用线
(2011-12-07 17:10)
Java培训,北京java培训,java技术培训,java工程师培训,java技术培训,北京java培训机构
Hibernate配置连接池
1:连接池的必知概念
首先,我们还是老套的讲讲连接池的基本概念,概念理解清楚了,我们也知道后面是怎么回事了。
以前我们程序连接数据库的时候,每一次连接数据库都要一个连接,用完后再释放。如果频繁的
数据库操作,就会导致性能很低。连接池的出现,为开发过程提供了一个很好的管理平台。当程
序中需要建立数据库连接时,只须从内存中取一个来用而不用新建。同样,使用完毕后,只需放
回内存即可。而连接的建立、断开都有连接池自身来管理。同时,我们还可以通过设置连接池的
参数来控制连接池中的连接数、每个连接的最大使用次数等等。通过使用连接池,将大大提高程
序效率,同时,我们可以通过其自身的管理机制来监视数据库连接的数量、使用情况等。
而Hibernate的出现把连接池的使用引入了一个新的利用方式,让你充分享受配置化给开发带来
的便利。
2:Hibernate连接池的配置
在这里笔者简单介绍一下Hibernate配置连接池的方式:
方式1:使用Hiber
【国信蓝点java/3G培训中心】Apache CouchDB 基于 Erlang 的、面向文档的开源数据库。CouchDB
是无模式的,原因是每个文档都独立存在,(除一个标识符和一个修订外)不需要任何特定字段。所有操作 —
从查询数据库到创建或更改数据库中的数据 — 都通过一个基于 REST 的 API 执行。对许多应用程序而言,CouchDB
可能是一个很不错的关系数据库替代品,特别涉及缺少结构的数据的应用程序。本文涵盖了使用 Clojure 执行基本 CouchDB
操作,通过视图查询以及数据库复制。本文也提供了一些代码示例,从两个层面展示如何从 Clojure 访问 REST
API:在高级层面上使用 Clutch API,在低级层面上使用一个更基础的 HTTP 库 — clj-http。
环境设置
本文的示例代码针对 CouchDB 1.0.1、Clojure 1.2.0、Clutch 0.2.4 和 clj-http 0.1.2
编写。Leiningen 构建工具用于下载并设置示例代码的依赖项。这些示例是从 Clojure REPL
编码的角度进行编写的。开始之前,确保 CouchDB
已安装;有一些预打包的二进制文件可用于许多操作系统,您需要的可能已经默认包含在内。要设置您的环境以运行代码,应首先安装
Leiningen。
(2011-12-07 16:44)
(国信蓝点java学院)从某种程度上来看,Struts 2是WebWork的升级,而不是Struts
1的升级,甚至在Apache的Struts 2的官方文档都提到:
WebWork到Struts
2是一次平滑的过渡。实际上,Struts 2.0其实是WebWork 2.3而已,从WebWork 2.2迁移到Struts
2.0不会比从WebWork 2.1到2.2更麻烦。
在很多方面,Struts 2仅仅是改变了WebWork下的名称,因此,如果开发者具有WebWork的开发经验,将可以更加迅速地进入Struts
2的开发领域。
下面是Struts 2与WebWork命名上存在改变。
Struts 2和WebWork成员名称的对应表:

除此之外,Struts 2也删除了WebWork中少量特性:
AroundInterceptor:Struts
2不再支持WebWork中的AroundInterceptor。如果应用程序中需要使用AroundInterceptor,则应该自己手动导入WebWork中的AroundInterceptor
【国信蓝点讯】国信蓝点桂林电子科技大学JAVA培训班毕业学员多数已成功就业。据悉,该JAVA培训班是国信蓝点JAVA/3G培训中心专门针对桂林科技大学信息科技学院的学生而开设的JAVA培训班,为便于学生学习特将学习地点选在桂林电子科技大学信息科技学院院内,吸引了60名学生参加了此次培训,得到了校领导的大力支持。
自历时5个月的培训结束至今,已有42名学生实现理想就业。据统计,毕业学员就业企业大多为全国知名IT名企,并且多数在北京,这也是吸引桂林电子科技大学学生参加培训的原因之一。据国信蓝点JAVA/3G培训中心就业部老师介绍,“此次就业的学员都获得了企业的认可,并且顺利拿到offer,就业薪资也在学生们的预期之内,甚至有的超过了预期薪资,其中沈晓华和周伍润在试用期就已拿到了5000元和7000元的高薪”,是在可喜可贺!
&
(2011-11-18 13:29)

国信蓝点java培训中心面向全国急招50名java讲师
(2011-11-15 16:25)

全国软件专业人才设计与开发大赛交流研讨会现场
2011年11月9日上午,在工业和信息化部人才交流中心的策划下,“全国软件专业人才设计与开发大赛交流研讨会”于北京维也纳酒店顺利召开。工业和信息化部人才交流中心副主任王希征、工业和信息化部人才交流中心人才开发处处长李建伟、国信蓝点信息技术有限公司总经理尹德树、全国软件设计与开发大赛副秘书长李颖出席并主持了本次研讨会。代表合作企业出席本次研讨会的有IBM中国有限公司软件集团应用开发商合作部项目经理王燕青、博彦科技股份有限公司副总裁张靖、文思创新软件技术有限公司人力资源及市场经理周秀、京北方科技股份有限公司项目经理赵志远、北京先进数通信息技术有限公司人事经理王馨蓓、北京方正阿帕比技术有限公司人事经理石阳、方正国际资深招聘顾问/部