初识Spring Boot:构建项目结构与组件解析

目录

前言
第一点:项目的结构
第二点:controller类的创建与使用(构造器)
第二点:service类的创建与使用(逻辑层)
第三点:Mapper类的创建与使用(数据操作)
总结

前言

在进行Spring Boot项目开发时,良好的项目结构和合理的组件划分是十分重要的。本文将介绍如何根据功能模块和职责划分文件夹,并解释在项目中创建和使用controller、service、mapper等重要组件的方法。


考虑到小白不会标准的创建springboot文件,我专门写了一篇讲解文章:点击跳转

第一点:项目的结构

我一般在项目中创建以下文件夹,来区分每个模块

1.controller文件:控制器负责处理用户请求,并返回响应,充当了前端与后端之间的桥梁

2.service文件:服务层,用于逻辑的书写,如登录注册

3.entity文件:实体类,通常映射到数据库中的表,每个实体类对应一个数据库表

4.mapper文件:用于定义SQL查询和实体类之间的映射

5.exception文件:异常处理,自定义异常类可以提供更详细的错误信息

6.common文件:存放一些通用的工具类、常量、配置

7.utils文件:通常用来存放一些公共的工具类或方法

就重要的就是controller,service,mapper文件夹了,下面我会进行讲解

第二点:controller类的创建与使用(构造器)

1.创建一个WebController类

2.写下以下代码

java 复制代码
@RestController     //解释成一个返回数据返回结构的构造器
public class WebController {

    //默认路径为localhost:8080
    @RequestMapping
    public Result hello(){
        return Result.success("hello!");
    }

}

简单理解就是:当收到localhost:8080路径的HTTP请求时,WebController类中的hello()方法会被调用,返回一个包含字符串"hello!"的成功的结果。

第二点:service类的创建与使用(逻辑层)

1.在WebController.java里添加代码

java 复制代码
@RestController     //解释成一个返回数据返回结构的构造器
public class WebController {
    @Autowired //示将UserService类的实例自动注入到UserController类中
    UserService userService;

    //默认路径为localhost:8080
    @RequestMapping
    public Result hello(){
        //调用service层的方法
        String message=userService.getMsg();
        return Result.success("hello!");
    }
}

2.创建WebSercie类文件

3.编辑代码:

java 复制代码
@Service
public class UserService {

   public String getMsg() {
        //创建随机数
        Random random = new Random();
        //获取随机数
        int randomNumber = random.nextInt();
        if(randomNumber>0){
            return "数值大于0";
        }else{
            return "数值等于0";
        }
    }
}

代码意思:getMsg()方法通过实例化Random类产生一个随机数,然后根据随机数的大小返回相应的字符串。

第三点:Mapper类的创建与使用(数据操作)

创建WebMapper接口文件

写一个搜索数据库所有数据的代码

java 复制代码
@Mapper
public interface UserMapper {

    @Select("select * from user")
    User selectById(User user);

}

数据库得自己创建和链接哦

想要详细得教材可以看我置顶文章:在这篇文章中我有详细的解释和步骤,点击跳转


总结

通过本文的讲解,读者可以了解到如何按照一定的规范创建Spring Boot项目的文件结构,包括controller负责处理用户请求,service处理业务逻辑,mapper用于数据操作等关键文件夹的作用。同时,我们也详细地演示了如何编写简单的代码来实现基本的功能,例如根据请求返回不同的数据、创建随机数等。希望本文能够帮助读者更好地理解和应用Spring Boot框架,提升项目开发效率和代码质量。

相关推荐
WeiXin_DZbishe6 小时前
基于springboot宠物领养系统-计算机毕设 附源码【课程设计】94217
vue.js·spring boot·python·django·php·课程设计
架构技术专栏7 小时前
Agent 工具调用:从工具声明到执行反馈
前端·人工智能·后端
vx_bisheyuange7 小时前
基于SpringBoot的体育商品推荐系统
spring boot·毕业设计
别动我齐刘海8 小时前
C++ 工程化学习
java·linux·前端·c++·学习·机器学习·机器人
码事漫谈8 小时前
你让AI干的活,它可能只干了十分之一——而你根本看不出来
后端
Wx-bishekaifayuan8 小时前
express皖美特色农产品网售系统53118-计算机课程设计、毕业设计
人工智能·spring boot·后端·python·课程设计·express·旅游
Wx-bishekaifayuan9 小时前
springboot汉中旅游服务平台41442-计算机课程设计、毕业设计
spring boot·后端·python·django·课程设计·express·旅游
code2cat9 小时前
Java进阶篇之AtomicLongFieldUpdater:把累计额度留在对象字段中
java·cas·并发编程
WeiXin_DZbishe9 小时前
基于springboot城市公交实时运营与调度系统-计算机毕设 附源码【课程设计】66173
java·vue.js·spring boot·后端·python·php·课程设计
泡茶喝茶写代码9 小时前
A股量化数据工程:从 REST 接口到策略信号(第 18 篇):放量缩量异动扫描
java·python·股票数据api·股票数据api接口·股票api数据接口·股票量化数据api·股票量化数据接口