JAVA基础练习(四):SpringBoot 实现简易登录功能

前言

课堂任务:搭建 SpringBoot 项目,使用 Controller、Service 分层,实现登录校验。在浏览器地址栏传入用户名、密码,固定账号张三,密码123,页面返回登录成功 / 失败。

项目:lianxi4,包路径com.example.lianxi4

1. 项目环境

IDEA 创建 SpringBoot 项目,勾选依赖Spring Web,项目名称lianxi4。 检查 pom.xml,确认 web 依赖存在:

复制代码
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

2. 新建 Service 接口 LoginInter

右键包com.example.lianxi4 → New → Java Class,Interface,名字LoginInter

复制代码
package com.example.lianxi4;

public interface LoginInter {
    boolean checkUser(String name,String pwd);
}

3. 新建 Service 实现类 LoginImpl

右键包com.example.lianxi4 → New → Java Class,名字LoginImpl

复制代码
package com.example.lianxi4;

import org.springframework.stereotype.Service;

@Service
public class LoginImpl implements LoginInter{
    @Override
    public boolean checkUser(String name, String pwd) {
        //固定账号:张三,密码123
        return "张三".equals(name) && "123".equals(pwd);
    }
}

@Service注解:交给 Spring 容器管理,方便注入到 Controller。

4. 新建控制器 LoginController

右键包com.example.lianxi4 → New → Java Class,名字LoginController

复制代码
package com.example.lianxi4;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;

@RestController
public class LoginController {
    @Resource
    private LoginInter loginInter;

    @GetMapping("/login")
    public String login(
            @RequestParam String name,
            @RequestParam String pwd
    ){
        boolean ok = loginInter.checkUser(name,pwd);
        if(ok){
            return "登录成功";
        }else{
            return "登录失败";
        }
    }
}

@RestController:返回字符串文本;@GetMapping接收浏览器 GET 请求。

5. 主启动类 Lianxi4Application(项目自带)

复制代码
package com.example.lianxi4;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class Lianxi4Application {
    public static void main(String[] args) {
        SpringApplication.run(Lianxi4Application.class, args);
    }
}

6. 启动与浏览器测试

  1. 右键Lianxi4Application启动项目,看到启动成功日志。
  2. 浏览器访问: ✅ 正确账号:http://localhost:8080/login?name=张三&pwd=123 页面输出:登录成功

❌ 错误账号:http://localhost:8080/login?name=李四&pwd=111 页面输出:登录失败

7. 项目结构展示

复制代码
src/main/java
└── com.example.lianxi4
    ├── Lianxi4Application.java  //主启动类
    ├── LoginInter.java           //service接口
    ├── LoginImpl.java            //service实现类
    └── LoginController.java      //控制器

8. 知识点小结

  1. SpringBoot 三层简单分层:Controller 接收请求,Service 处理业务逻辑
  2. @Resource完成依赖注入,将 Service 注入 Controller
  3. Get 请求直接在 url 地址栏传递参数,@RequestParam接收参数
相关推荐
光依旧1 小时前
MCP实战手记系列(十):MCP Server高可用实战
spring boot·高可用·nginx负载均衡·redis哨兵·mcp·微服务容错·resilience4j熔断
Sarvartha1 小时前
final 关键字
java·开发语言
2601_952047791 小时前
单一策略深度教程:用轻易云把集成任务的报错实时推送到钉钉机器人
java·机器人·钉钉
数据狐(Datafox)2 小时前
淘宝图片搜索 API 落地实战:基于以图搜货搭建跨境电商选品系统
java·大数据·微服务
Escalating_xu3 小时前
【C 语言】数据在内存中的存储:补码、大小端、整型陷阱与 IEEE 754 全解析
java·c语言·网络
灯澜忆梦4 小时前
【面向对象编程C++】| 基础语法
java·c++·算法
一个风轻云淡4 小时前
GCC 和 GDB命令简单解读
java·linux·前端
省钱兄--zs4 小时前
西安24小时自助健身房解决方案实战:系统开发与部署全流程指南
java·spring boot·系统架构·intellij-idea·需求分析