springmvc配置后续测试和上传文件

springmvc配置后续测试

Controller本地服务器上传文件和插件服务器上传文件
json从前台获取数据,向前台发送数据

package com.stx.controller;

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;

import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.servlet.ModelAndView;

import com.stx.pojo.User;
import com.sun.jersey.api.client.Client;
import com.sun.jersey.api.client.WebResource;
@Controller
@RequestMapping("/user")
//@ResponseBody
//@RestController 是 @Controller和@ResponseBody的结合
public class UserController {
	/**测试异常**/
	@RequestMapping("/login1")
	public String login1(HttpSession session) {
		System.out.println("login1-----------");
		int num = 1/0;
		session.setAttribute("username", "baoyu");
		return "ok";
	}
	/**测试拦截器**/
	@RequestMapping("/login")
	public String login(HttpSession session) {
		System.out.println("login-----------跳转到testInter01");
		session.setAttribute("username", "baoyu");
		return "redirect:/user/testInter01";
	}

	@RequestMapping("/testInter01")
	public String testInter01() {
		System.out.println("testInter01---------");
		return "ok";
	}
	
	/****************上传文件****************/
	/**插件服务器上传文件**/
	@RequestMapping("/upload1")
	public String upload1(MultipartFile myFile,HttpServletRequest request) {
		//获取上传文件的原始名称
		String fileName=myFile.getOriginalFilename();
		//截取上传文件的后缀
		int index = fileName.lastIndexOf(".");
		String hz = fileName.substring(index);
		//获取上传文件的目标的路径
		String path = request.getServletContext().getRealPath("/upload");
		path="http://localhost:8080/imgServer/upload/";
		System.out.println(path);
		//随机字符
		String name=UUID.randomUUID().toString().replace("-", "")+hz;
		
		try {
			Client client = Client.create();
			WebResource resource = client.resource(path+name);
			String res = resource.put(String.class,myFile.getBytes());
			System.out.println(res);
		} catch (IOException e1) {
			e1.printStackTrace();
		}
		/*try {
			myFile.transferTo(new File(path+"/"+name));
		} catch (IllegalStateException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}*/
		return "ok";
	}
	
	/**本地服务器上传文件**/
	@RequestMapping("/upload")
	public String upload(MultipartFile myFile,HttpServletRequest request) {
		//获取上传文件的原始名称
		String fileName=myFile.getOriginalFilename();
		//截取上传文件的后缀
		int index = fileName.lastIndexOf(".");
		String hz = fileName.substring(index);
		//获取上传文件的目标的路径
		String path = request.getServletContext().getRealPath("/upload");
		System.out.println(path);
		//随机字符
		String name=UUID.randomUUID().toString().replace("-", "")+hz;
		try {
			//上传文件到指定路径
			myFile.transferTo(new File(path+"/"+name));
		} catch (IllegalStateException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		return "ok";
	}
	/****************************ajax从页面接收值***************************************/
	//@ResponseBody向页面传值	 	@RequestBody从页面获取值
	@RequestMapping("/ajax01")
	@ResponseBody
	public String ajaxTest01(@RequestBody User user) {
		System.out.println(user);
		return "ok";
	}
	/****************************json向页面传值***************************************/
	/**
	 * json向页面传输Map
	 */
	@RequestMapping("/json04")
	@ResponseBody
	public Map<String, User> jsonTest04(){
		Map<String, User> map = new HashMap<String, User>();
		for (int i = 0; i < 5; i++) {
			User u = new User();
			u.setId(1+i);
			u.setUsername("baoyu"+i);
			u.setBirthday(new Date());
			map.put("u"+i, u);
		}
		return map;
	}
	/**
	 * json向页面传输List
	 */
	@RequestMapping("/json03")
	@ResponseBody
	public List<User> jsonTest03(){
		List<User> list = new ArrayList<>();
		for (int i = 0; i < 5; i++) {
			User user = new User();
			user.setId(1+i);
			user.setUsername("baoyu"+i);
			user.setBirthday(new Date());
			list.add(user);
		}
		return list;
	}
	/**
	 * json向页面传输对象
	 */
	@RequestMapping("/json02")
	@ResponseBody
	public User jsonTest02() {
		User user = new User();
		user.setId(1);
		user.setUsername("baoyu");
		return user;
	}
	/**
	 * json向页面传输字符串
	 */
	@RequestMapping("/json01")
	@ResponseBody
	public String jsonTest01() {
		return "hello world";
	}
	/*******************************************************************/
	@RequestMapping("/test07")
	public String test07(Model model) {
		System.out.println("test07-----Model");
		model.addAttribute("username", "1");
		model.addAttribute("age", 14);
		return "redirect:/user/test7";
	}
	@RequestMapping("/test7")
	public String test7(String username,Integer age) {
		System.out.println("test7----");
		System.out.println(username);
		System.out.println(age);
		return "ok";
	}
	
	
	
	@RequestMapping("/test06")
	public String test06() {
		System.out.println("test06-----重定向");
		return "redirect:/user/test05";
	}
	
	@RequestMapping("/test05")
	public String test05() {
		System.out.println("test05-----转发");
		return "forward:/user/test04";
	}
	
	/*ModelAndView向界面发送数据*/
	
	@RequestMapping("/test04")
	public ModelAndView test04() {
		System.out.println("test04------------------");
		ModelAndView mv = new ModelAndView();
		User u = new User();
		u.setId(10);
		u.setUsername("baoyu");
		mv.addObject("user", u);
		mv.setViewName("ok");
		return mv;
	}
	@RequestMapping("/test03")
	public String test03(Model model) {
		User u = new User();
		u.setId(1);
		u.setUsername("ab");
		model.addAttribute("user", u);
		return "ok";
	}
	
	@RequestMapping("/test02")
	public String test02(HttpServletRequest request) {
		System.out.println("test2---------------------");
		User u = new User();
		u.setId(1);
		u.setUsername("aa");
		request.setAttribute("user", u);
		User u1 = new User();
		u1.setId(2);
		u1.setUsername("baoyu1");
		HttpSession session = request.getSession();
		session.setAttribute("user", u1);
		User u2 = new User();
		u2.setId(3);
		u2.setUsername("baoyu2");
		ServletContext application = request.getServletContext();
		application.setAttribute("user", u2);
		return "ok";
	}
	
	@RequestMapping("/test01")
	public String test01() {
		
		return "ok";
	}
}

pojo类

role类

package com.stx.pojo;

public class Role {
private Integer roleId;
private String roleName;
public Integer getRoleId() {
	return roleId;
}
public void setRoleId(Integer roleId) {
	this.roleId = roleId;
}
public String getRoleName() {
	return roleName;
}
public void setRoleName(String roleName) {
	this.roleName = roleName;
}

}

user类

package com.stx.pojo;

import java.util.Date;
import java.util.List;
import java.util.Map;


import org.springframework.format.annotation.DateTimeFormat;

import com.fasterxml.jackson.annotation.JsonFormat;

public class User {
private Integer id;
private String username;
private String password;

//向页面传日期时转换为yyyy-MM-dd
@JsonFormat(pattern="yyyy-MM-dd")
//接收页面的值时转为yyyy-MM-dd
@DateTimeFormat(pattern="yyyy-MM-dd")
private Date birthday;
private Role myRole;
private List<Role> roles;
private Map<String,Role> map;
public Integer getId() {
	return id;
}
public void setId(Integer id) {
	this.id = id;
}
public String getUsername() {
	return username;
}
public void setUsername(String username) {
	this.username = username;
}
public String getPassword() {
	return password;
}
public void setPassword(String password) {
	this.password = password;
}
public Date getBirthday() {
	return birthday;
}
public void setBirthday(Date birthday) {
	this.birthday = birthday;
}
public Role getMyRole() {
	return myRole;
}
public void setMyRole(Role myRole) {
	this.myRole = myRole;
}
public List<Role> getRoles() {
	return roles;
}
public void setRoles(List<Role> roles) {
	this.roles = roles;
}
public Map<String, Role> getMap() {
	return map;
}
public void setMap(Map<String, Role> map) {
	this.map = map;
}
@Override
public String toString() {
	return "User [id=" + id + ", username=" + username + ", password=" + password + ", birthday=" + birthday
			+ ", myRole=" + myRole + ", roles=" + roles + ", map=" + map + "]";
}

}

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值