2.使用Struts框架开发第一个应用
时间:2025-07-11
时间:2025-07-11
2.使用Struts框架开发第一个应用
Struts框架—使用Struts开发第一个应用
东软人才实训中心
3 Sept. 2008 Neusoft Confidential
2.使用Struts框架开发第一个应用
课程结构内容第一章 Struts与MVC框架介绍第二章使用Struts开发的第一个应用第三章 Struts视图组件第四章 Struts控制器组件第五章开发国际化的Struts应用第六章 Validator验证框架第七章 Struts框架中的异常处理第八章 Struts配置第九章 Struts标签库的使用
2.使用Struts框架开发第一个应用
第二章:使用Struts开发第一个应用
目标:本章旨在向学员介绍:通过sayHello例子,学习Struts框架的工作流程及开发流程.
教学方法:讲授ppt+练习
2.使用Struts框架开发第一个应用
Struts组件图中央控制器 Action Servlet struts-config.xml请求处理器 Request Processer
Action Action Action Action业务控制器 execute()
请求
浏览器
业务层 Action Action Action Servlet Servlet JSP Servlet Action Action Action Form Action Form Form Form
响应
自定义标签库
2.使用Struts框架开发第一个应用
使用Struts示例:sayHello/login示例:登录输入用户名,密码
身份验证通过
失败
失败页面
成功页面
2.使用Struts框架开发第一个应用
创建视图层视图层职责— View和用户进行交互提交请求接受响应数据
2.使用Struts框架开发第一个应用
创建视图层Struts中的视图层组件:
视图层( View )JSP组件:登录页面:Login.jsp登录成功页面:Success.jsp登录失败页面:Error.jsp ActionForm组件: LoginForm.java
2.使用Struts框架开发第一个应用
创建视图层—登录页面登录页面Login.jsp:具体代码参见sayHello/WebRoot/jsp/chapter02/login.jsp<form action="login.do" method="post"><table><tr><td>用户名:</td><td><input type="text" name="username"/></td</tr><tr><td>口令:</td><td><input type="password" name="password"/></td></tr><tr><td><input type="submit" value="提交"/></td><td><input type="reset" value="重置"/></td></tr></table></form>8
2.使用Struts框架开发第一个应用
创建视图层—登录成功/失败页面success.jsp:具体代码参见sayHello/WebRoot/jsp/chapter02/success.jsp方式一: hello,${username},使用struts方式登录成功
方式二: hello,<bean:write name="username"/>,使用struts方式登录成功.其中:<bean:write name="username"/>是Struts中最为常用的输出数据的标记 .主要作用是将4种领域(page,request,session,context)中的数据显示出来.
error.jsp:具体代码参见sayHello/WebRoot/jsp/chapter02/error.jsp,这里不再细说.9
2.使用Struts框架开发第一个应用
创建视图层— ActionFormActionForm职责:在视图层和控制层之间相互传递数据.封装客户提交的表单数据到ActionForm类的属性中.表单数据验证.
LoginForm Action
2.使用Struts框架开发第一个应用
创建视图层— ActionFormLoginForm:具体代码参见sayHello/src/com/neusoft/chapter02/LoginForm.javapublic class LoginForm extends ActionForm{ private String username; private String password; public String getUsername(){ return username;该属性必须和客户表单中属性保持相同
} public void setUsername(String username){ http://www.77cn.com.cnername= username;} public String getPassword(){ return password;} public
void setPassword(String password){ this.password= password;}}11
2.使用Struts框架开发第一个应用
创建控制器控制器职责— Controller截获请求分发请求调用业务逻辑请求转向
2.使用Struts框架开发第一个应用
创建控制器
Struts的控制器层(Controller)包含以下两个组件:中央控制器— ActionServlet类: ActionServlet类是Struts框架自带的,它是整个Struts框架的控制枢纽,通常不需要编写或扩展截获请求分发请求业务控制器— Action类: Action类实际上是主要处理用户请求的,需要我们自己开发,开发时必须继承struts框架提供的Action类,然后重写execute方法.调用业务逻辑转向
2.使用Struts框架开发第一个应用
创建控制器—ActionLoginAction:具体代码参见 sayHello/src/com/neusoft/chapter02/LoginAction.javapublic class LoginAction extends Action{ public ActionForward execute (ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception{ LoginForm lf= (LoginForm) form; String username= lf.getUsername(); String password= lf.getPassword(); UserBean user= new UserBean(); user.setUserName(username); user.setPassword(password); UserManager um= new UserManager(); if (um.login(user)){ request.setAttribute("username", username); return mapping.findForward("success");} else{ request.setAttribute("username", username); return mapping.findForward("error");}}}14
2.使用Struts框架开发第一个应用
创建控制器—Actionorg.apache.struts.action.Action的execute( )方法解释:参数:
ActionForm对象:Struts框架会将用户form表单中的数据封装在 ActionForm组件中,也就是ActionForm类.在使用的时候,需要做类型转换,转换后调用ActionForm中的方法来取出用户输入的表单数据. ActionMapping对象:这个对象封装了struts-config.xml文件中 Action的配置信息.与struts-config.xml配置 …… 此处隐藏:1728字,全部文档内容请下载后查看。喜欢就下载吧 ……