JPA CriteriaQuery按最新子项属性排序

我有2个实体:Project和ProjectStatus。 项目实体: @Entity public class Project { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) Long id; @OneToMany(mappedBy = “project”) private List projectStatusses; } 项目状态实体: @Entity public class ProjectStatus { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) Long id; @ManyToOne private Project project; @Enumerated(EnumType.STRING) private ProjectStatusType statusType; } 我想用CriteriaQuery.orderBy按其最新状态类型订购项目。 我想出了以下内容: CriteriaQuery criteriaQuery = criteriaBuilder.createQuery(Project.class); Root root = criteriaQuery.from(Project.class); Join join = root.join(“projectStatusses”, […]

如何在java中处理bug“dead store to local variable”?

我写了一个简单的测试代码。 这是一个圆圈。 我想大多数人都可以想象什么是圆圈类,所以我不会粘贴它。 在测试代​​码中,我尝试使用无效点测试圆形构造函数,并假设抛出exception。 但是发生了一个错误。 我在线检查,但仍然不知道如何解决问题。 有没有人可以帮助我? 谢谢 代码信息,bug在下面代码的最后一句中 /** * Tests that the Circle constructor throws an exception for center Point. */ @Test (expected = IllegalArgumentException.class) public void testIllegalCenter() { //Instantiates a circle with an incorrect center point. @SuppressWarnings(“unused”) final Circle testCircle = new Circle(VALID_RADIUS, INVALID_POINT, VALID_COLOR); } 错误报告 错误:在CircleTest.testIllegalCenter()中将测试存储到testCircle 此指令为局部变量赋值,但不会在任何后续指令中读取或使用该值。 通常,这表示错误,因为从未使用计算的值。 请注意,Sun的javac编译器通常会为最终的局部变量生成死存储。 因为FindBugs是一个基于字节码的工具,所以没有简单的方法来消除这些误报。

Java 8:是否可以为变量分配方法引用?

我用Google搜索了这个问题的答案但找不到答案。 在Java 8中,我知道这是可能的: // someMethod is defined as: someMethod(AFunctionalInterface i) someMethod(someObject::someOtherMethod); 问题是:是否可以执行以下操作 AFunctionalInterface i = anObject::SomeMethod; 另外,是否可以将lambda分配给变量并传递给它,就像这样? Printer f = () -> System.out.println(..); methodThatTakesPrinter(f);

如何在Java中使用postgresql

我安装了postgresql及其驱动程序,即“postgresql-9.3-1102.jdbc41.jar”。 我的目录似乎是: > SQL > myJDBC.java > postgresql-9.3-1102.jdbc41.jar 我试过了 : javac -cp postgresql-9.3-1102.jdbc41.jar myJDBC.java java -cp postgresql-9.3-1102.jdbc41.jar myJDBC 它编译得很好但是当我尝试执行它时,我得到的错误是: Error: Could not find or load main class myJDBC 我错过了什么?

Java HttpURLConnection返回JSON

我正在尝试发出一个返回json响应的http get请求。 我需要将json响应中的一些值存储在我的会话中。 我有这个: public String getSessionKey(){ BufferedReader rd = null; StringBuilder sb = null; String line = null; try { URL url = new URL(//url here); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod(“GET”); connection.connect(); rd = new BufferedReader(new InputStreamReader(connection.getInputStream())); sb = new StringBuilder(); while ((line = rd.readLine()) != null) { sb.append(line + ‘\n’); } return […]

访问Websphere 6.1变量

我想从java类中获取Websphere变量APP_INSTALL_ROOT的值。 如何才能做到这一点。

在try-finally块中嵌入方法的现有代码(2)

前段时间,我在try-finally块中嵌入了一个方法的现有代码,如何使用ASM将方法的主体包装在try-finally块中。 解决方案是在visitCode()中visitCode()方法体开头的try块的标签,并在visitCode()访问带有返回操作码的指令时完成try-finally块。 我知道如果方法没有返回指令,如果方法总是离开并且exception,则解决方案将不起作用。 虽然,我发现前一种解决方案有时也不适用于带有返回指令的方法。 如果方法有多个返回指令,它将无法工作。 原因是它生成了无效的字节码,因为在方法的开头添加了一个try-finally块,但是完成了多个try-finally块。 通常(但可能取决于javac编译器),字节码方法包含单个返回指令,并且所有返回路径通过跳转在该指令处结束。 但是,使用Eclipse编译以下代码将导致字节代码带有两个返回指令: public boolean isEven(int x) { return x % 2 == 0; } 用Eclipse编译的字节代码: 0: iload_1 1: iconst_2 2: irem 3: ifne 8 6: iconst_1 7: ireturn // javac compilation: goto 9 8: iconst_0 9: ireturn 因此,我想知道包装方法代码的整个代码的正确方法是什么。

使用Jpcap创建反向代理

我需要创建一个接收HTTP请求的程序,并将这些请求转发给Web服务器。 图http://img269.imageshack.us/img269/1862/h98trsly.jpg 我已成功使用Java套接字,但客户端需要在Jpcap中实现该程序。 我想知道这是否可行以及我应该为这个项目阅读哪些文献。 这就是我现在通过拼接Jpcap教程中的各个部分来实现的: import java.net.InetAddress; import java.io.*; import jpcap.*; import jpcap.packet.*; public class Router { public static void main(String args[]) { //Obtain the list of network interfaces NetworkInterface[] devices = JpcapCaptor.getDeviceList(); //for each network interface for (int i = 0; i < devices.length; i++) { //print out its name and description System.out.println(i+": "+devices[i].name […]

Hibernate持久的Dates

有没有办法告诉Hibernate java.util.Date应该持久保存? 我需要这个来绕过MySQL中缺失的毫秒级分辨率。 你能想到这种方法的任何缺点吗?

GridBagLayout重量对齐

我是动态生成需要使用相对大小的布局,我发现不使用外部Java布局库的唯一方法是GridBagLayout的weightx和weighty。 在这一点上,它完全按照我的需要工作,只有一个小例外。 当我有一个包含两个JPanels的列,其空间分布分别为66.6%和33.3%,然后另一个列有3个JPanels,每个空间使用33.3%的空间,第一列的33.3%与第一列的33.3%不同占第二位的33.3%。 我需要它们完全一致。 不幸的是,这是我的第一篇文章,我无法发布任何图片,我希望我不会因为以下情况而遇到麻烦: 我想我知道问题是什么,在每个JPanel里面我有一个JLabel,因为weightx和weighty的定义是“Weights用于确定如何在列之间分配空间(weightx)和行之间(weighty) ”我想差异两个33.3%s之间的事实是第二列包含一个额外的JLabel。 在这个post中, StanislavL说“容器要求孩子们选择他们喜欢的大小”,所以,我想知道解决方案是否要覆盖JLabel的getPreferredSize方法。 我不确定这样做会有多“脏”,我非常感谢您解决这个问题的建议。 提前致谢! 迭戈