【发布时间】:2020-06-01 08:29:34
【问题描述】:
在某些情况下,数据库中的主 ID 为空,当我获取它时,它给了我 JPA 系统异常 那么是否有任何注释可以帮助忽略空值。 方法抛出 'org.springframework.orm.jpa.JpaSystemException' 异常。 尝试从数据库中获取详细信息时得到它。
package com.merchant.orderDahsBoard.controller;
@RestController
@RequestMapping(value = "Dashboard")
public class OrderDashboardController {
@Autowired
private DashBoardService service;
ObjectMapper mapper = new ObjectMapper();
private static final Logger log = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
@PostMapping(value = "/getOrderDetails")
public OrderResponse getOrder(@PathParam(value = "id") Long id) {
OrderResponse response = new OrderResponse();
List<OrderMapping> orderMapping;
Sale sale= new Sale();
Purchase purchase = new Purchase();
long saleId = 0;
long purchaseId = 0;
try{
orderMapping = service.getOrderMapping(id);
response.setOrderMapping(orderMapping);
if (orderMapping != null) {
for (OrderMapping order : orderMapping) {
switch (order.getORDERTYPE()) {
case CART:
break;
case SALE:
saleId = order.getORDERID();
break;
case PURCHASE:
purchaseId = order.getORDERID();
break;
}
}
if(saleId!=0){
sale = service.getSale(saleId);
response.setSale(sale);
}
}
}
catch(Exception e){
log.error("Exception occured "+e);
}
return response;
}
}
下面是我项目中使用的@Entity类
@Entity
@Table(name = "ORDERMAPPING")
@Getter
@Setter
@ToString
public class OrderMapping {
@Id
@Column(name = "ORDERMAPPINGID")
private long ORDERMAPPINGID;
@Column(name = "MASTERID")
private long MASTERID;
@Column(name = "ORDERID")
private long ORDERID;
@Enumerated(EnumType.ORDINAL)
private OrderTypeEnum ORDERTYPE;
@Column(name = "ADDEDDATE")
private String ADDEDDATE;
@Column(name = "LASTUPDATEDDATE")
private String LASTUPDATEDDATE;
@Column(name = "CARTID")
private long CARTID;
@Column(name = "PCARTID")
private long PCARTID;
}
【问题讨论】:
标签: spring hibernate spring-boot