㈠ struts2上傳文件問題
推薦你試試dwr方式:
var testsForm = new Ext.FormPanel({.....});
var pa = testsForm .getForm().getValues();獲取所有的值;
user_Dwr.saveUserInfo(pa,function(data){//dwr提交
向後台提交
});
後台:
public boolean saveUserInfo(Map queryParam){
//通過queryParam取得你傳過來formpanel的參數值
String NPerId = queryParam.get("'NPerId'");
}
㈡ struts2怎樣上傳文件到資料庫中
struts2怎樣上傳文件到資料庫中
struts2上傳文件保存到資料庫中,參考代碼如下:
File file=new File("D:/2.jpg");
try {
FileInputStream in=new FileInputStream(file);
int len=0;
byte[] b=new byte[(int) file.length()];
in.read(b);
in.close();
System.out.println(b.length);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
㈢ 如何用struts2上傳視頻
用上傳文件是可以的,不過你要對這個action使用的FileInterceptor的文件大小重新設置。這個局部的設置不影響全局只對此action有效。
㈣ struts2文件上傳
引入commons-fileupload 的jar包,頁面標簽是file類型。後台直接按前台標簽的名字按流讀取就行了。跟普通的上傳下載沒區別。
㈤ struts2上傳
你可以設置struts2上傳文件的最大值。。struts2默認上傳文件的最大值是。。
今天使用Struts2的文件上傳控制項時,在struts.xml中,將處理上傳的action中的fileUpload攔截器的maximumSize參數設置為5000000,上傳了一個3M的文件後發現控制台報錯,而且提示說文件超過2M。Struts.xml相關配置如下:
<action name="FileUpload" class="cn.timefly.strutsTest.FileUploadAction">
<result name="success">/FileUploadResult.jsp</result>
<result name="input">/FileUpload.jsp</result>
<interceptor-ref name="fileUpload">
<param name="maximumSize">500000</param>
<param name="allowedTypes">application/vnd.ms-powerpoint</param>
</interceptor-ref>
<interceptor-ref name="defaultStack" />
</action>
後來嘗試在struts.xml中加入 <constant name="struts.multipart.maxSize" value="9000000"/>
發現一切正常了,不報錯了。功能也正常了。
發現struts.multipart.maxSize和fileUpload攔截器的maximumSize屬性分工不同,總結如下:
1.struts.multipart.maxSize掌控整個項目所上傳文件的最大的Size。超過了這個size,後台報錯,程序處理不了如此大的文件。fielderror裡面會有如下的提示:
the request was rejected because its size (16272982) exceeds the configured maximum (9000000)
2.fileUpload攔截器的maximumSize屬性必須小於struts.multipart.maxSize的值。
struts.multipart.maxSize默認2M,當maximumSize大於2M時,必須設置struts.multipart.maxSize的值大於maximumSize。
3.當上傳的文件大於struts.multipart.maxSize時,系統報錯
當上傳的文件在struts.multipart.maxSize和maximumSize之間時,系統提示:
File too large: file "MSF的概念.ppt" "upload__5133e516_129ce85285f__7ffa_00000005.tmp" 6007104
當上傳的文件小於maximumSize,上傳成功。
㈥ Struts2的上傳問題
你得在tomcat中配置哈子
㈦ 使用struts2如何實現文件上傳
新建Web Project,在WebRoot下新建upload文件夾
在WebRoot下新建upload.jsp,上傳界面
編寫上傳成功、失敗的提示界面。
在WebRoot下新建uploadError.jsp
在WebRoot下新建uploadSuccess.jsp
編寫Action類
配置struts.xml文件,重置fileUpload攔截器。
測試,測試完成之後在tomcat下面webapps目錄下找到項目對應的文件夾下的upload下查看
㈧ 如何實現struts2的文件上傳
(upload.jsp)
<body>
<s:form action="loadPage" namespace="/load" enctype="multipart/form-data">
<s:file name="file" label="select a file"></s:file>
<s:textfield name="newFileName" label="文件新名字"></s:textfield>
<s:submit value="提交"></s:submit>
</s:form>
<s:actionerror/>
</body>
(struts-upload.xml)
<package name="load" extends="struts-default" namespace="/load">
<global-results>
<result name="input">/WEB-INF/pages/load/load.jsp</result>
</global-results>
<action name="load" class="com.tj.beef.action.LoadPageAction" method="input">
</action>
<action name="loadPage" class="com.tj.beef.action.LoadPageAction">
<interceptor-ref name="defaultStack">
<param name="fileUpload.maximumSize">102400</param>
<param name="fileUpload.allowedTypes">image/gif,image/pjpeg</param>
</interceptor-ref>
<param name="loadDir">/img/</param>
<result>/WEB-INF/pages/load/success.jsp</result>
</action>
</package>
(LoadPageAction)
package com.tj.beef.action;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import org.apache.struts2.ServletActionContext;
import com.opensymphony.xwork2.ActionSupport;
public class LoadPageAction extends ActionSupport {
private File file;
private String fileFileName;
private String fileContentType;
private String loadDir;
private String newFileName;
public File getFile() {
return file;
}
public void setFile(File file) {
this.file = file;
}
public String getFileContentType() {
return fileContentType;
}
public String getFileFileName() {
return fileFileName;
}
public void setFileFileName(String fileFileName) {
this.fileFileName = fileFileName;
}
public void setFileContentType(String fileContentType) {
this.fileContentType = fileContentType;
}
public String getLoadDir() {
return loadDir;
}
public void setLoadDir(String loadDir) {
this.loadDir = loadDir;
}
public String getNewFileName() {
return newFileName;
}
public void setNewFileName(String newFileName) {
this.newFileName = newFileName;
}
@Override
public String execute() throws Exception {
System.out.println(file);
System.out.println(fileFileName);
System.out.println(fileContentType);
System.out.println(loadDir);
System.out.println(newFileName);
//get path
String path = ServletActionContext.getServletContext().getRealPath(this.loadDir);
//hava file?
File dir = new File(path);
if(!dir.exists()) {
dir.mkdir();
}
//
FileInputStream fis = new FileInputStream(file);
BufferedInputStream bis = new BufferedInputStream(fis);
File newFile = new File(path,fileFileName);
FileOutputStream fos = new FileOutputStream(newFile);
BufferedOutputStream bos = new BufferedOutputStream(fos);
//
byte[] buf = new byte[4096];
int len = bis.read(buf);
while(len!=-1) {
bos.write(buf,0,len);
len = bis.read(buf);
}
bis.close();
fis.close();
bos.close();
fos.close();
return SUCCESS;
}
@Override
public String input() throws Exception {
// TODO Auto-generated method stub
return INPUT;
}
}
㈨ struts2文件上傳問題
嘗試配置成單例模式呢?