1.spring boot 项目搭建
环境搭建不是这篇文章的重点,请自行查阅资料,或参考这篇文章,本文默认已经解决环境问题.
项目依赖一个插件thymeleaf
下面是我的插件列表
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
</dependencies>
2.与浏览器通讯的核心,Controller类
- 下面编写一个最最最简单的api接口,路径为 ‘/’,返回一个字符串helloworld
@RestController
public class UserController{
@RequestMapping("/")
public String index() {
return "Hello World![图片上传中...(1.png-d55553-1556767317213-0)]
";
}
}
此时访问浏览器 localhost:8080 就可以返回一个"Hello World!"啦!
- 改造这个api接口,简单的定义以下这个接口
| 方法 | 路径 | 接收参数 | 返回数据 |
|---|---|---|---|
| post | /user/login | username,password,username | username,password |
@Controller
public class UserController{
@PostMapping("/user/login")
@ResponseBody
public String login(@RequestParam("username") String username, @RequestParam("password") String password){
return "我是返回的数据"+username+","+password;
}
}
此时通过post请求访问 localhost:8080/user/login ,就可以获取到数据拉,是不是很简单呢
-
我们通过PostMan这个工具来测试我们写的这个接口
-
既然是登陆接口,我们就加入一个最最最最简单的验证,我们规定 username=“root”,password=“12345”,就返回True(需要其他复杂的登陆验证,自行设计,不是本文重点).
| 方法 | 路径 | 接收参数 | 返回数据 |
|---|---|---|---|
| post | /user/login | username,password,username | ture/falsse |
@Controller
public class UserController{
@PostMapping("/user/login")
@ResponseBody
public boolean login(@RequestParam("username") String username, @RequestParam("password") String password){
if(username.equals("root")&&password.equals("1234")) {
//验证通过
return true;
}else {
return false;
}
}
}
再次发送post请求到 localhost:8080/user/login,就可以看到结果了
####写好了后端,就来个登陆页面把
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>登陆</title>
</head>
<body>
<form action="http://localhost:8080/user/login" method="post">
<span>账号</span><input type="text" name="username"><br>
<span>密码</span><input type="text" name="password"><br>
<button type="sublimt">登陆</button>
</form>
</body>
</html>
这个文件放在 /main/resources/templates/目录下面,action也可以使用相对路径,
<form action="/user/login" method="post">
- 有了页面,我们还需要一个展示这个页面的接口,我们来简单定义一下
| 方法 | 路径 | 接收参数 | 返回数据 |
|---|---|---|---|
| get | /login | html页面 |
重构我们的UserControll类,现在变成了这样
@Controller
public class UserController{
@GetMapping("/login")
public String index() {
return "index.html";
}
@PostMapping("/user/login")
@ResponseBody
public boolean login(@RequestParam("username") String username, @RequestParam("password") String password){
if(username.equals("root")&&password.equals("1234")) {
//验证通过
return true;
}else {
return false;
}
}
}
现在我们就可以在浏览器访问 localhost:8080/login 了
额,比乞丐版还要惨的前端页面, 不过这不是本文的重点,现在我们来提交数据测试以下
数据正确
数据错误
###那到了这里,我们的接口就已经完成了,是不是很简单呢
刚开始写博客,请多支持哦