草庐IT

KEY_NAME

全部标签

java - 如何使用 javax.net.ssl 指定 key 密码?

我在使用JavaSSL时遇到困难。问题是我的key有密码。当我使用命令opensslreq-new-newkeyrsa:1024-nodes-outlocal.csr-keyoutlocal.key生成key时,当被要求输入Achallengepassword[]:,我输入了MyKeyPass。然后我从证书颁发机构获得了证书。然后,我将证书导入KeyStore和TrustStore。我的一个应用程序基于Jetty并使用Maven运行,另一个使用原始套接字,我没有使用Maven。当我将证书与Jetty一起使用时,使用以下配置,一切正常:44330000keys/domain.jksKey

java - java中的 "invoking a static method with class name"和 "invoking a static method with an object"有什么区别吗?

在java中我们可以“用类名调用一个静态方法”也可以“用一个对象调用一个静态方法”java中“用类名调用静态方法”和“用对象调用静态方法”有什么区别? 最佳答案 没有区别,但建议以静态方式调用static方法,即使用ClassName。如果不这样做,静态分析仪通常会报告错误。这里要理解的重要一点是static方法是无状态的,因此使用实例调用它们会使阅读您的代码的人感到困惑。因为无论您使用什么实例调用static方法,结果都将保持不变。这是因为static方法属于类而不属于对象。 关于ja

java - 在 JAX-RS 中使用 API key 进行身份验证

我们想使用apikey来保护我们的restapi。以下是要求:面向公众的服务需要APIkey。“私有(private)”服务只能接受来自集群内部的调用,不是外面的世界。每个api标识一个用户,用户对象必须对其余服务。在JAX-RS应用程序中是否有一些标准方法可以做到这一点?(我们正在使用Resteasy。)我已经阅读了所有关于过滤器、拦截器和基本身份验证的内容,但我不清楚什么是最好的方法。在早期版本的应用程序中,我们有一个自己动手的解决方案,其中公共(public)服务在公共(public)端口上运行,私有(private)服务在私有(private)端口上运行。有一个自定义apike

javax.mail.MessagingException : Could not connect to SMTP host : <host name> port : 25 response: 554

我正在尝试使用javamailapi发送邮件。我的smtp服务器是ibm服务器。我正面临这个异常(exception)javax.mail.MessagingException:CouldnotconnecttoSMTPhost:port:25response:554请帮助我。提前致谢。 最佳答案 您收到错误代码554:AccessDeniedRelay。这可能是因为您的SMTP服务器无法识别您的请愿书是合法的,并像垃圾邮件一样阻止它。也许您的发件人帐户与服务器预期的域不匹配,或者您需要向您的SMTP连接添加一些额外的验证参数(如果

java - Thread.setName(name) 注意事项

我有一个使用套接字的多线程客户端服务器应用程序。当找到新的连接时,进一步的执行将转移到使用新的Executors线程池的新线程。我想在该客户端的所有日志语句中记录客户端ID。问题是我不想仅仅为了传递客户端ID而修改方法签名。我想到的解决方案是:使用ThreadLocal来保存客户端值。在run()中,我可以使用Thread.currentThread().setName(clientId);将客户端ID设置到线程中;第一个应该可以。但我喜欢第二种选择,因为一种。我可以从调试器中找到客户端IDb.记录器库可以配置为显示线程名称。因此不需要对日志语句进行任何更改,它也适用于库内的记录器。除

java - 是否有任何完全通用的 Map.get() 版本,即 "V get(K key)"

由于Map.get()不是完全通用的,我们经常发现开发人员传递不同类型的对象(因此存在错误)的情况。当我们开始使用其他团队的工件/服务时,这种情况的发生频率就会上升。WhatarethereasonswhyMap.get(Objectkey)isnot(fully)generic解释了为什么get()不是完全通用的。由于我们实际上并没有属于不同类型但“语义上”相等的两个对象的用例,因此拥有一个版本的Map.get()确实可以帮助我们在编译时识别此类错误。是否存在可用于生产的API? 最佳答案 这不是您问题的直接答案,但某些IDE(至

java treeset 抛出 illegalArgumentException : key out of range

我已经精简了代码来重现一个抛出错误的例子:publicclassTest{publicstaticvoidmain(String[]args){NavigableSetset=newTreeSet(Arrays.asList("a","b","c","d"));NavigableSetset2=newTreeSet();set2=set.tailSet("c",false);set2.addAll(set.headSet("b",true));System.out.println(set2);}}代码的目的是在检索集合的子集时实现某种翻转。例如。在上面的例子中,我想要从c[exclus

java - user.name 可以被欺骗吗

要在Java程序中获取当前用户的名称,您可以simplyfetchthevalueoftheuser.namesystemproperty:System.getProperty("user.name");但这有多安全?对于常见的运行时环境,执行程序的用户是否可以轻松地将此属性设置为任意值(例如,使用JVM的命令行参数)?用户能否轻易伪造此用户名?我问是因为我正在编写一个任何人都可以运行的命令行程序,但只有当用户是特殊管理用户时才允许进行一些特权操作。请注意,由于Java11user.name属性仅在程序启动后有效读取,因此恶意程序代码无法欺骗它。 最佳答案

java - 如何修复 ERR_SSL_WEAK_SERVER_EPHEMERAL_DH_KEY

我有一个网站,最近chrome在尝试访问它时开始返回此错误:ERR_SSL_WEAK_SERVER_EPHEMERAL_DH_KEY这是一个java+jsp的网站,运行在apachetomacat上。它还使用Verisign认证,但我读到该错误与此证书无关。感谢您的帮助。 最佳答案 我按照这个修复了它:http://support.filecatalyst.com/index.php?/Knowledgebase/Article/View/277/0/workaround-for-tomcat-ssl-tls-logjam-vuln

java - "Key-Value Coding"用于 Java

在Apple的Objective-C中,有一种称为“键值编码”的东西,它允许您使用类似于文件系统路径的字符串遍历对象图。有一个非正式的协议(protocol)(即接口(interface))允许对象根据他们所要求的“键”返回值。例如默认是返回由键命名的字段的值,而像NSDictionaries这样的关系集合可以实现更有趣的行为。伪代码示例:foo.bar=newbaz();foo.bar.mymap=newmap();foo.bar.mymap['bom']=2;foo.valueForKeyPath("bar.mymap.bom")#2Java有这样的东西吗?实现起来很容易,但我想我