草庐IT

@Async失效情况

全部标签

Java:如何在不实现接口(interface)的情况下独立评估 EL 表达式(在任何 Web 框架之外)?

我想在我的应用程序中使用EL。但我找不到任何方法。我通常最终需要一些我没有实现的接口(interface)。我有一个对象映射,我想要一个像Hello,${person.name}这样的字符串表达式被评估为一个字符串。我如何使用CommonsEL、javax.el、OGNL等实现这一点?必须是一个独立的库。我知道Java:usingELoutsideJ2EE,并看过JSTL/JSPEL(ExpressionLanguage)inanonJSP(standalone)context.这不是我要找的。我正在寻找的是要添加的依赖项的示例,然后是如何初始化将具有的解析器:privatestati

java - 写入静态字段 - 在这种情况下 FindBugs 是错误的吗?

我有一个这样的Java类:publicclassFoo{publicstaticintcounter=0;publicvoidbar(intcounter){Foo.counter=counter;}}FindBugs警告我通过实例方法bar写入静态字段counter。但是,如果我将代码更改为:publicclassFoo{publicstaticintcounter=0;publicstaticvoidsetCounter(intcounter){Foo.counter=counter;}publicvoidbar(intcounter){setCounter(counter);}}

java - ScheduledExecutorService,如何在不停止执行者的情况下停止 Action ?

我有这个代码:ScheduledExecutorServicescheduledExecutor;.....ScheduledFutureresult=scheduledExecutor.scheduleWithFixedDelay(newSomethingDoer(),0,measurmentPeriodMillis,TimeUnit.MILLISECONDS);在某些事件发生后我应该停止操作,它在SomethingDoer的run()方法中声明,它实现了Runnable。我该怎么做?我不能关闭执行器,我应该只撤销我的周期性任务。我可以为此使用result.get()吗?如果可以,请

java - Spring Data JPA - 在没有@Transactional 的情况下获取延迟加载的集合

我的期望是,当在事务范围内访问集合时,应该获取延迟加载的集合。例如,如果我想获取一个集合,我可以调用foo.getBars.size()。缺少Activity事务将导致异常并显示错误消息,如failedtolazilyinitializeacollectionofbars:....couldnotinitializeproxy-noSession但是,我注意到我最新的应用程序中的行为有所不同。我将SpringBoot1.5.1与“data-jpa”启动器一起使用。我过去使用过SpringBoot,但data-jpastarter对我来说是新的。考虑以下情况。我有一个延迟加载的ManyT

java - 在这种情况下我应该使用 Drools 吗?

我将使用大学的图书馆系统来解释我的用例。学生在图书馆系统注册并提供个人资料:性别、年龄、院系、之前完成的类(class)、当前注册的类(class)、已借的书籍等。图书馆系统中的每本书都会根据学生的个人资料定义一些借阅规则,例如,一本计算机算法的教科书只能由当前注册该类(class)的学生借阅;另一本教科书只能由数学系的学生借用;也可以规定学生最多只能借2本计算机网络书籍。由于借阅规则,当学生在图书馆系统中搜索/浏览时,他只会看到他可以借到的书籍。因此,该要求实际上归结为高效生成学生有资格借阅的图书列表这一行。这是我使用Drools设计的设想-每本书都有一个规则,其中对学生个人资料的一

java - 是否可以在没有外部类的情况下序列化匿名类?

我在网上做了一个小调查,并查看了该网站上的相关主题,但答案是矛盾的:有人说不可能,有人说可能,但很危险。目标是传递一个匿名类的对象作为RMI方法的参数。由于RMI要求,此类必须是可序列化的。没问题,很容易使类可序列化。但我们知道内部类的实例持有对外部类的引用(匿名类是内部类)。因此,当我们序列化内部类的实例时,外部类的实例和字段一起被序列化。这是问题出现的地方:外部类不可序列化,更重要的是-我不想序列化它。我想做的只是发送匿名类的实例。简单示例-这是一个RMI服务,其方法接受Runnable:publicinterfaceRPCService{Objectcall(Serializab

java - 在不卡住 UI 线程的情况下实现游戏循环的最佳方法

我正在尝试用Java制作一个简单的2D游戏。到目前为止,我有一个JFrame,带有一个菜单栏,以及一个扩展JPanel并覆盖它的paint方法的类。现在,我需要启动一个游戏循环,我将在其中更新图像的位置等。但是,我坚持如何最好地实现这一目标。我是否应该使用多线程,因为如果你在主线程上放置一个无限循环,UI(以及我的菜单栏)肯定会卡住?到目前为止,这是我的代码:importjava.awt.Color;importjava.awt.Graphics;importjavax.swing.JPanel;@SuppressWarnings("serial")publicclassGameCan

java - Tomcat 如何在没有 web.xml 的情况下准确引导应用程序?

我想知道Tomcat如何在SpringMVC上引导我的应用程序?我有一个初始化器:publicclassAppInitializerimplementsWebApplicationInitializer{@OverridepublicvoidonStartup(ServletContextcontainer){AnnotationConfigWebApplicationContextrootCtx=newAnnotationConfigWebApplicationContext();rootCtx.register(AppConfig.class);container.addListe

java - 在枚举的 Java switch 语句中,为什么在每种情况下限定我的值时都会出现编译错误?

我在Java中有一个switch语句,在一个让我们调用IMyInterface.MyEnum的枚举上我的每个案例陈述都有以下形式:IMyInterface.MyEnum.MyValue,(尽管如果我导入的话我可以删除IMyInterface)。但是,编译器(Java6)会抛出一个错误:“合格的case标签IMyInterface.MyEnum.MyValue必须替换为未合格的枚举常量MyValue”。我显然可以做到这一点,但对于我来说,我不明白这个错误的目的是什么。显然,如果编译器可以处理实际值,它应该能够像处理常量一样处理完全限定名。事实上,我会假设编译器将常量转换为完全限定名称。那

java - 如何在没有字符串或数组的情况下按升序对整数数字进行排序?

我试图在不使用字符串、数组或递归的情况下对任意长度的整数的数字进行升序排序。例子:Input:451467Output:144567我已经想出了如何用模数除法得到整数的每一位:intnumber=4214;while(number>0){IO.println(number%10);number=number/10;}但我不知道如何在没有数组的情况下对数字进行排序。不用担心IO类;这是我们教授给我们的定制类(class)。 最佳答案 它是4行,基于while循环的for循环变体和一点java8spice:intnumber=4214;