08 2012 档案
Spring Security 3(Spring 安全服务)
摘要: Spring Security 为基于 Java EE 企业应用提供了全面安全服务。安全主要包括两个方面的操作:“认证”和“验证”(或者说是权限的控制)……
阅读全文
posted @
2012-08-31 11:10 fancydeepin 阅读(6451) |
评论 (5) 编辑
java 动态代理(Proxy)
摘要: 动态代理可以提供对另一个对象的访问,同时隐藏实际对象的具体事实,代理对象对客户隐藏了实际对象。动态代理可以对请求进行其他的一些处理,在不允许直接访问某些类,
或需要对访问做一些特殊处理等,这时候可以考虑使用代理。目前 Java 开发包中提供了对动态代理的支持,但现在只支持对接口的实现 ……
阅读全文
posted @
2012-08-27 20:43 fancydeepin 阅读(6414) |
评论 (4) 编辑
java 泛型 深入
摘要: 泛型的主要好处就是让编译器保留参数的类型信息,执行类型检查,执行类型转换(casting)操作,编译器保证了这些类型转换(casting)的绝对无误 ……
阅读全文
posted @
2012-08-25 15:06 fancydeepin 阅读(14303) |
评论 (9) 编辑
java 可变参数
摘要: 可变参数的特点:
1. 在变量类型之后用 "..." 来声明该变量为可变的,"..." 位于变量类型和变量名之间,中间有无空格都行
2. 只能出现在参数列表的最后,作为最后一个参数传递到方法中
3. 可变参数相当于一个长度不确定的数组,在方法体中可以以数组的形式来访问可变参数
阅读全文
posted @
2012-08-24 11:02 fancydeepin 阅读(760) |
评论 (0) 编辑
JFreeChart 生成 折线图(Struts2 + Maven3 + JFreeChart)
摘要: 接上一篇随笔 JFreeChart 生成 柱状图 ,环境及其配置不变,只是将生成柱状图的核心类 CylinderAction 替换成 CurveAction,让 CurveAction来负责折线图的生成
阅读全文
posted @
2012-08-07 12:00 fancydeepin 阅读(2670) |
评论 (1) 编辑
JFreeChart 生成 饼状图(Struts2 + Maven3 + JFreeChart)
摘要: 接上一篇随笔 JFreeChart 生成 柱状图 ,环境及其配置不变,只是将生成柱状图的核心类 CylinderAction 替换成 PieAction,让 PieAction 来负责饼状图的生成
阅读全文
posted @
2012-08-07 10:29 fancydeepin 阅读(2016) |
评论 (0) 编辑
JFreeChart 生成 柱状图(Struts2 + Maven3 + JFreeChart)
摘要: JFreeChart 是一组功能强大、灵活易用的Java绘图API,使用它可以生成多种通用性的报表,包括柱状图、饼图、曲线图、甘特图等。目前 JFreeChart 的最新版本是 1.0.14 ……
阅读全文
posted @
2012-08-07 00:03 fancydeepin 阅读(6589) |
评论 (2) 编辑
java 适配器模式(Adapter)
摘要: 适配器模式(Adapter 模式),将一个类的接口转换成客户希望的另外一个接口。Adapter 模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作 ……
阅读全文
posted @
2012-08-05 16:50 fancydeepin 阅读(1120) |
评论 (0) 编辑
java 建造者模式(Builder)
摘要: Builder 模式 —— 建造者模式(又译成生成器模式)的主要功能是构建复杂的产品,它是将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示...
阅读全文
posted @
2012-08-05 14:03 fancydeepin 阅读(5838) |
评论 (4) 编辑
依赖倒转原则(DIP)
摘要: 依赖倒转原则(Dependence Inversion Principle,简称DIP)讲的是:
1)高层模块不应该依赖底层模块,两个都应该依赖抽象。
2)抽象不应该依赖细节,细节应该依赖抽象。
依赖倒转的另外一种表述是:要针对接口编程,不要针对实现编程。
也就是说,应该使用 java 接口或抽象 java 类进行变量的类型声明、参量的类型声明、方法的返回类型声明、以及数据类型的转换等;
不应该使用具体的 java 类型进行变量的类型声明、参量的类型声明、方法的返回类型声明、以及数据类型的转换等。
阅读全文
posted @
2012-08-04 16:18 fancydeepin 阅读(635) |
评论 (0) 编辑
里氏代换原则(LSP)
摘要: 里氏代换原则(LiskovSubstitution Principle,简称LSP)说的是:一个软件实体如果使用的是一个基类的话,那么一定适用于其子类,而且它根本不能够察觉出基类对象
和子类对象的区别。也就是说,在软件实体里面,把父类都换成其子类,程序的行为是不会发生变化的。
里氏代换原则(LSP):子类型必须能替换掉它的父类型,反过来代换原则不成立。
里氏代换原则是继承复用的基石,只有当衍生类可以替换掉基类,软件单位的功能不会受到影响的时候,基类才能真正被复用,而衍生类也才能够在基类的基础上添加新的行为。
阅读全文
posted @
2012-08-02 13:18 fancydeepin 阅读(881) |
评论 (1) 编辑
开闭原则(OCP)
摘要: 所谓的开闭原则(Open-Closed Principle,简称 OCP)说的是:软件实体(类、模块、功能等)应该可以被扩展,但不可被修改。
开闭原则说白了就是,应该在不修改现有代码的基础上,引入新功能。
开闭原则中的“开”,是指对于组件功能的扩展是开放的,是允许对其进行功能扩展的;开闭原则中的“闭”,是指对于原有代码的修改是封闭的,即不应该修改原有的代码。
而实际上,要做到百分之百的封闭是不可能的,但是在系统设计的时候,还是应该尽量做到这一点。
阅读全文
posted @
2012-08-02 11:03 fancydeepin 阅读(866) |
评论 (0) 编辑