自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 SEAM学习笔记2

ui:insert 在模板文件中设定扩展点名称ui:define 在文件中设定扩展点的具体内容#{fan.name} 显示一个列表内容, 优于h:dataTableS:cache 将会cache 内容在serverS:convertDateTime 转化后台时间为本地server时间的格化后的字符串seam generate-entities 从表中生成CRUDlazy loading 当明确

2008-01-01 23:53:00 523

原创 seam学习笔记

 #{person.name} 代表会取Person这个组件的name属性,需要在对应的action中用@in定义一个Person值域,从而注入Person. 同理@out指定输出字段 相当于for each输出一个list@in @out就是Bijection双射 @PersistenceContext private EntityManager em;

2007-12-31 22:03:00 552

原创 effective java学习笔记

equals()方法的通用约定自反性(reflexivity) x.equals(x)=true对称性 x.equals(y)=true,则y.equals(x)=true传递性 x.equals(y)=true ,y.equals(z)=true,则x.equals(z)=true一致性 如果两个对象相等的话,则它们必须始终保持相等非空性,所有对象都必须不等于null改写equals必须改写

2007-12-18 17:57:00 443

原创 领域驱动设计学习笔记(2)

把实际的存储和查询技术封装起来,仅为确实需要直接访问的聚合根提供仓储,让客户聚集于模型,把所有对象存储和访问的工作委托给仓储来完成仓储的优点:它们为客房提供了一个简单的模型,来获取持久对象并管理其生命周期它们把应用和领域设计从持久技术,多种数据库策略甚至多种数据来源解耦出来;它们传达了对象访问的设计决策它们可以很容易被替换为哑实现,以便在测试中使用(通常使用一个内存中的集合)仓储的关注点抽

2007-12-17 10:17:00 387

原创 领域驱动设计学习笔记(1)

关联简化,从而让模型更清晰指定一个导航的方向加入限定符减少关联的多重性清除不必要的关联模型分为实体,值对象,服务对象三种实体应具有唯一标识(ID)来进行区分值对象则为只关心它们是什么,而不关心它们谁是谁的对象,所以不需要分配标识。通常是临时对象,经常作为实体的属性和其他值。设计时需要对复制,共享和不变性作出选择。值对象之间的双向关联是没有意义的服务,强调与其它对象的联系,往往代表一种行为,而不

2007-12-12 17:10:00 587

转载 LINUX学习笔记

 linux目录架构/   根目录/bin    常用的命令 binary file 的目錄/boot   存放系统启动时必须读取的档案,包括核心 (kernel) 在内     /boot/grub/menu.lst   GRUB设置     /boot/vmlinuz   内核     /boot/initrd     核心解壓縮所需 RAM Disk/dev    系统周边设备    

2007-12-12 14:51:00 308

转载 编写java程序最容易犯的21种错误

  1.Duplicated Code  代码重复几乎是最常见的异味了。他也是Refactoring的主要目标之一。代码重复往往来自于copy-and-paste的编程风格。与他相对应OAOO是一个好系统的重要标志。  2.Long method  它是传统结构化的“遗毒”。一个方法应当具有自我独立的意图,不要把几个意图放在一起。  3.Large Class  大类就是你把太多的责任交给了一

2007-12-12 14:47:00 427

原创 vim学习笔记

模式    i进入插入模式,在光标前插入,a则为光标后插入,用于在行尾时,o则另起一行O在上方另起一行    esc进入一般模式,再按一次会报警导航    hjkl 左下上右撤消重做    u撤消,c-r重做,U本行撤消编辑    j删除本行换行符    x删除    dd删除一行命令计数    命令前加一数字,即可重复执行该命令n次退出    ZZ,保存并退出    q!放弃保存并退出    e

2007-12-07 15:10:00 821

原创 ror学习笔记(1)

render(:partial=>"局部模板名", :collection=>集合名 局部模板以下划线开头,内部有一个与局部模板同名(没有下划线)的变量做为单个值 render中:object可接受一个对象做为参数传入局部模板 form_remote_tag :url=>{:action=>xxx,:id=>xxx} ajax提交form sub

2007-12-06 18:07:00 399

原创 动态代理

代理就是内置一个类,然后调用该类的方法,但是依赖具体的接口或类.动态代理就是实现InvocationHandler 接口的一个类,在运行时通过反射得到被代理类的实例并调用其方法,在调用前后可加入某些方法的调用,即实现AOP. 客户端则可以选择适合被代理类去调用,即为控制反转.

2007-12-04 23:28:00 414

原创 实现自定义的SWT事件和Listener

继承java.util.EventObject(xxx), 提供一些get方法让客户端获取事件发生的信息。 继承java.util.EventListener(xxxListener), 实现xxxHappened(xxx) 在组件类里设一个Vector记录所有listener 实现addxxxListener, removexxxListener

2007-12-04 16:46:00 1164

原创 封装SWT组件的原则

尽可能少的实现原有的API,如果只是调用被封装组件的方法的话。即象一个adaptor. 实现setFont, setForground,setBackground,setCursor,setEnabled,setMenu,setToolTipText, 先调用parent的方法,再set值到被封装的组件 不要重新实现 setData, getData, parent

2007-12-04 16:07:00 552

原创 is-a VS has-a

A和B如果是is-a 的关系,那么使用继承。如果 是has-a,就应该是两个独立的类, 将所有类型的B封装成一个类, 通过setter设为A的一个属性,就是Strategy了, 这样可以在运行时视情况改变a的行为了。如果想在原有类的一个实例中动态增加属性或者做处理, 使用Decorator层层修饰,就象Inputstream一样。

2007-08-29 11:20:00 515

原创 zimbra

http://www.zimbra.com 好象一套很不错的开源OA系统

2007-08-20 15:28:00 658 1

原创 一些没什么技术含量的ROR技巧(1)

  login 生成器    gem install login_generator  下载该组件 ruby script/generate login Account   生成   CREATE TABLE users (    id int(11) NOT NULL auto_increment,    login varchar(8

2007-08-18 22:32:00 710

原创 无法在fat32中执行shell脚本的解决方法

可能有两种原因 脚本在windows下编辑过。用vim处理下换行符或者dos2unix工具解决 /etc/fstab中,该分区包含noexec,或者user的字样,加上exec去掉noexec就好。另外,fat32不区分目录名大小写,所以最后只能移到ext3分区下才算解决问题

2007-06-30 00:13:00 500

原创 开启websphere的热代码替换功能

.在Administrative Console, 找到Debugging Service page。确定Enable service at server startup or Startup check box 被选中 在arguments里加上 -Xj9 -Dcom.ibm.ws.classloader.j9enabled=true 重启服务器,这样就不用重启服务器就能修改代码了

2007-05-17 16:16:00 1036 2

原创 终于拿到amule的high id了

主要是参考两篇  文章http://sanhex.bloggerspaces.com/index.html  因为ifconfig返回信息中文导致的firestarter无法启动sudo vi /etc/firestarter/firestarter.sh找个合适的地方,例如在# External network interface data这行注释的上面,添加一行:LANG=en_UShttp:

2007-05-01 00:22:00 1779

原创 用ANT写文件

昨天找了半天,发现concat可以写信息到文件,但却不能塞变量进去。只好搜搜别人写的。发现一前辈高人早已写好的,而且完全完全就是我要做的。只是简单的调用了echo, 塞了个file属性就可以了,message里可以塞变量。我查手册上一看ECHO就跳过以为只是发到控制台上。ANT可真是灵活啊,居然有人也能用到这种地步。 真象武侠小说里,各种功夫用到极致就是反朴归真,无剑胜有剑。不用写代码,一行XML

2007-04-18 12:25:00 3827 1

原创 ubuntu6.10安装过程

 周五晚上,头脑一热,觉的自己老是控制不了自己,就装个linux约束自己。花了两天时间,装上6.10, 用了台湾大学的一个源,速度比cn99快多了,150KATI的官方驱动还是比较好用的,sudo sh 驱动名就搞定了,源上和自编译的都不好用,关键是xorg.conf写好就成了。然后装了xgl,效果不明显。接着装了beryl, 清爽很多,但也不过如此,就是界面清楚,能转来转去。而且tvti

2007-04-16 13:20:00 685

原创 远程调试中看不到本地变量的解决方法

 Preferences->Java->Compiler中,把三个ADD都勾上,这样就会把一些调试信息加到代码中。记着发布最终产品时要去掉

2007-04-10 13:11:00 582

原创 html:checkbox无法uncheck

主要是因为checkbox只有checked一种状态,当uncheck以后,form不会提交。 很多人说是在checkbox后加一个隐藏的同名input来解决,当uncheck之后,这个input被提交。但是这样只是一个解决方法。正确的方法是设置reset()方法,将这些checkbox全设个初始值。可是一看,原类里面已经有一个reset了,但始终没被调用。就试着用eclipse的overid

2007-04-09 17:09:00 857

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除