我最近切换到 spring 3.0,hibernate 现在支持 json 类型定义,如下所示:
@JdbcTypeCode(SqlTypes.JSON)
var request: ReportRequestDto,
Run Code Online (Sandbox Code Playgroud)
但问题是ReportRequestDtohas val from: LocalDate,这会在保存实体时导致异常:
Java 8 date/time type `java.time.LocalDate` not supported by default
Run Code Online (Sandbox Code Playgroud)
我的 pom 中有jackson-datatype-jsr310依赖项,我也有对象映射器的配置:
@Bean
@Primary
fun objectMapper(): ObjectMapper {
val objectMapper = ObjectMapper()
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false)
objectMapper.registerModule(JavaTimeModule())
objectMapper.registerKotlinModule()
objectMapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS)
return objectMapper
}
Run Code Online (Sandbox Code Playgroud)
看起来 hibernate 没有“自动装配”对象映射器,因此它没有注册 java 时间模块。
当我打包代码时,出现此错误Error:(13,48) java: lambda expressions are not supported in -source 6。
我尝试安装不同的JDK,但没有改变。我尝试过jdk 11、1.8、13。
我试图shared_ptr从一个方法返回一个新的:
std::shared_ptr<VertexBuffer> VertexBuffer::Create(float* vertices, uint32_t size)
{
return std::make_shared<OpenGLVertexBuffer>(std::move(OpenGLVertexBuffer(vertices, size)));
}
Run Code Online (Sandbox Code Playgroud)
我有一个析构函数并VertexBuffer在退出此方法后被销毁。这是为什么?