查看 JAVA 栏目文章
十一月
4

清除MyEclipse升级之后的残留文件

Author Dominic    Category JAVA, 软件应用     Tags ,

8.0 M2刚刚发布,自动升级成功之后发现硬盘竟然消耗掉了几百M,重启和计算机也没有减少我可怜D盘的空间占用,进入程序目录发现plugins目录竟然还遗留了非常多的8.0 M1的文件,明显特征是现在很多文件后缀是7.9.200,却还存在7.9.100的文件和文件夹。发现自动升级过程中竟然没有清除老的文件包,是在太弱了,而且和程序文件混杂在一起,叫人怎么清除这些没有用的文件哦。难道Eclipse也这样么?难怪Java就是占用空间,没有用的东西到处放,如果仅仅是备份就文件的话,移动到一个特定目录不就行了。

这次的目标是减少MyEclipse8.0 M1残留文件占用的空间,而保证M2正常运行。

经过分析,发现可以直接删掉 8.0 M2没有用到的文件即可,但是手工删除是在太慢,而且也容易删除错误。安装目录下configuration\org.eclipse.equinox.simpleconfigurator子目录的bundles.info 文件记录了所有加载plugin,于是找到从bundles.info找到所有 8.0 M2需要的文件的方法。具体步骤如下:

  1. 1、将bundles.info复制到桌面并重命名为bundles.csv;
  2. 2、用Excel打开bundles.csv,删除第一行#version=1,将C列拷贝到UltraEdit中,这样得到了诸如“file:/D:/Program Files/Genuitec/ 8/Common/plugins/ca.ecliptical.emf.xpath_1.0.0.me200910150013.jar”的所有plugins列表;
  3. 3、在UltraEdit中替换路径前缀file:/D:/Program Files/Genuitec/ 8/Common/为空,再替换所有\为/;
  4. 4、在Excel中新建一个sheet,将第三步得到的结果拷贝到B列;
  5. 5、进入 8.0 M2的Common目录,我的是D:\Program Files\Genuitec\ 8\Common\,关闭程序之后将plugins目录重命名为plugins_prev(其他名称也可以但下面的步骤需要和这里的目录名称相同),并新建一个plugins目录
  6. 6、在UltraEdit中将第三步得到的结果中的plugins\替换为“move plugins_prev\”;(不包含引号)
  7. 7、将第六步得到的结果拷贝第四步的sheet到A列;
  8. 8、拷贝第四步的sheet到A列和B列到UltraEdit中新的编辑标签页中,并替换^t为空格,(需开启正则表达式选项,且使用UltraEdit引擎,下同),这样得到一系列的move命令行;
  9. 9、在运行对话框中输入cmd打开命令窗口,并将当前路径切换到 8.0 M2的Common目录(我的是D:\Program Files\Genuitec\ 8\Common\),将第八步中的结果全部拷贝到cmd中执行,这样可以将所有需要的jar文件全部从plugins_prev目录移动到plugins目录中;
  10. 10、经过第9步我们发现所有的jar文件都移动了,但是原来的plugins目录下一些需要的目录并没有移动到新的plugins目录中去,我们还需要移动需要的目录,同样在第八步中的结果上面继续做文章,我们替换“move plugins_prev\*jar^p”为^p,消除所有已经移动过的jar文件条目,再多次替换^p^p为^p,消除所有多余的空行,再替换“plugins\*^p”为“plugins\^p”,即消除多余的目录名;
  11. 11、将第10步结果拷贝到第九步打开的cmd中执行,执行完成之后会将需要的目录也拷贝到新plugins目录下;
  12. 12、启动,不报错,大功告成!这个时候可以直接将plugins_prev目录给删除掉了,节约了好几百M空间。如果不放心也可以先将这个目录放着不删除

如果有些plugins目录没有放在 的Common下Plugins目录中,可先从bundles.csv中删除对应的条目。

其他或者Eclipse完善自动升级过程。

十月
9

POJO何解?

Author Dominic    Category JAVA     Tags

因项目需要被逼捡起JAVA并深入学习一把。过程中很多地方看到这个词语,其全称是Plain Old Java Object。当我询问一个Java做得不错的朋友时,告诉我是JavaBean的一种,它除了private属性以及对这个属性方法的public的get和set方法之外没有其他任何东西。它只能装载数据,作为数据存储的载体,而不具有业务逻辑处理的能力。

感觉有些不对劲,Google了一把:的叫法是Martin Fowler、Rebecca Parsons和Josh MacKenzie在2000年的一次演讲的时候提出来的。初始出处是http://martinfowler.com/bliki/.html:

The term was coined while Rebecca Parsons, Josh MacKenzie and I were preparing for a talk at a conference in September 2000. In the talk we were pointing out the many benefits of encoding business logic into regular java objects rather than using Entity Beans. We wondered why people were so against using regular objects in their systems and concluded that it was because simple objects lacked a fancy name. So we gave them one, and it’s caught on very nicely.

其意思是说要给具有业务逻辑处理的规则的Java对象(regular java objects)但又不是Entity Beans(EJB的一种)起一个名字。他们就叫这样的Java对象为,在http://www.webopedia.com/TERM/P/.htm是这样定义的:

, or Plain Old Java Object, is a normal Java object class (that is, not a JavaBean, EntityBean etc.) and does not serve any other special role nor does it implement any special interfaces of any of the Java frameworks. This term was coined by Martin Fowler, Rebbecca Parsons and Josh MacKenzie who believed that by creating the acronym , such objects would have a “fancy name”, thereby convincing people that they were worthy of use.

基本意思是说一个正常的Java对象(不是JavaBean,EntityBean等),也不担当任何的特殊的角色,也不实现任何Java框架中特定的接口。

这个解释应该是的准确解释,不是Java Bean,更不是EJB,不应该依赖于框架(继承或实现某些框架类或接口),不具有任何特殊角色。是可以包含业务逻辑处理和持久化逻辑的,也可以包含与JavaBean类似的属性和对属性相应访问setter、getter的。

专题推荐

标签

404错误 apache article CSS dotNet fckeditor Hack iOS iTouch javascript PayPal PHP rar ubuntu utf8 VMware VMware Tools weblinks Win2008 Windows Server 2008 Wordpress xajax XOOPS 上传 个人 中文 中文习惯 关键词 合肥 域名 安全 工作 文件类型 文章管理 时区 未分类 模块 模板 模组 电子地图 界面友好 禅意花园 网速 腾讯 配置管理

分类目录

新浪微博

存档

最近文章

近期评论

友情链接

分享按钮