JSP <form action="uploadMusicAction!upload.action" enctype="multipart/form-data">
<div class="size">标题:<input type="text" name="title" class="uploadMusic"/></div>
<div> </div>
<div class="size">文件:<s:file name="upload" cssClass="uploadMusic"/></div>
<div> </div>
<div class="size2"><input type="submit" value="上传" class="uploadButton"></div>
</form>
struts.xml
[color=#00CCFF] <action name="uploadMusicAction" class="uploadMusicSpring">
<interceptor-ref name="fileUpload">
<param name="allowedTypes">
image/bmp,image/png,image/gif,image/jpeg,image/jpg,image/x-png, image/pjpeg
</param>
<!-- 配置允许上传的文件大小,单位字节 -->
<param name="maximumSize">1024000</param>
</interceptor-ref>
<interceptor-ref name="defaultStack"/>
<result name="uploadSuccess">/music/uploadMusic.jsp</result>
</action>
Java类
public class UploadMusicAction { private String message;
private IUploadMusicService uploadMusicService;
private File upload;
private String uploadFileName;
private String uploadContentType;
private String title;
public String upload() throws IOException {
System.out.println("upload======"+upload);
System.out.println("title======"+title);
String path = ServletActionContext.getServletContext().getRealPath("/upload");
System.out.println(path);
if(upload != null){
File savefile = new File(new File(path),uploadFileName);
if(!savefile.getParentFile().exists())
savefile.getParentFile().mkdirs();
try {
FileUtils.copyFile(upload , savefile);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String[] t = uploadContentType.split("/");
for(String s : t)
System.out.println(s);
}
message = "uploadSuccess";
return "uploadSuccess";
} public String getMessage() {
return message;
} public void setMessage(String message) {
this.message = message;
} public void setUploadMusicService(IUploadMusicService uploadMusicService) {
this.uploadMusicService = uploadMusicService;
} public File getUpload() {
return upload;
} public void setUpload(File upload) {
System.out.println("执行?");
this.upload = upload;
} public String getTitle() {
return title;
} public void setTitle(String title) {
this.title = title;
} public String getUploadFileName() {
return uploadFileName;
} public void setUploadFileName(String uploadFileName) {
this.uploadFileName = uploadFileName;
} public String getUploadContentType() {
return uploadContentType;
} public void setUploadContentType(String uploadContentType) {
this.uploadContentType = uploadContentType;
}
}
一执行upload就是null的,帮忙看看原因,谢谢!strutsupload
<div class="size">标题:<input type="text" name="title" class="uploadMusic"/></div>
<div> </div>
<div class="size">文件:<s:file name="upload" cssClass="uploadMusic"/></div>
<div> </div>
<div class="size2"><input type="submit" value="上传" class="uploadButton"></div>
</form>
struts.xml
[color=#00CCFF] <action name="uploadMusicAction" class="uploadMusicSpring">
<interceptor-ref name="fileUpload">
<param name="allowedTypes">
image/bmp,image/png,image/gif,image/jpeg,image/jpg,image/x-png, image/pjpeg
</param>
<!-- 配置允许上传的文件大小,单位字节 -->
<param name="maximumSize">1024000</param>
</interceptor-ref>
<interceptor-ref name="defaultStack"/>
<result name="uploadSuccess">/music/uploadMusic.jsp</result>
</action>
Java类
public class UploadMusicAction { private String message;
private IUploadMusicService uploadMusicService;
private File upload;
private String uploadFileName;
private String uploadContentType;
private String title;
public String upload() throws IOException {
System.out.println("upload======"+upload);
System.out.println("title======"+title);
String path = ServletActionContext.getServletContext().getRealPath("/upload");
System.out.println(path);
if(upload != null){
File savefile = new File(new File(path),uploadFileName);
if(!savefile.getParentFile().exists())
savefile.getParentFile().mkdirs();
try {
FileUtils.copyFile(upload , savefile);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String[] t = uploadContentType.split("/");
for(String s : t)
System.out.println(s);
}
message = "uploadSuccess";
return "uploadSuccess";
} public String getMessage() {
return message;
} public void setMessage(String message) {
this.message = message;
} public void setUploadMusicService(IUploadMusicService uploadMusicService) {
this.uploadMusicService = uploadMusicService;
} public File getUpload() {
return upload;
} public void setUpload(File upload) {
System.out.println("执行?");
this.upload = upload;
} public String getTitle() {
return title;
} public void setTitle(String title) {
this.title = title;
} public String getUploadFileName() {
return uploadFileName;
} public void setUploadFileName(String uploadFileName) {
this.uploadFileName = uploadFileName;
} public String getUploadContentType() {
return uploadContentType;
} public void setUploadContentType(String uploadContentType) {
this.uploadContentType = uploadContentType;
}
}
一执行upload就是null的,帮忙看看原因,谢谢!strutsupload
你要把这个form表单设置为post提交的方式。
<form action="uploadMusicAction!upload.action" method="post" enctype="multipart/form-data">