js获取前端数据
function register() {
var user_name = $("#username").val();
var user_password = $("#password").val();
var user_email = $("#email").val();
var user_photo = $("#user_photo")[0].files[0];
var user_birthday = $("#user_birthday").val();
var user_phone = $("#phone").val();
var user_nickname = $("#nickname").val();
var province = $("select:first :selected").val();
var city = $("select:eq(1) :selected").val();
var area = $("select:last :selected").val();
var formData = new FormData();
formData.append("user_name",user_name);
formData.append("user_password",user_password);
formData.append("user_email",user_email);
formData.append("user_photo",user_photo);
formData.append("user_birthday",user_birthday);
formData.append("user_phone",user_phone);
formData.append("user_nickname",user_nickname);
formData.append("province",province);
formData.append("city",city);
formData.append("area",area);
$.ajax({
url:"/users/register",
type:"post",
data:formData,
processData: false,
contentType: false,
dataType:"json",
success: function (data) {
if(data.code==200){
alert(data.message);
}else{
alert(data.message);
}
},
error: function () {
alert("上传失败,服务器出现异常")
}
});
}
后端Controller接收表单数据并处理文件
@RequestMapping(value = "/register")
@ResponseBody
public R register(String user_name, String user_password, String user_email,
MultipartFile user_photo,
@DateTimeFormat(pattern = "yyyy-MM-dd") Date user_birthday,
String user_phone, String user_nickname,
String province, String city, String area, HttpSession session) {
String user_address = province + city + area;
User user = new User(null, user_name, user_password, user_email, null, new Date(), user_birthday, user_phone, user_nickname, user_address, null);
String real_path = null;
String fileName = null;
if (user_photo != null) {
fileName = user_photo.getOriginalFilename();
String ext = FilenameUtils.getExtension(fileName);
fileName = UUID.randomUUID().toString() + "." + ext;
user.setUser_photo(fileName);
real_path = session.getServletContext().getRealPath("/upload");
System.out.println(real_path);
try {
user_photo.transferTo(new File(real_path + File.separator + fileName));
} catch (IOException e) {
e.printStackTrace();
}
}
int i = userService.register(user);
if (i == 2) {
return R.success();
} else if (i == 3) {
if (user_photo != null) {
File file = new File(real_path + File.separator + fileName);
file.delete();
}
return R.error(REnum.REGISTER_NAME);
} else {
if (user_photo != null) {
File file = new File(real_path + File.separator + fileName);
file.delete();
}
return R.error(REnum.REGISTER_ERROR);
}
}