`
wangxinxin1212
  • 浏览: 29841 次
社区版块
存档分类
最新评论

spring MVC hibernate 多对一 传输JSON问题

阅读更多

公司目前项目是使用springMVC + hibernate, 今天配置了一个N-1(多对一)实例。但是当我使用get或者load方法加载(N)实例的时候,程序莫名的报错。

 

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = HDS_STRATEGY_INFO.DATAOBJECT_ID)
	public HdsDataobjectInfo getDataobject() {
		return dataobject;
	}

	public void setDataobject(HdsDataobjectInfo dataobject) {
		this.dataobject = dataobject;
	}

 这是N端的部分代码。

经过排查,发现在controller中获得的实例不为空,则证明get,load方法已经成功加载了实例,那么问题肯定是返回json数据上。

	@RequestMapping(value = "/getById")
	@ResponseBody
	public HdsStrategyInfo getById(String id){
		return service.getById(id);
	}

 controller配置如上,并没有错误。

后来查了很多资料,得知在集成(hibernate,jackson)时,如果配置了懒加载(

fetch = FetchType.LAZY

则需要对这个字段,或者po类进行特殊处理。

有两种方法可以处理该问题:

1.在属性前增加@JsonIgnore注解。注意:配置了该属性,在获得实例时便不会加载该属性。

        @ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = HDS_STRATEGY_INFO.DATAOBJECT_ID)
	@JsonIgnore
	public HdsDataobjectInfo getDataobject() {
		return dataobject;
	}

 2.在po上增加@JsonIgnoreProperties(value = { "hibernateLazyInitializer", "handler", "fieldHandler" })注解

由于前端需要使用该属性,便采用了第二种配置。

为了避免再次出现这个问题,建议在写PO类时直接加上该属性。

 

参考 :http://blog.sina.com.cn/s/blog_534f69a00101gj9s.html

            http://blog.sina.com.cn/s/blog_667ac0360102ed3f.html

 

 

1
2
分享到:
评论

相关推荐

    spring mvc,spring, hibernate 整合登录实例

    在本文中,我们将深入探讨如何将Spring MVC、Spring和Hibernate这三大流行框架整合在一起,以构建一个完整的登录实例。这个实例旨在提供一个清晰、简洁且易于理解的代码结构,帮助初学者快速上手。 首先,Spring ...

    springmvc+spring+hibernate

    Spring MVC、Spring 和 Hibernate 是Java Web开发中的三大主流框架,它们各司其职,共同构建了一个强大而灵活的后端架构。Spring MVC 负责处理HTTP请求并将其路由到相应的控制器,Spring 提供了依赖注入(DI)和面向...

    Spring mvc hibernate spring 开发所需jar包

    在Java企业级应用开发中,Spring、Spring MVC和Hibernate是三个非常重要的框架,它们共同构建了一个强大的后端开发体系。这个压缩包包含了这三个框架以及其他相关技术的jar包,确保了项目能够正常运行。 Spring框架...

    Spring+Spring mvc+Hibernate+Bootstrap、企业级员工信息管理系统

    01. 采用后台及前台的 Spring + Spring mvc + Hibernate + Bootstrap 02. 后台全注解式的开发(除了必要的spring和hibernate的xml配置以外) 03. 后台通过自定义注解结合一个访问拦截器实现整个系统的权限控制 04...

    Spring + Hibernate + Spring mvc +Ajax 整合

    Spring、Hibernate、Spring MVC 和 Ajax 是四个在Java Web开发中广泛应用的技术框架,它们共同构建了一个高效、灵活且功能丰富的后端系统。以下是对这些技术及其整合应用的详细说明: Spring框架是一个全面的企业级...

    struts2+spring+hibernate+jquery+json

    结合以上技术,"struts2+spring+hibernate+jquery+json"的整合使用意味着开发一个完整的、高效的Web应用。Struts2负责处理HTTP请求并调用业务逻辑,Spring提供依赖管理和数据访问支持,Hibernate作为持久化层与...

    springmvc+spring+hibernate+json文件

    在IT行业中,Spring MVC、Spring、Hibernate和JSON是四个至关重要的技术组件,它们共同构建了高效、...这些文件共同组成了一个基于Spring MVC、Spring、Hibernate和JSON的完整开发环境,帮助开发者快速搭建和运行项目。

    Spring MVC – Easy REST-Based JSON Services with @ResponseBody

    标题中的“Spring MVC – Easy REST-Based JSON Services with @ResponseBody”是指使用Spring MVC框架构建基于REST的JSON服务,并通过使用`@ResponseBody`注解来简化这一过程。REST(Representational State ...

    spring-mvc hibernate配置

    Spring MVC和Hibernate是Java开发中两个非常重要的框架,它们分别用于构建Web应用程序的MVC(Model-View-Controller)架构和持久层管理。在实际项目中,将Spring MVC与Hibernate集成,可以创建出高效、可维护的Web...

    spring mvc、 spring、 hibernate、 easyui 进销存管理系统

    在进销存管理系统中,EasyUI用于构建前端界面,通过JSON数据与后端Spring MVC和Hibernate交互,实现了数据的展示和用户交互。它的拖放布局和丰富的主题选择,使得开发者可以快速创建出符合业务需求的界面。 这个...

    Maven+Spring MVC +Hibernate Validate

    综上所述,"Maven+Spring MVC +Hibernate Validate"项目结合了多种强大技术,构建了一个高效、健壮的Web应用解决方案,涵盖了项目管理、服务端控制、数据持久化、数据验证、前端交互以及文件处理等多个方面。...

    spring mvc 4.0+hibernate4.3+mysql+json用到的jar包

    自己做的项目,基于spring mvc框架,整合了hibernate较新版本,以及需要用到的json包还有用到ueditor前端富文本编辑器的包,十分给力。。组这个包还是花了不少时间。如有问题,欢迎留言交流

    基于jpa+hibernate+spring+spring mvc注解方式项目

    这个项目案例对于初学者来说,是一个很好的实践平台,可以帮助理解Spring、Spring MVC、JPA和Hibernate之间的协作,以及如何在实际项目中应用这些技术。通过实际操作,可以加深对这些框架的理解,提升开发技能。

    Spring SpringMVC Hibernate整合

    Spring、SpringMVC和Hibernate是Java开发中三大核心框架,它们的整合是企业级Web应用开发的常见实践。本文将详细解析这三个框架的核心概念、如何整合以及整合的意义。 首先,让我们了解一下Spring。Spring是一个...

    bootstrap、ajax、json、spring mvc、spring、hibernate 项目实战源码

    在IT领域,尤其是在Web开发中,`bootstrap`、`ajax`、`json`、`spring mvc`、`spring`和`hibernate`是六个非常重要的技术组件,它们共同构建了一个高效、交互性强的Web应用程序。下面我们将逐一探讨这些技术的核心...

    最全最经典spring-mvc教程

    另外,Spring MVC与Spring框架的其他组件无缝集成,如Spring AOP(面向切面编程)用于实现日志、事务管理等功能,Spring JDBC和MyBatis等持久层框架用于数据库操作,以及Spring Data JPA、Hibernate等ORM工具,使得...

    springmvc spring hibernate ajax json

    Spring MVC、Spring、Hibernate、Ajax 和 JSON 是五个关键的IT技术,它们在现代Web应用程序开发中扮演着重要的角色。下面将分别对这些技术进行详细解释,并结合它们在Web开发中的应用进行阐述。 **Spring MVC** ...

    spring mvc+hibernate+spring完整配置步骤

    Spring MVC 是一个基于Java的轻量级Web应用框架,它为构建Web应用程序提供了一种模型-视图-控制器(MVC)的架构模式。在Spring框架中,Spring MVC扮演着核心组件的角色,使得开发者能够更好地分离关注点,提高代码的...

    bootstrap、ajax、json、spring mvc、spring、hibernate项目实战源码

    接下来是Spring MVC,它是Spring框架的一个模块,专为构建Web应用程序而设计。Spring MVC提供了模型-视图-控制器架构模式,解耦了业务逻辑、数据和用户界面。它支持RESTful服务,可以方便地集成其他Spring组件,如...

Global site tag (gtag.js) - Google Analytics