连接池预先同数据库建立一些连接,放在内存中,应用程序需要建立数据库连接时直接到连接池中申请一个就行,用完后再放回去。
struts1和struts2在各方面的简要对比
1、在action实现类方面:Struts1要求Action类继承一个抽象基类。Struts2 action类可以实现一个Action接口,也可以实现其他接口,使可选和定制的服务成为可能。
2、表达式语言方面:struts1整合了JSTL,这种表达式语言有基本对象图遍历,但在对集合和索引属性的支持上功能不强大。Struts2在可以使用JSTL的前提下,还整合了一种更加强大和灵活的表达式语言OGNL。所以,表达式语言功能更加强大。
3、类型转换方面:Struts1ActionForm属性通常都是String类型。Struts1使用Commons-beanutils进行类型转换,每一个类一个转换器,转换器是不可配置的,struts2使用ognl进行类型转换。支持基本数据类型和常用对象之间的转换。
4、数据校验方面:struts1支持在ActionForm重写validate方法中手动校验,或者整合Commons validator校验框架来完成数据校验。struts2支持重写validate方法中进行校验,也支持整合xwork校验框架进行框架。
5、Action执行控制方面:struts1支持每一个模块对应一个请求处理,但是模块中所有Action必须共享相同的生命周期。Struts2支持通过拦截器堆栈为每一个Action创建不同的生命周期。开发者可以根据需要创建相应堆栈,从而和不同的Action一起使用。
6、servlet依赖方面:struts1 Action依赖ServletAPI,struts2 Action不再依赖ServletAPI,从而允许Action脱离web容器运行,降低了测试Action的难度。
7、封装请求参数方面:struts1使用ActionForm封装用户的请求参数。struts2直接使用Action属性封装用户请求。
8、绑定值到视图方面:struts1使用标准的jsp机制把对象绑定到视图页面,struts2使用valuestack技术,使标签库能够访问到值,而不需要把对象和视图页面绑定在一起。
singleton是单态模式的 ,有ioc容器管理 ,当然不是线程安全的啦 ,不过所谓的线程安全也是相对的
如果你的类是没有状态的, 那用singleton 的性能要高一些 ,因为只有一个实例 。
如果你的类是有状态的 ,那就必须显示的设置为prototype了
在ssh2 项目中 , struts2的action交由spring管理的时候 ,spring默认是singleton的 ,而struts2的action显然是有状态的 ,所以必须显示设置为
scope=“prototype”
prototype为原型模式 , 每次action请求过来都会创建一个action
但是对那些Dao的实现类推介scope=“singleton” ,因为这些类没有状态,用singleton只需维护一个实例,显然性能高一些
分享到:
相关推荐
Singleton模式包含的角色只有一个,就是Singleton。Singleton拥有一个私有构造函数,确保用户无法通过new直接实例化它。除此之外,该模式中包含一个静态私有成员变量instance与静态公有方法Instance()。Instance()...
Java常用设计模式(SingleTon、FactoryMethod、AbstractFactory)
C++完美实现Singleton模式
1、没有构造函数(DEFINE_SINGLETON_DEFAULT); 2、有构造函数,构造函数没有参数(DEFINE_SINGLETON_CONSTRUCT_NO_PARAM); 3、有构造函数,构造函数有没有参数版本(DEFINE_SINGLETON_CONSTRUCT_WITH_DEFAULT)...
简单的单例模式举例Singleton 分为恶汉式 懒汉式
单例模式 Singleton 单例模式线程安全问题和拓展
singleton是最常见的设计模式,但是要设计好却是不容易,尤其是多线程的时候,需要考虑线程安全的问题.
Singleton pattern单例模式应用
单例模式,Singleton两种代码实现。一般实现方法,泛型实现方法(推荐)
用VC实现的singleton 模式 在VS03,VC6.0下编译通过
java singleton 不解释不解释不解释不解释
Android Singleton单例模式运用详解
Laravel开发-singleton-pattern 帮助程序包来实现单例类。
Java的Singleton模式代码(免资源分),你会发现Java的Singleton模式真的很有趣,原来程序还可以这样写。
设计模式-Singleton与Factory
李建忠面向对象设计模式视频精讲:Singleton 单件(创建型模式)
此示例展示了Qml 的单例模式(类似全局对象,只生成一次实例,可全局使用) surfsky.cnblogs.com
23种设计模式之三(创建型模式)Singleton模式
Singleton模式: 确保一个类只有唯一的一个实例。 Singleton主要用于对象的创建,这意味着,如果某个类采用了Singleton模式,则在这个类被创建后,它将有且仅有一个实例可供访问。很多时候我们都会需要Singleton...