-
关于 hibernate -- update (一个高大上的问题)0
hibiscus update
bean {
id,
name,
type,
createTime,
createName,
createIP,
createAddr,
updateTime,
updateName,
updateIP,
updateAddr
}
bean对象如上所示,问题点:在更新的时候出现问题,创建日期及相关字段,没有了
基本信息{id,name,type} 是从页面过来的值,updateTime是程序共通的方法,
但是创建日期没值,所以没干掉了,
问:有没有高大上一点的办法,不去修改那些值,放哪放着就得了,好端端的去修改
它干甚!
java web 项目2014年7月21日 10:18
4个答案 按时间排序 按投票排序
-
采纳的答案
楼主这是不明白hibernate的更新操作啊。hibernate核心就是ORM啊,所以当你这个bean里面其他的数据都更改了,你持久化的时候当然会更改了啊。虽然你传了三个值,到逻辑层,也只是希望改动这些值,是吧。好的办法,就是根据传过来的id,应该是主键吧,先到实体获取到bean实例,再对实例中需要改动的值做更改,再去入库持久化。要不,你就确保这些bean属性从页面带来的时候,就是跟库数据保持一致,这样不就不会更改了。 纯手打,望楼主采纳!
2014年7月21日 10:29
-
在Hibernate4开始,有这么一个注解@DynamicUpdate,加在Entity Class上,就不会出现你发生的问题了,低于4的版本中,好像没有这个注解,不过如果使用的是XML配置方式的话,有 dynamic-update 这个属性,你可以测试一下
2014年7月21日 21:04
-
其实问题是这样的,你从页面上收回到的对象中值只有id,name,type这三个属性有值,其它属性当中其实是没有属性值的,那么其对应的可能是空值或者就是你默认的值,你在通过hibernate中update方法保存到数据库中,就类似我们写纯sql的语句, update table set
name=xxx
type=xx,
createTime=xx,
createName=xx,
createIP=xx,
createAddr=xx,
updateTime=xx,
updateName=xx,
updateIP=xx,
updateAddr=xx
where id=xx
你只有三个属性有值,其他的都是没有赋值的,所以修改后,系统会将你数据库中有的值修改了,所以会出现你提到的那个问题。
解决方法:你应该先通过id到数据库中获取到这个对象,在通过将页面上获取到的对象复制到你查询出来对象当中,这样保存就应该不会有问题。2014年7月21日 10:51
-
这个和你的问题一样
http://blog.csdn.net/Baykermr/article/details/53599132014年7月21日 10:28
相关推荐
hibernate-commons-annotations-4.0.1.Final.jar hibernate-core-4.1.12.Final.jar hibernate-ehcache-4.1.12.Final.jar hibernate-entitymanager-4.1.12.Final.jar hibernate-jpa-2.0-api-1.0.1.Final.jar ...
《深入理解Hibernate配置与映射:hibernate-configuration-3.0.dtd与hibernate-mapping-3.0.dtd解析》 在Java世界里,Hibernate作为一款强大的对象关系映射(ORM)框架,极大地简化了数据库操作。而`hibernate-...
赠送jar包:hibernate-jpa-2.1-api-1.0.2.Final.jar; 赠送原API文档:hibernate-jpa-2.1-api-1.0.2.Final-javadoc.jar; 赠送源代码:hibernate-jpa-2.1-api-1.0.2.Final-sources.jar; 赠送Maven依赖信息文件:...
赠送jar包:hibernate-jpa-2.1-api-1.0.2.Final.jar; 赠送原API文档:hibernate-jpa-2.1-api-1.0.2.Final-javadoc.jar; 赠送源代码:hibernate-jpa-2.1-api-1.0.2.Final-sources.jar; 赠送Maven依赖信息文件:...
【标题】"hibernate-release-4.1.4" 是Hibernate框架的一个版本发布,具体为4.1.4.Final。Hibernate是一个开源的对象关系映射(ORM)框架,它允许Java开发人员在处理数据库时使用面向对象的概念,极大地简化了数据库...
总结来说,Hibernate-Extensions是Hibernate的一个强大补充,它扩展了ORM的功能边界,使开发者能够更高效、更灵活地处理数据库操作。无论你是初学者还是经验丰富的开发者,这个完整的安装包都值得你拥有,因为它将为...
"hibernate-release-5.2.10" 是Hibernate的一个发行版本,这通常包含了源码、编译后的库文件、文档以及示例等资源。5.2.10版本是一个稳定版本,提供了一些bug修复和可能的新功能。对于开发者来说,这个版本意味着...
`Middlegen-Hibernate-r5.rar`是Middlegen-Hibernate的一个版本,包含了工具本身及其依赖,而`hibernate-extensions-2[1].1.3.zip`则是hibernate-extensions的某个版本,提供了扩展的工具和库。 总结来说,...
hibernate-release-5.0.7.Final压缩包 -document -lib -project 内部Hibernate依赖库: antlr-2.7.7.jar dom4j-1.6.1.jar geronimo-jta_1.1_spec-1.1.1.jar hibernate-commons-annotations-5.0.1.Final.jar ...
在这个`hibernate-release-5.0.7.Final`版本中,包含了所有相关的jar包,为开发者提供了一个完整的Hibernate ORM解决方案。 在Java开发中,jar(Java Archive)包是Java类库的打包形式,它包含了一系列的类文件和...
hibernate-jpa-2.1-api-1.0.0.final-sources.jar 源码 hibernate-jpa-2.1-api-1.0.0.final-sources.jar 源码
很多人为了配置jpa找这个动态产生字节码的jar文件,hibernate-distribution-3.3.1.GA包太大,而hibernate-distribution-3.3.2.GA的jar没有这个jar文件,希望对大家有用
hibernate-core-5.4.24.Final.jar
hibernate-validator相关依赖jar包,包括jboss-logging-3.1.0.CR2.jar,hibernate-validator-4.3.1.Final.jar,validation-api-1.0.0.GA.jar
Hibernate Commons Annotations(HCA)是Hibernate框架的一个重要组成部分,它提供了与JPA(Java Persistence API)兼容的元数据注解,使得开发者能够更方便地在Java对象上声明持久化属性和行为。在本文中,我们将...
hibernate-commons-annotations-5.1.0.Final.jar
Hibernate稳定版(hibernate-release-5.3.23.Final.zip),Hibernate ORM 是一个为应用程序、库和框架提供对象/关系映射 (ORM) 支持的库。它还提供了 JPA 规范的实现,这是 ORM 的标准 Java 规范。
使用hibernate-validator 进行校验的jar包,里面包括了基础hibernate-validator-5.0.0.CR2.jar hibernate-validator-annotation-processor-5.0.0.CR2.jar 之外,还包括了el-api-2.2.jar javax.el-2.2.4等项目必不可...
"hibernatetools-Update-4.1.1.Final_2013-12-08_01-06-33-B605.zip" 是一个针对Eclipse的Hibernate工具集更新包,包含了对4.1.1.Final版本的增强和优化,为开发者提供了更加便捷的Hibernate操作界面和功能。...
`5.0.11.Final`版本是一个稳定且广泛使用的版本,提供了诸多改进和优化。 二、源码结构解析 `hibernate-core-5.0.11.Final.jar`的源码结构主要围绕以下几个关键模块: 1. **META-INF**:这是JAR文件的标准目录,...