Java开发:Spring Boot 实战教程

springboot项目开发实战 文章目录springboot项目开发实战之后端流程详解一、创建简单的springboot之web项目1、简单springboot框架环境搭建2、相关jar包的导入3、配置文件yaml的设置4、框架结构的梳理如过滤器和拦截器5、代码结构的书写1)controller层书写 springboot项目开发实战之后端流程详解 一、创建简单的springboot之web项目 1、简单springboot框架环境搭建 step1: step2: step3: step4: step5: 2、相关jar包的导入 阅读详情

序言

随着技术的快速发展和数字化转型的深入推进,软件开发领域迎来了前所未有的变革。在众多开发框架中,Spring Boot凭借其“约定大于配置”的核心理念和快速开发的能力,迅速崭露头角,成为当今企业级应用开发的首选框架之一。

《Spring Boot实战教程》旨在为广大开发者提供一本系统、全面且实用的学习指南。本教程不仅深入解析了Spring Boot的核心特性和最佳实践,还通过大量的实战案例,帮助读者快速掌握Spring Boot的应用开发技巧,从而能够高效、稳定地构建出符合业务需求的Web应用。

一、创建Springboot项目

  1. 创建Maven工程
  2. 导入spring-boot-stater-web起步依赖
  3. 编写Controller
  4. 提供启动类

二、手动创建SpringBoot工程

在这里插入图片描述

在这里插入图片描述

三、编写配置文件application.properties

删除application.properties配置文件,新建application.yml或application.yaml配置文件【两者区别请自行查询】
在这里插入图片描述
在这里插入图片描述

四、编写Controller

在这里插入图片描述

启动项目后在控制台会显示配置的端口

在这里插入图片描述

可以根据需要将pom文件中的jdk17改为jdk8【注意mybatis等三方依赖库的版本也需要降低】

在这里插入图片描述

五、提供启动类

在这里插入图片描述

六、启动服务,在浏览器调用http://localhost:8080/hello

页面返回Hello World~表示调用成功,项目搭建正常

------------接下来就可以进行业务相关接口开发了------------

七、执行sql语句【在navicat、idea或者dos窗口执行sql语句】

-- 创建数据库
create database big_event;

-- 使用数据库
use big_event;

-- 用户表
create table user (
                      id int unsigned primary key auto_increment comment 'ID',
                      username varchar(20) not null unique comment '用户名',
                      password varchar(32)  comment '密码',
                      nickname varchar(10)  default '' comment '昵称',
                      email varchar(128) default '' comment '邮箱',
                      user_pic varchar(128) default '' comment '头像',
                      create_time datetime not null comment '创建时间',
                      update_time datetime not null comment '修改时间'
) comment '用户表';

-- 分类表
create table category(
                         id int unsigned primary key auto_increment comment 'ID',
                         category_name varchar(32) not null comment '分类名称',
                         category_alias varchar(32) not null comment '分类别名',
                         create_user int unsigned not null comment '创建人ID',
                         create_time datetime not null comment '创建时间',
                         update_time datetime not null comment '修改时间',
                         constraint fk_category_user foreign key (create_user) references user(id) -- 外键约束
);

-- 文章表
create table article(
                        id int unsigned primary key auto_increment comment 'ID',
                        title varchar(30) not null comment '文章标题',
                        content varchar(10000) not null comment '文章内容',
                        cover_img varchar(128) not null  comment '文章封面',
                        state varchar(3) default '草稿' comment '文章状态: 只能是[已发布] 或者 [草稿]',
                        category_id int unsigned comment '文章分类ID',
                        create_user int unsigned not null comment '创建人ID',
                        create_time datetime not null comment '创建时间',
                        update_time datetime not null comment '修改时间',
                        constraint fk_article_category foreign key (category_id) references category(id),-- 外键约束
                        constraint fk_article_user foreign key (create_user) references user(id) -- 外键约束
)

八、整合mysql

在这里插入图片描述

九、整合mybatis

推荐使用Mybatis-plus,而且建议只使用Mybatis-plus的Mapper规范,Service依旧按照Mybatis的规范【具体实施参照本文第三十二项】。
mybatis中文网:http://www.mybatis.cn/
mybatis的mapper.xml映射文件存放位置说明:
https://www.jb51.net/program/30707796h.htm

在这里插入图片描述

十、配置application.yml文件

server:
  port: 8080
  servlet:
    context-path: /big-event2

spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/big_event?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai&useSSL=false&allowPublicKeyRetrieval=true
    username: root
    password: 123456
  redis:
    host: localhost
    port: 6379

#    下划线命名字段和驼峰命名属性的赋值问题【https://blog.csdn.net/Zong_0915/article/details/127453933】
mybatis:
  configuration:
    map-underscore-to-camel-case: true


十一、在包名下新建业务分类包

在这里插入图片描述

十二、通用实体类

返回结果实体类:

package com.source.bigevent2.pojo;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class Result<T> {
   
   
    private Integer code;//状态码0成功;1失败
    private String msg;//提示信息
    private T data;//响应数据

    public static Result success() {
   
   
        return new Result(0, "操作成功", null);
    }

    public static <E> Result<E> success(E data) {
   
   
        return new Result<>(0, "操作成功", data);
    }

    public static Result<String> error(String msg) {
   
   
        return new Result<>(1, msg, null);
    }
}

分页返回结果实体类:

package com.source.bigevent2.pojo;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

//分页返回结果对象
@Data
@NoArgsConstructor
搭建SpringBoot项目——开发环境搭建开发环境搭建 SpringBoot 是 Java 社区最有影响力之一的开源的Spring后端开发框架,也是企业级应用开发的首选技术,Spring Boot 拥有良好的技术基因,它是伴随着Spring 4 而产生的技术框架,在继承了 Spirng 框架所有优点的同时也为开发者带来了巨大的便利,与普通的 Spring 项目相比,SpringBoot 可以让项目的配置更简化、编码更简化、部署更方便,为开发者提供了开箱即用的良好体验,进一步提升了开发者的开发效率。 阅读详情

相关推荐

Java Spring Boot 入门:开启高效开发之旅

Spring Boot 是一个基于 Spring 框架的开源项目,旨在通过自动化配置和内嵌服务器来简化 Spring 应用的初始搭建和开发过程。它提供了大量的开箱即用功能,使得开发者可以更加专注于业务逻辑的实现,从而提高开发效率。通过上述步骤,你已经成功创建了一个简单的 Spring Boot 应用。当然,这只是一个开始,Spring Boot 还有大量的功能等待你去探索。官方文档:阅读 Spring Boot 官方文档(),了解更详细的内容和高级特性。实践练习。

JID007的博客 1515

Spring Boot初级教程:从零搭建企业级Java应用

Spring Boot初级教程:从零搭建企业级Java应用

guse1125的博客 1448

springboot实战开发全套教程,让开发像搭积木一样简单!Github星标已上10W+!

前言 先说一下,这份教程在github上面星标已上10W,下面我会一一给大家举例出来全部内容,原链接后面我会发出来!首先我讲一下接下来我们会讲到的知识和技术,对比讲解了多种同类技术的使用手日区别,大家可以根据自己的喜好进行选择! 开发模式:本文讲解了历史悠久,但现在依然被广泛使用的分层应用开发模式 MVC( Model View Cont olle R),还 讲解了当下逐渐火热的响应式开发模式 Web FluX ORM ( Object Relational Mapping ,对象关系映射)框架:数据库的

欢迎您访问我的公众号【前程有光】 2440

Spring Boot应用开发深度解析:从入门到实战

SpringBoot是Spring家族中的一个新项目,旨在通过提供默认配置来简化Spring应用的初始搭建和开发过程。它集成了大量常用的第三方库,并通过条件化配置(ConditionalConfiguration)自动根据项目的类路径、属性设置和其他因素来决定配置哪些特性。核心特性包括独立运行:Spring Boot项目可以打包成可执行的jar包,使用java -jar命令即可运行。自动配置:Spring Boot根据项目依赖自动配置Spring框架和其他库。无代码生成和XML配置。

运维人生 1597

#前后端分离# 头条发布系统

SpringBoot 3.0+ Vue3.0

NVG_Haru的博客 1700

【Spring Boot】使用Spring Boot来搭建Java web项目以及开发过程

一、Spring Boot简介 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。SpringMVC是非常伟大的框架,开源...

每一名出色的架构师,必定是一位优秀程序员 19万+

Java Hibernate与Spring Boot集成实战教程

Java语言以其跨平台、面向对象的特性而闻名。通过Java虚拟机(JVM)的抽象,Java代码能够在不同的操作系统上以“一次编写,到处运行”的方式执行,极大地提高了开发的灵活性和软件的可移植性。对象关系映射(Object-Relational Mapping,简称ORM)技术是一种在关系数据库和对象之间进行自动映射的技术。它通过使用描述对象和数据库之间的映射的元数据,将程序中的对象自动持久化到数据库中。ORM框架减少了开发者直接编写SQL代码的需要,使得数据库操作更加面向对象。

weixin_36289742的博客 815

Spring Boot个人微博开发实战教程

Spring Boot是由Pivotal团队提供的全新框架,目的是简化Spring应用的初始搭建以及开发过程。它使用了特定的方式来进行配置,从而使开发人员能够快速启动和运行Spring应用。简而言之,Spring Boot能够让我们更专注于业务逻辑的实现,而不是繁琐的配置工作。Gradle的构建由任务(task)组成,每个任务是一个独立的工作单元。在Gradle中任务是用Groovy语言编写的,它可以执行一些动作,比如编译源代码、创建归档文件或者生成文档等。

weixin_30995917的博客 950

三极管稳压电路仿真分析

Z1的负极连接到三极管的基极,三极管发射极E是输出,形成了一个射极跟随器,也就是说,E极的电压随着B电压变化而变化,但BE之间有一个压降,一般硅管0.7V左右,假设B极是6.7V,那E极就是6.7-0.7=6V,所以就有一个公式VOUT=Vz-Vbe,可以根据VOUT来选择合适的稳压管。从稳压管的SPEC中我们可以看到,Vz@Izt这个参数,指在Izt=20mA时,稳压管的稳压值Vz=5.1V,也就是说流过稳压管的电流在20mA以上,稳压效果最佳。三极管导通之后,E点电压会升高,当升高到Vbe。

U_YAO的博客 2321

Latex下使用JabRef添加参考文献

文章目录 前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结 前言 Latex可以手动添加参考文献,但文献过多时,使用JabRef软件相对方便。 提示:以下是本篇文章正文内容,下面案例可供参考 一、JabRef安装 网址:http://www.jabref.org 打开网址后,点击“Download” 进入如下页面后,选择 portable (便携版,无需安装),下载后是一压缩包,打开即可使用。 二、使用 1.创建库 ...

sz3076799的博客 3467

机械革命重装Win11详细教程

通过以上步骤,你可以在机械革命电脑上成功重装Windows 11。虽然整个过程可能看起来有些复杂,但只要你按照步骤逐一进行,就能够顺利完成安装并享受到全新的操作系统带来的便利和性能提升。希望本文能够帮助到你,如果你有任何问题或疑问,请随时联系我们的技术支持团队。

mmoo_python的博客 3130

Arduino程序设计(十)8×8 共阴极LED点阵显示(MAX7219)

本文主要介绍8×8 LED点阵显示实验,分别是:1、介绍MAX7219点阵模块;2、点阵显示部分图形;3、点阵显示数字 0~9 及 26 个英文字母。1、通过上述两个点阵实验,了解了8*8点阵显示的基本原理;2、通过SPI通信控制点阵显示,学会了Arduino用SPI通信方式控制外设。

Alice的博客 1万+

面试真题集(十六):TensorRT基础

TensorRT面试真题解析:从模型优化到推理部署 本文精选了14道TensorRT面试题,涵盖选择题、简答题和场景题,深度考察推理工程师对TensorRT核心技术的理解。内容聚焦三个关键维度: 基础概念 FP16推理中Softmax层为何需保持FP32(数值稳定性) INT8校准原理(EntropyCalibrator2的鲁棒性优势) Plugin V3接口的构建/运行分离设计 性能优化 Conv-BN-ReLU融合减少40-60%延迟的关键机制(访存优化) 动态Shape配置策略(min/opt/max

PeterPan的博客 69

汽车电子RTOS--AUTOSAR OS

AUTOSAR OS(AUTomotive Open System ARchitecture Operating System)是AUTOSAR(汽车开放系统架构)标准中的一个重要组件,它是一个专门为汽车电子控制单元(ECU)设计的实时操作系统(RTOS)。AUTOSAR OS旨在提供一个标准化的软件平台,以促进不同供应商和汽车制造商之间的组件复用和协同开发,提高软件质量和降低成本。

MHD0815的博客 1797

【数据集介绍】MVTec 3D AD数据集介绍

MVTec AD(MVTec Anomaly Detection)数据集是用于异常检测的计算机视觉数据集。该数据集包含来自工业生产中不同材料和产品的图像,包括玻璃、塑料、纺织品等。每个类别都包含正常样本和异常样本。这些异常样本包括各种常见的生产缺陷,如划痕、裂纹、凹陷等。MVTec AD数据集旨在帮助研究人员和从业者开发和评估用于检测工业制造中物体缺陷的算法和系统。

原来也有北瓜 7748

DA14531-外设驱动篇-UART收发通信应用

宏定义注解CFG_PRINTF用户开启串口串口打印宏设置波特率选择115200。

hejinwu1314的博客 729

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

上一篇: 合并jar和jar转dex
下一篇: Android开发:Glide基本使用以及加载https图片(配合OkHttp实现)
android157
博客等级 码龄9年 193粉丝 95原创
评论 7
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值