是否允许JPA实体中的方法抛出exception?

我有一个@Entity的问题我试图创建。 当尝试使用OpenJPA实现在Eclipse中测试类时会出现问题(我没有尝试过其他人,所以不确定它是否适用于它们)。 我的测试用例很简单,因为它创建了一个EntityManagerFactory(它会自动在我的类路径中找到persistence.xml),然后它尝试从工厂创建一个EntityManager。 这是我遇到一个非常模糊的’PersistenceException:null’错误。 有问题的实体是以下LogError类。 我把它剥离到最低限度,它仍然会抛出错误。 @Entity @Table(name = “T_LOG_ERROR”) public class LogError { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long ID; private String ERROR; protected LogError() {} public String getErrorName() throws FieldNullException { if (this.ERROR == null) throw new FieldNullException(“error was null”, null); return this.ERROR; } public setError(SystemError error) { this.ERROR = error.getClass().getCanonicalName(); } } […]

JFreeChart交互式图表编辑处理ChartMouseEvent

我试图拦截ChartMouseEvent以修改使用ChartFactory.createXYLineChart方法创建的JFreeChart对象的XYSeries(并使用JDialog显示)。 我通过这种方式成功检索鼠标事件的坐标: public void chartMouseMoved(ChartMouseEvent arg0) { int x = arg0.getTrigger().getX(); int y = arg0.getTrigger().getY(); 坐标系(0,0)的原点位于图片中的红色方块。 现在,我想计算鼠标在哪个区间。为了做到这一点,我需要: 灰色图表的左上角坐标(绿色方块) 灰度图的高度和宽度 我怎样才能得到这个值? 注意:我是JFreeChart新手。 如果我做错了,并且有更好的方法来实现这些目标,请让我朝着正确的方向前进。

在spring哪里可以捕获非rest控制器exception?

我有spring mvc应用程序。 为了捕获exception,我使用了@ExceptionHandler注释。 @ControllerAdvise public class ExceptionHandlerController { @ExceptionHandler(CustomGenericException.class) public ModelAndView handleCustomException(CustomGenericException ex) { …. } } 但我认为在控制器方法调用之后我只会捕获exception。 但是如何捕获在其余环境之外生成的exception? 例如生命周期回调或计划任务。

Java:如何在一个类中创建私有字段Map不可变?

public class Hi { private final Map map; public Map getMap() { return map; } } 我有这个Hi类,我希望map是不可变的。 我还需要一个吸气剂。 目前,另一个类可以从getter修改映射。 我想返回一个地图副本来解决这个问题,但Map是一个接口,所以这意味着我必须进行getter调用: return new HashMap(map); 有没有其他方法可以做到这一点,而不强制地图是一个哈希映射? 我希望它能像以前一样保持同一级别。

如何设置Nimbus的主要外观

我只是在学习Java,但仍然无法解决我遇到的这个小问题 我的弹出日历使用Nimbus的外观和感觉,但我有使用Java的外观和感觉的面板和容器Jtables – 我试图让每个GUI屏幕/窗口使用灵气的外观和感觉,并且Merky建议使用愚蠢的代码在我的主要使每个后续的屏幕都具有Nimbus的外观和感觉,但我不能让它工作,所以有人可以告诉我在哪里以及如何把这个代码请PLEASE。 public static void main(String args[]) { SA md=new OptraderSA(“Copyright© 2010 Simon Andi”); Dimension sd=Toolkit.getDefaultToolkit().getScreenSize(); md.setLocation(sd.width/2-400/2, sd.height/2-400/2); md.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); /*Suggested Code*/ try { for (LookAndFeelInfo info : UIManager.getInstalledLookAndFeels()) { if (“Nimbus”.equals(info.getName())) { UIManager.setLookAndFeel(info.getClassName()); System.out.println(“CHOSEN THIS”); break; } else{ UIManager.setLookAndFeel (“com.sun.java.swing.plaf.windows.WindowsLookAndFeel”); } } } catch (Exception e) { / If Nimbus is not available, […]

如何外化maven构建文件?

我遇到了如何以XML格式对配置文件进行版本化的问题。 最简单的方法是编写XSLT更新。 应用程序的每个版本都有自己的XSLT更新。 所有这些更新文件都足够小,可以通过IDE管理,特别是它的DIFF工具。 由于该项目已经开发为Maven2 Java逻辑解决方案是通过maven构建文件触发这些更新。 这就是今天应用一组更新的部分: org.codehaus.mojo xml-maven-plugin compile transform config/xsltUpdates/input config/xsltUpdates/update1-8-3.xsl config/xsltUpdates/update1-8-3 config/xsltUpdates/update1-8-3 config/xsltUpdates/update1-8-9.xsl config/xsltUpdates/update1-8-9 config/xsltUpdates/update1-8-9 config/xsltUpdates/update1-9-0.xsl config/xsltUpdates/update1-9-0 config/xsltUpdates/update1-9-0 config/xsltUpdates/update1-10-0.xsl config/xsltUpdates/update1-10-0 config/xsltUpdates/update1-10-0 config/xsltUpdates/update1-10-0-1.xsl config/xsltUpdates/update1-10-0-1 config/xsltUpdates/update1-10-0-1 config/xsltUpdates/update1-10-0-2.xsl config/xsltUpdates/update1-10-0-2 config/xsltUpdates/update1-10-0-2 config/xsltUpdates/updateCurrent.xsl config/xsltUpdates/output net.sf.saxon saxon 8.7 我想在一些properties / xml文件导入中外化有关transformationSet的信息。 我的pom.xml文件将更清晰,外部化信息更易于维护。 我怎样才能做到这一点? 我可以在构建文件中使用一些迭代控制语句吗? 有没有办法从一些外部文件导入数据?

为什么受保护的访问修饰符与非静态使用的静态修饰符一起使用时的工作方式不同

通常,当我们对类中的字段使用protected时,如果子类位于不同的包中,则其子类无法使用Base类的引用来访问它。 那是真实的 。 但是我发现当在字段中添加静态关键字时,它的行为会有所不同。 它变得易于访问。 这怎么可能 。 有人有答案吗? package com.car; public class Car { static protected int carNo=10; } package com.bmw; import com.car.*; public class BMW extends Car { public static void main(String[] args) { //Its accessible here System.out.println(new Car().carNo); } }

检索电话号码的最佳方法?

我需要能够获得SIM的电话号码,目前我一直在使用: telephonyManager = (TelephonyManager) getBaseContext().getSystemService(Context.TELEPHONY_SERVICE); tmPhone = telephonyManager.getLine1Number(); 但是这种方法并不总是返回结果/正确的结果。 无论如何在没有要求用户手动输入的情况下100%获得正确的电话号码?

如何在数据库中建模(Java)枚举(使用SQL92)

您正在使用名为“Gender”的列为实体建模。 在应用程序代码中,性别应该是(Java)枚举类型,具有2个值(MALE和FEMALE)..如何将其建模,知道Enums as Datatype不是通用SQL(语言)的一部分92 。 数据模型必须是可移植的,以便被几个DBMS(Mysql,Oracle,Derby)和几个持久性提供程序(JPA,Hibernate,JDBC)使用。 我觉得,它达到了两个级别: – 首先是Schema和实体的级别(将枚举存储为-VAR-CHAR或INT) – 第二个应用程序代码的级别(JDBC不支持枚举,JPA但是这取决于实施) 是否存在通用解决方案,例如适用于Mysql DBMS? 谢谢 !!

Java – 如何通过这些对象中的String字段最有效地对SomeClass对象数组进行排序?

我有一个类,它有一个名为name的String字段。 我有一个SomeClass[]类型的数组,我想在它们的名称上按字符串顺序迭代这些SomeClass对象。 我很好奇最有效的方法是什么。 我应该使用某种比较器吗? 将它们全部放入TreeMap然后遍历那个或类似的东西是不是一个好主意? 我确信我能想出一个解决方案,但我也确信它不会有效率。 任何帮助表示赞赏。