SpringMVC(图片上传处理、Json数据交互、Restful风格的使用)

图片上传处理

1、配置虚拟目录

SpringMVC(图片上传处理、Json数据交互、Restful风格的使用)_第1张图片

2、加入上传功能需要的jar包

SpringMVC(图片上传处理、Json数据交互、Restful风格的使用)_第2张图片

3、配置多媒体解析器

	
	<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
		
		<property name="maxUploadSize" value="8388608" />
	bean>
编写图片上传处理代码
//图片上传用MultipartFile接收文件
	@RequestMapping(value = "updateItem", method = { RequestMethod.POST, RequestMethod.GET })
	public String updateItem(Item item, Model model, MultipartFile picFile) throws Exception {

		// 图片新名字
		String name = UUID.randomUUID().toString();
		// 图片原名字
		String oldName = picFile.getOriginalFilename();
		// 后缀名
		String exeName = oldName.substring(oldName.lastIndexOf("."));

		File pic = new File("D:\\WebWork\\" + name + exeName);
		// 保存图片到本地磁盘
		picFile.transferTo(pic); 
		// 更新商品图片信息
		item.setPic(name + exeName);

		itemServices.update(item);
		model.addAttribute("item", item);
		model.addAttribute("msg", "修改商品成功");
		return "itemEdit";
	}

Json数据交互

1、加入jar包

SpringMVC(图片上传处理、Json数据交互、Restful风格的使用)_第3张图片

2、代码实现
  /**
	 * json数据交互演示
	 * 
	 * @param item2
	 * @return
	 */
	@RequestMapping("getItem")
	//@ResponseBody把pojo转成json串响应用户
	@ResponseBody
	//@RequestBody用于接收用户传入json串转成pojo
	public Item getItem(@RequestBody Item item2) {

		System.out.println("接收到的json商品数据为:" + item2);

		Item item = itemServices.getItemById(3);
		return item;
	}

Springmvc实现Restful

在这里插入图片描述

代码实现
/**
	 * RESTful风格演示
	 * 
	 * @param ids
	 * @param model
	 * @return
	 */
	//RESTful风格url上的参数通过{}点位符绑定
	//点位符参数名与方法参数名不一致时,通过@PathVariable绑定
	@RequestMapping("/item/{id}")
	public String testRest(@PathVariable("id") Integer ids, Model model) {
		Item item = itemServices.getItemById(ids);
		model.addAttribute("item", item);
		return "itemEdit";
	}
测试

直接访问url{http://localhost:8080/项目名/item/1.action}即可。

你可能感兴趣的:(#,SpringMVC)