`
隐形的翅膀
  • 浏览: 498272 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
1. 访问者模式 访问者模式表示一个作用于某对象结构中的各元素的操作. 它使开发者可以在不改变各元素的类的前提下定义作用于这些元素的新操作 2. 超市中购物的列子 public interface Goods{ double computer(Visitor visitor); } public class Wine implements Goods{ public double accountByBottle(){ return getCount()*getPrice(); } public double computer(Visitor visitor ...

状态模式

1. 状态模式 当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类 2. QQ 有四种状态 离线,登录,在线,忙碌 public interface QQState{ void handle(QQ qq) } public class LeaveState implements QQState { public void handle(QQ qq){ qq.setState(new LoginState()); System.out.println("qq is logining") } } public ...
1. 观察者模式 观察者模式就是定义对象间一种一对多的依赖关系,当一个对象状态发生变化时,所有依赖于它的对象都得到通知并被自动跟新 使用Java提供的接口可以方便的实现观察者模式 2. 股票的例子 public interface StockObserver{ void updatePrice(String name); void updateCount(String name); } 3. 电脑客户端 public class ComputerClient implements StockObserver { public void updatePrice ...
1. Hibernate Session能够在某些时间点,按照缓存中持久化对象的属性变化来跟新数据库,这一过程称为清理缓存 2. 持久化状态,游离状态,临时状态 3. 当使用new 创建一个 Java对象时, JVM会为这个对象分配一块内存空间,只要这个 ...
1. 映射一对多的单向关联关系 订单和客户之间的关系 private Customer customer order.hbm.xml <many-to-one name="customer" //待映射的持久化类的属性名 column="CUSTOMER_ID" //设定和持久化类的属性对应的表的外键 class= ...

AOP基础

1. AOP不能取代OOP,它只是OOP的补充和扩展 2. AOP术语 方面 Aspect: 相当于OOP中的类,就是封装用于横插入系统的功能 通知 Advice: 用于横切的代码不能写在方法中,而要写在和方法类似的实体中,称为通知 Jointpoint:连接点: 切入点(Pointcut): 目标(Target): 代理(Proxy): 织入(Weaving) 3. 4种通知(Advice) 前置通知MethodBeforeAdvice, 后置通知AfterReturningAdvice, 环绕通知AroundAdvice, 异常通知ExceptionAdvice 会传入方法名,参 ...
1. 通过JNDI获得DataSource 不常用 2. 从第三方连接池获得DataSource Jakarta Commons DBCP <bean id="myDataSource" class="org.apache.commons.dbcp.BasicDataSource"> <property name="driverClassName"> <value>com.mysql.jdbc.Driver</value> </property> .. ...

Spring 基础

1. Spring的主要特性 a. 非侵入性框架,解耦 b. 一致性,在任何环境下都可以编程, J2EE,WEB,DESKTOP c. 提高代码重用性 d. 自由选择各种框架 Spirng的核心技术 a. 反向控制 和依赖注入 b. 面向方面编程 2. 装配Bean的两种方法 a. Bean工厂,(org.springframework.beans.factory.BeanFactory) BeanFactory factory = new XmlBeanFactory(new FileSystemResource("src\appliactionContext.xml& ...

策略模式

策略模式 策略模式就是定义了一系列的算法,并将每一个算法封装起来,而他们可以相互替换,策略模式让算法独立于客户端变化 薪资计算 public interface Salary{ ... } public interface Insurance{ .... } public interface Tax{ .... } 实现河北,吉林的具体算法实现类 public class HeBeiSalary implements Salary public class JiLinSalary implements Salary pub ...
模板方法模式 定义一个算法执行的框架,而把具体的算法延迟到子类中来实现 假设一个公司的薪资计算中,包括计算基本工资,社会保险,个人所得税 public abstract class SalaryTemplate{ public void computer(){ computerSalary(); computerInsurance(); computerTax(); } public abstract void computerSalary(); public abstract void ...
1. 自然主键, 代理主键 代理主键,不具备业务含义的字段, 应尽量避免使用自然主键 2. 用 == 比较两个对象的内存地址是否相同, Object类的equals(object o), 也是按内存地址来比较的,如果用户类没有覆盖 equal方法,也是按地址 ...
1. hibernate.properties 配置文件, duurl,dbusername,dbpasswd 2. 创建持久化类 Hibernate并不要求持久化类必须实现java.io.Serializable接口,但是对于采用分布式结构的JAVA应用,当Java对象在不同的进程节点之间传输时,必须序列化这个对象 在Java Web应用中,如果希望对HttpSession中存放的JAVA对象进行持久化,必须实现Serializable接口 Hibernate要求持久化对象必须提供一个不带参数的默认构造方法 public class Custormer implements S ...
1. 软件分层 表述层---->业务逻辑层----->数据库层 新的分层结构 表述层---->业务逻辑层----->持久化层---->数据库层 软件分层的优点 伸缩性,可维护性,可扩展性,可重用性,可管理性。 引入持久化层的好处 代码可重用性高,能够完成所有的数据库访问操作 如果需要,能够支持多种数据库平台 具有相对独立性,当持久化层发生变化时,不会影响上层的实现 2. 对象之间的关系 关联, 一对一,一对多,多对多 依赖 聚集, 聚集指整体和部分的关系,人和手的关系 一般化, 一般化指类之间的集成关系 3. 持久化 狭义的持久化仅仅 ...

Struts2 基础

1. Struts 2 是WebWork的升级版本 2. 在Struts 2 中Action类可以是一个POJO类 3. Strus2 的结构分为四部分     a. JSP/STRUTS2 标签(视图层)     b. ActionSupport的子类(控制层)     c. 处理业务逻辑和数据逻辑的JavaBean(模型层)     d. 用于保存Strus2配置的Strus.xml文件 4. Strus2核心控制器 FilterDispatch    org.apache.Strus 2.dispatcher.filterpatch 5. 流程 浏览器--->FiterD ...

JSP/Servlet

1. JSP Mdel 1 浏览器 <------> JSP/Servlet <------>数据库 2. JSP Model 2 浏览器 <------> 控制器 <---->J模型(avaBean) <------> 数据库                  ^                  |                  |        ...
Global site tag (gtag.js) - Google Analytics