jpa springboot 实体和数据库表映射问题
@Data
@EqualsAndHashCode(callSuper = true)
@Entity
@TypeDef(name = "json", typeClass = JsonStringType.class)
@Table(name = ModelConstants.DEVICE_COLUMN_FAMILY_NAME)
public final class DeviceEntity {
@Id
@Column(name = "DEV_ID")
protected String id;
@Column(name = "TENANT_ID")
private String tenantId;
...
}
Repository写法类似下面:
@Query("SELECT d FROM DeviceEntity d WHERE d.tenantId = :tenantId " +
"AND d.id > :idOffset ORDER BY d.id")
List<DeviceEntity> findByTenantId(@Param("tenantId") String tenantId);
查询会报错
jdbc.spi.SqlExceptionHelper - Unknown column 'deviceenti0_.id' in 'field list'
之前没了解过jpa,懂的帮忙看一下,实体的属性名称和表的属性名称要按一致吗,我理解@Column属性不就是为了定义不同的名称吗, 难道命名还要遵循规则?