formdata用法

FormData Ajax上传文件详细教程_兰亭古墨的博客-CSDN博客

<!DOCTYPE html>
<html lang="en">
	<head>
		<title>文件上传</title>
		<script src="js/jquery-1.6.min.js" type="text/javascript"> </script>
	</head>
	<body>
		<form>
			<label class="aui-label-control"> 身份证号 </label>
			<input type="text" name="cardnum" id="cardnum">

			<label class="aui-label-control"> age </label>
			<input type="text" name="age" id="age">

			<label class="aui-label-control"> sex </label>
			<input type="text" name="sex" id="sex">

			<input type="file" name="file" id="file" />
		</form>
		<button id="post" onclick="clicks()">提交上传</button>
		<script>
			function clicks() {
				console.log($("#cardnum").val());
				console.log($("#age").val());
				var formData = new FormData();
				var cardnum = $("#cardnum").val();
				var age = $("#age").val();
				var sex = $("#sex").val();
				var file = $("#file")[0].files[0];
				if (file != "") {
					formData.append("file", file);
				}
				formData.append("cardnum", cardnum);
				formData.append("age", age);
				formData.append("sex", sex);
				$.ajax({
					type: "POST",
					url: "http://127.0.0.1:8080/xueji/insertstudents",
					data: formData,
					cache: false,
					processData: false,
					contentType: false,
					success: function(data) {
						console.log(data);
					}
				});
			}
		</script>
	</body>

</html>

后端

package com.xueji.controller;

import java.io.IOException;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.propertyeditors.CustomDateEditor;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.WebDataBinder;
import org.springframework.web.bind.annotation.InitBinder;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.multipart.MultipartFile;

import com.xueji.bean.Student;
import com.xueji.service.StudentService;
import com.xueji.util.JsonData;
import com.xueji.util.UpLoadUtil;

@Controller
public class StudentController {

	@Autowired
	StudentService studentService;

	/*
	 * 获取所有学生
	 */
	@RequestMapping("/getallstudents")
	@ResponseBody
	public JsonData getAllStudents() {
		return JsonData.success(studentService.getAllStudent(), "success");
	}

	/*
	 * 获取某个学校的学生
	 *
	 */
	@RequestMapping("/getStudentBySchool")
	@ResponseBody
	public JsonData getStudentBySchool(String school) {
		return JsonData.success(studentService.getStudentBySchool(school), "success");
	}
	
	/*
	 * 根据姓名模糊获取学生
	 */

	@RequestMapping("/getstudentsMoh")
	@ResponseBody
	public JsonData getAllStudents(String name) {
		if (name.equals("") || name == null) {
			return JsonData.fail("Name is empty");
		} else {
			return JsonData.success(studentService.getStudentByNameMoHo(name), "success");
		}

	}
	
	/*
	 * 根据身份证号查询学生信息
	 */
	@RequestMapping("/getStudentByCardId")
	@ResponseBody
	public JsonData getStudentByCardId(String cardnum) {
		if (cardnum.equals("") || cardnum == null) {
			return JsonData.fail("cardnum is empty");
		} else {
			return JsonData.success(studentService.getStudentByCardId(cardnum), "success");
		}

	}
	
	

	/*
	 * 录入学生信息(带录入图片)
	 */
	@RequestMapping("/insertstudents")
	@ResponseBody
	public JsonData InsertStudents(MultipartFile file, Student student, HttpServletRequest request)
			throws IllegalStateException, IOException {

		if (student.getCardnum() == null || student.getAge() == null || student.getSex() == null) {
			return JsonData.fail("couldn't empty");
		} else {
			if (studentService.getStudentByCardId(student.getCardnum()) == null) {

				int i = studentService.insert(student);
				String filefath = UpLoadUtil.saveFile(file, request.getSession().getServletContext().getRealPath("/"));
				student.setPath(filefath);
				int count = studentService.insertImage(student);
				return i > 0 && count > 0 ? JsonData.success(null, filefath) : JsonData.fail("inserts failed");
			} else {
				return JsonData.fail("student repeat");
			}

		}
	}

	/*
	 * 给学生更新图片
	 */
	@RequestMapping("/insertstudentsPath")
	@ResponseBody
	public JsonData InsertStudentImages(MultipartFile file, Student student, HttpServletRequest request)
			throws IllegalStateException, IOException {
		if(file.equals("500")||file.toString().equals("500")){
			return JsonData.fail("更新失败!图片不能为空。");
			
		}
		else{
			String filefath = UpLoadUtil.saveFile(file, request.getSession().getServletContext().getRealPath("/"));
			student.setPath(filefath);
			int count = studentService.insertImage(student);
			return count > 0 ? JsonData.success(filefath) : JsonData.fail("failed");
		}
	}

	// 根据身份证号更新学生信息(注册前权限)

	@RequestMapping("/updateStudentByCardNum")
	@ResponseBody
	public JsonData updateStudentByCardNum(MultipartFile file, Student student, HttpServletRequest request)
			throws IllegalStateException, IOException {
		// 前台要判断文件不能为空
		String filefath = UpLoadUtil.saveFile(file, request.getSession().getServletContext().getRealPath("/"));
		student.setPath(filefath);
		int count = studentService.updateStudentByCardNum(student);
		return count > 0 ? JsonData.success(filefath) : JsonData.fail("failed");
	}

	// 根据身份证号更新学生信息(注册后权限,只能够更改学生的姓名、性别、照片;)

	@RequestMapping("/updateStudentByCardNum2")
	@ResponseBody
	public JsonData updateStudentByCardNum2(MultipartFile file, Student student, HttpServletRequest request)
			throws IllegalStateException, IOException {
		// 前台要判断文件不能为空
		String filefath = UpLoadUtil.saveFile(file, request.getSession().getServletContext().getRealPath("/"));
		student.setPath(filefath);
		int count = studentService.updateStudentByCardNum2(student);
		return count > 0 ? JsonData.success(filefath) : JsonData.fail("failed");
	}

	// 根据身份证号删除学生信息

	@RequestMapping("/deleteStuentByCardNum")
	@ResponseBody
	public JsonData deleteStuentByCardNum(String cardnum) {

		if (cardnum == null || cardnum.equals("")) {
			return JsonData.fail("cardnum empty");
		} else {
			int i = studentService.deleteStuentByCardNum(cardnum);
			return i > 0 ? JsonData.success() : JsonData.fail("delete failed");
		}
	}

	// 省管理员审核入籍(就是确定已注册)
	// 通过审核
	@RequestMapping("/okCheckStudents")
	@ResponseBody
	public JsonData isRegister(String cardnum) {

		if (cardnum == null || cardnum.equals("")) {
			return JsonData.fail("cardnum empty");
		} else {
			// 先查出学生
			Student student = studentService.getStudentByCardId(cardnum);
			student.setIsregister(1);// 代表审核成功,将标记为1
			student.setStatus(1);// status 1 表示审核成功注册在籍
			int i = studentService.updateStudentByCardNum(student);
			return i > 0 ? JsonData.success() : JsonData.fail("check failed");
		}
	}

	// 省管理员审核入籍(未通过审核)
	// 未通过审核
	@RequestMapping("/failedCheckStudents")
	@ResponseBody
	public JsonData noRegister(String cardnum) {

		if (cardnum == null || cardnum.equals("")) {
			return JsonData.fail("cardnum empty");
		} else {
			// 先查出学生
			Student student = studentService.getStudentByCardId(cardnum);
			student.setStatus(3);// status 3 表示审核未成功
			int i = studentService.updateStudentByCardNum(student);
			return i > 0 ? JsonData.success() : JsonData.fail("check failed");
		}
	}

	// 状态,0录入未注册,1注册在籍,2提交在审,3提交未通过

	// 为0的时候是在录入的时候,将isregister设置为0 status设置为0
	// 校管理员提交审核
	@RequestMapping("/tijiaoStudents")
	@ResponseBody
	public JsonData tijiaoStudents(String cardnum) {

		if (cardnum == null || cardnum.equals("")) {
			return JsonData.fail("cardnum empty");
		} else {
			// 先查出学生
			Student student = studentService.getStudentByCardId(cardnum);
			// 2代表提交在审
			student.setStatus(2);

			int i = studentService.updateStudentByCardNum(student);
			return i > 0 ? JsonData.success() : JsonData.fail("check failed");
		}
	}

	// 根据status的值查询出哪些同学已经注册,哪些注册未通过
	// 0 获取录入但是未注册的学生
	// 1 获取注册在学籍的学生
	// 2 获取注册再审的学生
	// 3 获取未通过的学生
	@RequestMapping("/getStatusStudents")
	@ResponseBody
	public JsonData getAlerdyRegister(int status) {

		return JsonData.success(studentService.getStatusStudent(status));
	}
	
	@InitBinder
	public void initBinder(WebDataBinder binder) {
		DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
		dateFormat.setLenient(true);
		binder.registerCustomEditor(Date.class, new CustomDateEditor(dateFormat, true));
	}
	
	//不同条件查询数据
	@RequestMapping("/getStudentsMsgByCondition")
	@ResponseBody
	public JsonData getStudentsMsgByCondition(Student student) {

		Map<String, Object> map=new HashMap<String,Object>();
		map.put("sex", student.getSex());
		map.put("profession", student.getProfession());
		map.put("address", student.getAddress());
		map.put("admission",student.getAdmission());
		map.put("graduate", student.getGraduate());
		map.put("school", student.getSchool());
		List<Student> list=studentService.getStudentsMsgByTimeCondition(map);
		String mString=String.valueOf(list.size());
		return JsonData.success(studentService.getStudentsMsgByTimeCondition(map), mString);
	}
	
	

}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值