如何减少jvm使用的线程数

我在以下java版本上运行单线程Java应用程序: java version “1.7.0_67” Java(TM) SE Runtime Environment (build 1.7.0_67-b01) Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode) 启用-XX:+UseSerialGC选项。 当我启动应用程序时,我看到多个线程在使用htop监视系统时启动。 我想尽可能减少启动的进程数,因为我有一个用例涉及运行此应用程序的多个实例,这将触及我正在运行的系统上允许的最大进程数量的上限上。 除了-XX:+UseSerialGC之外是否还有其他jvm选项-XX:+UseSerialGC我可以用来减少线程数量的开始?

如何在滚动时修复折叠工具栏中的视图?

出于用户输入的目的,我想实现其中包含两个EditText折叠工具栏。 我正在听这个答案。 答案提供了将两个EditText添加到折叠工具栏的完美解决方案。 但这种行为并不像预期的那样。 我取得了什么: 预期行为: 我的XML代码 我知道我可以使用scrollFlag做这种类型的样式。 我读过这篇关于滚动标志的post。 但无法准确找到如何将其用于此目的。 我还想更改EditText的字体大小,如上面的GIF所示。 但第一个问题是如何修复工具栏中的一个视图,并在用户向上滚动时隐藏另一个视图。 如果有人用合适的例子解释,那将是很好的。

为本地@ExceptionHandler编写JUnit测试

我有以下控制器: class Controller { @ResponseStatus(HttpStatus.OK) @RequestMapping(value = “/verifyCert”, method = RequestMethod.GET) public void verifyCertificate() throws CertificateExpiredException, CertificateNotYetValidException { certificate.checkValidity(); } @ResponseStatus(HttpStatus.FORBIDDEN) @ExceptionHandler({CertificateExpiredException.class, CertificateNotYetValidException.class}) public void handleCertificateValidityException(Exception e) {} } 我的目标是,如果证书无效,该控制器将重定向到exception处理程序。

JAXB解组未知XML内容的子集

我需要unmarshall组未知XML内容的子集,使用该未编组对象,我需要修改一些内容并使用原始XML重新绑定相同的XML内容(子集)。 示例输入XML: Robin SM Active ….. 需要通过将其他XML部分保持相同来单独解组标记。 需要修改标记中的元素并将修改后的XML部分与原始文件绑定,如下所示: 预期输出XML: Robin_123 Senior Member 1 ….. 我的问题: 这个要求的可能解决方案是什么? (除了DOM解析 – 因为XML contnet非常庞大) 在JAXB2.0有没有选择呢? 请提供您的建议。

使用JPA存储枚举值

说我有一个枚举: public enum NotificationType { Store(“S”), Employee(“E”), Department(“D”), All(“A”); public String value; NotificationType(String value) { this.value = value; } } 我想在数据库中存储S或E而不是Store或Employee 。 目前,我已将其映射到实体中,如下所示: @Enumerated(EnumType.STRING) private NotificationType notificationType; 但如果可能的话,不确定如何得到我想要的东西。

已签名的Jar文件中的Spring Component Scan(@Autowire)速度很慢

多年前我们遇到了独立java应用程序中Spring组件扫描速度慢的问题所以我在stackoverflow中问过: 慢速弹簧组件扫描 。 多年以后我再次​​偶然发现了这个问题,我想我发现它为什么很慢:这是因为jar文件是签名的。 目前我们的应用程序中有大约170个jar文件。 我们自己和第三方。 我们签下所有人。 通常我们使用webstart,组件扫描的性能也可以。 只需执行“java -cp mainclass”即可通过庞大的类路径启动我们的app,compoennt扫描需要几分钟。 如果我只是从所有jar文件中删除MANIFEST.MF文件(只包含签名信息),再次运行应用程序,速度就像webstart一样快。 因此签名检查似乎需要花费大量时间。 我尝试在Java控制台中停用签名扫描。 没有效果。 仍然很慢。 有java运行时参数吗?

将Arraylist转换为json

请帮助我们如何将下面的Arraylist方法转换为Json public ArrayList helloName(String patentno) { ArrayList bibo = new ArrayList(); for (int row = 2; row < rowsize; row++) { pno = driver.findElement( By.xpath("//*[@id='body']/table/tbody/tr[" + row + "]/td")) .getText(); bibo.add(pno); } return bibo; }

未来取消方法文档

根据http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html,如果调用了cancel(boolean mayInterruptIfRunning)则isDone返回true 。 此方法返回后,对isDone()的后续调用将始终返回true。 但是,任务可能正在运行且mayInterruptIfRunning设置为false 。 那么,在那次调用之后应该返回什么isDone() ? true因为取消(这是错误的)? 此外,还不清楚cancel(boolean)方法是否返回false 。 PS我正在实现一些简单的线程池,所以我inheritance了Future 。

使用Maven构建单独的JAR文件,以便对自定义类加载器进行unit testing

作为我当前项目的一部分,我创建了一个自定义类加载器。 自定义加载器的部分unit testing涉及使用一些JAR文件来演示加载器的正确行为。 我想在运行实际的unit testing之前从Java源构建测试JAR文件。 此外,测试JAR文件在运行unit testing时不能在类路径上,因为我想在测试执行期间动态加载它们。 是否有一种标准模式可以实现这种“在测试阶段之前在一侧构建一些JAR但是将它们排除在类路径之外”的要求? 我不敢相信我是第一个尝试使用Maven 2的人,但我似乎无法找到合适的POM结构和依赖关系。 通常我最终会在测试阶段之前没有构建一些测试jar,但是我也遇到了不一致的构建顺序的问题,导致构建在一台机器上正常工作,但是无法构建一些测试另一个jar子。

从未知的JAXBContext(XML)为JSON创建Marshaller

我必须使用一个只提供JAXBContext的lib来为XML对象编组和解组XML数据。 此外,我从未见过XML:只有JAXB对象传递给我。 我现在需要的是将这些对象转换为XML,而不是转换为JSON。 有没有办法从给定的JAXBContext创建一个可用于生成JSON输出的编组器? 情况是我不仅在改造数据。 我还有逻辑,它作用于XML和JSON之间的Java对象(并操纵数据)。 这也是双向转型。 JAXBContext是关于XML和Java对象之间转换的信息 – 我的目的是重用这个上下文信息,而不必使用与JAXB不同的第二种技术实现第二次转换。 JAXBContext(及其Java对象)已经拥有有关XML结构的信息; JAXB自动识别该结构是使用它的省时省力的原因。