一web (addjsp)
代码如下:<%@page import="com
fingerknow
project
vo
UserInformation"%><%@ page language="java" contentType="text/html; charset=utf
"pageEncoding="utf
"%><%@ taglib uri="%><c:set var="ctx" value="${pageContext
request
contextPath }" /><!DOCTYPE html PUBLIC "
//W
C//DTD HTML
Transitional//EN" "<html><head><meta http
equiv="Content
Type" content="text/html; charset=utf
"><title>注册商圈</title><link href="${ctx}/bootstrap/css/bootstrap
css" rel="stylesheet"><link href="${ctx}/bootstrap/css/bootstrap
responsive
css" rel="stylesheet"><link rel="stylesheet" href="${ctx}/css/bootstrap
responsive
min
css" /><link rel="stylesheet" href="${ctx}/css/jquery
ui
css" /><link rel="stylesheet" href="${ctx}/css/uniform
css" /><link rel="stylesheet" href="${ctx}/css/select
css" /><link rel="stylesheet" href="${ctx}/css/unicorn
main
css" /><link rel="stylesheet" href="${ctx}/css/common
css" /><%response
setCharacterEncoding("utf
");//这个是设置编码方式response
setContentType("text/html");//这个是设置网页类型
为文本代码UserInformation user=null;String username="";Integer userId=null;if(request
getSession()
getAttribute("userinfo")!=null){user=(UserInformation)request
getSession()
getAttribute("userinfo");username=user
getUsername();userId=user
getUserId();}else{username="请<a >登录</a>";}%></head><body><div class="header
inner"><div class="container"><div class="row"><div class=" page
header clearfix"><div class="span
"> <h
class="page
header" style="background:black;"><img alt="fingerknow" src="${ctx}/images/fingerknow
png" width=""><small>中文最大的购物经验分享平台</small></h
> </div><div class="span
"> <a href="#">首页</a> |<a href="#">帮助</a></div></div></div></div></div><div class="container" id="businessEname_div"><div class="row"><div class="span
"></div><div class="span
"><div class="widget
box"><div class="widget
title"><span class="icon"><i class="icon
align
justify"></i></span><h
>注册商圈</h
></div><div class="widget
content nopadding"><form class="form
horizontal" method="post" action="${ctx}/upload/upload
do" id="uploadImgForm" enctype="multipart/form
data"><div class="control
group" style="border:
px solid red;"><label class="control
label">*商圈名
</label><div class="controls" style="width:
px;border:
px solid red;vertical
align: middle;" ><input type="text" name="businessName" maxlength="
" id="businessName" width="
px;"/><input type="text" name="userId" maxlength="
" value="<%=userId%>" id="userId" width="
px;"/><div id="businessName_error" ></div></div></div><div class="control
group"><label class="control
label">*商圈logo
</label><div class="controls" style="width:
px;"><input type="file" name="file" id="file"><div id="file_error"></div></div></div><div class="control
group"><label class="control
label">*商圈英文名
</label><div class="controls" style="width:
px;"><input type="text" name="businessEname" id="businessEname" /><div id="businessEname_error"></div></div></div><div class="form
actions"><button type="button" id="imgSave" value="Validate" class="btn btn
primary">提交注册</button></div></form></div></div></div><div class="span
"></div></div></div><div class="container" style="background:white;"><div class="row"><div class="span
" style="margin
left:
%;"><p>©
fingerknow
com <span>|</span><a href="#" rel="nofollow" >隐私条款</a><span>|</span><a href="#" rel="nofollow">服务条款</a><span>|</span><a href="#" rel="nofollow" >粤ICP备
号
</a></p></div></div></div><script src="${ctx}/js/jquery
js"></script><script src="${ctx}/js/jquery
form
js"></script><script type="text/javascript">/**** V
*/$(document)
ready(function() {//验证商圈名$("#businessName")
blur(function(){var businessName=$("#businessName")
val();if(businessName!=""){$("#businessName_error")
html("<img src=
${ctx}/images/success_img
gif
style=
width:
px;height:
px;
/>");}else{$("#businessName_error")
attr("class"
"error_div")
html("<img src=
${ctx}/images/error_img
gif
style=
width:
px;height:
px;
/>"+"商圈名不能为空!");}});//验证商圈英文名$("#businessEname")
blur(function(){var businessEname=$("#businessEname")
val();if(businessEname!=""){$("#businessEname_error")
html("<img src=
${ctx}/images/success_img
gif
style=
width:
px;height:
px;
/>");}else{$("#businessEname_error")
attr("class"
"error_div")
html("<img src=
${ctx}/images/error_img
gif
style=
width:
px;height:
px;
/>"+"商圈英文名不能为空!");}});//图片上传 及数据保存$("#imgSave")
click(function(){var ext =
jpg
jpeg
gif
bmp
png
;var f=$("#file")
val();if (f== "") {//先判断是否已选择了文件$("#file_error")
attr("class"
"error_div")
html("<img src=
${ctx}/images/error_img
gif
style=
width:
px;height:
px;
/>"+"请添加商圈logo!");return false;}f = f
substr(f
lastIndexOf(
) +
)
toLowerCase();if (ext
indexOf(
+ f +
) ==
) {$("#file_error")
attr("class"
"error_div")
html("<img src=
${ctx}/images/error_img
gif
style=
width:
px;height:
px;
/>"+"图片格式不正确!");return false;}var options = {url: "${ctx}/upload/upload
do"
dataType:
json
contentType: "application/json; charset=utf
"
success: function(data) {//
data
is an object representing the the evaluated json data// 如果图片上传成功则保存表单注册数据if(data
status=="
"){var fileName=data
fileName;//alert(fileName);var businessName=$("#businessName")
val();var userId=$("#userId")
val();var businessEname=$("#businessEname")
val();businessName=encodeURI(businessName);businessName=encodeURI(businessName);var urls="${ctx}/business/addBusiness
do?businessName="+businessName+"&businessPic="+fileName+"&businessEname="+businessEname+"&userId="+userId;$
ajax({type: "post"
url:urls
dataType: "json"
/*这句可用可不用
没有影响*/contentType: "application/json; charset=utf
"
success: function (data) {if(data
status=="
"){alert("注册成功!");}else{alert("注册失败!原因是
"+data
message);}}
error: function (XMLHttpRequest
textStatus
errorThrown) {alert(errorThrown);}});}else{$("#file_error")
attr("class"
"error_div")
html("<img src=
${ctx}/images/error_img
gif
style=
width:
px;height:
px;
/>"+data
message);}}};// 提交表单$(
#uploadImgForm
)
ajaxSubmit(options);});});</script></body></html>二
service(FileUploadController
java
springMVC 之controller层)代码如下:@Controller@RequestMapping(value = "/upload")public class FileUploadController {private Logger logger;@RequestMapping(value = "upload
do"
method = RequestMethod
POST)public void fileUpload(HttpServletRequest request
HttpServletResponse response) {Map<String
Object> resultMap = new HashMap<String
Object>();String newRealFileName = null;try {MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;CommonsMultipartFile file = (CommonsMultipartFile) multipartRequest
getFile("file");// 获得文件名
String realFileName = file
getOriginalFilename();if(file
getSize()/
>=
*
){resultMap
put("status"
);resultMap
put("message"
"图片不能大于
M");}else{System
out
println("获得文件名
" + realFileName);newRealFileName = FileUploadController
getNowTime() + realFileName
substring(realFileName
indexOf("
"));// 获取路径String ctxPath = request
getSession()
getServletContext()
getRealPath("//") + "//temp//";// 创建文件File dirPath = new File(ctxPath);if (!dirPath
exists()) {dirPath
mkdir();}File uploadFile = new File(ctxPath + newRealFileName);FileCopyUtils
copy(file
getBytes()
uploadFile);request
setAttribute("files"
loadFiles(request));resultMap
put("status"
);resultMap
put("fileName"
newRealFileName);}} catch (Exception e) {resultMap
put("status"
);resultMap
put("message"
"图片上传出错");logger
info("***** 图片上传出错 *****");System
out
println(e);} finally {PrintWriter out = null;try {out = response
getWriter();} catch (IOException e) {e
printStackTrace();}//必须设置字符编码
否则返回json会乱码response
setContentType("text/html;charset=UTF
");out
write(JSONSerializer
toJSON(resultMap)
toString());out
flush();out
close();}}}