如何编辑.jar文件?

可能重复: 修改jar中的文件 所以我有一个jar文件,上面有一个.class文件。 我只需要更改文件中的一些单词。 我应该使用什么程序? 我希望这适用于我的手机。

如何使用Spring MVC将会话属性作为方法参数(参数)传递

简而言之,我想要的是: public String action(@SessionAttribute User user) {..} 代替 public String action(HttpSession session) { User user = session.getAttribute(“user”); } 主要是为了: 可读性 unit testing

使用Apache Commons CLI库时如何获取参数

我正在使用Apache Commons CLI来处理Java中的命令行参数。 我已经声明了a和b选项,并且我可以使用CommandLine.getOptionValue()来访问该值。 Usage: myapp [OPTION] [DIRECTORY] Options: -a Option A -b Option B 如何声明和访问DIRECTORY变量?

如何读取pdf文件并将其写入outputStream

我需要读取带有文件路径“C:\ file.pdf”的pdf文件并将其写入outputStream。 最简单的方法是什么? @Controller public class ExportTlocrt { @Autowired private PhoneBookService phoneBookSer; private void setResponseHeaderTlocrtPDF(HttpServletResponse response) { response.setContentType(“application/pdf”); response.setHeader(“content-disposition”, “attachment; filename=Tlocrt.pdf” ); } @RequestMapping(value = “/exportTlocrt.html”, method = RequestMethod.POST) public void exportTlocrt(Model model, HttpServletResponse response, HttpServletRequest request){ setResponseHeaderTlocrtPDF(response); File f = new File(“C:\\Tlocrt.pdf”); try { OutputStream os = response.getOutputStream(); byte[] buf = new byte[8192]; InputStream […]

从org.w3c.dom.Node获取Xpath

我可以从org.w3c.dom.Node获取完整的xpath吗? 说当前节点指向一些xml文档中间的位置。 我想提取该元素的xpath。 我正在寻找的输出xpath是//parent/child1/chiild2/child3/node 。 节点xpath的父节点。 只需忽略具有表达式并指向同一节点的xpath。

MySQL选择范围内的坐标

我在我的数据库中有100 000个地址(即记录)。 它们中的每一个都有自己的坐标(纬度和经度)。 现在,考虑到用户的地理位置(纬度和经度),我想在地图上仅显示5英里范围内的地址(使用Google maps v3 API)。 这意味着通常只需要在10万个地址中显示5或6个地址。 一种解决方案可以是检索所有记录并在Java中应用公式来计算每个地址的距离,并仅在它在范围内时显示它。 这将浪费处理能力,因为当我只需要在地图上显示5或6个记录时,我需要检索所有记录。 如何在数据库端(MySQL)解决此问题,以便仅返回5英里范围内的地址?

嵌套的Java 8并行forEach循环表现不佳。 这种行为有望吗?

注意:我已经在另一个SOpost中解决了这个问题 – 在嵌套的Java 8并行流动作中使用信号量可能是DEADLOCK。 这是一个错误吗? – 但是这篇文章的标题表明问题与使用信号量有关 – 这有点分散了讨论的注意力。 我正在创建这个,以强调嵌套循环可能有性能问题 – 虽然这两个问题可能是一个共同的原因(也许是因为我花了很多时间来弄清楚这个问题)。 (我不认为它是重复的,因为它强调另一种症状 – 但如果你只是删除它)。 问题:如果你嵌套两个Java 8 stream.parallel()。forEach循环并且所有任务都是独立的,无状态的等等 – 除了被提交到公共FJ池 – 然后在并行循环内嵌套并行循环执行得更差而不是在并行循环内嵌套顺序循环。 更糟糕的是:如果同步包含内循环的操作,您将获得DEADLOCK。 演示性能问题 如果没有“同步”,您仍然可以观察到性能问题。 您可以在以下url找到演示代码: http : //svn.finmath.net/finmath%20experiments/trunk/src/net/finmath/experiments/concurrency/NestedParallelForEachTest.java (有关更详细的说明,请参阅JavaDoc)。 我们的设置如下:我们有一个嵌套的stream.parallel()。forEach()。 内环是独立的(无状态,无干扰等 – 除了使用公共池之外)并且在最坏的情况下总共消耗1秒,即如果是顺序处理的话。 外循环的一半任务在该循环之前消耗10秒。 在该循环之后,一半消耗10秒。 因此,每个线程总共消耗11秒(最坏情况)。 *我们有一个布尔值,允许将内部循环从parallel()切换到sequential()。 现在:将24个外循环任务提交到具有并行性的池8我们预计24/8 * 11 =最多33秒(在8核或更好的机器上)。 结果是: 内部顺序循环:33秒。 内部并行循环:> 80秒(我有92秒)。 问题:你能证实这种行为吗? 这是人们对框架的期望吗? (我现在更加小心,声称这是一个错误,但我个人认为这是由于ForkJoinTask的实现中的一个错误。备注:我已将此发布到并发兴趣(请参阅http:// cs.oswego.edu/pipermail/concurrency-interest/2014-May/012652.html ),但到目前为止我没有得到确认)。 certificate了僵局 以下代码将为DEADLOCK // Outer […]

使用servlet重定向请求并且“setHeader”方法不起作用

我是servlet开发的新手,我正在阅读一本电子书,发现我可以使用重定向到另一个网页 setHeader(“Location”, “http://www.google.com”) 但这不起作用,因为我已将此代码编写为: import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class ModHelloWorld extends HttpServlet{ public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException{ // response.addHeader(“Location”, “http://www.google.com”); response.setHeader(“Location”, “http://www.google.com”); response.setContentType(“text/html”); PrintWriter pw = response.getWriter(); pw.println(“Modified Hello World”); pw.println(“”); //getInitParameter function reads the contents ot init-param elements. pw.println(getInitParameter(“message”)); pw.println(“”); pw.println(“”); pw.close(); } } 我已经使用我的程序检查了标题以获取网页的标题,如下所示: import java.net.*; import […]

在Tomcat中自动检测URI编码

我有一个运行Apache Tomcat 6.x的实例,我想让它解释传入URL的字符集比默认行为更加智能。 特别是,我想实现以下映射: So%DFe => Soße So%C3%9Fe => Soße So%DF%C3%9F => (error) 我想要的bevavior可以被描述为“尝试将字节流解码为UTF-8,如果它不起作用则假设ISO-8859-1”。 在这种情况下,仅使用URIEncoding配置不起作用。 那么如何配置Tomcat以我想要的方式对请求进行编码? 我可能必须编写一个filter来接收请求(尤其是查询字符串)并将其重新编码为参数。 这是自然的方式吗?

多次安装:在单个pom.xml中安装文件

(请在回答之前至少阅读:这是一个临时措施 !不,我们不想设置本地存储库管理器并手动运行脚本) 我们有一个带有一些依赖项的遗留项目,我们有一个本地副本,包括source和javadoc,并且已被certificate在生产中运行良好,但在Central中没有相同的质量。 我们想要使用我们已经拥有的那些jar子。 我发现我可以手动运行一个适当复杂的mvn install:install-file命令来获取本地机器的存储库中注入的工件,但是我想让它作为我们各种模块的普通maven构建的一部分工作。 鉴于我有一个包含多个jar的空白模块,每个需要使用install:install-file插入, 我应该如何在我的pom.xml中执行此操作以完全符合正常的Maven构建? 或者我可以只附加多个jar作为模块的输出,并以某种方式附加javadoc和源代码)? (并且,请不要提交关于提交到中央或设置本地存储库管理器的建议。这是一个临时解决方案,直到我们有机会升级到更新版本的依赖项)