`

struts学习笔记三:文件上传和拦截器的应用

    博客分类:
  • Java
阅读更多

1.拦截器栈可以放多个拦截器

<interceptor-stack name="">

<interceptor-ref name=""></interceptor-ref>

</interceptor-stack>

默认的拦截器栈:不需要调用,默认自己调用了.

<default-interceptor-ref></default-interceptor-ref>

2.拦截器中的观察者模式

PreResultListener 在execute之后,拦截器结束之前执行

3.拦截器实现权限验证

Map map=invocation.getInvocationContext().getSession();

if(null==map.get("user"))

{没有登录返回到登录界面视图

return Action.LOGIN; 一般返回到全局的Login Action,默认的是请求转发

}

else

{

return invocation.invoke();

}

4.全局结果,所有Action都可以使用的.

<global-result>

<result name="login" type="redirect">/login.jsp</result>

</global-result>

防止请求重复提交有两种方式:1,重定向  redirect

2.token(令牌):服务器和客服端各有一个相同的字符串,第一次相同,可以进行处理,然后客服端的字符串改变,第二次提交比对的时候,确认是重复提交.

5.struts的异常处理机制

首先定义自定义处理的异常类,

<exception-mapping result="Invalid" exception="处理类">

全局的异常处理

<globle-exception-mappings>

<exception-mapping result="Invalid" exception="处理类"></globle-exception-mappings>

6.文件上传

注意两点:方法为post,enctype="multipart/form-data"

Action类中注意的:注意引入struts的io包

private File file;//上传的文件

private String fileFileName;//文件的名字

 

execute()

{

InputStream is=new FileInputStream(file);

 

OutputStream os=new FileOutputStream("c:\\"+fileFileName);

 

byte[] buffer=new byte[1024];

int length=0;

 

while(-1!length==is.read(buffer))

{

os.write(buffer,0.length);

}

os.close();

is.close();

}

0
0
分享到:
评论

相关推荐

    struts2 学习重点笔记

    ### Struts2 学习重点知识点总结 #### 一、Struts2 概念与架构 **1.1 Struts2 简介** - **定义**:Struts2 是 Apache 组织提供的一个基于 MVC 架构模式的开源 Web 应用框架。 - **核心**:Struts2 的核心其实是 ...

    struts学习笔记

    ### Struts学习笔记详解 #### 一、Struts框架概览与编码设置 在学习Struts框架时,首要关注的是其编码配置。如代码片段所示,`struts.i18n.encoding`常量被设置为`UTF-8`,这确保了国际化(I18N)资源文件的正确...

    struts2学习笔记

    Struts2是一个强大的MVC(Model-...Struts2的核心配置文件是`struts.xml`,它负责定义Action、拦截器栈、结果类型、包配置等。在这个文件中,你可以声明你的Action类,定义它们对应的方法以及结果页面。例如: ```xml ...

    struts2学习笔记十(第10讲.Struts2的核心 拦截器)

    在Struts2中,拦截器扮演着至关重要的角色,它们是实现业务逻辑和控制流程分离开来的重要组件。本篇将深入探讨Struts2的核心拦截器以及其工作原理。 在Struts2中,拦截器是一个实现了`Interceptor`接口的类,它通过...

    Struts2学习笔记

    根据给定的文件信息,以下是对Struts2学习笔记中涉及的关键知识点的详细解析: ### Struts2框架概览 #### MVC模式的理解与演进 Struts2是基于MVC(Model-View-Controller)模式设计的一种Java Web开发框架。在MVC...

    struts2四天的学习笔记

    13. ** strut2四天笔记**:这份学习笔记可能涵盖了以上所有知识点,包括如何创建Action,配置struts.xml,使用OGNL表达式,处理异常,以及实践中的各种技巧和最佳实践。 在四天的学习过程中,你应该通过实践和理解...

    struts2学习笔记总结

    1. 配置:Struts2的配置文件(struts.xml)用于定义Action、结果类型、包和拦截器链。Action的配置包括Action名称、Class映射、结果和参数等。 2. 拦截器:拦截器是Struts2的核心特性,它们在Action执行前后按顺序...

    struts2学习笔记黑马程序员

    ### Struts2学习笔记之文件上传与Ajax开发 #### Struts2文件上传 **文件上传简介** 文件上传是Web应用中常见的功能之一,Struts2框架内置了对文件上传的支持,使得开发者能够轻松地实现这一功能。为了确保文件...

    struts2学习笔记.doc

    ### Struts2学习笔记知识点概览 #### 一、环境搭建 **1.1 Struts2简介** - **Struts2概述**:Struts2是一个开源的MVC框架,它结合了Struts 1.x、WebWork和其他一些框架的优点。Struts2的主要目标是简化Web应用程序...

    struts2学习笔记十一(第11讲.Struts2的核心 拦截器续)

    在本篇“Struts2学习笔记十一”中,我们将深入探讨Struts2的核心拦截器及其应用。 **1. 拦截器的概念** 拦截器是AOP(面向切面编程)的一部分,在Struts2中,它们作为一系列可插入的处理链,可以在Action执行前后...

    struts2学习笔记(完美总结)——转自OPEN经验库

    在实际项目中,Struts2可以处理类型转换、文件上传下载、拦截器(Interceptor)防止重复提交等问题。Interceptor是Struts2中的重要特性,它允许在Action执行前后插入额外的处理逻辑,如登录验证、日志记录等。深入...

    张龙圣思园struts2学习笔记word

    笔记中可能详细讲解了Struts2的配置文件,如struts.xml,它是整个应用的配置中心,定义了Action的映射、结果类型、拦截器栈等。在Action配置中,我们可以指定Action类、方法以及对应的URL路径,实现请求与业务的关联...

    struts学习笔记(2)

    ### Struts2 拦截器 (Interceptor) 学习笔记 #### 一、拦截器的概念及作用 在Struts2框架中,拦截器扮演着非常重要的角色,它与Java Web开发中的过滤器(Filter)有相似之处但又有显著区别。拦截器的主要作用在于...

    struts2学习笔记三

    在本篇“Struts2学习笔记三”中,我们将探讨Struts2中处理文件上传的核心组件和拦截器,以及如何在实际应用中实现文件上传。 1. 文件上传组件: - jspSmartUpload:这是一个早期用于模型1的上传组件,现在已经被更...

    struts2拦截器笔记

    `struts2_2` 可能指的是 Struts2 的某个特定版本,而 `struts2拦截器笔记.txt` 文件可能包含了关于该版本中拦截器的详细使用和实现方法。通常,笔记会涵盖如何创建自定义拦截器、如何配置拦截器链、以及各种内置拦截...

    struts笔记

    ### Struts框架中的文件上传功能详解 #### 一、引言 在Web应用程序开发中,文件上传是一项常见的需求。...通过本文的学习,开发者可以更好地理解和掌握Struts框架中的文件上传功能,并能够灵活应用于实际项目中。

    struts2学习笔记(1)

    Struts2的核心配置文件是`struts.xml`,它用于定义应用程序的行为和结构,包括Action的映射、拦截器的配置等。 - **操作方法**:将`struts.xml`文件复制到项目的src目录下,并且可以将日志配置文件`log4j....

    Struts2超详细学习笔记分享(献给自学新人)

    本篇超详细学习笔记将带你逐步深入理解Struts2的核心概念和运作机制。 首先,让我们了解Struts2的基本特性。Struts2是一个基于Servlet的框架,它通过将JSP作为视图(View),Servlet作为控制器(Controller),并将...

Global site tag (gtag.js) - Google Analytics