·解决重复提交的工具——Token令牌<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
三个关键操作:
1.saveToken(Request):在第一次提交时,在网页中,设置一个令牌
2.this.resetToken(request) :在提交处理完成后,将重置网页中的令牌,使其失效
3.this.isTokenValid(request):在提交后,判断网页中的令牌是否有效
·上传文件
Struts中提供了一个SmartUpload组件,可以实现上传文件:
1.在表单中添加一个文件选择框,<html:file propertity="pic"></html:file>
2.在ActionForm中可以通过一个org.apache.struts.upload.FormFile类型去接受这个文件
3.如果要使用用户自定的文件名来命名文件,则可以先提取出文件后缀,然后重新定义文件存储的绝对路径,绝对路径的获取方法是:String uploadPath = this.getServlet().getServletContext().getRealPath("/")+目标文件夹名+文件名
4.用户必须自己写IO流来实现文件在网络上的传输
- publicclassUploadActionextendsAction{
- publicActionForwardexecute(ActionMappingmapping,ActionFormform,
- HttpServletRequestrequest,HttpServletResponseresponse){
- UploadFormuploadForm=(UploadForm)form;//TODOAuto-generatedmethodstub
- //在编写IO流的时候必须有一个明确的绝对路径
- //可是对于WEB程序而言,绝对路径不是固定的
- StringuploadPath=this.getServlet().getServletContext().getRealPath("/")+"upload\\"+uploadForm.getName()+"."+(uploadForm.getPic().getFileName().split("\\.")[1]);
- System.out.println("**"+uploadPath);
- try{
- OutputStreamout=newFileOutputStream(newFile(uploadPath));
- FormFileff=uploadForm.getPic();
- byteb[]=ff.getFileData();
- out.write(b);
- out.close();
- }catch(FileNotFoundExceptione){
- //TODOAuto-generatedcatchblock
- e.printStackTrace();
- }catch(IOExceptione){
- //TODOAuto-generatedcatchblock
- e.printStackTrace();
- }
- returnnull;
- }
- }
发表评论
-
java面试总结(1)——基础知识
2012-07-05 15:54 8641、什么是多态? 多态,父类的引用指向子类的对象,使父类的引 ... -
递归-组合(用背包问题解)
2011-04-01 21:23 747求指定数据的组合,这里的指定数据用一个数组模拟所有可以选择 ... -
Servlet和JSP的线程安全问题
2011-03-25 10:50 771不要定义servlet的类变量,不要使用jsp中的s ... -
Java同步机制浅谈―synchronized
2011-03-25 10:20 989Java对多线程的支持 ... -
代码复用的规则
2011-03-24 17:25 649李炜 北京杰合伟业软件公司产品技术部经理2001 年 7 ... -
java多进程——Java Multiple process (PID)
2011-03-24 10:48 1537Java的多进程运行模式分析 一般我们在java中运行其 ... -
用JSP实现假分页
2008-08-08 10:29 7361.使用MySql数据库建一个表,并添加记录: -- 删除表 ... -
用MVC模式实现真分页
2008-08-23 21:01 523·我们在之前代码上实现一个搜索框 输入查询关键字:< ... -
位运算符
2008-08-24 19:35 339Java 定义的位运算(bitwise operators ) ... -
struts高级技术——解决重复提交和上传文件
2008-08-24 19:44 433·解决重复提交的工具——Token令牌<?xml:nam ... -
从class.forName()说java中的reflection(反射/映像)
2008-09-21 21:19 530先通过我们一个熟悉的例子来说明: 使用JDBC时,我们都会很 ... -
eclipse 自动补全的设置,不用按 alt-/ 了
2011-03-23 11:07 701偶然间看到了这个,或许有和我一样不喜欢按 alt-/ 兄弟用得 ... -
用JSP实现假分页
2008-08-08 10:29 13441.使用MySql数据库建一个表,并添加记录: -- 删除表 ... -
用MVC模式实现真分页
2008-08-23 21:01 1154·我们在之前代码上实现一个搜索框 输入查询关键字:< ... -
位运算符
2008-08-24 19:35 750Java 定义的位运算(bitwise operators ) ... -
java排序大全
2008-08-24 19:42 648java排序大全 插入排序: packag ... -
从class.forName()说java中的reflection(反射/映像)
2008-09-21 21:19 904先通过我们一个熟悉的例子来说明: 使用JDBC时,我们都会很 ...
相关推荐
李兴华Struts Struts高级部分(1)(解决重复提交、上传组件)
struts2令牌解决页面重复提交问题,资源中包含一个实例代码
《Struts2 技术内幕——深入解析Struts2架构设计与实现原理》
struts token机制解决表单重复提交
Struts高级部分(1)(解决重复提交、上传组件)笔记Struts高级部分(1)(解决重复提交、上传组件)笔记
struts2中对表单重复提交的处理方法;包括处理两种典型的表单重复提交的思路和方法
Struts2文件上传下载和表单重复提交问题
核心技术篇首先分析了Struts2中多种具有代表性的设计模式,然后对Struts2中的精华——OGNL表达式引擎和XWork框架的原理及机制进行了全面深入的分析和讲解。运行主线篇首先对Struts2的两大运行主线——初始化主线和...
Struts2 技术内幕——深入解析Struts2架构设计
防止重复提交的总要解决方案 相信对struts的学者有帮助 大家看看
Struts解决重复提交步骤也可以说是struts的令牌机制很有用的啊
Struts2 技术内幕——深入解析Struts2架构设计与实现原理
Servlet、Struts、SpringMVC对于表单重复提交的解决方案
Struts解决重复提交、上传组件+视频
J2EE项目实训——Struts框架技术.rar
运用struts2解决表单的重复提交问题
本资源包含两个学习Struts的资料: 1.struts2基础.chm 2.Struts2+技术内幕——深入解析Struts2架构设计与实现原理.pdf 欢迎有兴趣的童鞋下载学习。
struts——java文件-