【基于spring框架的系统】基于Spring框架的WebSphere应用开发2
【shitiku.jxxyjl.com--IBM认证复习指导】
<bean id="viewresolver" class="org.springframework.web.servlet.view.freemarker.freemarkerviewresolver"> <property> <value>><value>.ftl</value></property> </bean> <bean id="freemarkerconfig" class="org.springframework.web.servlet.view.freemarker.freemarkerconfigurer"> <property> <value>/view/</value> </property> </bean>
如果不使用spring的mvc框架而想结合已有的一些mvc框架,spring也是支持的。spring对于常见的mvc框架都提供了支持,包括struts,webwork,tapestry和jsf等。结合使用这些框架的一个好处是可以使用一些已有的熟悉的技术,另外结合spring的aop拦截器可以相对比较容易地处理框架动作共有的事情,比如动作的日志处理等。如果选择这些mvc框架,那么在使用框架的配置文件和应用的spring配置文件都需要做相应的修改。比如使用struts的时候,struts-config.xml配置文件中的映射动作类型一般会设置成org.springframework.web.struts.delegatingactionproxy,或者设置控制器为org.springframework.web.struts.delegatingrequestprocessor。然后需要在相应应的webapplicationcontext中定义与struts action对应的bean。这样就可以充分利用spring的控制反转技术来管理struts的action了。
applicationcontext ctx = new filesystemxmlapplicationcontext("config.xml");
但是按照控制反转的原则,应用程序代码应该尽可能少的知道上下文的设置。因此,在基于spring的web应用中,这样的代码也可以省去。spring可以通过配置让web容器自动装载上下文配置文件。从本质上讲,web应用的servletcontext就是spring用来存放应用上下文的地方。spring中与web context装载相关的有几个类:
<listener> <listener-class> org.springframework.web.context.contextloaderlistener </listener-class> </listener>
如果使用contextloaderservlet,其在web.xml中的配置一般如下:
<servlet> <servlet-name>context</servlet-name> <servlet-class> org.springframework.web.context.contextloaderservlet </servlet-class> <load-on-startup>1</load-on-startup> </servlet>
应用本身可能除了基于http的web渠道之外还通过别的渠道对外提供服务,因此,一个比较好的做法是把展示相关的配置与后面业务处理部分的配置分开。这样如果更改了应用的访问渠道,只需要修改对应的配置文件即可。因此,spring提供了一个webapplicationcontext的概念。在webapplicationcontext中一般包含与web访问相关的配置定义,包括各种控制动作的定义、界面展示的定义等等。webapplicationcontext一般由dispatcherservlet来初始化。在上下文层次结构上可以把它看成是applcationcontext的子上下文。在缺省的情况下,dispatcherservlet装载的配置文件名称为其servlet名称-servlet.xml,但是可以通过contextconfiglocation参数来定制。dispatcherservlet在web.xml中的定义示例如下:
<servlet> <servlet-name>dispatcher</servlet-name> <servlet-class> org.springframework.web.servlet.dispatcherservlet </servlet-class> <load-on-startup>2</load-on-startup> </servlet> <init-param> <param-name>contextconfiglocation</param-name> <param-value>/web-inf/context/webcontrollers.xml</param-value> </init-param>
数据持久化层
public class userdaojdbc extends jdbcdaosupport implements userdao{ … }
如果使用hibernate来实现这个dao的时候,定义的类如下:
public class userdaohibernate extends hibernatedaosupport implements userdao { … }
spring对于其它的o/r映射机制都有相应的抽象类供应用使用,比如对于ibatis有sqlmapclientdaosupport,对于jdo有jdodaosupport等。
<bean id="userdao" class="com.fgw.dao.hibernate.userdaohibernate"> <property> <ref local="sessionfactory"/> </property> </bean>
在这里我们实际dao接口定义是:com.fgw.dao.userdao,而具体实现类为:com.fgw.dao.hibernate.userdaohibernate。显然,对于其它dao的实现,我们只需要在配置文件中修改相应的实现类(具体实现类当然是比不可少的)和属性即可。比如对于jdbc的dao实现,属性就定义成相应的数据源。
本文来源:https://shitiku.jxxyjl.com/ibmrenzhengfuxizhidao/5999.html
- 详细阅读
-
基于spring框架的系统|基于Spring框架的WebSphere应用开发3详细阅读
spring与websphere应用服务器的配合 spring与底层j2ee应用服务器还是存在一些需要结合的地方,这里给出was中的一些结合点。 使用was数据源 在java应用程序中,数据库的连接一般有两种方式来得到。一种是通过java sql drivermanager...
-
工科专业认证 经验|IBM专业认证经验总结(1)详细阅读
以下内容为针对电子商务(811),linux(101,102),aix(191),as 400(052,053),db2(512,513)认证考试的学习心得与经验总结,由2002年度ibm暑期夏令营全体营员经过讨论,整理,总结而成,希望可以给将要参加相应的认证培训的学生提供帮助。 电...
-
[基于spring框架的系统]基于Spring框架的WebSphere应用开发4详细阅读
共享库就是was专门用来解决不同应用程序之间共享jar或本地库文件的一种机制。共享库由一个名字、一个java类路径和 或一个装载jni库本地库路径组成。它可以分别在单元,节点和服务器级别定义。但是共享库定义了并不意味着它会被装载,只有当这个共享库与某个应用程序或应用服务器关联之后,它才...
-
【工科专业认证 经验】IBM专业认证经验总结详细阅读
以下内容为针对电子商务(811),linux(101,102),aix(191),as 400(052,053),db2(512,513)认证考试的学习心得与经验总结,由2002年度ibm暑期夏令营全体营员经过讨论,整理,总结而成,希望可以给将要参加相应的认证培训的学生提供帮助。 电...