繁体   English   中英

JPA 查询返回 BigInteger 而不是 Long

[英]JPA query returns BigInteger instead of Long

我有一个存储库 class 预计将返回如下列表。 它执行得很好,但是当我尝试检查结果列表中是否存在另一个 Long 值时,我观察到,结果列表实际上不是 Long 类型,而是 BigInteger。 为什么会这样? 如何强制存储库方法返回 Long,而不是 BigInteger?

存储库 Class

     @Repository
     public interface CarsRepository extends JpaRepository<Cars, Long> {
         @Query(value = "select Id from Cars WHERE Colour = ?1", nativeQuery=true)
         public List<Long> fetchCarsWithColour(String colour);
     }

实体 class

    @Entity
    @Table(name = "Cars")
    public class CarDO implements java.io.Serializable {

       private static final long serialVersionUID = -3769636546619492649L;
       private Long id;
    
       @Id
       @GeneratedValue(strategy=GenerationType.AUTO)
       @Column(name = "Id", unique = true, nullable = false)
       public Long getId() {
          return id;
       }
       public void setId(Long id) {
          this.id = id;
       }
   }

表创建

CREATE TABLE [dbo].[Cars](
    [Id] [int] IDENTITY(1,1) NOT NULL,
    [Colour] [varchar](500) NULL,
    [Price] [BIGINT] NULL,
    [Status] [varchar](50) NULL
) ON [PRIMARY]
GO

从查询中删除nativeQuery=true

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM