持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第8天,点击查看活动详情
前言
先前我们学习了SpringBoot框架的环境搭建并输出了第一行Hello World代码,并且学习了其项目结构,今天就让我们稍微深入一下,搭建一个简单的登入系统。
实践
我们的登入系统很简单,就是两个输入框,分别用于输入用户名与密码,然后点击登入按钮,从数据库中进行匹配,如果匹配成功,就跳到登入成功页面,否则展示登入失败页面。
先从UI开始,我们需要3个页面,分别是登入页面,登入成功页面以及登入失败页面。
登入界面就是两个输入框,用于输入用户名与密码,还有一个登入按钮,如下所示:
具体代码实现为:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>login</title>
</head>
<body>
<form role="form" action = "/loginIn" method="post">
账号:<input type="text" id="name" name = "name"> <br>
密码:<input type="password" id = "password" name = "password"> <br>
<input type="submit" id = "login" value = "login">
</form>
</body>
</html>
另外两个登入结果页就很简单了,输出文本内容提示一下就好。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>error</title>
</head>
<body>
<h1>登录失败!请检查一下用户名与密码是否正确。</h1>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>success</title>
</head>
<body>
<h1>登录成功!欢迎登入。</h1>
</body>
</html>
开发完UI后,我们在自己的本地创建一个MySQL数据库,创建一张简单的user表,如下所示,具体步骤就不展示了。
我们有name、age、password等字段,但是我们登入的话只需要匹配用户名与密码就足以,所以我们定义个UserBean。
public class UserBean {
private int id;
private String name;
private String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
接着我们再mapper目录下新建一个UserMapper接口。
public interface UserMapper {
UserBean getInfo(String name, String password);
}
以及在UserMapper.xml下添加数据库的SQL查询语句。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.jc.test.mapper.UserMapper">
<select id="getInfo" parameterType="String" resultType="com.jc.test.bean.UserBean">
SELECT * FROM user WHERE name = #{name} AND password = #{password}
</select>
</mapper>
接着我们新建一个LoginController来完成我们的业务逻辑。
@Controller
public class LoginController {
@Autowired
UserService userService;
@RequestMapping("/login")
public String show() {
return "login";
}
@RequestMapping(value = "/loginIn",method = RequestMethod.POST)
public String login(String name, String password) {
UserBean userBean = userService.loginIn(name, password);
if (userBean != null) {
logger.error("success");
return "success";
} else {
logger.error("error");
return "error";
}
}
}
接着我们运行项目,然后在浏览器输入localhost:8000/login,输入用户名与密码,查看是否登入成功。
总结
今天我们稍微深入了一下,建立一个本地数据库,然后结合SpringBoot框架搭建了一个简单的登入系统,接下来我们将学习一下如何来写Restful Api。