从0开始学springboot 项目后端实战开发

黑马程序员Java项目实战《瑞吉外卖》,轻松掌握springboot + mybatis plus开发核心技术的真java实战项目_哔哩哔哩_bilibili该目录下所有学习经验都来自于该项目,讲述了从0开始构建一个Javaspring实战项目

关于项目环境的搭建,不做赘述,可以通过该链接前六集操作完成,需要初始环境 maven,jdk

 前言

首先我们要知道一个逻辑,在编写一个功能时,需要分析需求,并提供需求理清项目结构,这是非常重要的,以及需要思考从哪里开始入手写

以该功能为例,可以用到其他功能,当分析出需求以后,我们需要知道每个层的功能是什么

我写一下我自己思考问题的一个逻辑,如果完全不知道如何下手,可以这样来思考

1.先写实体类entity,该类下定义了数据的结构和业务规则,描述了应用需要处理的数据。有了实体类,你就能清楚地知道应用程序需要哪些数据字段,以及这些字段之间的关系,这对于后续步骤至关重要。

2.再写控制器controller,首先我们需要知道控制器负责接收来自用户的请求,处理这些请求并将结果返回给用户。它充当了前端和后端服务之间的桥梁。为何要在实体类后写是因为一旦有了实体类,你就可以开始思考应用程序的入口点,即用户如何与系统交互。控制器定义了这些交互点,它能够帮助你设计API接口,确定哪些操作(如创建、读取、更新、删除CRUD操作)是必要的。所以需求分析是非常重要的。

3.再写服务层service,服务层包含了业务逻辑,处理复杂的业务规则和流程。它是控制器和数据访问层之间的中间层,提供了一种抽象的方式来处理数据。它封装了业务逻辑,使得控制器更加轻量级,专注于处理请求和响应。同时,服务层可以复用,使得相同的功能可以在多个控制器中使用,提高了代码的可维护性和可测试性。

4.然后写映射器/数据访问层mapper,映射器或数据访问对象(DAO)负责与数据库进行交互,执行SQL查询或调用存储过程,处理数据库相关的事务。虽然数据访问层很重要,但它依赖于实体类和服务层的设计。在你明确了业务逻辑和数据结构之后,就可以专注于如何高效地从数据库中读取和写入数据。这样可以确保你的数据访问策略符合业务需求,而不是反过来。

我认为按照实体类 -> 控制器 -> 服务层 -> 映射器的顺序进行开发,可以帮助你构建一个清晰的思路去思考,如何进行功能的编写,有了实体类可以理清需要哪些数据字段,然后通过控制层设计api接口,与用户端进行交互,同时理清具体需要的方法,便于到服务层编写业务规程代码,然后对服务器需要用到的对应的数据库操作,写入mapper数据访问层。

这只是我个人的一个理解,如果有不对的可以指正。然后对于该项目下和前端有关,数据库有关的 内容,资料,有需要的可以留言,我就发到这上面便于下载使用。(有需要评论一下然后我去研究一下怎么将资源包发上来哈)

好啦,我们开始我们的一起学习吧。

 如何实现登陆页面的后端功能

初始需要做的准备:

首先导入数据库表和前端的文件到项目下,项目结构现在是这个样子

需要根据资源包替换pom.xml,application,yml,同时导入前端

在导入前端时,需要进行一个静态地址的映射,在config包下创建一个类WebMvcConfig

实现功能为:当你的应用接收到一个以/backend//front/开头的URL请求时,Spring MVC将尝试从类路径下的相应目录中找到对应的静态资源(如HTML、CSS、JavaScript文件等),并将其发送给客户端。

核心代码为:

registry.addResourceHandler("/backend/").addResourceLocations("classpath:/backend/"); registry.addResourceHandler("/front/").addResourceLocations("classpath:/front/");

  • 第一个参数"/backend/**"指定映射的URL路径前缀,这意味着所有以/backend/开头的URL都将被视为静态资源请求。
  • 第二个参数addResourceLocations("classpath:/backend/")指定了实际静态资源的物理位置,这里的classpath:/backend/意味着资源位于项目的类路径下的backend目录中。
  • 同样的逻辑也应用到了/front/**,只不过资源位置在classpath:/front/

为固定格式,代码如下:

package com.cyx.reggie.config;

import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
imp
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值