Spring + Struts2联合开发
来源:互联网 发布:粉底液推荐知乎 编辑:程序博客网 时间:2024/05/22 21:46
使用Spring + Struts2完成前台的新闻添加功能,来查看Spring怎样结合Struts2。
加入支持,顺序是 Spring à Struts2
注意,多选择一个Web支持库。
将Struts2擅自加入的Spring2.5支持包删除:
为了让其他框架可以结合Spring进行开发,需要在web.xml中加入以下配置:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/classes/applicationContext.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
将项目部署,并启动服务器,如果看到启动时,提示加载了配置文件,就表示配置成功。
信息: Initializing Spring root WebApplicationContext
可以正常开始开发后台部分的代码:
然后编写页面的操作。
<center>
<ahref="pages/news/news_insert.jsp">添加新闻</a>
</center>
编写添加的表单。
<center>
<s:formaction="news!insert.action"method="post"theme="simple"namespace="/">
新闻标题: <s:textfieldname="news.title"></s:textfield><br/>
新闻内容: <s:textfieldname="news.content"></s:textfield><br/>
发布日期: <s:textfieldname="news.pubDate"></s:textfield><br/>
类型编号: <s:textfieldname="news.typeId"></s:textfield><br/>
<s:submitvalue="提交"></s:submit>
</s:form>
</center>
完成Action的操作,并加入验证功能:
public class NewsAction extends ActionSupport {
private INewsServiceservice;
private Newsnews;
private Stringmessage;
private Stringurl;
// 自动验证方法,如果有错误,会自动返回input页,如果正确,则进入应该进行的操作方法.
// 为了区分要验证的操作,此方法也支持分发,可以针对某一固定操作进行验证,这里针对insert完成验证
public void validateInsert() {
if (news.getTitle() ==null || news.getTitle().trim().equals("")) {
super.addFieldError("title","标题不能为空!");
}
}
public String insert()throws Exception {
service.insert(news);
message = "添加成功" ;
url = "index.jsp" ;
return"forward";
}
配置Spring
<beanid="newsAction"class="org.liky.action.NewsAction">
<propertyname="service">
<refbean="newsServiceImpl"/>
</property>
</bean>
配置Struts
<packagename="root"namespace="/"extends="struts-default">
<actionname="news"class="newsAction">
<resultname="forward">/forward.jsp</result>
<resultname="input">/error.jsp</result>
</action>
</package>
完成forward.jsp和error.jsp
<center>
出现以下错误: <br/>
<br/>
<hr/>
<br/>
<fontcolor="red">
<s:fielderror></s:fielderror>
</font>
<br/>
<inputtype="button"value="返回"onclick="history.back();">
</center>
测试时会发现错误信息不清空,解决方法是将Action不设置为单例模式。
<beanid="newsAction"class="org.liky.action.NewsAction"scope="prototype">
<propertyname="service">
<refbean="newsServiceImpl"/>
</property>
</bean>
- Spring + Struts2联合开发
- buffalo与spring联合开发
- buffalo与spring联合开发
- Spring + JDBC联合开发
- spring+struts+hibernate联合开发说明
- 基于Spring Boot和Kotlin的联合开发
- Spring + JDBC + Struts联合开发(实现单表的CRUD)
- Spring + Struts + Hibernate联合开发(多对一关系)
- SSH框架联合开发(Annotation精简Spring的配置文件)
- Spring + Struts + Hibernate联合开发(多对一关系)
- SSH框架联合开发(Annotation精简Spring的配置文件)
- Spring + JDBC + Struts联合开发(实现单表的CRUD)
- spring struts2
- struts2+spring
- spring+struts2
- Spring+Struts2
- Spring+Struts2
- spring/struts2
- android.graphics.Canvas类详解
- 破解windows2008(R2)登录密码方案
- 深入学习JavaScript: apply call方法 详解(转)
- 111111
- CorePLotLib学习笔记(三):曲线图
- Spring + Struts2联合开发
- 最后能够用一段话介绍某一个娱乐城
- c# 委托事件 看到的几篇好文章
- 产生n位的随机数
- lucene + spring
- 222222222222222222222222
- git Bush应用崩溃If no other git process is currently running, this probably means a git process crashed
- 手游项目使用Jenkins搭建持续集成系统
- Windows启动过程