小编Sha*_*ire的帖子

Java抽象类和接口

在采访中我被问到以下问题.我试着回答这个问题,但我想要问题的确切答案.

如果我可以将Abstract类模拟为Interface,为什么java提供了Interface?

这意味着如果在Abstract类中我可以将所有方法标记为抽象,然后抽象类将作为接口工作,那么为什么我需要接口.

任何人都可以简要解释一下.

java abstract-class interface class

12
推荐指数
1
解决办法
3727
查看次数

如何在OpenAPI(Swagger)中记录动态查询参数名称?

有没有办法记录以下查询?

GET api/v1/users?name1=value1&name2=value
Run Code Online (Sandbox Code Playgroud)

其中查询参数名称是动态的,将从客户端接收.

我正在使用最新的Swagger API.

swagger swagger-editor openapi swagger-codegen

9
推荐指数
1
解决办法
3049
查看次数

Factory方法创建单例实例


我在静态工厂方法中编写了下面的代码来返回DefaultCache的单个实例.

public static ICache getInstance() {
   if (cacheInstance == null) {
      synchronized (ICache.class) {
         if (cacheInstance == null) {
            cacheInstance = new DefaultCache();
         }
      }
   }
   return cacheInstance;
}
Run Code Online (Sandbox Code Playgroud)

我们真的需要在synchronized块内对cacheInstance进行第二次空检查吗?

java multithreading

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

javax.naming.NoInitialContextException:无法使用哈希表中指定的工厂创建InitialContext

我有一个小程序,它只是在非托管环境中创建初始上下文,即在容器外部.我一直在使用Websphere 7.0.我编写了以下程序来与使用corba url在WAS 7上运行的应用程序建立连接,

package snippet;

import java.util.Hashtable;

import javax.naming.Context;
import javax.naming.InitialContext;

public class test {
    public static void main(String[] args) {
        try {
            // create initial context
            Hashtable env = new Hashtable();
            env.put(Context.INITIAL_CONTEXT_FACTORY,
                    "com.ibm.websphere.naming.WsnInitialContextFactory");
            env
                    .put(Context.PROVIDER_URL,
                            "corbaloc:iiop:1.0@x1devapp63.dev.freightliner.com:2809/NameService");

            InitialContext ctx = new InitialContext(env);

            System.out.println(ctx);
        } catch (Exception ex) {
            ex.printStackTrace();
        }

    }
} 
Run Code Online (Sandbox Code Playgroud)

我创建了runnable jar并使用下面给出的shell脚本执行,

#!/bin/sh

WAS_ROOT_PATH=/application/WebSphere/AppServer
SCHEDULER_JAR=/application/apps/JobScheduler/testJNDI.jar
SCHEDULE_FILE=/application/apps/JobScheduler/schedule.xml
. "$WAS_ROOT_PATH"/bin/setupCmdLine.sh
CLASSPATH="$MQLIB":"$WAS_CLASSPATH"
"$JAVA_HOME"/bin/java -classpath "$CLASSPATH" -jar "$SCHEDULER_JAR"
Run Code Online (Sandbox Code Playgroud)

跑步的我一直面临着异常,

$ testJNDI.sh
javax.naming.NoInitialContextException: Failed to create InitialContext using factory specified in hashtable …
Run Code Online (Sandbox Code Playgroud)

java websphere jndi java-ee

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

当没有数据时应该返回哪个http代码

我编写了 Rest API,当后端系统中有数据时,它返回 200 http 代码。但是,当后端系统中没有数据时,我应该返回哪个 http 状态代码,这样它将帮助客户端代码毫无歧义地解释响应。

java rest web-services http jax-rs

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

使用Singleton模式的多线程环境中是否存在任何问题?

我已经实现了Singleton类,如下所示:

public class Singleton {

    private static  Singleton instance = null;


    private Singleton() { 
    }

private synchronized static void createInstance() {
    instance = new Singletone();
}


    public static Singleton getInstance() {
        if(instance == null){
            createInstance();
        }
        return instance;
    }

}
Run Code Online (Sandbox Code Playgroud)

但我想知道它是否是单例的正确实现.多线程环境中是否有任何问题.

java singleton multithreading design-patterns

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

使用HTML <html type ="file"id ="uploadfile">控制上传文件,不带文件选择对话框

我想使用HTML文件控件上传文件,但没有选择对话框,因为我必须上传具有固定路径"c:\ finsts\finstmt.xml"的文件.

场景1:
我尝试使用HTML控件上传文件.在其中显示浏览按钮并单击时,您必须从文件选择器对话框中选择文件.有用.它上传文件到服务器罚款.服务器端代码是正确的,工作正常.

场景2:
但是当我隐藏文件选择器控件时,使用以下HTML代码:

 <div name="filediv" style="display:none">
  <html type="file" id="uploadfile" value="c:\finsts\finstmt.xml">  
 </div>
Run Code Online (Sandbox Code Playgroud)

由于文件路径是固定的,我不想用户选择文件.当我尝试这个场景时,它在第一次正常工作时不起作用.我不明白文件控制是如何工作的.

这里有人知道任何工作第二种情况吗?

谢谢.

html javascript

0
推荐指数
1
解决办法
1844
查看次数