浏览 3500 次
锁定老帖子 主题:JavaEye论坛热点推荐-2009年3月
精华帖 (0) :: 良好帖 (0) :: 灌水帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-04-15
最后修改:2009-04-15
JavaEye论坛是JavaEye文章质量最高讨论最活跃的版面之一,我们为您总结了2009年3月份的论坛Java,AJAX,Ruby,综合技术和项目管理等热点文章,欢迎您也发表文章到论坛,并参与讨论。 下面是2009年3月JavaEye论坛最受关注的主贴,去看看吧。 同时我们还提供了3月论坛热点的PDF电子杂志(大概6M): 强烈推荐用大米盘的镜像下载,速度快支持迅雷等下载工具:http://www.damipan.com/file/ZoukJ8.html 如果无法通过大米盘下载,点击通过JavaEye本地下载:http://www.iteye.com/topics/download/ce32dbc6-7116-3724-b3a3-e1160e6dc03e
Java编程和Java企业应用 刚看了个自制框架的帖子,其实之前这类帖子见得比较多,吵得也都挺厉害。好像总有人一边对提议“不要发明轮子”的同学挺反感,一边以发明家自居,把话扯到中国的软件业上去。之前还看到有人见到“只用SSH的公司“坚决不去。我想说说我的看法。 我觉得框架这东西,首先要明白为什么要用它——这是废话,但又是最重要的。真的有些人是不知道为什么用框架,乱用一通,产品代码乱七八糟。 然后是学习如何用好它,掌握框架后接着可能 ... 背景音乐:《要不要就一起加入G C D》,唱:陈珊妮,词:夏宇。 JDK5是一个巨大的转折点(泛型,Annotation,并发...),而JDK6就是一个可安全升级的加强版,对新项目是不升白不升,白升谁不升,对旧项目就是升了也白升,不升也没啥损失吧。 稍微整理了一下官方JDK6官方Features and Enhancement说明 : 比较有用的升级 性能提升 : ... ConcurrentHashMap是Java 5中支持高并发、高吞吐量的线程安全HashMap实现。在这之前我对ConcurrentHashMap只有一些肤浅的理解,仅知道它采用了多个锁,大概也足够了。但是在经过一次惨痛的面试经历之后,我觉得必须深入研究它的实现。面试中被问到读是否要加锁,因为读写会发生冲突,我说必须要加锁,我和面试官也因此发生了冲突,结果可想而知。还是闲话少说,通过仔细阅读源代码, ... 因公司需要,为公司写了1个很简单的WEB框架,目前已经在公司很多内部系统中使用,希望大家能多给点意见:功能简介: 1. 把前台JSP页面和后面java表单类(这个称呼是自己随便取的,对应一般MVC框架中的C)自动对应起来,比如:先假设所有的表单类都放在jnet.forms包下,你前台有个index.jsp,那对这个index.jsp的所有操作代码必须放在jnet.forms.index.java ... xmemcached发布1.0-beta,从0.60直接到1.0-beta,主要改进如下:1、支持更多协议,在已有协议支持的基础上添加了append、prepend、gets、批量gets、cas协议的支持,具体请查看XMemcachedClient类的实例方法。重点是cas操作。 2、memcached分布支持,支持连接多个memcached server,支持简单的余数分布和一致性哈希分布。 ... (最新测试结果见第二页:加入AMF3) 实际项目中的一个企业信息表:15072条记录,测试结果令人吃惊:Hessian胜出太多,不知andot是怎么看,测试过程有误? 测试过程很简单:读取数据表全部数据至List实例,然后序列化,并将数据保存至本地硬盘。 测试环境:Oracle10,jdk1.5,3G内存。 测试结果: 引用 开始测试,序列化后二进制数据写进本地文件... 测试记录总数:15072条 ... Phprpc, 是一个声称在某些场景下, 性能比hessian还要高的协议. 下面url是javaeye andot 写的两个协议的性能测试报告: http://www.iteye.com/topic/333720 看到这个报告是有点激动的, 那么它到底在实现上有何高明之处呢? 在这篇文章里, 我会给大家简单阐述一下, 为什么phprpc在某些场景下, 性能 ... 使用 paoding 的配置觉得有点复杂,而且管理词库也有点不方便,同时自己也想了解下中文分词算法,然后就想自己写个中文分词器,在lucene和solr中使用。在 javaeye 看到有关 mmseg 的简介,看了下还不错,简单方便,那就用它来写个java版吧,我搜索 mmseg的java版(好像是 solo,官方已经下载不了),弄清分词算法还是自己写写吧。 实在想不到其它名字,就称它为 mmseg ... 严重提示:仅供参考 分享一个自己写的最为简单的Spring AOP的应用,其实,本人也是学习Spring不久,只是把一些个人的理解分享下,供参考。可能很多人刚开始不太理解到底啥是AOP,其实它也是相对OOP来说的,类似OOP其实也是一种编程思想吧。本人暂且把Spring 中的AOP理解成一种方法的拦截器(可能有所片面,主要是方便理解)。 个人通俗理解,就好比你去自动取款机取钱,边上装了个摄像头 ... 问题描述 约瑟夫问题:有n只猴子,按顺时针方向围成一圈选大王(编号从1到n),从第1号 开始报数,一直数到m,数到m的猴子退出圈外,剩下的猴子再接着从1 开始报数。就这样, 直到圈内只剩下一只猴子时,这个猴子就是猴王,编程求输入n,m后,输出最后猴王的编 号。 输入数据 每行是用空格分开的两个整数,第一个是 n, 第二个是 m ( 0 < m, n < 300)。最后一行 是: 0 0 ... 还是我来继续jythoner的JAVA每日一题吧!最近比较闲哦!希望jythone不要见怪哦! 真是不好意思啊!早上有点忙!呵呵! 题目:一项抽奖程序要求读者从整数1-49之间选择6个不同的数字。编写一个程序来完成这项工作,并生成5组结果。 package com.tengfei.lesson01; public class Lottery { public stati ... 一、 环境配置 基础环境是eclipse3+myeclipse6+mysql5+tomcat6 。 首先从网站上下载jBPM开发包(jbpm-jpdl-suite-3.2.3.zip),据说现在jBPM3已经升到3.2.6了,而且据说已经推出了jBPM4了。将jbpm-jpdl-suite-3.2.3.zip解压缩后,里面有个\designer文件夹,这个是eclipse IDE的jBPM插件,是可 ... 上一篇介绍了:hibernate 模板基类设计 这一次介绍一下 ibatis 模板基类设计 实现公共方法,减少开发工作量 代码更整洁清淅 EntityDAO 类代码如下: /** * (#)EntityDAO.java 1.0 2008-6-7 上午09:25:37 * */ package com.keyi.util.dao; import java.io.Seri ... 项目终于上线了,终于不用天天加班了,于是拿出时间来翻译了下jBPM4.0的文档。根据自己理解翻译的,如果有句子不通顺或者理解有问题的地方,大家可以踊跃提出。 第 1 章 导言 1.1. 许可证与最终用户许可协议 jBPM是依据GNU Lesser General Public License(LGPL)和JBoss End User License Agreement(EULA)中的协议发布的 ... 第 2 章 安装配置 2.1. 类库 jBPM 不需要其他任何依赖库就可以在Java虚拟机上运行,参见开发指南的对象执行模式。但是在这个用户指南里我们将介绍使用jBPM的最常用方式。也就是让 jBPM将流程定义、流程实例、历史记录保存在关系数据库里。在这种情况下,hibernate就需要添加在classPath中了,当然还有些jPDL 的功能需要用到其他的类库。因此,将lib这个目录下所有的类库添加 ... 最近Apache又出了一款JAVA写的新的项目,叫Apache-FTP Server,目前的版本为1.0.0,本文是以比较基础的1.0.0版本来进行最浅白的初步研究 在http://mina.apache.org/ftpserver/downloads.html可以下到Apache FTP Server的最新的一个版本。直接下ftpserver-1.0.0-src.zip,里面包括发布的版本和源代码 ... 在网上找了好久也没找到个合适的正则表达式以过滤特殊字符;自己学习了下,写了两个,实现要求。 // 过滤特殊字符 public static String StringFilter(String str) throws PatternSyntaxException { // 只允许字母和数字 // ... 大家好。这是我参考前几天在这里发帖的zhongxuchen提出的“陈氏查询”理论编写的处理动态查询语句的工具框架。因为本人极度爱猫,所以命名为“仓库猫”,英文名翻译得不好,通过金山词霸命名为“catsorage”。 项目地址:http://code.google.com/p/catstorage/。 不过因为我还没来得及编写使用帮助,所以目前只提供SVN源代码下载。该框架使用Apache2.0许可证 ... 最近同事想通过自定义函数来输出国际化文字。比如: ${my:i18n('login.userid')}. EL支持我们自定义这样的函数,问题是这个函数没法获取request对象,不知道当前页面的语言。 由此我想到threadlocal也许可以解决这个问题。 我的思路是做一个filter,每次都把request引用保存在一个threadlocal变量里。然后在上述的i18n自定义函数里读取这个thre ... 最近闲来无事, 学习学习swing。 在查看JPopMenu的代码时候突发奇想, 想实现一个环形的弹出菜单,说干就干。 我们都知道, swing 组件的位置和大小是由于layout 管理的,所以想实现环形的弹出菜单就必须实现一个环形的布局管理器。请看我的实现 效果 package info.mikewang.gui.layout; import static java.lang.Mat ... 纯自己经验的总结,不多说了,见附件吧。 Ruby Rails2.3版本发布了,这个版本内部的改动非常大,相关介绍可以看JavaEye这篇新闻:http://www.iteye.com/news/5390,估计最近也有不少人开始动手升级到Rails2.3了,JavaEye也不例外,这一升级才发现性能低得令人发指。 由于过于信任Rails框架,没有进行本地性能测试,在通过了兼容性测试就兴冲冲上线了。这一上线,动态请求立刻堵了一大堆,仔细看了看fas ... 突然想起,Ruby 1.9支持中文方法名和变量名! def 召唤 家丁 case 家丁 when '阿福', '旺财' puts "……少爷,我系#{家丁}……" else puts '……(一段短短的沉默,然后一段长长的沉默)' end end 家丁甲, 家丁乙 = %w[阿福 旺财] 召唤 家丁甲 哼哼,我们可以改造黄瓜或者阿死别克了 ... 下载地址:http://javaeye-client-ruby.googlecode.com/files/EyeShoes-0.1-alpha.zip 代码已经开源:http://javaeye-client-ruby.googlecode.com/svn/trunk/ 昨天承night_stalker老兄的提醒,去google了一下YARV,看看我是不是把事情记错了。记得Ruby还没1.9的时候我就稍微关注过YARV的信息,但印象中Ruby 1.9/YARV是没有JIT的…… Hmm,我貌似是没记错。目前的Ruby 1.9.1里并没有JIT。 首先需要定义我这里所指的JIT是什么。JIT,Just-In-Time Compiler,也就是所谓的即时编译器,其过程是 ... 最主要的提示是说: uninitialized constant ApplicationController c:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/dependencies.rb:443:in `load_missing_constant' c:/ruby/lib/ruby/gems/1.8/g ... 写在前面: 第一次,写连载啊,希望能对自己和各位看官有点帮助,多了解一点RubyOnRails开发上的情况吧。能够有点帮助,这就是坚持的理由。^_^ 生命百科全书:www.eol.org 网站是基于RoR的,内容是做互动的生命百科博物馆,本文主要介绍,如果通过该网站提供的代码,建立起RoR的网站,并且学习,该网站中使用到的一些,RoR最普通的技术。 资源地址如下,匿名svn下载。 svn:/ ... ruby手册的原版地址 有各种版本 http://www.ruby-doc.org/ chm版,方便初学的不习惯rdoc的新手,进行搜索和参考 虽然版本有点旧 rails 2.0.2 ruby 1.7 rdoc的版本是新的 rails 2.2.2 ruby 1.8.6 还是喜欢用chm版的,有时间了应该把另外的也生产chm 安装ruby 首先不再使用ubuntu的apt-get安装ruby,自己编译安装,这样虽然不能使用ubuntu系统apt-get的升级功能对ruby进行升级,但胜在自由度最高,想怎么折腾就怎么折腾. 到 http://www.ruby-lang.org/zh_CN/downloads/ 下载ruby 1.9.1的源代码. #解压文件 tar ... Web前端技术:AJAX和RIA 作为一个Web开发者,保持对未来Web标准的关注、学习和了解是很重要的。这里是一些CSS3相关的文章和资源,不管你是第一次准备去认识CSS3,还是已经略知皮毛,下面这些资源都将有助你更好的学习和理解CSS3。 英文CSS3资源 CSS3.info 看域名就知道,这是一个专门介绍CSS3的网站。所有你想了解的有关CSS3的信息,都能在这里找到。CSS3.com 又一个专门介绍CSS3的网站,包 ... Portotype虽然是强大的,和script.aculo.us结合可以做出很多完美的效果,可是它里面有太多我不想用的代码,或许这是我后面选择mootools的主要原因,我只是想选择性的打包。其实当时我也很想用一下jquery,仔细对比了一下,我还是觉得mootools更加的适合于我。有比较,才有机会去选择,我想从下面5个方面讨论一下。 可读性VS简洁 在网上,很多人把mootool ... 看到很多人在讨论jQuery和Mootools,但是流于分析,理论,我来说说一些实际的体会吧。 首先摆明立场,我是倾向Mootools的,jQuery的很多东西让我觉得他只是名声在外,下面我会一一说明。 Prototype公布1.6的时候,我就开始在同时关注jQuery和MT。当时的MT没有jQuery出名,代码也没有jQ的精彩,但是当时他具备了一些很重要的特性,比如样式转换类的CSS,缓动类的Tw ... KindEditor是简单的在线HTML编辑器,支持目前流行的大部分浏览器,主要优势在于简单、快速、定制方便,非常适合博客、SNS日记、WEB邮箱等互联网网站。 3.1.1版本初始化时被GZIP压缩以后总大小为22KB,分别为1个JavaScript文件,2个CSS文件,2个gif图片,目前国内的ADSL宽带速度下基本上可以瞬间打开。 不足的地方是: 1. 每个浏览器生成的HTML不一致。 2. U ... 以下介绍的各个系统均采用extjs+easyjweb+spring+jpa+任意数据库构架开发 蓝源SaaS开源计划: http://www.erpwin.com/news.ejf?cmd=showSystemAnnounce&id=7 在开源人网站平台发布的开源问卷调查: http://www.vifir.com/bbs/html/20081213/3276827.html 蓝源SAAS( ... 抽空把jquery ui 里的日历做了个整理,整合了换色和几种调用方法。 文件里的example.html是我写的调用页面,所有的颜色主题和调用方法都可以通过这个页面呈现出来。 example页面,点击查看大图 一共有17个颜色主题,如下图,点击查看大图 DWR配置文件详解与bean转换 1、了解DWR内置配置文件 DWR内置配置文件提供了框架配置所需要的一些内容,框架加载的时候把这些信息加载到框架中。dwr内置配置文件也为dwr.xml,和我们在外面配置的dwr.xml是同一个dtd,但是为什么要内置?因为dwr在加载的时候会去加载这个默认的配置文件,目的是什么?我们先看一下, <init> <creator id=&q ... 最近在学习jBPM和Javascript,所以按照一些相关概念自己写了下面的200行代码的“工作流引擎”,工作流管理系统包含了流程定义,引擎,及应用系统三个主要部分,下面的代码实现了流程的分支合并,目前只支持一种环节上的迁移。下载html附件双击就可以跑起来。 /*/////////流程定义/////////// start / \ 1 \ / \ \ ... 移动编程和手机应用开发 随着我的第一个付费app的成功交易, 我想有必要写下Android app如何认证, 发布, 到赚钱的几个流程, 与大家共享, 也希望大家有条件的可以试试开发一些免费或者付费的Android小软件, 以后移动开发的机会会很多, 现在先练练手关于如何开发Android app, 这里就不详细叙述了, 外面相关的文章大把. 发布app前, 你需要一个google id, 然后要注册成android de ... 如果你的app用户量潜力上来说是巨大的, 而且用户会时常使用你的app的, 比如twitter客户端, SNS插件等等, 你可以考虑用广告的收入方式而发布免费的app. 说起广告banners, 大家一定不会陌生了. 最流行的就是google adsense. 但本人对adsense的印象很不好. 自己有个adsense的帐号, 但时不时广告都会变成公益广告, 而且收入奇低, -__-#至今未 ... iPhone无疑是目前最炙热的开发平台之一. 开发者只需要好好的做自己的app, 销售收款物流交易和发布渠道全部由Apple搞定, 收入37开, Apple 3, 开发者7. 比起北美这边运营商动不动就40+%强行占有开发者的收入, Apple算是很厚道了. 无疑, 初期几个很成功的app让一批人赚了第一桶金子. 当然大家都跃跃欲试的时候, iPhone的开发也就有点开始白菜化的趋势. 但 ... Microsoft .Net 这篇文章是应同学们的要求写的,以前都是用VC++ 6.0+Platform SDK完成的. 迁移到 VS2008之后,原来Visual Studio 6.0里的BHO向导不复存在,因此特此不厌其烦,详细说明,本文也适用于VS2005. 首先谈BHO的开发工具,我偏向使用VC++(unmanaged C++) 作为开发工具,因为Java JVM或.Net CLR的虚拟机是个很笨重的东西,也是内存杀手, ... Python 用python2.6写的,用2.5跑可能要改里面json相关部分 其实就是菜园旁边那个按钮的功能,只是没那么多时间老去打开浏览器看那个东西,所以做了这个 #!/usr/bin/env python # -*- coding:utf-8 -*- # coded by Daniel King import re, time, thread, webbrowser from Tkinter i ... 1.python是弱对象语言, 而ruby是纯对象语言 python可以没有对象运行,但是ruby的根基就是Object。 而且python对于封装的约束比较弱,而ruby相对较强。 比如一个class的实例dog。 python:dog.name = "dogy" 相当于给dog赋予了一个属性 ruby: dog.name = "dogy" 报错,dog没有 ... python的结构体(包括class,function 和class 实例)和javascript的结构体(Object和function)实现有些相似,也有些不同。 python的class对数据和函数的存储都是维绕着__dict__. 对象的属性和方法都存在里面。 而javascript的对象(Object或function)应该有两个hash存储数据,一个是prototype,一个是xxx(现 ... 综合技术 目前网上关于memcached的分析主要是内存管理部分,下面对memcached的线程模型做下简单分析 有不对的地方还请大家指正,对memcahced和libevent不熟悉的请先google之 先看下memcahced启动时线程处理的流程 memcached的多线程主要是通过实例化多个libevent实现的,分别是一个主线程和n个workers线程 无论是主线程还是workers线程全部通过lib ... 自从1999年12月,Walter设计开发D语言以来,D语言的编译器DMD因为不开源,成了业界的诟病。Walter曾经承诺,将开放源代码。 伟大的Walter Bright在今天2009年3月5日下午18点40分(中国时间) 释放出了D1和D2的前端和后端的源代码!!开源协议为GPL1.0或者Artistic license。后端协议看了看,有Digital Mars和SYMANTEC的版 ... redis,是快客王在je chat中介绍过的一个keyvalue数据库,打着在'入门级服务器'上10w/s set ops高性能头衔来忽悠众多不明真相的程序猿。 事实上,号称的'入门级服务器'服务器是一台 Xeon X3320 2.5Ghz 的机器,在我的 AMD Athlon(tm) 64 X2 Dual Core Processor 4000+ 台式机上,benchmark结果是 引用==== ... 今天看了“Database Sharding at Netlog, with MySQL and PHP”一文,和去年我们讨论扩展的思路很类似(不过这种分布式扩展,计算,存储的思路都很类似),但是这片文章的作者是在日益爆炸式增长的用户数据下实践的分享,因此这里将文中的一些思想记录下来分享一下。 Netlog拥有4000万活跃用户,每个月有超过5000万的独立用户访问网站 ... 软件开发和项目管理 公司新接到一个项目,需求设计之后,便是编码阶段 编码之前,开发成员除了美工之外有3个人,一个是我,2个同事,从需求,和设计进行了介绍,也提供了相关的文档。安排了进度之后,大家没有问题,便开始开发。 时间安排比较紧凑,因为客户比较急。 采用的是非常普遍的SSH,用acegi做的权限这块,另外两个组员我也不是很了解,所以安排了2个比较简单的,对数据库的一个表进行增删改查,其中有一对多或者多对一的关系,我 ... 最近我在公司搞代码评审,做的过程中发现一个矛盾的问题:评审发现了问题,于是需要重构,可是重构需要有完善的单元测试做保障,而项目已接近开发结束,基本没有单元测试,结果发现的问题只能搁置,因为你很难下决心去为了完善一个东西而去冒毁坏它的风险! 这样下去,代码评审将流于形式 我意识到TDD与code review有着很紧密的联系,其实以前就听说过敏捷的十二个实践都是有内在联系的。 ... 一个公司或者团队都会遇到过人员流失的问题,可能小公司可能更为严重。最可怕的是团队中重要成员的流失,将对公司的业务或者项目造成不小的麻烦。究竟怎么看待这个问题呢?很多人都发表过自己的见解,争论也很大。 俗话说:“屁股决定脑袋”,其实大家的立场不同,结论自然不同。 很多管理者,会抱怨员工没有职业道德,经不住诱惑;有的人抱怨猎头太可恨,扰乱IT就业市场;还有的人指责同行不厚道,拿高 ... 入门讨论 最近做了一个小测试,对两个集合的比较,目的是想删除出两个集合相同的数据。 分别用List、Map、和Set进行测试 利用List比较 10000用户的数据(6000相同的用户,4000不同的用户),完成比较的时间共耗时1531毫秒 100000用户的数据(60000相同的用户,40000不同的用户),完成比较的时间共耗时143735毫秒 利用Map比较 10000用户的数据(60000相同的用户,4 ... 最近利用时间好好的看了一下SSH,Struts,Spring,Hibernate,并且做了个小项目,我把我个人学习的感觉和理解记了下来,和大家讨论讨论,想来个抛砖引玉,希望大家多多讨论,理解的不对的地方还请直言赐教。 Struts,负责表示层的,主要玩的就是MVC,主要的就是struts-config.xml配置文件,另外还有标签和验证。主要负责的就是把请求和回复分开,形成层状结 ... 今天学习了一下JavaMail,javamail发送邮件确实是一个比较麻烦的问题。为了以后使用方便,自己写了段代码,打成jar包,以方便以后使用。呵呵以下三段代码是我的全部代码,朋友们如果想用,直接复制即可。jar包因为我不知道怎么传到javaeye上,所以朋友们回去自己打吧。 我的代码有三个类: 第一个类:MailSenderInfo.java package com.util.mail; /* ... Dtree+Jquery动态生成树节点. 最近有朋友问我一个动态生成树怎么做.后来就用Dtree js组件和Jquery实现了一个demo给他.现在贴出来给初学者做些参考. 1.先来介绍一下. dtree 的用法.(我引用了以前我收集的一篇文章.还比较详细,出处不记得啦).文章下面会附带dtree用法的例子. Dtree目录树的总结 一:函 ... 呵呵,下面这段代码,看起来很眼熟吧?猜猜输出的是什么? println new URL("http://manyinjin.iteye.com").openConnection().getInputStream().getText(); 简单的一行语句,blog里面的东西都print了,重要的是,我只需要知道java里怎么做就行了。。。 你甚至可以这 ... 被groovy彻底征服: 先瞅瞅人家groovy是怎样解析xml的: plan.xml <plan> <week capacity="8"> <task done="2" total="2" title="read XML chapter" /> <task done= ... JavaEye管理团队敬启 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |