- 浏览: 282907 次
- 性别:
- 来自: 宁波
最新评论
文章列表
环境 spring 3 + junit4.8
第一种方法 老版本里常用 AbstractTransactionalDataSourceSpringContextTests
首先引入 junit4.8jar包 ,一般eclipse自带的library里是有的,可以直接引入
spring方面要引入 org.springframework.test-3.0.5.RELEASE.jar包
创建一个basetestcase类
继承AbstractTransactionalDataSourceSpringContextTests
public abstract clas ...
android api
- 博客分类:
- 移动开发
http://developer.android.com/reference/packages.html
java 职责链模式
- 博客分类:
- 设计模式
职责链模式:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的藕合关系。将这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。
1.当客户提交一个请求时,请求是沿链传递直至有一个ConcreteHandler对象负责处理它。
2.接收者和发送者都没有对方的明确信息,且链中的对象自己也并不知道链的结构。结果是职责链可简 化对象的相互连接,它们仅需保持一个指向其后续者的引用,而不需保持它所有的候选接受者的引用。 3.可随时地增加或修改处理一个请求的结构。增加了给对象指派职责的灵活性。 4.需事先考虑全面,一个请求极有可能到了链的末端都得不到处理, ...
java 外观模式 facade
- 博客分类:
- 设计模式
package facade;
/**
* 外观模式 一个卖家的接口
* @author Administrator
*
*/
public interface Sell {
/**
* 出售
*/
public void sell();
}
package facade;
/**
* 相当于子系统(卖鱼者)
* @author Administrator
*
*/
public class FishSell {
public void sell(){
System.out.println("i ...
package state;
/**
* 状态模式
* @author Administrator
*
*/
public interface RiceState {
/**
* 取的状态
*/
public void showState();
}
package state;
public class FruitState implements RiceState {
@Override
public void showState() {
System.out.println("this is a fru ...
sql server 2005 存储过程
- 博客分类:
- 数据库
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO
drop proc proc_remove_same_stu
go
create proc proc_remove_same_stu as
begin
declare @stuid varchar(500)
declare @stuNum int
declare stuid_cursor cursor for select stuid from student_graduate group by stuid having count(stuid)>=2
open stuid_ ...
java 备忘录模式
- 博客分类:
- 设计模式
package memento;
/**
* 备忘录(用于存放状态的类)
* @author Administrator
*
*/
public class Memento {
private String state;
public Memento(String state){
this.state = state;
}
public String getState() {
return state;
}
public void setState(String state) {
this.state = state; ...
java Command 简单命令模式
- 博客分类:
- 设计模式
package command;
/**
* 接受者
* @author Administrator
*
*/
public class Receiver {
public void doCommand1(){
System.out.println("command1 has been done");
}
public void doCommand2(){
System.out.println("command2 has been done");
}
}
package comman ...
模板方法”简单理解就是:将关键的业务方法、逻辑或算法封装起来,而把具体的一些容易变化的步骤留给子类来进行具体不同的设置,具体表现就是实现父类的方法。
一般情况下,模板方法的实现由继承来实现。父类为抽象类,封装了 public final 类型的公共方法,此方法即为关键的业务方法、逻辑或算法。具体实现见下面的代码:
package template;
/**
* 模板方法 获得各种动物的腿和手的个数
* @author Administrator
*
*/
public abstract class Template {
/**
* final 不 ...
oracle 代替 update from
- 博客分类:
- 数据库
可以用子查询代替
update tablea set a=(select b.a from tableb b,tablea a where a.c=b.c and 限定范围的条件如 b.d in (....))
where exists (select 1 from tableb b,tablea a where a.c=b.c and 限定范围的条件如 b.d in (....))
例如 这里把表 student_history 的操作时间更新成student_graduate 里的bydate一致 (只是其中2个班级的)
update student_history a set ...
oracle 执行存储过程方法
- 博客分类:
- 数据库
存储过程 p_test
里面有3个参数p_schoolid ,p_classid ,p_classname
执行方法如下
begin p_test(p_schoolid => 'FF80808135C3B2770135C48CFE392298',p_classid =>'FF80808137C594270137D915C1F93031',p_classname => '初三(05)班' );end;
java iterator 迭代器模式
- 博客分类:
- 设计模式
package iterator;
import java.util.Iterator;
/**
* 具体创建迭代器的类 实现了iterator接口
* @author Administrator
*
*/
public class MyIterator<T> implements Iterator<T>{
private T[] list;
private int index = -1;
public MyIterator(T[] list){
this.list=list;
}
@Override
p ...
java 访问者模式
- 博客分类:
- 设计模式
package visitor;
public interface Visable {
public void accept(PersonVisitor visitor);
}
package visitor;
public class Hand implements Visable{
private String name;
public Hand(String name){
this.name=name;
}
/**
* 可以接受访问的方法
* @param visitor
*/
public void accept(P ...
java builder 简单建造者模式
- 博客分类:
- 设计模式
package builder;
/**
* 建造者接口,用于定义建造者要实现的公共方法(也可以不使用接口用抽象类甚至是普通类代替)
* @author Administrator
*
*/
public interface Builder {
/**
* 建造
*/
public void addBuild(String thing);
/**
* 成果
*/
public void getResult();
}
package builder;
import java.util.List;
public ...
原型模式 即对象的克隆复制
原型模式定义: 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象.
分为浅拷贝和深拷贝
Java语言的构建模型直接支持原型模型模式,所有要克隆的类必须实现一个标识接口Cloneable。所有的类都有一个Clone()方法(Object提供)。克隆满足的条件:对于任何对象x,都有x.clone()!=x,换言之,克隆的对象不是原来的对象;x.clone().getClass()==x.getClass(),换言之,克隆的对象与原对象是同一类型。x.clone().equals(x)成立
package prototype;
/**
...