小编Vde*_*deX的帖子

最后没有抛出堆栈溢出异常

据我所知,这段代码应该抛出StackOverflowError,但事实并非如此.可能是什么原因?

public class SimpleFile {

    public static void main(String[] args) {
        System.out.println("main");

        try{
        SimpleFile.main(args);
            }

        catch(Exception e){
            System.out.println("Catch");
        }

        finally{
            SimpleFile.main(args);
        }
    }

}
Run Code Online (Sandbox Code Playgroud)

java stack-overflow exception-handling exception

12
推荐指数
2
解决办法
233
查看次数

从mybatis xml查询生成sql查询

我有一个mybatis映射文件xml,复杂的查询很多where条款的条款.

有什么办法可以创建可能的查询组合吗?

我想在所有这些查询上运行解释,因为我计划添加NOT IN所有查询.

java sql mybatis spring-mybatis

10
推荐指数
1
解决办法
269
查看次数

如何记录Spring Boot中Rest Web服务所用的时间?

我正在使用Spring Boot编写Web Rest Web服务.

我想记录我的webservice处理请求所花费的时间.另外我想记录调用的头文件,方法和URI.

几个月前我在我的球衣网络服务中做过类似的事情 ContainerRequestFilter and ContainerResponseFilter filter() method.

另外,AOP更好还是过滤?

java logging spring spring-boot

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

Spring AOP切入控制器中的所有方法

我想在Spring(3.2.3)@Controller中的每个方法之前运行一些代码.我有以下定义,但它不会运行.我怀疑切入点表达式是不正确的.

调度员servlet.xml中

<aop:aspectj-autoproxy/>
<bean class="com.example.web.controllers.ThingAspect"/>
Run Code Online (Sandbox Code Playgroud)

cewcThingAspect

@Pointcut("execution(com.example.web.controllers.ThingController.*(..))")
public void thing() {
}

@Before("thing()")
public void doStuffBeforeThing(JoinPoint joinPoint) {
    // do stuff here
}
Run Code Online (Sandbox Code Playgroud)

java spring spring-mvc spring-aop pointcut

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

使用byte,short和其他原始类型

为什么我不经常看到它们.我只看到它们主要用于网络,其中大小确实很重要.但是,例如,我有一个仅使用1-10范围内的数字的变量,我不应该使用字节吗?我习惯使用尽可能小的内存来编写C/C++,为什么不是这样在java中呢?

java primitive-types

6
推荐指数
1
解决办法
83
查看次数

API 架构中断路器设计模式的优势是什么?

很抱歉,如果这个问题不适合 SO。

但我试图寻找很多答案。

我正在研究断路器设计模式,据我所知,它用于使您的 API 容错。现在我困惑的是,

假设我有调用支付 API 的 API,假设我将电路配置为在 5 个调用连续失败时打开。

现在根据断路器设计,我将在打开电路后路由后续调用以回退方法。假设接下来的 5 次调用,如果 api 在线,我将在第 6 次调用时调用支付 API,我将关闭电路。

但我没有发现这种模式的任何优势,比如 catch block 和断路器之间的区别。

我们可以在回退方法中做什么?这有什么帮助?

java api spring circuit-breaker hystrix

5
推荐指数
2
解决办法
2161
查看次数

方法调用转换

我试图了解如何通过转换调用重载方法.让我用我正在尝试的示例解释我的问题

public class Autoboxing {

    public void meth(Integer i){
        System.out.println("Integer");
    }
    public void meth(long i){
        System.out.println("Long");
    }
    public void meth(int... i){
        System.out.println("int");
    }

    public void meth(Object i){
        System.out.println("Object");
    }

    public static void main(String[] args) {
        Autoboxing box= new Autoboxing();
        box.meth(5);
    }
}
Run Code Online (Sandbox Code Playgroud)

这里的输出是:长

为什么在Wrapper Integer中调用带有参数long的方法.请解释.

java autoboxing

4
推荐指数
1
解决办法
67
查看次数

空指针异常错误,没有明显的代码错误

我在这里有一个错误,我不知道它来自哪里.我在初学者的java课程是高中,所以我在这里还没有太多的经验.我有3个相互合并的程序.我有一个卡片类,可以创建一张扑克牌

    //********************************************************************
//  Card.java       Author: Lewis and Loftus
//
//  Solution to Programming Project 4.5
//********************************************************************

import java.util.*;

public class Card
{
   public final static int ACE   = 1;
   public final static int TWO   = 2;
   public final static int THREE = 3;
   public final static int FOUR  = 4;
   public final static int FIVE  = 5;
   public final static int SIX   = 6;
   public final static int SEVEN = 7;
   public final static int EIGHT = 8;
   public final …
Run Code Online (Sandbox Code Playgroud)

java nullpointerexception

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

安装JDK 9后无法启动Spring Tool Suite

我安装了Spring Tool Suite(版本3.9.0).它以前工作得很好.安装JDK 9后,我无法启动Spring Tool Suite.

我可以在错误日志中看到以下内容:

java.lang.NoClassDefFoundError:org.eclipse.e4.core.internal.di.InjectorImpl.disposed(InjectorImpl.java:450)中的javax/annotation/PreDestroy atg.eclipse.e4.core.internal.di.Requestor.disposed (Requestor.java:156)org.eclipse.e4.core.internal.contexts.ContextObjectSupplier $ ContextInjectionListener.update(ContextObjectSupplier.java:78)at org.eclipse.e4.core.internal.contexts.TrackableComputationExt.update(TrackableComputationExt) .java:111)org.eclipse.e4.core.internal.contexts.TrackableComputationExt.handleInvalid(TrackableComputationExt.java:74)at org.eclipse.e4.core.internal.contexts.EclipseContext.dispose(EclipseContext.java:178 )org.eclipse.e4.core.internal.contexts.osgi.EclipseContextOSGi.dispose(EclipseContextOSGi.java:99)at org.eclipse.e4.core.internal.contexts.osgi.EclipseContextOSGi.bundleChanged(EclipseContextOSGi.java:141) )在org.eclipse.osgi.framework.eventmgr.EventM的org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:908)anger.dispatchEvent(EventManager.java:230)org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java: 213)位于org.eclipse.osgi的org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:120)org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:112) .internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:168)atg.eclipse.osgi.container.Module.publishEvent(Module.java:476)org.eclipse.osgi.container.Module.doStop(Module.java) :634)org.eclipse.osgi.container.Module.stop(Module.java:498)org.eclipse.osgi.container.SystemModule.stop(SystemModule.java:202)org.eclipse.osgi.internal.在java.base/java中的framework.EquinoxBundle $ SystemBundle $ EquinoxSystemModule $ 1.run(EquinoxBundle.java:165).lang.Thread.run(Thread.java:844)引起:java.lang.ClassNotFoundException:org.eclipse中的org.eclipse.e4.core.di_1.6.100.v20170421-1418找不到javax.annotation.PreDestroy. osg.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:433)位于org.eclipse.osgi.BongleLoader.findClass(BundleLoader.java:395)的org.eclipse.osgi.internal.loader.BundleLoader. findClass(BundleLoader.java:387)位于java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:496)的org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:150)

这个问题真的是因为JDK 9吗?请指出我正确的方向来解决问题.

谢谢.

java eclipse spring java-9

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

从周数中查找一周的开始日期

我用servlet和JSP构建了一个web应用程序,在我的Servlet中我计算了一周的数量:

 private int findWeekNumber(String myDate) 
    throws ParseException{
        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
        Date date;
        date = df.parse(myDate);
        Calendar cal = Calendar.getInstance();
        cal.setTime(date);
        int week = cal.get(Calendar.WEEK_OF_YEAR);
        System.out.println("week number is:" + week);

        return week;
    }
Run Code Online (Sandbox Code Playgroud)

然后我保存week到我的数据库.然后我week从我的数据库中检索.我怎样才能得到一周的开始 - 结束日期(周开始是星期一)week?让我们说weekNumber是30,我想计算20/07/2015 - 2015年7月26日.这里功能相同

java date java-8

2
推荐指数
1
解决办法
3168
查看次数