小编jba*_*arz的帖子

什么时候检索Hibernate代理的id初始化代理?

在Hibernate中,当您通过加载检索实体时,如果您访问该Entity的id访问器,则它不会初始化代理:

Property myProp = (Property) session.load(Property.class, myId);
myProp.getId(); // Doesn't load the proxy
myProp.getDescription();  // Loads the proxy from the database hit
Run Code Online (Sandbox Code Playgroud)

但是,我不清楚加载关联代理的规则是什么.我的印象是,当您通过HQL查询或条件检索实体时,适用相同的规则.

Property我的代码中的每一个都有一个Company.该Company声明为这样的:

@ManyToOne(fetch = FetchType.LAZY, optional=false)
@JoinColumn(name = "company_id", nullable=false)
private Company company;
Run Code Online (Sandbox Code Playgroud)

但是,在我的代码中,我正在迭代时通过N + 1选择,Properties因为Company在我调用时正在加载Company.getId().

CompanyProperty对象中,id字段是Long注释的@Id.

为了防止加载Company实体,我还缺少一些其他考虑因素吗?

java hibernate lazy-loading

13
推荐指数
1
解决办法
3902
查看次数

有什么方法可以将JodaTime周期转换为十进制小时数?

我有一个JodaTime Period,我是从两个DateTime时刻创建的.有没有一种方法可以将该期间转换为十进制小时数?

例如,我有一个时间段,从2010年1月1日下午1点到1点30分.我怎样才能将该时间段视为1.5小时.

在过去,我使用秒和BigDecimals手动转换,例如:

int seconds = myPeriod.toStandardSeconds().getSeconds();
BigDecimal d = new BigDecimal((double) seconds / 3600);
// Round to two decimals
BigDecimal correctResult = d.setScale(2, RoundingMode.HALF_DOWN);
Run Code Online (Sandbox Code Playgroud)

这种感觉就像一个黑客,当我开始将Periods加在一起时更别提尴尬了.似乎应该有更好的方法.

有任何想法吗?谢谢

java period jodatime

11
推荐指数
1
解决办法
6271
查看次数

如何在Hibernate中以单向多对一方式离开连接表?

我是如何在单向多对一条件下连接表格的?.

如果你有两个班:

class A {
    @Id
    public Long id;
}

class B {
    @Id
    public Long id;
    @ManyToOne
    @JoinColumn(name = "parent_id", referencedColumnName = "id")
    public A parent;
}
Run Code Online (Sandbox Code Playgroud)

B - > A是多对一的关系.我知道我可以在A中添加B的集合但是我不想要这种关联.

所以我的实际问题是,是否有创建SQL查询的HQL或Criteria方法:

select * from A left join B on (b.parent_id = a.id)
Run Code Online (Sandbox Code Playgroud)

这将检索具有引用A的每个B记录的笛卡尔积的所有A记录,并且将包括没有B引用它们的A记录.

如果您使用:

from A a, B b where b.a = a
Run Code Online (Sandbox Code Playgroud)

那么它是一个内连接,你没有收到没有B引用它们的A记录.

我没有找到一个没有两个查询的好方法,所以任何不到这个都会很好.

谢谢.

java orm hibernate many-to-one

8
推荐指数
1
解决办法
6234
查看次数

在Wicket 1.5中将页面渲染为字符串

我正在努力将现有的Wicket webapp升级到1.5,并且在我们用于呈现HTML电子邮件的renderPage函数中遇到了麻烦.

以前我们使用此StackOverflow问题中引用/列出的代码和此(当前已损坏但稍后可能已修复)链接,但该代码不再有效,因为1.5中不存在很多这些类.

我也发现了这个电子邮件主题,但它对细节很清楚,我不知道如何从我的pageClass和参数创建WebPage. http://apache-wicket.1842946.n4.nabble.com/Render-WebPage-to-String-in-Wicket-1-5-td3622130.html

这是我的代码:

// Renders a page under a temporary request cycle in order to get the rendered markup
public static String renderPage(Class<? extends Page> pageClass, PageParameters pageParameters)
{
    //get the servlet context
    WebApplication application = (WebApplication) WebApplication.get();

    ServletContext context = application.getServletContext();

    //fake a request/response cycle
    MockHttpSession servletSession = new MockHttpSession(context);
    servletSession.setTemporary(true);

    MockHttpServletRequest servletRequest = new MockHttpServletRequest(application, servletSession, context);

    MockHttpServletResponse servletResponse = new MockHttpServletResponse(servletRequest);

    //initialize request and response
    servletRequest.initialize();
    servletResponse.initialize();

    WebRequest webRequest = …
Run Code Online (Sandbox Code Playgroud)

java wicket wicket-1.5

5
推荐指数
1
解决办法
1473
查看次数

为什么内联元素不会从其子元素继承高度?

我正试图制作一个相当复杂的图像和信息网格(几乎像Pinterest).具体来说,我试图在一个接一个的内插位置<ul>s.我有它的工作,但一个方面是导致问题,所以我试图问这个小块,以避免整个问题的复杂性.

为了水平对齐图像及其信息,我们使用内嵌<li>s其他内联块级元素.除了<li>s几乎没有高度之外,大部分都能正常工作.

这里的HTML和CSS 在JSFiddle中如果你想要除了下面的内容之外还要搞乱它:

HTML:

<div>
<ul class="Container">
    <li>
        <span class="Item">
            <a href="#"><img src="http://jsfiddle.net/img/logo.png"/></a>
            <span class="Info">
                <a href="#">Title One</a>
                <span class="Details">One Point One</span>
            </span>
        </span>
    </li>
    <li>
        <span class="Item">
            <a href="#"><img src="http://jsfiddle.net/img/logo.png"/></a>
            <span class="Info">
                <a href="#">Title Two</a>
                <span class="Details">Two Point One</span>
            </span>
        </span>
    </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

CSS:

.Container {
    list-style-type:none;
}
.Container li {
    background-color:grey;
    display:inline;
    text-align:center;
}
.Container li .Item {
    border:solid 2px #ccc;
    display:inline-block;
    min-height:50px;
    vertical-align:top;
    width:170px;
}
.Container li .Item .Info …
Run Code Online (Sandbox Code Playgroud)

html css

4
推荐指数
1
解决办法
3758
查看次数

标签 统计

java ×4

hibernate ×2

css ×1

html ×1

jodatime ×1

lazy-loading ×1

many-to-one ×1

orm ×1

period ×1

wicket ×1

wicket-1.5 ×1