小编Cos*_*min的帖子

Java继续标签已弃用?

我有2个fors,嵌套后我有一些代码,如果条件在嵌套for中为真,我不想执行.如果我使用break代码将执行,所以(正如我在SCJP中学到的)我用于continue label;外部for.这是Java的弃用用法吗?老式的?有人建议使用递归或其他东西,但对我来说这是完全正常,简单,最新和完美的方式.

here:
for (bla bla) {
   for (bla bla) {
      if (whatever) continue here;
   }
// some code I don't want to execute if whatever is true
}
Run Code Online (Sandbox Code Playgroud)

谢谢

编辑:
如果我将我的问题改为:你怎么能在多个嵌套的fors之间"导航"?这种方法是"推荐"方式吗?因为这就是它在SCJP Book中所说的.如果不是..这将意味着,Katherine SierraBert Bates是错误的?

编辑2:
为什么continue label;气馁?我想要回答OOP或Java的概念或内部工作,可能会出错.

java continue deprecated

17
推荐指数
3
解决办法
2万
查看次数

通过Person对象的getName()属性将Person对象列表转换为单独的String

XXXUtils我可以做的地方

String s = XXXUtils.join(aList, "name", ",");
Run Code Online (Sandbox Code Playgroud)

哪个"name"是来自对象的JavaBeans属性aList.

我发现只有StringUtils具有join的方法,但它只是一个变换List<String>成一个分离String.

就像是

StringUtils.join(BeanUtils.getArrayProperty(aList, "name"), ",")
Run Code Online (Sandbox Code Playgroud)

这很快,值得使用.BeanUtils会抛出2个已检查的异常,所以我不喜欢它.

java apache-commons separator apache-stringutils apache-commons-collection

8
推荐指数
2
解决办法
3972
查看次数

JSP vs Facelets作为JSF的视图技术


当涉及到JSF视图技术时,我并不是百分之百地说明了JSP和Facelets之间的区别.
我在谷歌搜索,每个人都以同样的方式解释差异(一些只是复制其他人).
我想知道如果我有一个JSP页面(文档样式,使用jsp:root,所以没有scriptlet)或Facelets页面,当reuqest进入时,以及在RenderResponse 中执行每个JSF标记时有什么区别.ui:includejsp:include
之间的区别是什么?我理解JSP/Servlet非常好,但JSF内部并不是那么多. 谢谢,我希望你不会像所有其他JSP vs Facelets问题一样看到这个问题.

ps:我发现的一小部分响应是Facelets没有在Java Servlet Class中转换,就像JSP一样(这使得它更快),而是使用SAX解析器,我不明白它在它的作用回调方法.

xml jsf jsp sax facelets

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

如何使用IN进行命名查询实际起作用?

class X {
Y y; // manyToOne
}
class Y {
Long id;
}
Run Code Online (Sandbox Code Playgroud)


@NamedQuery(name = "someName", query = "from X where y.id in :ids")
Run Code Online (Sandbox Code Playgroud)

我在实体上有公共的,表格的,实体的以及所有其他内容,但是我没有在这里写下。

TypedQuery<X> query = getEntityManager().createNamedQuery("someName", X.class);
query.setParameter("ids", someListOfLongs); // HERE I GET THE ERROR
queryFinal.getResultList();
Run Code Online (Sandbox Code Playgroud)


Parameter value [[Ljava.lang.Object;@90d0bf] was not matching type [java.lang.Long]

我尝试使用或不使用(),将Hibernate-Core的版本更改为3.6.4(从JBoss 6.0.0.Final开始),否则,如果我编写in :ids不使用()的程序,则会出现错误。

请帮忙。


The IN always worked, the problem was that List<Long> wasn't actually List<Long> was List<Object[]>. Thanks

collections jboss hibernate jpa-2.0

3
推荐指数
1
解决办法
7687
查看次数

Oracle SQL中的这两个左连接是否有区别?为什么

SELECT * 
FROM TAB1 
LEFT JOIN TAB2 ON TAB2.ID_TAB1 = TAB1.ID 
JOIN TAB3 ON TAB3.ID = TAB2.ID_TAB3;
Run Code Online (Sandbox Code Playgroud)

SELECT *
FROM TAB1
LEFT JOIN (SELECT *
           FROM TAB2
           JOIN TAB3 ON TAB3.ID = TAB2.ID_TAB3) T
ON T.ID_TAB1 = TAB1.ID;
Run Code Online (Sandbox Code Playgroud)

sql oracle left-join

3
推荐指数
1
解决办法
287
查看次数

EclipseLink忽略了@Access,在Hibernate中运行正常


@EmbeddedId在一个字段上有一个实体,我覆盖了一个字段的访问类型,使其可以Property访问.但这被忽略了EclipseLink,Hibernate好吧.Netbeans也因此显示错误:

该类必须使用一致的访问类型(字段或属性).
没有为此实体层次结构定义ID.

@EmbeddedId
private OneId id;

@Transient
private String cosmin;

@Access(AccessType.PROPERTY) // ??
public String getCosmin() {
    return cosmin;
}

public void setCosmin(String cosmin) {
    this.cosmin = cosmin;
}
Run Code Online (Sandbox Code Playgroud)

netbeans hibernate eclipselink jpa-2.0

3
推荐指数
1
解决办法
2427
查看次数