Hibernate不允许我持久化包含带有整数字段的空嵌入对象的对象.例如,如果我有一个名为Thing的类看起来像这样
@Entity
public class Thing {
@Id
public String id;
public Part part;
}
Run Code Online (Sandbox Code Playgroud)
Part是一个嵌入式类,看起来像这样
@Embeddable
public class Part {
public String a;
public int b;
}
Run Code Online (Sandbox Code Playgroud)
然后尝试使用null Part持久保存Thing对象会导致Hibernate抛出异常.特别是这段代码
Thing th = new Thing();
th.id = "thing.1";
th.part = null;
session.saveOrUpdate(th);
Run Code Online (Sandbox Code Playgroud)
导致Hibernate抛出此异常
org.hibernate.PropertyValueException: not-null property references a null or transient value: com.ace.moab.api.jobs.Thing.part
Run Code Online (Sandbox Code Playgroud)
我的猜测是发生了这种情况,因为Part是一个嵌入式类,所以Part.a和Part.b只是Thing数据库表中的列.由于Thing.part为null,Hibernate希望将thing.1的行的Part.a和Part.b列值设置为null.但是,Part.b是一个整数,Hibernate不允许数据库中的整数列为null.这是导致异常的原因,对吧?
所以我正在寻找这个问题的解决方法.我注意到使Part.b成为一个Integer而不是一个int似乎有效,但是由于我不会厌烦你,这对我们来说不是一个好选择.谢谢!
我很抱歉提出关于合并与rebase的哲学辩论,但我有一个实际问题,关于典型的公司工作流程(不是开源项目工作流程,可能会有所不同).
垫底,因为在这里指出,不应该,如果您有推更改使用.这是如此,因为其他人可能已从你的分支分支,然后重写该分支的历史(通过强制推动)将使他们很难.
因此,使用变基的正确方法是仅在本地提交.但至少在我的简短经历中,这是不可取的:
将功能分支保持在本地对我来说是违反直觉的.不仅由于以上几点,而且由于以下用例:您正在开发一项功能,但要么被拖到更紧急的地方,要么去度假,或者生病.一位同事必须完成它.然后你改变并推动(除非你生病,在这种情况下,它保持在本地,没有人可以完成它),而另一个人完成它.
在此期间,主人有变化.但是另一个人已经基于一个远程分支,所以他应该使用merge,rebase和force-push(如果其他人同时将其分支基于那个分支,那么这可能会使事情变得棘手).
这听起来像边缘情况,但它们不是.这些条件中的至少一个(在家工作,生病,去度假,完成别人的工作等)经常发生.
那么,使用"rebase"是进入这些用例的好方法,还是合并(使用额外的"merge commit")是更安全,更直接的选择?
我想获取存储在列表中的元素的字符串文本List<Car>.toArray()和toString()方法是最好的选择吗?
我有这种实体:
文件| n ..到.1 | DocumentType | 1 ..到.. n | PropertyType | 1 ..到.. n | DocumentProperty
我只是尝试删除一个文件,如:entityManager.remove(document);
但错误是触发:
16:45:51,499 ERROR [[Seam Resource Servlet]] servlet的Servlet.service()Seam资源Servlet抛出异常javax.persistence.EntityNotFoundException:传递给persist的已删除实体:[up.docstore.PropertyType#]
问题似乎来自这里:
@OneToMany(mappedBy = "documentType", cascade = {CascadeType.ALL}, fetch = FetchType.EAGER)
@ForeignKey(name = "FK_DOCUMENT_TYPE__PROPERTY_TYPE")
@Sort(type = SortType.NATURAL)
private SortedSet<PropertyType> propertyTypes = new TreeSet<PropertyType>();
Run Code Online (Sandbox Code Playgroud)
如果我删除CascadeType.PERSIST所有它的工作.但我需要它,我也需要它.
有谁知道其他解决方案?
编辑:删除DELETE_ORPHAN级联,但仍然是同样的问题.
最近我发现很多人仍然提供1.4.2的javadocs链接.这不是一个很好的做法,我想提出这个问题.
发生这种情况是因为搜索引擎(至少谷歌)会提供旧的javadoc(如果有人搜索),比方说, java.lang.String
那么,如何获得正确(当前1.6)版本的JDK的javadoc?
我需要用JSP做一些小任务; 对JSP非常陌生我想知道是否有可能只从HTTP请求中获取GET或POST参数.
我见过ServletRequest.getParameter(和alikes)但看起来这些方法同时获得了GET 和 POST参数.有没有办法只获取其中一个,而无需自己解析URL或请求体?如果没有,是否有任何优先规则值覆盖哪些(如POST参数总是覆盖GET参数)?
我有资源包作为Java类从数据库中读取值.当我更新数据库我需要重新加载包,但我不知道如何.有人帮忙吗?
package model.helpers;
public class Messages_en extends ListResourceBundle {
protected Object[][] getContents() {
// from DB
// ...
}
}
Run Code Online (Sandbox Code Playgroud)
在视图中我使用bundle如下:
<f:loadBundle basename="model.helpers.Messages" var="m" />
Run Code Online (Sandbox Code Playgroud) 对于所有那些J2EE/Java EE开发人员,当你在现实世界中与人交谈时,你说
我是一个杰伊两个ee ee程序员
要么
我是一个杰伊两个程序员
要么
我是一名java企业程序员
要么
我是一名企业java程序员
或者是其他东西?
我最近被告知,集合应该优先于List作为EJB方法的返回值.这个论点是,通常集合更通用,即允许您在不影响客户端的情况下更改基础数据结构.如果这是您希望作为设计师的灵活性,那么使用集合将更有意义.但是,返回一个数组而不是集合会不会更有意义?
什么是性能影响,如果有的话?
提前致谢.
我无法@Autowire在Aspect中使用服务层实例.在Aspect中,对@Autowiredbean 的引用是NULL并且它会抛出NullPointerException.任何帮助都感激不尽.我想,我搞砸了配置.
以下是我的servlet-context.xml:
<!-- Activates various annotations to be detected in bean classes -->
<context:annotation-config />
<context:spring-configured />
<!-- Scans the classpath of this application for @Components to deploy as beans -->
<context:component-scan base-package="xx.yy" />
<!-- an @AspectJ aspect will be interpreted as an aspect by Spring AOP and beans in the context will be advised accordingly -->
<aop:aspectj-autoproxy />
<beans:bean id="loggingAspect" class="xx.yy.aop.aspects.LoggingAspect" />
<beans:bean id="authenticationAspect" class="xx.yy.aop.aspects.AuthenticationAspect" />
<!-- Enables the Spring …Run Code Online (Sandbox Code Playgroud) java ×8
collections ×2
hibernate ×2
java-ee ×2
jpa ×2
aop ×1
aspectj ×1
ejb ×1
git ×1
javadoc ×1
jsf ×1
jsf-2 ×1
jsp ×1
list ×1
orm ×1
servlets ×1
spring-aop ×1
spring-mvc ×1
string ×1
terminology ×1