java安全套接字没有认证?

我有一个简单的安全套接字服务器 – 客户端程序。 对于服务器证书,我使用keytool创建了一个密钥库。 当我尝试通过我的客户端连接到服务器时,我得到以下exception: 在服务器中: Exception in thread “main” javax.net.ssl.SSLHandshakeException: Received fatal alert: certificate_unknown 在客户端: Exception in thread “main” javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Unknown Source) 如果我的理解是正确的,那么这些例外是由于我使用我创建的证书这一事实引起的。 我的问题如下: 如果我在服务器和客户端中设置启用的密码套件,所有* _anon *密码套件,这不应该解决问题吗? 我的意思是如果我启用*_anon_*密码套件,则不需要身份validation,因此没有例外。 它是否正确? 因为我仍然有例外。 我尝试在启用的密码套件中启用所有已启用的+ _anon密码套件。 没有成功。 我尝试只设置anon并获得一个新例外: Exception in thread “main” […]

如何在eclipse中从属性文件中读取VM参数?

众所周知,eclipse为我们提供了一种将VM参数传递给特定类的方法,请查看下图中的VM Arguments部分: 但我希望以不同的方式传递这些参数,因此我可以将这些参数放在属性文件中,然后在代码中检索它们。 所以一旦我从任何其他类调用Lesson2类(如上图所示),我会在运行之前将其传递给它 有什么建议么?

使用SpringBoot和Hibernate与复合pks的双向@OneToMany关系

我的应用程序中现有的父子关系最近变得更加复杂,因为我们在父级和子级的主键上添加了“类型”列。 在此之后,添加,阅读和修改儿童效果很好,但删除它们是一种痛苦。 使用Vlad Mihalcea在本文中给出的关于@OneToMany关系的建议以及关于复合键的各种示例,我尝试了类似于以下模型的实现。 但是,删除孩子仍然无法正常工作,我现在有一个奇怪的错误消息作为奖励。 我使用的是Spring Boot 1.4.1和Hibernate 5.1.9.Final。 案子 Parent实体具有@EmbeddedId ParentPK,其中包含两个字段以及Cascade.ALL和orphanRemoval设置为true的orphanRemoval 。 亲 @Entity @Table(name = “z_parent”) public class Parent { @EmbeddedId private ParentPK pk; @OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL, orphanRemoval = true) @JoinColumns({ @JoinColumn(name = “parent_code”, referencedColumnName = “code”), @JoinColumn(name = “parent_type”, referencedColumnName = “type”) }) List children = new ArrayList(); public […]

有哪些方法可以在Java中实现文本编辑器?

有哪些方法可以在Java中实现文本编辑器?

从Eclipse IDE创建Runnable JAR

我在网上查看了很多信息,也看了一些问题,但无法解决我的问题,所以我发布了这个问题。 我有一个相当简单的项目,使用SWING编译并在Eclipse下运行,但是当我尝试使用标准的Export->Java->Runnable Jar时,最后留下默认属性我有一个文件,当我dobule-click我得到这个: Could not find the main class: TableFilterDemo. Program will exit Could not find the main class: TableFilterDemo. Program will exit 。 这是我的项目结构: 这是我用于创建Runnable Jar的配置: 并且因为据我所知错误,找到main方法存在一些问题,我只留下了TableFilterDremo.java的main方法: public class TableFilterDemo{ public static void main(String[] args) { //Schedule a job for the event-dispatching thread: //creating and showing this application’s GUI. javax.swing.SwingUtilities.invokeLater(new Runnable() { public void […]

util.Random中的种子是什么?

我无法理解java.util.Random中Seed的含义是什么? 我读过为什么这段代码打印“你好世界”? 问题,我仍然对种子感到困惑。 任何人都能亲切地形容我种子究竟是什么意思吗? 谢谢。 在setSeed()方法的文档中…什么意思是seed – the initial seed ? public void setSeed (长种子) 使用单个长种子设置此随机数生成器的种子。 setSeed的一般契约是它改变了这个随机数生成器对象的状态,以便与刚刚用参数种子作为种子创建的状态完全相同。 方法setSeed由类Random实现,通过primefaces方式将种子更新为 (种子^ 0x5DEECE66DL)&((1L << 48) – 1) 并清除nextGaussian()使用的haveNextNextGaussian标志。 由Random类实现setSeed恰好只使用给定种子的48位。 然而,通常,重写方法可以使用长参数的所有64位作为种子值。 参数 : 种子 – 初始种子 我希望如果我能理解seed确切含义,我相信我会清楚地理解这个答案。

在applet或Google AppEngine中托管Java编译器?

在网上搜索我发现Javac编译器是用Java编写的,我也在Sun的网站上查看源代码。 来源非常大,我无法取得任何进展。 此外,Eclipse项目内嵌了一个编译器,但是谁可以触摸它的源代码;-)。 所以我想我会按你的方式提出几个问题: Java编译器可以托管在Applet中吗? 是否可以使Java编译器在GAE上工作,从数据存储中动态加载生成的类文件?

通常可重复使用的注释或公共注释?

是否有可用的常用注释? 与commons-lang相似? 如果没有,您是否看到任何有效使用annontations(不是内置注释)作为任何开源应用程序开发的一部分。 我记得Mifos正在使用它进行交易。 磨憨

在Java中,我可以从Class对象创建匿名子类的实例吗?

我有一个工厂方法,可以创建在unit testing中使用的对象。 这些对象都派生自相同的基类: public static T modMake(Class clazz) { try { return clazz.newInstance(); } catch (InstantiationException e) { // Should never happen throw new AssertionError(e); } catch (IllegalAccessException e) { // Should never happen throw new AssertionError(e); } } 现在我想从该基类覆盖一个getter方法,但仅用于测试。 我通常会使用匿名类来做到这一点,例如( Node是BaseEntity的子字节之一): public static Node nodMake() { return new Node() { @Override public long ixGet() […]

如何在使用具有线程超时function的ExecutorService时提高性能?

我不是multithreading专家,但我发现当前使用ExecutorService代码存在一些性能问题。 我正在开发一个项目,在这个项目中我需要对我的服务器进行HTTP URL调用,如果响应时间过长则会超时。 目前它正在返回简单的JSON字符串.. 我当前的要求是10 ms 。 在10 ms它应该能够从服务器获取数据。 我猜它是可能的,因为它只是对同一数据中心内的服务器的HTTP调用。 我的客户端程序和实际服务器在同一个数据中心内,并且它们之间的ping时间延迟为0.5 ms ,所以它应该是可行的。 我正在使用RestTemplate进行URL调用。 下面是我为我编写的使用ExecutorService和Callables – public class URLTest { private ExecutorService executor = Executors.newFixedThreadPool(10); public String getData() { Future future = executor.submit(new Task()); String response = null; try { System.out.println(“Started..”); response = future.get(100, TimeUnit.MILLISECONDS); System.out.println(“Finished!”); } catch (TimeoutException e) { System.out.println(“Terminated!”); } catch (InterruptedException […]