struts2-19-合法用户上传文件
生活随笔
收集整理的這篇文章主要介紹了
struts2-19-合法用户上传文件
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一:登錄頁面?
? ? ? ? ? ?成功:--->upload.jsp
? ? ? ? ? ?失敗:返回錯誤信息(用戶名或者密碼錯誤)
二:上傳文件
? ? ? ? ?登錄成功:上傳成功
? ? ? ? ?未登錄:--->login.jsp+錯誤信息(請登錄)
三:設置攔截器 ?未登錄不能上傳文件 ?nuc.sw.interceptor--->loginIntercetor.java
? ? ?
1 package nuc.sw.interceptor; 2 3 import com.opensymphony.xwork2.Action; 4 import com.opensymphony.xwork2.ActionContext; 5 import com.opensymphony.xwork2.ActionInvocation; 6 import com.opensymphony.xwork2.ActionSupport; 7 import com.opensymphony.xwork2.interceptor.AbstractInterceptor; 8 9 //定義攔截器需要繼承類 10 public class loginInterceptor extends AbstractInterceptor { 11 12 //實現方法 13 @Override 14 public String intercept(ActionInvocation arg0) throws Exception { 15 16 //獲取session中的用戶名 17 ActionContext ctx=arg0.getInvocationContext(); 18 String user=(String)ctx.getSession().get("user"); 19 //判斷邏輯。如果登錄:放行---上傳;未登錄:轉回登錄頁面。 20 if(user!=null && user.equals("zd")){ 21 System.out.print("用戶名是:"+user); 22 return arg0.invoke(); 23 } 24 ((ActionSupport)arg0.getAction()).addActionError("您還沒有登錄;"); 25 return Action.LOGIN;// login 26 } 27 }?
?
四:配置struts.xml
1 <?xml version="1.0" encoding="UTF-8" ?> 2 <!DOCTYPE struts PUBLIC 3 "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" 4 "http://struts.apache.org/dtds/struts-2.3.dtd"> 5 6 <struts> 7 <constant name="struts.devMode" value="true" /> 8 <constant name="struts.multipart.saveDir" value="d:/tmpsaveDir"></constant> 9 10 <package name="default" namespace="/" extends="struts-default"> 11 <!-- 用戶自定義攔截器 --> 12 <interceptors> 13 <interceptor name="logininterceptor" class="nuc.sw.interceptor.loginInterceptor"/> 14 </interceptors> 15 <global-results> 16 <result name="login">/login.jsp</result> 17 </global-results> 18 <action name="loginnnn" class="nuc.sw.action.LoginAction"> 19 <result >/upload.jsp</result> 20 <result name="input">/login.jsp</result> 21 </action> 22 <action name="uploadAction" class="nuc.sw.action.uploadAction"> 23 <!-- 判斷文件類型 大小 擴展名 --> 24 <interceptor-ref name="fileUpload"> 25 <param name="allowedTypes">image/png,image/jpeg,text/plain</param> 26 <param name="maximumSize">655350</param> 27 <param name="allowedExtensions">.png</param> 28 </interceptor-ref> 29 <!-- 文件上傳位置 --> 30 <param name="savePath">d:/uploadRealFile</param> 31 <!-- 上傳返回結果 --> 32 <result name="success">/hello.jsp</result> 33 <result name="input">/upload.jsp</result> 34 <!-- 引用默認棧 --> 35 <interceptor-ref name="defaultStack"/> 36 <!-- 引用自定義的攔截器 --> 37 <interceptor-ref name="logininterceptor"/> 38 </action> 39 </package> 40 </struts>?
?
五:項目結構
?
六:運行結果
?
?
? ? ?
轉載于:https://www.cnblogs.com/Z-D-/p/6053579.html
總結
以上是生活随笔為你收集整理的struts2-19-合法用户上传文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 含泪推荐5款极为实用的软件
- 下一篇: word文档太大怎么压缩到最小?