MVC
Module
实现功能,实现业务逻辑
view
显示,与用户进行交互的界面
controller
流程调度的控制
jsp + java bean
显示逻辑 业务逻辑分开 , jsp兼任 了流程调度的工作
<jsp:forward xxx />
jsp + servlet + javabean
增加了一个单独的流程控制器 。增加了一个集中控制点 。
1) url-pattern *.do
2) request ---> servlet getServletPath();
3) 根据servletPath 从配置文件中找到javabean的名称 。
4) Class.forName( ) 创建javaBean的对象。
5) 调用 javabean 的方法 。( Action )
6) execute方法返回下一个页面的URL
7) request.getRequestDispatcher( URL ).forward( ) ;
==================== struts ======================
struts : apache开发的一个基于 MVC 的实现 。
jsp + servlet + javabean 的方式 。
Servlet : 作调度器
接口 : 让所有的javaBean 都来实现 。
配置文件 :配置 servletPath 与 javaBean的对应关系 。
========================================================
使用Struts之前要作一些准备工作 :
1) 将struts提供的jar文件拷贝到web应用提供的classpath下
webapps/appname/WEB-INF/lib里
2) 在自己的WEB-INF目录下,创建struts需要的配置文件
struts-config.xml , 可以从struts提供的例子中拷贝 。
3) 将 struts.jar 配置到classpath中 。
4) 在自己的web.xml中配置struts提供的servlet(控制器)
<servlet>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>2</param-value>
</init-param>
<servlet-name>actionServlet</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>actionServlet</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
A 4
B 3
C 7
B A C
=====================================================
开发 :
1) jsp
2) java bean extends org.apache.struts.action.Action
Override public ActionForward execute()
3) 在配置文件中 指定请求和javabean的对应关系 。
<action-mappings>
<action path="/login" type="com.kettas.mvc.bean.LoginAction">
<forward name="" path=""/>
<forward name="" path=""/>
<forward name="" path=""/>
</action>
</action-mappings>
4) return jsp
=====================================================
1) login.jsp
2) LoginAction exends Action
override execute(... )
3) 修改 /WEB-INF/struts-config.xml
=======================================================
No action instance for path /login could be created
======================================================
resource file
存放位置 :
存放在web应用的classpath下 , WEB-INF/classess
格式 :
properties
1) 编写
2) 配置,告诉struts这个资源文件的存在
struts-config.xml
<message-resources parameter="res.AppResources" />
3) 在jsp中使用资源文件的内容
<bean:message key="login.title"/>
javax.servlet.jsp.JspException: Missing message for key "login.userName"
ActionForm
用于封装表单提交的数据 。
1) java 代码编写一个ActionForm 类型 。
成员变量 : ------> jsp 中的表单决定 。
get/set
2) 通过配置告诉struts这个ActionForm的用法 。
ActionForm ---- request
3) 在 Action 的 execute方法中使用ActionForm
ActionForm ----> validate()
request ---> create ActionForm
ActionForm.validate()
ok ----> execute();
fail ---->
5 ActionMessage
a m1 m2 m3
b m4 m5
需要在jsp中显示错误信息 。
<html:errors />
=======================================================
1) 覆盖父类的Validate方法 。
错误的提示信息应来自与资源文件
2) 在struts-config.xml中对验证进行配置 。
增加 validate="true" input="";
3) 在错误页面上显示错误信息 。
<html:errors />
Struts2.0培训笔记
需积分: 0 146 浏览量
更新于2008-01-30
收藏 1.48MB RAR 举报
Struts2.0是Java Web开发中非常重要的一个框架,它是基于MVC(Model-View-Controller)设计模式的开源框架,旨在简化企业级应用程序的开发。本培训笔记将深入探讨Struts2.0的核心概念、特性以及如何在实际项目中有效应用。
一、Struts2.0框架基础
Struts2.0是Apache软件基金会的项目,它是Struts1.x的升级版,提供了更强大的功能和更好的性能。该框架通过拦截器机制,实现了请求处理的灵活性,支持多种视图技术如JSP、FreeMarker等,并且与Spring、Hibernate等其他框架集成良好。
二、MVC设计模式
MVC模式是Web应用开发中的经典设计模式,Model代表业务逻辑,View负责数据显示,Controller处理用户请求并协调Model和View。Struts2.0很好地实现了这一模式,使得开发者能清晰地分离关注点,提高代码可维护性和可扩展性。
三、Action与结果
在Struts2.0中,Action类是处理用户请求的核心,它包含了业务逻辑。每个Action都有一个或多个结果,根据业务逻辑的不同,Action执行后会跳转到不同的结果页面。结果可以是静态HTML、JSP、FreeMarker模板等。
四、配置与注解
Struts2.0的配置方式有两种:XML配置和注解配置。XML配置主要用于全局设置,而注解则可以直接在Action类上定义,使得配置更为简洁。同时,Struts2.0支持插件式配置,开发者可以根据需要选择和定制功能。
五、拦截器
拦截器是Struts2.0的一大特色,它是一种AOP(面向切面编程)机制,可以在Action执行前后插入自定义逻辑。例如,登录检查、日志记录、性能监控等都可以通过拦截器实现,增强了框架的灵活性。
六、Struts2.0与Spring集成
在企业级应用中,Spring框架通常用于管理Bean和事务控制。Struts2.0可以方便地与Spring集成,实现Action的依赖注入,使开发更高效。同时,Spring的AOP功能也能与Struts2.0的拦截器协同工作,提供更全面的功能。
七、异常处理
Struts2.0提供了完善的异常处理机制,包括全局异常处理和Action级别的异常处理。当业务逻辑抛出异常时,可以指定特定的结果页面来显示错误信息,提高了用户体验。
八、国际化与本地化
Struts2.0支持多语言环境,可以通过配置文件实现页面内容的国际化,为不同地区的用户提供本地化的服务。
九、 strut2的过滤器
Struts2.0框架的核心是StrutsPrepareAndExecuteFilter过滤器,它负责拦截HTTP请求,将请求转发给Struts2的处理器,从而执行Action。
总结:
Struts2.0作为一款成熟的Java Web开发框架,其强大的功能和灵活的设计模式使其在Web开发领域占有一席之地。通过深入学习和实践Struts2.0,开发者可以提高开发效率,创建出结构清晰、易于维护的Web应用。在实际项目中,理解并熟练运用MVC模式、拦截器、Action与结果、配置方式、异常处理以及国际化等核心概念,将对提升项目质量和开发效率大有裨益。

xbhe8301
- 粉丝: 0
最新资源
- 形态学图像处理小结.doc
- 基于CMMI的软件工程讲义.ppt
- (源码)基于Adafruit硬件的锂电池状态监控器.zip
- (源码)基于Arduino的物联网项目.zip
- 基于 Java 的小区物业管理系统设计与实现 小区物业综合管理系统的 Java 开发方案 Java 技术的现代化小区物业管理系统构建 面向小区物业的 Java 综合管理平台设计 基于 Java EE
- (源码)基于Go语言和Vue框架的个人博客管理系统.zip
- (源码)基于Arduino的简单电路应用.zip
- (源码)基于Django框架的短视频共享网站.zip
- (源码)基于TensorRT的Yolo目标检测模型实现.zip
- (源码)基于C语言STM32L4xx的嵌入式任务调度器.zip
- (源码)基于Arduino的Sonoff自定义固件项目.zip
- (源码)基于Flask和React的数据库CRUD管理系统.zip
- java毕业设计,教学资料管理系统
- (源码)基于React框架的博客后台管理系统.zip
- (源码)基于LWM2M协议的物联网设备管理.zip
- java毕业设计, 公司项目管理系统