尝试Catch Performance Java

捕获exception而不是进行检查时,try-catch需要多长时间(以纳秒为单位)(假设消息具有HashMap类型的查找性能)? try { timestamp = message.getLongField( MessageField.TIMESTAMP ); } catch (MissingDataException e) { //Not all messages contain this field } VS if (message.contains(MessageField.TIMESTAMP)) timestamp = message.getLongField( MessageField.TIMESTAMP );

从Solr中检索对象

所以,我有一个基于Java的Web项目 ,它显示从3个独立服务中检索的信息,托管在不同的服务器上,我使用Apache Http Client通过JSON中的 REST API检索信息,使用Gson库 。 我将Json转换为用于显示信息的POJO。 现在我想在我的项目中实现搜索function,所以我在一个单独的服务器上安装了Solr,我想要的是: 索引所有3个服务的solr服务器中的JSON。 以我的项目中描述的POJOforms从Solr获取搜索结果 我知道第(1)点可以通过jsonRequestHandler完成,但我不想写索引的单独逻辑,我在我的项目中使用Solrj来提取信息。 所以我想知道 solrj可以使用我的POJO定义来解析搜索结果吗? 还有上述工作场景的任何可能的工作流程,以及所需的工具(我是solrj的新手)?

在Struts2中使用I18n Interceptor

我想让网站多语言。 我有一个普通的拦截器堆栈,其中包含 用于更改区域设置的常见jsp: fa_IR فارسی en_US English 还有一个简单的LocaleManager动作 public class LocaleManager extends ActionSupport{ private static final Logger log = LoggerFactory.getLogger(LocaleManager.class); public String execute() { log.debug(“Change the local to {}”, getLocale() ); return “homepage”; } } 在上面的场景中,i18n拦截器总是针对所有动作运行,这是没有得到解决方案的。 因为区域设置仅在用户单击locale-manager操作时更改。 我试图删除拦截器堆栈并仅将i18n拦截器添加到LocaleManager,如下所示 @InterceptorRefs({ @InterceptorRef(“i18n”) }) public class LocaleManager extends ActionSupport{ ……… 但它不起作用?! 我错过了什么,还是应该编写自己的拦截器?

Javagenerics:类型不匹配:无法从Integer转换为K.

以下代码抛出编译时exception 类型不匹配:无法从Integer转换为K. 我理解的是K应该处理任何扩展Number值。 public K getValue(){ Integer a = new Integer(1); return a;//Type mismatch: cannot convert from Integer to K } (注意:这只是一个测试代码,可以提出我的问题而不会给出我实际情况的无关细节。)

ArithmeticException Java?

任何人都可以帮我找到执行的位置吗? 我似乎无法找到问题.. public void fieldChanged(Field f, int context){ //if the submit button is clicked try{ stopTime = System.currentTimeMillis(); timeTaken = stopTime – startTime; timeInSecs = ((timeTaken/1000)); speed = 45/timeInSecs; Dialog.alert(“Speed of Delivery: ” + speed + “mph”); } catch(ArithmeticException e){ Dialog.alert(“error ” + speed); e.printStackTrace(); } } startTime变量是一个全局变量.. 编辑:timeinSecs = 0怎么样? 我似乎无法让我的调试器为BlackBerry JDE工作,所以有人必须帮助我:( timeTaken应该是从按下启动按钮到按下停止按钮的按钮的时间。 所有其他变量也是全局变量

在执行JPA查询时获取NoSuchMethodError:javax.persistence.Table.indexes()

我有带库的IntelliJ项目:Hibernate-entitymanager 4.3.4和JPA 2.0-2.0。 使用postgresql-9.3.1100.jdbc4连接到数据库。 怎么解决? jpa-ql>从ItemEntity中选择ItemEntity.name; java.lang.NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index; at org.hibernate.cfg.annotations.EntityBinder.processComplementaryTableDefinitions(EntityBinder.java:936) at org.hibernate.cfg.AnnotationBinder.bindClass(AnnotationBinder.java:824) at org.hibernate.cfg.Configuration$MetadataSourceQueue.processAnnotatedClassesQueue(Configuration.java:3790) at org.hibernate.cfg.Configuration$MetadataSourceQueue.processMetadata(Configuration.java:3744) at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1410) at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1844) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:850) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:843) at org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.withTccl(ClassLoaderServiceImpl.java:397) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:842) at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:73) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:78) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54) at com.intellij.jpa.remote.impl.JpaFacadeImpl.createEntityManagerFactory(JpaFacadeImpl.java:16) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322) at sun.rmi.transport.Transport$1.run(Transport.java:177) at sun.rmi.transport.Transport$1.run(Transport.java:174) at java.security.AccessController.doPrivileged(Native Method) at […]

如何使用JAXB将属性对象转换为JSON对象

我想接受并响应REST应用程序中的JSON对象。 我需要发送和接收的数据位于.properties文件中。 我已经阅读过它们,现在它们属于一个Properties对象(来自java.util.Properties )。 有没有一种方法可以编组和解组Properties对象,而无需实现新类? 我在Weblogic服务器中使用Jax-rs API。 @POST @Path(“{id}”) @Produces(MediaType.APPLICATION_JSON) @Consumes(MediaType.APPLICATION_JSON) public JSONObject getbyID(@PathParam(“id”)JSONObject inputJsonObj) { //marshalling and unmarshalling goes here }

是否在JDK中定义了HTTP和HTTPS默认端口号?

我试图看看端口80和端口443是否被定义为任何地方的公共常量。 这些是否存在于JDK中(或者可能存在于Apache HttpClient等公共库中)?

Java方法调用重载逻辑

对于以下代码,为什么要打印A,B? 我希望它能打印B,B。此外,JVM执行的方法调用是动态还是静态评估的? public class Main { class A { } class B extends A { } public void call(A a) { System.out.println(“I’m A”); } public void call(B a) { System.out.println(“I’m B”); } public static void main(String[] args) { Main m = new Main(); m.runTest(); } void runTest() { A a = new B(); B b […]

自毁应用程序

沿着“这条磁带将在五秒内自毁。祝你好运,吉姆” …… 一旦达到预设的使用时间或其他条件,应用程序是否可以删除自身(或它的可执行包装forms)? 或者,可以使用哪些其他方法使应用程序无用? 这里的目标是让测试版到期,邀请用户获得更新版本。