前言
提示:这里可以添加本文要记录的大概内容:
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。
提示:以下是本篇文章正文内容,下面案例可供参考
一、RESTful支持
RESTful是目前最流行的一种互联网软件架构.
springboot 对 restful的支持
@GetTMapping 处理get请求
@PstMapping 处理post请求
@PutMapping 更新资源
@DeleteMapping 删除请求
@PatchMapping 更新部分资源
@Resource
DemoService demoService;
@GetMapping("/users")
@ResponseBody
public List<Demo> findAllUsers() {
List<Demo> users = demoService.findAllUsers();
return users;
}
@GetMapping("/user/{id}")
@ResponseBody
public Demo getUser(@PathVariable("id") Integer id) {
Demo user = demoService.getUser(id);
return user;
}
@PostMapping("/user")
@ResponseBody
public void addUser(Demo user) {
demoService.addUser(user);
}
@PutMapping("/user")
@ResponseBody
public void updateUser(Demo user) {
demoService.updateUser(user);
}
@DeleteMapping("/user/{id}")
@ResponseBody
public void deleteUser(@PathVariable("id") Integer id) {
demoService.deleteUser(id);
}
二、web测试的支持
@Before代表在测试启动时候需要提前加载的内容,这里是提前加载了MVC环境
@RunWith(SpringRunner.class)
@SpringBootTest
public class UserControllerTests {
@Resource
private WebApplicationContext wac;
private MockMvc mockMvc;
@Before
public void setup(){
mockMvc= MockMvcBuilders.webAppContextSetup(wac).build();
}
//测试根据id查询数据
@Test
public void testGetUser()throws Exception{
String result = mockMvc.perform(MockMvcRequestBuilders.get("/user/3"))
.andReturn().getResponse().getContentAsString();
System.out.println(result);
}
//测试新增psot请求,提供请求参数
@Test
public void testAddUser()throws Exception{
final MultiValueMap<String,String> params = new LinkedMultiValueMap<>();
params.add("userName","admin");
params.add("userPassword","admin");
params.add("userRole","2");
mockMvc.perform(MockMvcRequestBuilders.post("/user").params(params))
.andExpect(MockMvcResultMatchers.status().isOk()).andDo(MockMvcResultHandlers.print());
}
}
二、视图开发
1.项目结构
2.添加依赖
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
3.编写controller
4.设置工作目录
重启项目就能正常访问了