天天看點

每日心得--裝飾模式

  • hibernate裡 一對多的字段,一般都采用延遲加載,在其上加 fetch = FetchType.LAZY屬性
  • Struts2 裡action 傳回 json類型的結果時,若有些屬性不需要傳回,可以 添加 屬性 excludeProperties,值寫不需要 轉化為json的字段;也可以 在 不需要傳回的 字段的 get方法上加 不序列化注解 @JSON(serialize=false)
  • 裝飾模式就是給目标類的功能擴充,比如在目标類的操作之前或之後處理一些事情,而這些處理對于客戶是透明的,因為目标類和裝飾類都繼承了統一接口,客戶操作的是接口。在裝飾類的内部包含了目标類,看上去就像是目标類穿了衣服一樣,裝飾了目标類,是以叫裝飾模式。繼承目标類也可以幹這些事,但是繼承是編譯期的,不夠靈活;其次單根繼承也會有限制。在 JavaEE 和 JDK源碼中就運用了很多裝飾模式,例如 httpServletRequestWrapper 用的就是裝飾模式,并且其傳入的目标類是個接口,更加靈活。

繼續閱讀