当前位置:首页 > 数码 > 使用Spring-Boot打造强大的Java应用程序 (使用spring框架的好处是什么)

使用Spring-Boot打造强大的Java应用程序 (使用spring框架的好处是什么)

admin6个月前 (04-23)数码33

以下是参数校验的步骤:

步骤概览

  1. 引入依赖包
  2. 使用校验注解
  3. 处理绑定异常
  4. 控制层启用校验

步骤说明

1. 引入依赖包

在pom.xml文件中引入validation组件,它提供了在SpringBoot应用程序中进行参数校验的支持。

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-validation</artifactId>
</dependency>

validation组件主要功能包括:

  • 提供参数校验注解
  • 提供异常处理机制
  • 提供校验规则配置

2. 使用校验注解

在实体类上添加对应校验的注解,如@NotEmpty,@NotNull,@Max等。使用实例如下所示:

public class Person {
  @NotEmpty
  private String name;
  @NotNull
  private Integer age;
  @Max(value = 100)
  private Integer score;
}

可使用的注解列表如下所示:

注解 功能
@NotEmpty 字符串不能为空
@NotNull 对象不为null
@Max 最大值
@Min 最小值
@Size 大小
@Pattern 正则表达式
@Email 邮箱
@Url url
@IP ip

3. 处理绑定异常

如果我们程序中使用了参数校验,当参数校验不通过,接口返回至前端的格式并不是我们统一定义的格式,我们需要将参数校验的异常处理并按照统一格式返回至前端,我们可以定义全局的异常处理器来统一处理。

处理示例如下所示:

@ControllerAdvice
public class GlobalExceptionHandler {

  @ExceptionHandler(MethodArgumentNotValidException.class)
  public ResponseEntity<Result> handleMethodArgumentNotValidException(MethodArgumentNotValidException e) {
    List<String> errors = e.getBindingResult().getAllErrors().stream()
        .map(error -> error.getDefaultMessage())
        .collect(Collectors.toList());
    return ResponseEntity.ok(Result.fail(errors));
  }
}

其中Result是一个自定义的返回结果类,可以根据实际情况进行定义。

4. 控制层启用校验

在实体类上添加校验注解,这只是定义了校验规则,并没有真正启用,在Controller方法上还需要使用@Valid或@Validated注解启用校验。

使用示例如下图所示:

@PostMapping("/save")
public ResponseEntity<Result> save(@Valid Person person) {
  // ...
}

其中@Valid注解和@Validated注解还是有点区别的,区别如下所示,我们在使用时,可根据其特性按需使用。

区别 @Validated @Valid
适用范围 方法参数、方法返回值、字段和方法级别 方法参数和方法返回值
验证顺序 会递归地校验参数对象的属性 不会递归地校验参数对象的属性
分组校验 支持分组校验 不支持分组校验
验证器选择 默认使用标准的BeanValidation(JSR380)规范的验证器,例如HibernateValidator 使用Spring的验证器,例如SpringValidator

测试结果

测试如图所示:

返回的信息按照统一的格式返回,并提示我们哪个参数校验失败。


springboot入门(从零开始快速构建JavaWeb应用)

SpringBoot是一个基于Spring框架的快速开发的框架,它能够帮助我们快速构建JavaWeb应用程序。SpringBoot通过提供一系列的开箱即用的功能模块,使得我们能够更加简单快速地搭建出一个可运行的JavaWeb应用程序。

SpringBoot的优势

SpringBoot的优势主要体现在以下几个方面:

1.快速开发:SpringBoot提供了很多的开箱即用的功能模块,使得我们能够快速构建出一个可运行的JavaWeb应用程序。

2.简化配置:SpringBoot通过自动配置的方式,使得我们不需要手动配置很多的组件,从而简化了配置的过程。

3.易于部署:SpringBoot提供了很多的打包方式,使得我们能够很方便地将应用程序部署到不同的环境中。

如何使用SpringBoot

使用SpringBoot进行JavaWeb应用程序的开发主要分为以下几个步骤:

1.创建项目:使用SpringBoot可以通过官方提供的SpringInitializr来创建项目,也可以通过在IDE中创建Maven或Gradle项目来使用SpringBoot。

2.添加依赖:在创建好的项目中,我们需要添加一些依赖,这些依赖将会提供一些开箱即用的功能模块。

3.编写代码:在添加好依赖之后,我们就可以开始编写代码了。SpringBoot提供了很多的注解和工具类,使得我们能够更加简单地编写代码。

4.运行应用程序:在编写好代码之后,我们可以使用SpringBoot提供的插件来打包应用程序,并且可以使用命令行或者IDE来启动应用程序。

示例

下面我们来通过一个简单的示例来展示如何使用SpringBoot进行JavaWeb应用程序的开发。

1.创建项目

首先我们需要创建一个SpringBoot项目。我们可以在官方提供的SpringInitializr中创建一个项目,也可以在IDE中创建一个Maven或Gradle项目并且添加SpringBoot的依赖。

2.添加依赖

在创建好的项目中,我们需要添加一些依赖。在这个示例中,我们需要添加SpringWeb和Thymeleaf的依赖。我们可以在中添加以下依赖:

spring-boot-starter-web

spring-boot-starter-thymeleaf

3.编写代码

在添加好依赖之后,我们就可以开始编写代码了。在这个示例中,我们需要编写一个简单的控制器和一个Thymeleaf模板。我们可以在src/main/java/com/example/demo目录下创建一个名为DemoController的控制器,代码如下:

@Controller

publicclassDemoController{

@GetMapping(/)

publicStringindex(Modelmodel){

(message,HelloWorld!);

returnindex;

在这个控制器中,我们使用了@GetMapping注解来指定访问路径,使用了Model来传递数据,使用了Thymeleaf的模板引擎来渲染页面。

在src/main/resources/templates目录下创建一个名为的Thymeleaf模板,代码如下:

SpringBootDemo

在这个模板中,我们使用了Thymeleaf的语法来渲染页面,使用了${message}来显示控制器中传递过来的数据。

4.运行应用程序

在编写好代码之后,我们可以使用SpringBoot提供的插件来打包应用程序,并且可以使用命令行或者IDE来启动应用程序。在这个示例中,我们可以使用Maven来打包应用程序,并且使用命令行来启动应用程序。我们可以执行以下命令来打包应用程序:

mvnpackage

执行完这个命令之后,会在target目录下生成一个名为的可执行文件。我们可以使用以下命令来启动应用程序:

java-jartarget/

启动应用程序之后,我们可以在浏览器中访问,就能够看到我们编写的页面了。

适合编程开发学习的软件开发框架?

如果编程开发程序员想要提高自己在职场中的竞争能力的话,就需要不断的学习新的技术和能力来充实自己,今天我们就给大家分享介绍了12个关于编程开发方面的框架,一起来了解一下吧。

这是另一个JavaScript框架,也在我的2023年学习清单中。它提供了一个完全的客户端解决方案。你可以使用AngularJS在客户端创建动态网页。它提供了声明性模板,依赖注入,端到端工具,以及集成的佳实践,以解决客户端的常见开发难题。

由于它是一个JavaScript库,因此你可以使用script标签将其包含在HTML页面中。它使用指令(Directives)扩展HTML属性,并使用表达式将数据绑定到HTML。

因为Google支持Angular,所以在性能和定期更新方面你可以放心。我坚信AngularJS绝对不会短命,绝对值得你投入时间和精力。

毫无疑问,JavaScript是排名一的编程语言,而对此发挥了重要作用。传统上,JavaScript被用作客户端脚本语言,与HTML一起使用来提供客户端上的动态行为。它运行在Web浏览器上,但是允许你在服务器端运行JavaScript。

是一个开源和跨平台的JavaScript运行时环境,用于执行服务器端JavaScript代码。你可以使用在服务器端创建动态网页,然后将其发送到客户端。

这意味着你可以用JavaScript开发一个从前端到后端的客户端-服务器端应用程序。

使用spring框架的好处是什么

3)SpringBoot

我已经使用Spring框架许多年了,所以当我一次被介绍到SpringBoot时,我完全被它相对匮乏的配置震惊到了。使用SpringBoot编写基于Spring的Java应用程序就像使用main()方法编写核心Java应用程序一样简单。

尽管我已经尝试过SpringBoot,但我还没有掌握它,这就是为什么我需要在2023年学习SpringBoot的原因。

React是用于构建用户界面的另一个JavaScript库或框架。它就像AngularJS,但由Facebook、Instagram、以及一个由个人开发人员和企业组成的社区维护。它允许Web开发人员创建大型网页应用程序,允许随时改变而无需重新加载页面。

web开发世界被分成了Angular和React两个阵营,具体在哪个阵营取决于你选择的方面。大多数情况下,天通苑电脑培训认为这是由情况决定的。例如,如果你工作于一个基于React的项目,那么显然,你需要学习React。

免责声明:本文转载或采集自网络,版权归原作者所有。本网站刊发此文旨在传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及版权、内容等问题,请联系本网,我们将在第一时间删除。同时,本网站不对所刊发内容的准确性、真实性、完整性、及时性、原创性等进行保证,请读者仅作参考,并请自行核实相关内容。对于因使用或依赖本文内容所产生的任何直接或间接损失,本网站不承担任何责任。

标签: springboot

“使用Spring-Boot打造强大的Java应用程序 (使用spring框架的好处是什么)” 的相关文章

如何在-文件-文件中打包本地-Springboot-jar-jar-执行 (如何在文件上打勾)

如何在-文件-文件中打包本地-Springboot-jar-jar-执行 (如何在文件上打勾)

要在 Spring Boot 可执行 JAR 文件中打包本地 JAR 文件,可以使用 Maven 或 Gradle 构建工具。具体步骤如下: 使用 Maven 在项目的根目录下,...

参数校验-SpringBoot-优雅的-你把握了吗 (参数校验失败是什么原因)

参数校验-SpringBoot-优雅的-你把握了吗 (参数校验失败是什么原因)

前言 在后端的接口开发环节,实践上每一个接口都或多或少有不同规定的参数校验,有一些是基础校验,如非空校验、长度校验、大小校验、格局校验;也有一些校验是业务校验,如学号不能重重复、手机号不能重...