您的位置:首页 > 编程语言 > Java开发

struts1 使用说明

2017-09-23 17:50 281 查看

Struts1

apache公司提
4000
供的开源子项目、是基于MVC设计模式的web层(VC)实现、是出现最早的web层框架、应用广泛。关注重点是Controller。

1、为什么使用框架?

帮助我们快速构建项目、提升程序系统功能。让我们编程时更多的关注业务逻辑、而不是系统问题。

2、Struts1组成

1、ActionServlet 核心控制器

2、FormBean 映射我们前端的form表单

3、Action 动作-用例

4、ActionForward 转向

5、struts-config.xml 配置struts相关内容

配置Struts1

(1)添加jar包

(2)配置web-xml添加

<!-- struts1的配置信息 -->
<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>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<!-- end -->


(3)配置struts-config.xml

<!-- 控制层和业务层的接口:Action -->
<action-mappings>
<!-- path是Action的访问路劲、name是关联的FormBean -->
<!-- scope="request":作用域、默认不写是session -->
<action path="/login" name="loginFormBean" type="cn.com.action.LoginAction" scope="request">
<!-- 转向的路劲 -->
<forward name="success" path="/main.jsp" redirect="true"></forward>
<forward name="error" path="/error.jsp"></forward>
</action>
</action-mappings>


(4)创建FormBean继承自ActionForm、其所包含的属性就是前端表单传输的表单输入域的名字。

<input type="text" name="username"/>


(5)创建LoginAction类继承自Action、重写execute方法。参数form就是配置文件中的FormBean。

页面跳转方案:

方案1:转发、服务器转发、所以地址栏不变、乐意携带请求范围内对象继续传递。

request.getRequestDispatcher.forword(“/main.jsp”);

注意/到项目根目录下

方案2:重定向、客户端行为、地址栏改变、可以携带session范围对象传递

reponse.sendRedirector(“/jsp01/main.jsp”);

注意/会到达主机根目录

(6)通过filter过滤中文post请求

通过ActionForm中使用实体类来避免FormBean和实体Bean反复转化的问题。

addBook(Book book);
ActionForm{
int bid;String  bname;String price;String author;
Bookbean bb;
}
BookBean{
int bid;String  bname;String price;String author;
}
Action{
ActionForm actionForm = (ActionForm)form;
addBook(actionForm.getBookBean());
}


实现一个Action处理多个请求。

1、继承自dispatchAction、不要重写默认的execute方法。

2、编写自定义方法、参数和返回值与默认方法相同。

public ActionForward add(ActionMapping mapping, ActionForm form, HttpServletRequest request,
HttpServletResponse response) throws Exception {
}


3、编写struts-config.xml中的Action配置添加参数params。

<!-- /meth.do?method=add   会调用add方法 -->
<action path="/math" parameter="method" name="mathForm" type="cn.com.action.MathAction">
<forward name="success" path="/result.jsp"></forward>
</action>


4、前端网页加传参数method={?}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: