Springboot访问MySQL简单实现

Springboot访问MySQL简单实现

初学Springboot,通过Springboot访问MySQL数据实现简单登录验证功能。
环境准备:Eclipse、MySQL。
以上两个工具的安装配置可参考前两篇博客。

一、创建数据库并建表

(1)打开MySQL可视化管理工具,这里以MySQL Workbench为例。
在这里插入图片描述

(2)点击Database->Connect to Database
在这里插入图片描述
(3)在弹出的窗口点击OK
在这里插入图片描述
(4)输入密码
在这里插入图片描述
(5)点击File->New Query Tab,输入以下脚本内容,新建数据库firstdb,新建表user,插入数据username:temp、password:123456。

create database firstdb;
use firstdb;
create table user(
	`username` varchar(10) not null,
    `password` varchar(10) not null
);
insert into user values ('temp','123456');
select * from user;

执行成功如下图所示
在这里插入图片描述

二、新建Springboot项目

(1)打开File->New->Other->Springboot->Spring Starter Project,点击next。
在这里插入图片描述
(2)根据实际情况修改,否则保持默认即可,完成后点击next。
在这里插入图片描述
(3)选择依赖。通过JDBC访问数据库,勾选Spring Web、MySQL Driver、JDBC API,点击finish即可。
在这里插入图片描述
(4)创建好后的目录如下图所示
在这里插入图片描述

三、创建登录页面

在src->main->resources->static目录下创建login.html,编写如下代码,实现简单登录界面。

<!DOCTYPE html>
<html lang="zn">
<head>
    <meta charset="UTF-8">
    <title>login</title>
</head>
<body>
    <h2>登录页面</h2>
    <form action="/login" method="post" >
        用户名:<input type="text" name="username">
        <br>
        密 &nbsp 码:<input type="password" name="password">
        <br>
        <input type="submit" value="登录" name="提交">
    </form>
</body>
</html>

效果如图所示
在这里插入图片描述

四、用Springboot访问MySQL

(1)修改application.properties,填入以下代码:

spring.datasource.url=jdbc:mysql://localhost:3306/firstdb
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.max-idle=10
spring.datasource.max-wait=10000
spring.datasource.min-idle=5
spring.datasource.initial-size=5
spring.datasource.validation-query=SELECT 1
spring.datasource.test-on-borrow=false
spring.datasource.test-while-idle=true
spring.datasource.time-between-eviction-runs-millis=18800
spring.datasource.jdbc-interceptors=ConnectionState;SlowQueryReport(threshold=0)

在这里插入图片描述
(2)创建实体类User

package com.example.demo;
import java.io.Serializable;
public class User implements Serializable{
    private static final long serialVersionUID = 1L;
    private String username; //要与列名相同
    private String password; //要与列名相同
    public String getName() {
        return username;
    }
    public void setName(String username) {
    	this.username = username;
    }
    public String getPassword() {
        return password;
    }
    public void  setPassword(String password) {
    	this.password = password;
    }
}

(3)创建UserDao类

package com.example.demo;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.stereotype.Repository;
import com.example.demo.User;

@Repository
public class UserDao {

    @Resource
    private JdbcTemplate jdbcTemplate;

    public List<User> getUserList(){

        String sql = "select * from user";//SQL查询语句
        return jdbcTemplate.query(sql, new RowMapper<User>() {

            @Override
            public User mapRow(ResultSet rs, int rowNum) throws SQLException {
                User user = new User();
                user.setName(rs.getString("username"));//从数据库中读取数据,放入User对象的属性中
                user.setPassword(rs.getString("password"));
                return user;
            }
        });
    }
}

(4)创建Login类

package com.example.demo;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.example.demo.UserDao;
import com.example.demo.User;
@RestController
public class Login { 
	@Resource
	private UserDao userDao;
	@PostMapping("/login")
	public String controller01(@RequestParam("username") String username,
			@RequestParam("password") String password)//获取参数{
		List<User> list = userDao.getUserList();
		//检索数据库中的用户名和密码是否匹配
		for(User user:list) {
			if(user.getName().equals(username) && user.getPassword().equals(password)) {
				return "<script>alert(\"正确\")</script>";//如果存在匹配则alert正确
			}
		}
		return "<script>alert(\"错误\")</script>";//否则alert错误
	}
	
}

(5)运行Springboot项目,打开http://localhost:8080/login.html,用户名输入temp,密码输入123456,点击登录按钮。
在这里插入图片描述
弹出以下界面
在这里插入图片描述
如果任何一项错误则显示错误。

至此已完成简单读取数据并认证,初学难免有错,欢迎指正。

https://blog.csdn.net/qq_17639593/article/details/80559313
https://www.bilibili.com/video/BV19K4y1L7MT/
https://www.runoob.com/mysql/mysql-create-tables.html
https://www.runoob.com/mysql/mysql-insert-query.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot实现登录功能需要以下几个步骤: 1. 配置数据库连接:在`application.properties`或`application.yml`文件中配置MySQL数据库连接信息,包括数据库URL、用户名和密码。 2. 创建用户表:可以使用SQL语句在MySQL中创建一个用户表,包含用户名和密码等字段。 3. 创建用户实体类:创建一个Java类表示用户实体,包含与数据库表字段对应的属性。 4. 创建数据访问层(DAO):在DAO层定义用户数据的增删改查操作。可以使用Spring Data JPA进行数据访问,或者自己编写SQL语句执行。 5. 创建服务层(Service):在服务层定义用户相关的业务逻辑,如用户注册、登录等功能。 6. 创建控制器层(Controller):创建一个控制器类,定义登录接口的URL和请求方法。在方法中调用服务层的登录方法,并返回相应的结果。 下面是一个简单的示例: 1. 配置数据库连接: ``` spring.datasource.url=jdbc:mysql://localhost:3306/mydatabase spring.datasource.username=root spring.datasource.password=123456 ``` 2. 创建用户表: ```sql CREATE TABLE user ( id INT PRIMARY KEY AUTO_INCREMENT, username VARCHAR(255) NOT NULL, password VARCHAR(255) NOT NULL ); ``` 3. 创建用户实体类: ```java @Entity @Table(name = "user") public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String username; private String password; // 省略getter和setter方法 } ``` 4. 创建数据访问层(DAO): ```java @Repository public interface UserRepository extends JpaRepository<User, Long> { User findByUsernameAndPassword(String username, String password); } ``` 5. 创建服务层(Service): ```java @Service public class UserService { @Autowired private UserRepository userRepository; public User login(String username, String password) { return userRepository.findByUsernameAndPassword(username, password); } } ``` 6. 创建控制器层(Controller): ```java @RestController public class UserController { @Autowired private UserService userService; @PostMapping("/login") public String login(@RequestParam String username, @RequestParam String password) { User user = userService.login(username, password); if (user != null) { return "登录成功"; } else { return "用户名或密码错误"; } } } ``` 通过以上步骤,你可以实现一个简单Spring Boot应用,实现基本的登录功能。当用户发起登录请求时,控制器调用服务层的登录方法进行验证,返回相应的结果给用户。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值