public class Payload {
private Clob paylaod;
public Clob getPaylaod() {
return paylaod;
}
public void setPaylaod(Clob paylaod) {
this.paylaod = paylaod;
}
}
@Entity
@Table(name ="ORDER")
@Data
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class Model implements Serializable {
@Id
@Column(name = "REQUEST_ID", nullable = false, unique = true)
private String requestId;
@Column(name = "VERSION")
private BigDecimal version;
@Column(name = "SOURCE")
private String source;
@Column(name = "SOURCE_ID")
private String sourceId;
@Lob
@Column(name = "PAYLOAD")
private Clob payload;
}
3.这是我的存储库。
public interface OrderRepository extends JpaRepository<Model, String>
{
@Query(value="SELECT PAYLOAD FROM ORDER WHERE REQUEST_ID = ?",nativeQuery = true)
Payload getDetailsById(String requestId);
}
@RestController
@RequestMapping("/v1/order-data/Order")
public class OrderController {
@Autowired
OrderRepository repository;
@GetMapping("/getDetailsById/{requestId}")
public Payload getDetailsById(@PathVariable("requestId") String id) {
return repository.getDetailsById(id);
}
}
4.获取以下错误:
我认为getDetailsById()方法的返回类型是Payload而不是Clob,请更改它并尝试运行。这可能有用。
尝试将PAYLOAD值直接存储到Clob中,而不是将其存储到pojo类中。
public interface OrderRepository extends JpaRepository<Model, String>
{
@Query(value="SELECT PAYLOAD FROM ORDER WHERE REQUEST_ID = ?1",nativeQuery = true)
Clob getDetailsById(String requestId);
}
试着使用?1用于编写参数化查询。
我知道这是另一个类似的问题,但我自己无法回答,这就是我写信给你寻求帮助的原因。 我尝试创建自己的@Query,并在两种情况下返回一个转换错误。我的猜测是服务有问题,但这是我的知识结束。 下面是我的代码: > 主实体 2.第二种模式 3.第三种模式 存储库 @Repository public interface UserRepository extends jparepository { } 服务
我将spring与JPA一起使用,并尝试使用@query与SQL query一起执行查询,并尝试将结果映射到一个对象。我有不同的实体类和映射到其他dto,因为我不想要所有的列。获取以下错误 如何解决上述问题。 如果问题无法解决,那么我们可以使用spring data JPA在不使用@Query的情况下解决问题吗?怎么做? 使用JPQL::编辑:: 获取以下错误
获取以下错误: 请帮我把结果设置到这个BO类中。
我有这门课: 这个问题: 但我有这个错误
我们有一个使用带有Postgres数据库的Spring boot1.3运行的应用程序。自定义用户类型是为数据库中的Json类型定义的。遵循并实现UserType以使用ObjectMapper返回Pojo。它工作得非常好。但是现在使用Spring boot1.4,我们得到了这个异常。 自定义用户类型中的代码片段。 我可以看到,找到了来自数据库的响应,objectmapper也对其进行了转换。返回时抛