要在Spring Data Rest中强制使用JSON模式属性,可以通过以下步骤实现:
1.定义实体类:您需要定义一个实体类来表示数据模型。假定该类具有一个实体类,该实体类包含要在JSON中返回的属性,并且具有一个名为“Person”的实体类,该实体类包含两个属性:“name”和“age”。
import javax. perence. ity;
import javax. perence. GenerValue;
import javax. perence. GenerationType;
import javax. persistence. Id;
@Entity
公众课程{
@Id
GeneratedValue strategy = GenerationType. AUTO
长期私人身份证;
私有字符串名称;
个人意图时代
//省略constructor,getter和setter方法
2.创建存储库接口:接下来,您需要创建一个从“JpaRepository”或“CrudRepository”继承的接口来操作数据库。此接口允许您定义自定义方法,如查询、保存等。
import org. springframework. data. jpa. repository. JpaRepository;
import org. springframework. stereotype. Repository;
@存储库
公共接口PersonRepository扩展JpaRepository {
//我们可以在这里定义自定义方法。
3.配置全局异常处理:为了确保在请求没有必要的属性时返回适当的错误消息,您需要配置全局异常处理程序类。此类被标记为“@ControllerAdvice”标注,并实现了“ExceptionHandler”接口。该类允许您定义处理所有异常并返回包含错误消息的响应的方法。
import org. springframework. httpStatus;
import org. springframework. http. ResponseEntity;
import org. springframework. web. bind. annotation. ControllerAdvice;
import org. springframework. web. bind. annotation. ExceptionHandler;
import org. springframework. web. servlet. mvc. method. annotation. ResponseEntityExceptionHandler
ControllerAdvice
公共类GlobalExceptionHandler扩展响应EntityExceptionHandler {
Exception(例外)
protected ResponseEntity<> handleConflict IllegalArgumentException ex WebRequest
String bodyOfResponse = "请求没有必需的属性。" + ex. getMessage;
返回handleExceptionInternal exbodyOfResponse new HttpHeaders HttpStatus. CONFLICT request;
上面的代码捕获异常,并在响应中返回包含错误消息的字符串。如果需要,可以修改方法来处理其他类型的异常。
4.测试:如果您运行应用程序并发送一个缺少必需属性的请求,它应该返回一个包含错误消息的响应。如果您发送的请求只包含“name”属性,则状态代码409(冲突)和响应正文中包含错误信息。
通过上面的步骤,您可以在Spring Data Rest中要求JSON模式属性。如果请求没有所需的属性,应用程序将返回一个包含错误消息的响应。这将使用户能够更好地了解请求中缺失的属性,并提供反馈。
相关问答:
1.如果我想在实体类中使用嵌套属性,我怎样才能成为必需的?
答:对于嵌套属性,可以使用嵌套在实体类中的Java对象来表示。在实体类的字段中添加“@NotBlank”或“@NotNull”标注,使其成为必需的。
import javax. validation. constraints. *;
import java.util. *;
公共类地址{
@NotBlank message = "地址不能为空"
私人字符串街道;
NotBlank message =“城市不能为空”
曲名:String City
@NotBlank message =“国家不能为空”
私有字符串国家;
//省略constructor,getter和setter方法
上面的代码要求在“Address”类的每个字段中添加“@NotBlank”注释。如果请求中缺少这些属性,应用程序将返回一个包含错误消息的响应。