- 浏览: 542116 次
- 性别:
- 来自: 南京
-
最新评论
-
jerry.zhao:
ybzshizds 写道这种用工厂模式解决的办法其实还是有一个 ...
InitialContext和lookup -
小土豆内特:
static class Queue
java实现队列 -
leizisdu:
感谢楼主讲解、分享!
工厂模式 -
kchiu:
写了没什么用
EXT组件xtype简介 -
u010271301:
大哥 能描述的跟详细点么?
浅谈write(byte[] b)和write(byte[] b,int off,int len)的区别
文章列表
委托模式是软件设计模式中的一项基本技巧。在委托模式中,有两个对象参与处理同一个请求,接受请求的对象将请求委托给另一个对象来处理。委托模式是一项基本技巧,许多其他的模式,如状态模式、策略模式、访问者模式本质上是在更特殊的场合采用了委托模式。委托模式使得我们可以用聚合来替代继承,它还使我们可以模拟mixin。
“委托”在C#中是一个语言级特性,而在Java语言中没有直接的对应,但是我们可以通过动态代理来实现委托!
代理有3个角色
1:抽象主题角色.声明了代理主题和真实主题的公共接口,使任何需要真实主题的地方都能用代理主题代替. 2:代理主题角色.含有真实主题的引用,从而 ...
外观模式(又称门面模式)是软件工程中常用的一种软件设计模式。它为子系统中的一组接口提供一个统一的高层接口。使用子系统更容易使用。
结构
Facade
这个外观类为子系统中Packages 1、2、3提供一个共同的对外接口
Clients
客户对象通过一个外观接口读写子系统中各接口的数据资源。
Packages
客户可以通过外观接口读取的内部库。
示例
Java
这是一个抽象的示例。一个客户“you”通过外观接口“computer”获取计算机内部复杂的系统信息。
/* Complex parts ...
java模式之单例模式: 单例模式确保一个类只有一个实例,自行提供这个实例并向整个系统提供这个实例。特点: 1,一个类只能有一个实例 2,自己创建这个实例 3,整个系统都要使用这 ...
1.按姓氏笔画排序:Select * From TableName Order By CustomerName Collate Chinese_PRC_Stroke_ci_as //从少到多
2.数据库加密:select encrypt('原始密码')select pwdencrypt('原始密码')select pwdcompare('原始密码','加密后密码') ; 1--相同;否则不相同 encrypt('原始密码')
3.获取表的列
select name from syscolumns where id=object_id('salechance')
同
select nam ...
FusionChartsFree是一个flash报表组件,用法很简单,也很实用哦!
首先,登录官网,到下载地址,下载程序包,此程序包有包括官方的帮助文档,Flash SWF 文件,Flash Fla源码文件,实例Demo和JavaScript (FusionCharts.js)文件。更让人欣慰的是,无需任何安装只需要简单的文件移动即可。由于FusionCharts Free主要使用XML 数据来作为其数据源,并且其提供两种方法来导入数据。即指定XML数据URL方法setDataURL和指定XML片段的方法setdataXML
下面使用官网的一个例子,来建立一个简单的3 ...
一、spring实现的2种设计模式
工厂模式
单态模式
注:spring默认将所有的bean设置成单态模式,无须自己实现单态模式.spring工厂模式不仅提供了创建bean的功能,还提供对bean生命周期的管理。最重要的还管理bean与bean之间的依赖关系。
二、依赖注入(DI:Dependency Injection)
依赖注入通常有2种
设值注入(通过setter方法)
<property name="axe">
<ref local="stoneAxe">
</property>
构造注入(通 ...
1.replace
String a="|a=2|b=3|c=4";
a.replace("|", "&");
System.out.print(a);
System.out.print(a.replace("|", "&"));
打印出的结果是:|a=2|b=3|c=4
&a=2&b=3&c=4
<jsp:useBean id="product" class="test.Product" scope="session"></jsp:useBean> <jsp:useBean id="product" type="test.Product" scope="session"></jsp:useBean> 以上的两种写法,当product!=null两者视乎没什么区别,若使用session.setAttribute(" ...
Hibernate查询体系分4种过滤数据的方式
一、HQL(Hibernate Query Language)是面向对象的查询语言。
HQL操作的对象是类、实例、属性等
步骤
1.获取Hibernate Session对象
2.编写HQL语句
3.以HQL语句作为参数,调用Session的CreateQuery方法创建查询对象
4.如果HQL包含参数,调用Query的setXXX方法为参数赋值
5.调用Query对象的list等方法返回查询结果
注意分页的
setFirstResult(int firstResult)//返回结果集从第几条数据开始
se ...
一、AOP 概念 Joinpoint:它定义在哪里加入你的逻辑功能,对于Spring AOP,Jointpoint指的就是Method。
Advice:特定的Jointpoint处运行的代码,对于Spring AOP 来讲,有Before advice、AfterreturningAdvice、ThrowAdvice、AroundAdvice(MethodInteceptor)等。
Pointcut:一组Joinpoint,就是说一个Advice可能在多个地方织入,
Aspect:这个我一直迷惑,它实际是Advice和Pointcut的组合,但是Spring AOP 中的Adviso ...
1.软件开发过程(比较成熟)
Rational Unified Proccess(RUP)
Open process
Object-oriented Software Process(OOSP)
Extreme Programming(XP)
Catalysis
Dynamic System Development Method DSMP
2.RUP是一套软件工程方法
特点:RUP的二维开发模型(横轴表时间、纵轴 ...
1.用例中的包含和扩展区别
从概念上讲
包含关系:通常是指一个大的用例包含了几个小的用例,几个小的用例组成一个大的用例;扩展关系:两个独立的用例,完成一个后可以开启另一个,两个用例本身都是独立的。
从业务角度来讲
一个事件可以包含其他的事件,这取决于对事件粒度的划分;
一个事件也可以被扩展,这取决于现在是否需要实现这部分的功能。
举例
包含关系:比如在自动售货机里面,向柜里增加货品,那么必然包括打开柜门和关上柜门, 这就是包含关系,也就是说做基事件的时候,必然会做它所包含的事件。扩展关系:是说做基事件之后,我可能做扩展事件,也可能不做。
2.聚合和组合的区别
(1 ...
UML基础(一)
1.软件工程的生命周期需求捕获、系统分析与设计、系统实现、测试、维护
2.UML(Unified Modeling Language统一建模语言)概述
3.UML组成视图(View)是一个或多个图组成的对系统某个角度的抽象图(Diagram)是模型元素集的图形表示模型元素(Model Element)代表面向对象中的类、对象、接口、消息和关系的概念通用机制(General Mechanism)用于表示其他信息,如注释、模型元素的语义等
4.视图视图由图组成,UML提供9种不同的视图,其中视图的包括
用例视图(强调系统功能)也称用户模型视图用例图
逻辑视图( ...
tomcat基本配置
1.端口修改:在conf下的server.xml中修改<Connector port="8080" ......
2.登录控制台:在admin和manager下的web.xml中会发现role-name 分别是admin和manager,因此需要在conf的tomcat-user.xml中配置这2个角色和用户。
3部署:有4种方式分别如下,使用控制台部署、修改server.xml文件部署web应用、利用tomcat自动部署(直接复制到webapp文件夹下,tomcat就会自动加载该web应用)、增加用户的部署文件(在Catalina/loca ...
简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。
◆轻量——从大小与开销两方面而言Spring都是轻量的。完整的Spring框架可以在一个大小只有1MB多的JAR文件里发布。并且Spring所需的处理开销也是 ...