SSH框架组合开发J2EE流程总结Word下载.doc
《SSH框架组合开发J2EE流程总结Word下载.doc》由会员分享,可在线阅读,更多相关《SSH框架组合开发J2EE流程总结Word下载.doc(8页珍藏版)》请在冰豆网上搜索。
![SSH框架组合开发J2EE流程总结Word下载.doc](https://file1.bdocx.com/fileroot1/2022-10/7/4c77b389-9fe4-46a6-b186-e3061c6197c1/4c77b389-9fe4-46a6-b186-e3061c6197c11.gif)
,管理整个流程,
对事务的管理,对hibernate的管理(创建数据库的连接),对Struts的管理(管理Struts全部的动作),管理hibernate的Manager和Dao(主要是对Manager中的dao进行对象的注入).
2.主要的配置和代码:
.总的配置web.xml
web.xml是J2EEweb方向的心脏,配置如下:
<
web-app>
<
!
--配置struts-->
servlet>
servlet-name>
action<
/servlet-name>
servlet-class>
org.apache.struts.action.ActionServlet<
/servlet-class>
init-param>
param-name>
config<
/param-name>
param-value>
/WEB-INF/struts-config.xml<
/param-value>
/init-param>
debug<
3<
detail<
load-on-startup>
0<
/load-on-startup>
/servlet>
servlet-mapping>
url-pattern>
*.do<
/url-pattern>
/servlet-mapping>
--配置spring-->
context-param>
contextConfigLocation<
classpath*:
applicationContext-*.xml<
--这里有三个spring的配置文件applicationContext-actions,applicationContext-beans,applicationContext-commons-->
/context-param>
listener>
listener-class>
org.springframework.web.context.ContextLoaderListener<
/listener-class>
/listener>
--这是Spring中的一个编码过滤器-->
filter>
filter-name>
Springcharacterencodingfilter<
/filter-name>
filter-class>
org.springframework.web.filter.CharacterEncodingFilter<
/filter-class>
encoding<
UTF-8<
/filter>
filter-mapping>
/*<
/filter-mapping>
--这个过滤器是用在一个页面请求时,打来Session,生成完页面生关闭Session,这样就可以解决laze-->
hibernateFilter<
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter<
--spring来对hibernate的应用-->
/web-app>
web.xml主要配置基本的动作转发交给struts-config.xml,Spring的监听器listener:
org.springframework.web.filter.CharacterEncodingFilter
乱码的处理UTF-8,和hibernate的小配置org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.
Struts的配置:
Struts-config配置(主要介绍Action的配置,这里的Action为DispathAction)
action-mappings>
--这个进行User的全部操作,一般为这种款式的链接/User.do?
Action=login-->
actionpath="
/User"
type="
org.springframework.web.struts.DelegatingActionProxy"
name="
UserActionForm"
parameter="
Action"
scope="
request"
validate="
false"
>
--登陆转发页面-->
forwardname="
Login_Success"
path="
/user/ShowMessage.jsp"
/>
Login_Failed"
/login_f.jsp"
/>
/action>
Action由操作业务层要用到Spring的注入(构造/设置)的Manager,我代码:
XXXActionextemdsDispathAction{
privateVideoManagervideoManager;
//设置注入
publicvoidsetVideoManager(VideoManagervideoManager){
this.videoManager=videoManager;
}
//后面就可以直接用videoManager去操作业务层了,
}
//这里为什么能注入videoManager,是因为这里的XXXAction由Spring管理,而Struts的Action只是通过org.springframework.web.struts.DelegatingActionProxy让Spring来管理,当产生这个动作,Spring就set注入videoManager到XXXAction的类中.所以这里videoManager有值!
hibernate的配置
主要的hibernate.cfg.xml和javabean的映射,DAO的书写问题
hibernate.cfg.xml和javabean的映射没有什么变化(单用hibernate的经验就ok),主要是DAO的实现问题:
这里可以用Spring提供的类HibernateDaoSupport,很好很强大,这样就不必担心事务(Spring会自动处理),而只是写简短的代码,简化操作,这又体现Spring的管理!
简短代码展示:
XXXDAOImpextendsHibernateDaoSupportimplementsXXXDAO{
publicvoidAddMusic(MusicTOmusic)throwsException{
getHibernateTemplate().save(music);
//这就是添加音乐的代码,够简短吧
这里的XXXDAOImp也要纳入到Spring的管理之中(见后面的Spring配置,主要对Manager里面的DAO进行注入)
4>
Spring的配置
a.applicationContext-actions.xml主要对Struts的动作进行配置(管理全部的Struts动作)
--对user的全部的Action进行处理,这里用到了DispatchAction,链接形如:
NovaMedia/User.do?
Action=Login-->
beanname="
class="
greatwqs.struts.action.UserAction"
propertyname="
userManager"
ref="
/property>
musicManager"
/bean>
b.applicationContext-beans.xml主要对hibernate里面的DAO和Manager进行全部的配置(管理hibern