ajax 向action文件传值有关问题
ajax 向action文件传值问题
文件上传功能 我为了页面无刷新 我悬着 ajaxfileupload.js 上传文件
ajax url 指向到action文件
我想问一下
需要做哪些设置 1. URL 怎么写 来指定 action文件 2. strust.xml文件需要做配置吗?
3.还有 action文件执行上传后 如何 返回页面的
------解决思路----------------------
用这个很简单,
url ,就是你要请求处理上传文件的控制器,
$.ajaxFileUpload({
url : 'xxxx',// 需要链接到服务器地址
fileElementId : 'pictureFile',// 文件选择框的id属性
dataType : 'json',// 服务器返回的格式,可以是json
success : function(data) {
//上传完成
}
});
如果没有使用注解, strust.xml 配个路径执行一个action ,action做下面的操作,就好了
后台处理,
protected void doUpload(HttpServletRequest request, HttpServletResponse response) {
boolean isMultipart = ServletFileUpload.isMultipartContent(request);
if (isMultipart) {
FileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
User user = (User) request.getSession().getAttribute("user");
Iterator items;
try {
items = upload.parseRequest(request).iterator();
String webRoot = request.getSession().getServletContext().getRealPath("/");
PrintWriter out = response.getWriter();
while (items.hasNext()) {
FileItem item = (FileItem) items.next();
if (!item.isFormField()) {
if (item.getSize() <= 0
------解决思路----------------------
ObjectUtils.isNull(item.getName())) {
continue;
}
String ext = getExt(item);
String pathdir = webRoot + File.separatorChar + "upload" + File.separatorChar + user.getId();
/**
* if(!ext.equals("jpg")&&!ext.equals("jpeg")&&!ext.equals("png")&&!ext.equals("gif")){
*
* continue; }
*/
String filename = UUID.randomUUID().toString() + "." + ext;
File file = new File(pathdir + File.separatorChar + filename);
if (!file.getParentFile().exists()) {
file.getParentFile().mkdirs();
}
item.write(file);
out.print("{\"status\":1,\"filename\":\"" + filename + "\"}");
out.close();
}
}
} catch (Exception e) {
LOG.log(Level.SEVERE, null, e);
}
}
}
文件上传功能 我为了页面无刷新 我悬着 ajaxfileupload.js 上传文件
ajax url 指向到action文件
我想问一下
需要做哪些设置 1. URL 怎么写 来指定 action文件 2. strust.xml文件需要做配置吗?
3.还有 action文件执行上传后 如何 返回页面的
------解决思路----------------------
用这个很简单,
url ,就是你要请求处理上传文件的控制器,
$.ajaxFileUpload({
url : 'xxxx',// 需要链接到服务器地址
fileElementId : 'pictureFile',// 文件选择框的id属性
dataType : 'json',// 服务器返回的格式,可以是json
success : function(data) {
//上传完成
}
});
如果没有使用注解, strust.xml 配个路径执行一个action ,action做下面的操作,就好了
后台处理,
protected void doUpload(HttpServletRequest request, HttpServletResponse response) {
boolean isMultipart = ServletFileUpload.isMultipartContent(request);
if (isMultipart) {
FileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
User user = (User) request.getSession().getAttribute("user");
Iterator items;
try {
items = upload.parseRequest(request).iterator();
String webRoot = request.getSession().getServletContext().getRealPath("/");
PrintWriter out = response.getWriter();
while (items.hasNext()) {
FileItem item = (FileItem) items.next();
if (!item.isFormField()) {
if (item.getSize() <= 0
------解决思路----------------------
ObjectUtils.isNull(item.getName())) {
continue;
}
String ext = getExt(item);
String pathdir = webRoot + File.separatorChar + "upload" + File.separatorChar + user.getId();
/**
* if(!ext.equals("jpg")&&!ext.equals("jpeg")&&!ext.equals("png")&&!ext.equals("gif")){
*
* continue; }
*/
String filename = UUID.randomUUID().toString() + "." + ext;
File file = new File(pathdir + File.separatorChar + filename);
if (!file.getParentFile().exists()) {
file.getParentFile().mkdirs();
}
item.write(file);
out.print("{\"status\":1,\"filename\":\"" + filename + "\"}");
out.close();
}
}
} catch (Exception e) {
LOG.log(Level.SEVERE, null, e);
}
}
}