java

java

Google Collections 1.0 发布-下载

Google Collections 1.0今天发布下载了,使用过Google Collections的朋友可以直接从Google Collections官方站点上下载最新版本的Google Collections 1.0使用。Google Collections 1.0是一套google推出的Java集合类,这套类库是对现有Java集合类的一个扩展。Google Collections 1.0最终版本与11月30日发布,也就是说现在发布的最终版本的api已经确定,不会再更改,可以放心使用。 Google Collections 1.0主要包含如下特性: Google Collections 1.0引入了新的集合类型:Multimap, Multiset, BiMap和一些其它的类型 Google […]

java

cron4j 2.2 发布-下载

  cron4j官方今天放出了cron4j 2.2下载地址,使用cron4j作为调度框架的朋友可以下载最新版的cron4j 2.2使用了。cron4j是一个Java平台的调度框架,笔者比较熟悉的与之类似的调度框架还有Quartz。著名的Spring内置的调度框架就是Quartz。cron4j也是如此,作为调度框架来说,cron4j的功能与Linux和Unix中的cron守护进程十分类似。通过使用cron4j,可以在Java应用程序中在指定的时间完整特定的功能。   从Java 2版本开始,Java便内置了了调度类的实现java.util.Timer类,那cron4j与Java内置的调度功能的区别在哪里呢?简单的说cron4j在Java内置的调度框架基础上做了一些增强。(包括方便使用,和功能的增强)。比如:java.util.Timer可以实现从现在开始5分钟后执行某个任务,或者从现在开始5分钟执行某个任务,并且每隔10分钟重复执行一次。使用java.util.Timer只能做到如此。通过使用cron4j可以让我们需要执行的调度任务更加灵活。比如我们可以让我们的Java应用程序在每个周一的12:00准时执行一个任务,或者每5分钟执行一个任务,但在周末的时候不必执行。我们也可以使用cron4j让我们的任务在在8:00~20:00之间每个一个小时执行一个任务,而在20:00~8:00这段时间内,每5分钟执行另一个任务,cron4j可以做到的类似的功能还有很多,灵活性上较Timer类灵活很多。而且使用cron4j的时候,上述功能之需要一行代码就可以完成。   cron4j使用起来也十分简单,基本会使用Linux/Unix crontab的朋友可以直接拿来就用了。因为cron4j使用与Linux/Unix crontab相同的表达式定义规则,用户只需要制定这个调度任务的定义再指定调用的方法即可。如果您不熟悉Linux/Unix crontab,那也不要紧,因为这个功能很容易学习,在cron4j文档中做了详细的介绍。 cron4j运行需要Java 2以上的平台(JDK 1.2以上的版本),同时cron4j以LGPL许可发布。 cron4j 2.2下载地址: cron4j 2.2下载 cron4j官方网址: cron4j [ad#468-60]

java

Xmappr 发布-下载

Xmappr发布下载了,Xmappr是一个使用纯Java编写的处理XML的类库,Xmappr设计的目的是让开发者可以更轻松的通过Java程序操作XML。现在Java操作XML的类库十分多,最著名的莫过于JDOM和DOM4j了,这些都是元老级的XML操作框架了。那么Xmappr有什么优势呢?Xmappr不会是重复发明轮子?带着这些疑问,笔者访问了Xmappr网站。按照官方的说法,Xmappr是一个轻量级的Java XML框架,Xmappr采用将XML映射为Java类的方式处理XML文件,Xmappr会在映射的Java类上通过Java注释信息标识Java类与XML的映射关系,Xmappr可以标注XML命名空间,可以缓存没有被映射的元素,Xmappr还支持保存XML元素排序的功能,同时Xmappr很容易扩展,用户可以通过自定义转换器(converters)的方式来扩展Xmappr,以增加需要的类型转换处理,最后Xmappr是线程安全的,这意味着Xmappr适用于各种苛刻的运行环境。当然Xmappr的体积可以说是Xmappr最大的特色了,Xmappr只有80kb的体积,并且不包含任何依赖关系,能做这这一点,Xmappr的作者的确是花了不少功夫的。最后Xmappr是以BSD许可方式发布。有兴趣的朋友可以下载Xmappr来尝试一下。 Xmappr主要包含如下特性: Xmappr配置简单:Xmappr完全通过Java注释来配置Java与XML的映射关系,使用十分方便简洁。 Xmappr支持局部映射:Xmappr允许用户只映射XML文档的一部分,没有被映射的部分会在输出的时候被保存。(这个功能是笔者第一次见到有Java XML框架可以做到的) Xmappr支持保存XML元素排序:Xmappr可以再输出XML内容的时候保存已有的排序功能 Xmappr完全支持XML命名空间 Xmappr支持XML元素和文本混合映射,Xmappr可以映射XHTML格式的文件 Xmappr支持自定义类型:Xmappr可以通过自定义转换器(Converters)来映射用户自己定义的类型 Xmappr提交小巧:Xmappr仅仅有80kb的体积,并且没有任何依赖关系(笔者感觉Java的依赖体系越来越庞大) Xmappr是线程安装的:Xmappr被设计成为可以再多线程环境下工作,因此可以适应各种企业生产环境 Xmappr采用BSD许可的方式发布 Xmappr下载地址: Xmappr下载 Xmappr官方网址: Xmappr网址 Xmappr例子: Xmappr映射的xml文件: some

java

DBsight 3.0.0 beta 发布-下载

DBsight 3.0.0 beta发布下载了,但DBsight 2.2.6是目前官方最稳定的下载版本,由于最近Lucene 3.0已经正是发布下载了,DBsight当然会没有动静,其实作者已经在第一时间发布了DBsight 3.0.0的下载地址了。DBsight 3.0系列版本是针对Lucene 3.0而设计的,按照官方给出的信息,目前的DBsight 3.0.0 beta下载版应该是以保持现有的DBsight 2系列的功能为基础,将Lucene升级至3.0的一个解决方案。不会有太多的功能方面的新增。目前开发团队的主要精力还是集中在DBsight 2系列的开发上。 DBsight是一套给予Java的全文检索解决方案,DBsight2.2.6以及以前的版本都Java web应用的方式发布,因此可以直接通过web方式访问应用。DBsight的核心使用Java开源界最为流行的Lucene框架编写,同时配合流行的 Java模板技术freemarker,velocity用于前台展现和维护用户自定义的检索展示风格。笔者在使用过程中,还发现DBsight作者还使用了JRuby,不过具体脚本是做什么的并没有深入研究。说DBsight是一套JavaEE的全文检索解决方案一点也不为过,DBsight涵盖了从定义数据库查询,到根据查询生成索引文件,在到最后根据索引文件定制检索查询都提供了简介高效的解决方案。 DBsight 3.0.0 beta下载地址: DBsight 3.0.0

java

DBsight 2.2.6 发布-下载

  DBsight 2.2.6发布下载了,这是DBsight目前最稳定的发布版本,使用DBsight的朋友可以第一时间下载DBsight2.2.6替换旧的版本呦。DBsight是一套给予Java的全文检索解决方案,DBsight2.2.6以及以前的版本都Java web应用的方式发布,因此可以直接通过web方式访问应用。DBsight的核心使用Java开源界最为流行的Lucene框架编写,同时配合流行的Java模板技术freemarker,velocity用于前台展现和维护用户自定义的检索展示风格。笔者在使用过程中,还发现DBsight作者还使用了JRuby,不过具体脚本是做什么的并没有深入研究。说DBsight2.2.6是一套JavaEE的全文检索解决方案一点也不为过,DBsight涵盖了从定义数据库查询,到根据查询生成索引文件,在到最后根据索引文件定制检索查询都提供了简介高效的解决方案。   DBsight的核心是以Java为基础的Lucene,因此首就拥有了夸平台的先天优势,其次Java对各种数据库的透明支持JDBC让DBsight在对数据库的支持方面拥有了得天独厚的优势。用户只需要安装好DBsight,就可以通过添加各种JDBC驱动程序直接链接数据库。通过查询构造自己需要的结果。在通过DBsight构造完自己需要的结果的同时,DBsight可以直接通过用户自定义的查询结果生成Lucene索引。如果是手工使用Lucene编写代码进行索引的生成,这个工作量只要是用过Lucene的朋友应该都有体会吧。而DBsight2.2.6提供了图形化操作界面让无论是用户开始Java开发人员可以很直观的通过显示的SQL语句定义自己需要检索的对象,这给开发人员带来了极大的便利。   DBsight在检索索引数据的数据方面给开发者留下了足够的扩展空间,DBsight2.2.6可以轻易的根据SQL生成针对某些字段的索引文件,查询索引之后返回的结果回事什么样子呢?DBsight作者早就想好了这些,查询的数据可以以多种方式返回如:JSON,XML,JSONP,HTML的格式进行返回,这极大的方便了用户急于DBsight 2.2.6对现的应用的支持。   DBsight在数查询结果展示方面也下足了功夫,DBsight作者在DBsight 2.2.6中提供了很多内置的展示风格模板,比如Google搜索引擎风格,服务器列表排序风格,客户端列表排序风格等。最重要的是,这些展示风格都采用velocity进行编写,用户可以直接在DBsight后台选择这些模板,并根据自己需求修改和定制这些模板。因为DBsight使用了Java模板引擎,所以很多功能如翻页,信息提示都使用了类似组件的显示模式。可以自由的放置在各个位置,当然如果用户熟悉这些组件的功能,也可以直接根据现有的组件定制一套完全属于自己风格的模板,因为DBsight从DBsight 2.5系列开始支持自定义模板。笔者就根据已有的模板自己定制了一个,感觉效果还不错的说。   DBsight还提供了两种系统整合功能。按照作者的说法,DBsight实现了从索引构造,生成,和展现的全部内容,那么当于其它系统整合的时候,最好的办法就是给定一个url,然后绑定上检索到内容的唯一标识然后跳转到另一个系统。没错,DBsight确实是如此实现的(至少目前笔者用到的功能就是这么实现的),这是第一中与现有系统整合的功能。在笔者的应用中,显示和检索部分完全由DBsight完成,只有在查询到的结果点击查看明细的时候,才跳回到原有的应用中。DBsight提供的第二种整合功能是直接发请求给DBsight,这样,DBsight可以返回给客户定义好的数据格式,方便用户处理。DBsight提供的两种整合方案都比较实用,尤其是当检索平台处于一台独立的服务器上的时候,负载均衡的分摊到多个机器上的优势就明显的体现出来了。   DBsight分为两种版本,一种是社区的免费版本,另一种是收费版本。收费版本也随着索引容量的不同而价格不同。收费版本和免费版在功能之间有一些差异。最主要的三点是: 索引定时器(可以定制索引的轮询生成等,这个功能是笔者认为最实用的一个功能,可惜只有收费版本才有 🙁 ) 高级SQL支持(支持通过SQL生成增量索引,支持在索引文档被删除的时候根据给定的SQL删除数据库中的记录) 远程索引替换(DBsight支持分布式索引,和索引的同步功能,适用于大型应用,典型的DBsight企业功能)    DBsight还有很多吸引人的特性,笔者在这里就不一一列举了,有兴趣的朋友可以下载尝试一下。DBsight可以通过dbsight.war包的方式,直接运行在现有的应用Servlet容器中,也可以下载DBsight的独立运行版本,DBsight独立运行版本是内置了一个jetty的,因此熟悉jetty的朋友的朋友看起来应该很亲切的说。还有一种是window安装版本,是一个.exe 文件。上述三个版本的DBsight 2.2.6都需要最低Java

java

BoneCP 0.6.0 发布-下载

BoneCP 0.6.0发布下载了,官方主页依然如此简洁,BoneCP 0.6.0下载链接依然清晰。笔者很喜欢BoneCP主页的风格,简单清爽。(Eclipse官方网站变更的好快,笔者去了很头晕的说)。虽然BoneCP发布了BoneCP0.6.0下载地址,但是作为连接池这种底层Java组件来说,最好不要轻易更换,稳定优于一切。Java的内存泄露可不是闹着玩的,个人感觉十分难查。 BoneCP是一个快速高效,开源免费的Java数据库connection pool。当然BoneCP也是采用纯Java编写的,如果你熟悉C3P0,DBCP那么你一定知道BoneCP是用来做什么的了。简单的说Java数据库连接池,就是缓存一定的JDBC Connection,当用户访问的时候不用现场生成一个Connection,分配给用户。而是使用连接池中的Connection分配给用户,这样可以避免创建Connection的开销,提高系统的负载能力。当然实际引用中连接池的设置也是有很多学问的,这里笔者就不多罗嗦了。 既然有了C3P0,DBCP那么为什么还需要一个BoneCP呢?很多时候很佩服老外,貌似他们中有很多怀疑者,只要发现自己不满意的地方,干脆自己就弄一个类似的东西出来,从而完善自己需要的功能。那么BoneCP的优势在哪里呢?按照官方的说法,BoneCP的最大优势是速度,从作者的测试来看BoneCP在性能方面比其它连接池快了25倍。。。。不知道作者这个测试时怎么做的,不过如果连接池性能能提高这么多,那么估计接下来JDBC连接池的天下就是它了。 BoneCP 0.6.0从测试上来看性能着实让人心动,但是在这里笔者要提醒一下各位,虽然BoneCP的代码100%通过单元测试,但BoneCP仍然被定义为一个beta版本软件,在产品应用中请慎用。毕竟产品级的应用中稳定性还是最主要的。不过小型项目中BoneCP是值得尝试的。让我们一起希望BoneCP这个新生的JDBC连接池框架越做越好吧。 BoneCP 0.6.0 的主要改变包括(摘自开源中国社区): 将 Hibernate 的 Provider 类移到子包中 增加了数据库连接的回调钩子 增加了用以向首次获取的连接发送一个特定的语句的功能 增加通过

java

JUnique 1.0.4 发布-下载

JUnique 1.0.4发布下载了,使用JUnique朋友可以下载升级现有的JUnique版本喽。JUnique是一个采用纯Java编写的类库,JUnique1.0.4用于防止同一个用户在同一时间内运行两个相同的Java应用程序实例。JUnique在JVM上实现了锁定和通信通道,可以监控同一个用户在不同JVM上的共享对象实例,以防止同一个用户多次调用同一个Java应用的实例。JUnique 1.0.4需要JDK 1.4或者JDK1.4以上版本的Java支持。JUnique是自由软件,因此采用LGPL许可发布。 JUnique 1.0.4下载地址: JUnique1.0.4下载 JUnique官方网址: http://www.sauronsoftware.it/projects/junique/ JUnique样例代码: public static void main(String[] args) { String appId = “myapplicationid”;

java

Grails 1.2 发布-下载

SpringSource官方今天发布了Grails 1.2下载地址。使用Grails的朋友可以直下载升级到最新版本的Grails 1.2了。因为昨天Groovy 1.7刚刚发布,估计Grails也耐不住寂寞要升级了吧。Grails是一套基于Groovy和Java开发的web框架,Grails使用了JavaEE中最优秀的api,包括Spring,Hibernate,SiteMesh等,以为采用了Groovy脚本语言进行编写,因此Grails对于使用者来说是一个方便、敏捷并且符合各种规范的Java web开发框架,同时因为Groovy符合JavaEE规范,并且使用Java和Groovy编写(Groovy也运行在JVM上),因此Grails可以轻松的于现有的技术应用整合。 Grails1.2下载地址: Grails1.2下载 Grails 1.2的心特性包括: Grails 1.2增强了Dependency Resolution DSL功能,可以更方便的使用maven仓库解决jar依赖问题 grails.project.dependency.resolution = { inherits “global” // inherit

java

RichFaces 3.3.3 Beta1 发布-下载

JBoss旗下的RichFaces项目官方,今天发布了RichFaces 3.3.3 Beta1版本下载地址,使用RichFaces的朋友可以下载最新版本的RichFaces 3.3.3 Beta1来尝鲜了。RichFaces是一个采用纯Java语言编写的JSF组件库。同时RichFaces被设计成为可以轻松的整合Ajax功能,以便适合开发基于Ajax的各种企业应用。 JSF(Java Server Face)是一种面向组件的Web框架技术,页面中所有对象(Form,Radio,等)都可以使用组件的方式编写,与之类似的框架还有Tapestry, Wicket。使用组件的最大优势就是复用率高,很多时候在使用Java开发web项目都需要不停的从已有的Java待中复制粘贴相同的代码,就是在同一个项目中也经常需要不断的重复copy很多相同的部分。组件的出现完美的解决了这个问题。笔者虽然不使用JSF,但使用的是Tapestry,该项目于JSF异曲同工,都是基于组件的概念。使用组件,可以在不同项目中无缝的集成已有的组件,如果一个项目中需要用到一个已有的组件,但这个组件的某些功能需要定制一下,那我们可以很轻松的通过复写很少的代码在本项目中扩展已有的组件。对于项目中同样的功能,如果使用了Tapestry或者JSF,那基本就是直接编写标签的过程了。 RichFaces拥有如下特点: RichFaces拥有超过100个内政的Ajax组件,这些组件被包含在两个library中 a4j:用于实现以页面为中心的Ajax控制 rich:一个自包含,独立是哟功能的组件 RichFaces允许用户通过Ajax访问JSF的全部特性 RichFaces更换皮肤的机制 RichFaces提供了基于组件的开发报(CDK) RichFaces支持动态资源加载 RichFaces拥有完善的测试支持,可以测试组件,actions,监听器和页面 RichFaces拥有完善的跨浏览器支持 RichFaces拥有胖大的社区的支持

java

Groovy 1.7 发布-下载

Groovy官方主页尚发布了Groovy 1.7的下载地址,同时也发布了针对Groovy 1.7的IDE插件的下载地址。使用Groovy的朋友这次有福了,官方表示本次发布的Groovy 1.7除了Groovy语言本身进行了大幅度的功能调整外,Groovy 1.7的IDE支持也是空前的好。之前Groovy的Eclipse插件支持一直不是很好,但本次于Groovy 1.7同时发布的Eclipse是由SpringSource开团团队完成的,因此在功能和质量上有了质的飞跃,因此在Eclipse开发Groovy将变得更加轻松容易。 Groovy是一种脚本语言,可以直接编译成Java的class文件,并在JVM上运行。Groovy吸取了Python、Ruby和Smalltalk等脚本语言的特点,包括OO的编程风格,简洁的语法,解释执行等。同时因为Groovy是运行在JVM上的,而且与Java语言可以无缝接合,因此Groovy便拥有了其它任何脚本语言所无法拥有的胖大的Java的支持(JRuby目前也是这样了。。。),Groovy同时拥有脚本语言的诸多方便特性,同时还拥有Java社区胖大的第三方类库的支持,可谓是如虎添翼。笔者的项目中数据库升级部分就采用了Groovy脚本来编写,简单方便。优点不容置疑阿。 Groovy 1.7的主要新特性(摘自开源中国社区): Groovy 1.7新增了对匿名内部类和嵌套类的支持 Groovy 1.7增强了Java Annotation(Java注释),Groovy中的Java注释写法比Java代码中灵活,可以在组织导入,包,和变量声明的位置增加注释(个人感觉有点乱。。。) Groovy 1.7大幅度增强了Grape功能,通过使用Groovy 1.7的grape依赖系统,可以轻易的在groovy脚本中解决依赖问题(无须maven了?。。。) Groovy 1.7提供了功能更丰富,更强大的断言机制 Groovy

Scroll to Top