.size
을 수동으로 필드를로드하는 것을 피하기 위해 Hibernate4Module
을 구현하고 싶습니다. 불행히도, 모든 것을 구성하는 것에 새로운 것이므로, 나는 그것을 작동시키는 것처럼 보이지 않습니다. 내가 자바에서 계속 얻는 것은 : Could not write content: could not initialize proxy - no Session
입니다.Hibernate4Module 사용법
@Configuration
@EnableWebMvc
@ComponentScan(basePackages = {"servlet.controller"})
public class ServletConfig extends WebMvcConfigurerAdapter {
...
@Override
public void extendMessageConverters(List<HttpMessageConverter<?>> converters) {
ObjectMapper mapper = null;
for (HttpMessageConverter<?> converter : converters) {
if (converter instanceof MappingJackson2HttpMessageConverter) {
mapper = ((MappingJackson2HttpMessageConverter) converter).getObjectMapper();
}
}
if (mapper == null) {
MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
converter.setObjectMapper(mapper = new ObjectMapper());
converters.add(converter);
}
Hibernate4Module hbm = new Hibernate4Module();
hbm.enable(Feature.FORCE_LAZY_LOADING);
mapper.configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, true)
.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
mapper.registerModule(hbm);
}
...
}
사람이 내가 잘못 여기서 뭘하는지 볼 수 있습니까?
참고
나는 효율 단점 중 일부에 실행되었고, 나는 DTO의 외부를 완화의 fesablity으로 찾고 있어요. 나는 DTO 메소드에 매우 익숙하다. 내가 현재 작업하고있는 소프트웨어는 "Ext * .java"(Gson을 사용하여 DTO를 포함하고있다)라는 60 개의 파일을 포함하고있다. 이들 각각은 100 줄과 1000 줄 사이에 있으며 컨트롤러 방법의 길이를 실질적으로 늘립니다. 또한 단위 테스트를 더 추가하려고합니다. 결과적으로 가능한 한 많은 DTO 코드를 제거하는 방법을 찾기를 절박합니다. 즉, 나는 DTO를 사용할 필요가 없을 때 전혀 반대하지 않는다. 실제로 나는 처음으로 끝냈다. StdSerializer.
대륙을 통틀어 약 20 명이 프로젝트를 진행 중이므로 혼돈에 어떤 명령을 내릴 수 있기를 바라고 있습니다.
환상적! 나는 그것을 시험해야 할 것이다. – chrisgotter
글쎄, 우리는 우리 응용 프로그램에서 orm을 사용할 수없는 것 같습니다. 그래서 안돼. 어쨌든 좋은 답변입니다. – chrisgotter