如何获得反向字符串(unicode安全)

让我们假设我们想要恢复以下字符串“áe”。 unicode就是“\ u0061 \ u0301 \ u0065”。 恢复它的天真的方法将是char的char private static String reverseStringNaive(String s) { char[] characters = new char[s.length()]; for (int i = s.length() – 1; i >= 0; i–) { int j = s.length() – i – 1; characters[j] = s.charAt(i); } return new String(characters); } 当我们希望获得“eá”(\ u0065 \ u0061 \ u0301)时,它给了我们“éa”(\ u0065 \ […]

在Selenium的inconginto模式下运行chrome浏览器

我想通过selenium在incongito模式下运行chrome。 我用Google搜索了足够的内容,并在此链接的帮助下找到了如何直接在incongito模式下运行chrome: 右键单击Google Chrome的快捷方式,然后选择“属性”。 在“目标”字段的“快捷方式”选项卡上,在程序路径末尾添加-incognito。 所以在“目标”字段中你应该有”C:\Program Files (x86)\Google\Chrome\Application\chrome.exe” –incognito 但是我没有得到如何在selenium中运行它。

如何在Java中转换大写和小写之间的字符串?

在大写和小写之间用Java转换字符串的方法是什么?

Spring MVC:将请求属性绑定到控制器方法参数

在Spring MVC中,很容易将请求参数绑定到处理请求的方法参数。 我只是使用@RequestParameter(“name”) 。 但是我可以对请求属性执行相同的操作吗? 目前,当我想访问请求属性时 ,我必须执行以下操作: MyClass obj = (MyClass) request.getAttribute(“attr_name”); 但我真的想用这样的东西代替: @RequestAttribute(“attr_name”) MyClass obj 不幸的是,它没有这种方式。 我可以以某种方式扩展Springfunction并添加我自己的“绑定器”吗? 编辑 (我想要实现的目标) :我将当前登录的用户存储在请求属性中。 因此,每当我想访问当前登录的用户(这几乎都在每个方法内)时,我必须写这个额外的行user = (User) request.getAttribute(“user”); 。 我想尽量缩短它,最好将它作为方法参数注入。 或者如果你知道如何通过拦截器和控制器传递某些东西,我会很高兴听到它。

用于服务器端图像生成的JavaFX

这可能听起来很奇怪,但我想使用JavaFX在服务器端生成我的图表图像。 因为JavaFX具有很好的canvas API来执行图像转换连接和定位。 特别是我有一个spring MVC服务来生成我的图表作为图像。 主要问题是如何从方便的Spring bean调用javaFX API。 如果我尝试从java应用程序(不扩展javaFX Application类)运行javafx代码,我得到 java.lang.IllegalStateException: Toolkit not initialized 您有任何建议/想法如何解决这个问题?

JAX-WS密码类型PasswordText

我有一个简单的命令行Java JAX-WS应用程序来测试SOAP请求,但是服务器期望密码类型是PasswordText,我很难理解如何设置它… 代码如下: @WebServiceRef private static final HelloService helloService = new HelloService(url, new QName( URL, “HelloService”)); public static void main(final String… args) { try { final HelloPort helloPort = helloService.getHelloPort(); final BindingProvider hB = ((BindingProvider) helloPort); hB.getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, END_POINT_ADDRESS); hB.getRequestContext().put(BindingProvider.USERNAME_PROPERTY, USERNAME); hB.getRequestContext().put(BindingProvider.PASSWORD_PROPERTY, PASSWORD); … 我已经使用SOAP-UI测试了请求,所以我知道它正在运行。 任何有关设置密码类型的帮助将不胜感激。 谢谢。

如何查找和停止所有当前运行的线程?

我有一个multithreadingjava项目,我想添加一个方法stop()来停止所有正在运行的线程。 问题是这个项目是由其他人开发的,我不熟悉它如何实现多个线程。 我所知道的是,一旦项目开始,就会调用许multithreading并且它们会永远运行。 有没有办法找到所有正在运行的线程并阻止它们? 我搜索了很多,并找到了如何获取正在运行的线程列表: Set threadSet = Thread.getAllStackTraces().keySet(); 下一步要做什么来阻止所有正在运行的线程? 我想要停止这些线程的原因是我需要将此项目作为捆绑包部署到OSGi容器。 捆绑包启动后,多个线程将永远运行。 所以我需要实现一个destroy()方法来阻止所有线程来控制bundle生命周期。 怎么样 for (Thread t : Thread.getAllStackTraces().keySet()) { if (t.getState()==Thread.State.RUNNABLE) t.interrupt(); } for (Thread t : Thread.getAllStackTraces().keySet()) { if (t.getState()==Thread.State.RUNNABLE) t.stop(); }

Maven + SLF4J:使用需要两个不同SLF4J版本的两个不同依赖项时版本冲突

我有一个独立使用两个依赖项的项目:BoneCP和Hibernate。 但是由于SLF4J及其版本冲突它不起作用,因为BoneCP需要SLF4J 1.5而Hibernate需要SLF4j 1.6。 如您所知,不可能在pom.xml中重要的两个不同版本的相同依赖项。 那么我该怎么办才能解决这个惊人的SLF4J副作用? 我得到的错误是臭名昭着的: SLF4J: The requested version 1.5.10 by your slf4j binding is not compatible with [1.6] SLF4J: See http://www.slf4j.org/codes.html#version_mismatch for further details. 我需要添加它,但不允许使用两个不同版本的相同依赖: org.slf4j slf4j-log4j12 1.5.10 provided org.slf4j slf4j-log4j12 1.6.2 provided Maven依赖树: [INFO] [dependency:tree {execution: default-cli}] [INFO] org.mentawai:menta:war:1.0.5-SNAPSHOT [INFO] +- javax.servlet.jsp:jsp-api:jar:2.0:provided [INFO] +- javax.servlet:servlet-api:jar:2.5:provided [INFO] +- javax.activation:activation:jar:1.1:compile [INFO] +- javax.mail:mail:jar:1.4:compile […]

使用Java中的RSA私钥加密

我正在尝试使用RSA私钥加密某些内容。 我正在关注这个例子: http : //www.junkheap.net/content/public_key_encryption_java 但转换它使用私钥而不是公共。 在这个例子之后,我认为我需要做的是: 读入DER格式的私钥 生成PCKS8EncodedKeySpec 从KeyFactory调用generatePrivate()来获取私钥对象 将该私钥对象与Cipher对象一起使用以进行加密 那么,步骤: 密钥是从openssl生成的: openssl genrsa -aes256 -out private.pem 2048 然后转换为DER格式: openssl rsa -in private.pem -outform DER -out private.der 我用以下代码生成PKCS8EncodedKeySpec: byte[] encodedKey = new byte[(int)inputKeyFile.length()]; try { new FileInputStream(inputKeyFile).read(encodedKey); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // […]

Eclipse的新版本刚刚问世。 有什么我可以做的,以避免不得不再次手动搜索我的插件?

Galileo前几天问世,即使Eclipse下的插件是IMO,比Netbeans更容易处理,如果有一种简单的方法可以升级到新版本,它仍然会非常棒(和带上我的插件)。 有小费吗?