草庐IT

map-files

全部标签

java - 在 map 中存储大量字符串的最有效内存方法是什么?

我想在Map中存储大量字符串,所以MagicObjects可以快速访问。此Map的条目太多,内存已成为瓶颈。假设MagicObjects无法优化,对于这种情况,我可以使用的最有效的map类型是什么?我目前正在使用以下内容:gnu.trove.map.hash.TCustomHashMap 最佳答案 如果您的key足够长并且有很多足够长的通用前缀,那么您可以使用trie来节省内存。(前缀树)数据结构。thisquestion的答案指向trie的几个Java实现。 关于java-在map中存

java - Jenkins 管道和 java.nio.file.* 方法的问题

我正在尝试使用java.nio.file.*中的方法在Jenkins管道中执行一些基本文件操作。无论代码存在于哪个节点block,代码都在主节点上执行。在管道中,我已经验证了各种节点block是正确的——它们唯一地标识特定节点。但是,pathExists(以及其他移动、复制或删除文件的代码)始终在主节点上执行。知道发生了什么或如何解决它吗?importjava.nio.file.*StringslavePath='C:\\Something\\only\\on\\slave\\node'StringmasterPath='D:\\Something\\only\\on\\master\

java - Spring WebFlux : Serve files from controller

来自.NET和Node我真的很难弄清楚如何将这个阻塞的MVCController转移到一个非阻塞的WebFlux注释Controller?我理解了这些概念,但未能找到合适的异步JavaIO方法(我希望它返回Flux或Mono)。@RestController@RequestMapping("/files")publicclassFileController{@GetMapping("/{fileName}")publicvoidgetFile(@PathVariableStringfileName,HttpServletResponseresponse){try{Filefile=ne

java - Java读写XML数据文件报错"Premature end of file"

我一直在使用JDOM库通过JavaServlet读写XML文件。问题是,当我使用AJAX向读取和写入XML文件中的数据的servlet发送许多请求时,很多时候它无法显示错误:文件过早结束。我怎样才能将所有这些读/写同步到文件或者有没有其他方法可以防止这些问题?如果需要更多详细信息,请告诉我。在这种情况下使用线程会有什么好处吗?非常感谢! 最佳答案 两种可能的解决方案是:将您的文件写入thename.xml.part,然后在完成/关闭后重命名为thename.xml,这使得写入更接近于原子性——只要确定完成,读者就无法读取它它仅查找“

java - 你能推荐一个用于商业用途的 map API 吗?

我的要求是能够打印许多节点之间的路线,能够查询节点之间的距离以获得最佳路线计算,并在map上显示自定义图标。就道路和街道而言,拥有准确的map来源非常重要。我调查过公开的街道map,但恐怕并不完全准确。任何有关商业库/API的建议都将不胜感激(只要它使用起来直观并且不会在功能方面锁定您)出于调查目的,我开始使用GoogleMapsAPI。我会在内部使用最终应用程序并且会付费(所以这意味着如果我要使用谷歌地图,我会为他们的商业许可付费,这是一笔不小的数目。而且我只需要选定区域的map,开始在北欧)如果有一个mapAPI可以很容易地集成到基于Spring-MVC的系统中(因此是基于Java

java - 如何从 hibernate 查询中获取 java.util.Map?

我想知道从hibernate查询中获取map数组的最佳方法是什么。Google表示要迭代query.list(),并将对象创建/放入空映射数组。我想会有一些优雅而有效的方法来做到这一点。有人能给我点主意吗? 最佳答案 参见HibernateDocumentation-15.6.Theselectclause:您可以使用as为选定的表达式分配别名:selectmax(bodyWeight)asmax,min(bodyWeight)asmin,count(*)asnfromCatcat这在与选择新map一起使用时最有用:selectne

java - 在 Rhino 中访问 java map 和列表作为 JavaScript 对象

有没有办法在Rhino中以JavaScript对象的形式访问Java映射和列表?我有一个map,它只包含其他map和基元和字符串的列表,我想将它传递给Rhino脚本并对其执行一些操作,然后将修改后的对象返回给Java-但由于它们是java.util.Map和java.util.List对象,我不能使用标准的JavaScript关联数组语法。即:fooMap.get("keyName")会工作,但是fooMap.keyName和fooMap["keyName"]不会。我不知道是否有特定于Rhino的方法来执行此操作,或者是否有一些转换/转换实用程序可以提供帮助。CommonsBeanUt

java - File.length() 在 Java 中返回不正确的值

在文件对象上调用.length()时,超过2GB的文件返回不正确的值。这是在tomcat容器中运行的Web应用程序中发生的。例如,Windows报告为2,083,344,714字节的文件从Java返回为1887961088。以下是环境细节:jdk1.6.0_24(64位)JavaJotSpot(TM)64位服务器虚拟机(内部版本17.0-b17,混合模式)Tomcat6.0.29window服务器2008r2所以我立即怀疑与32位虚拟机有关,但一切似乎都在64位中运行。我完全被难住了,任何帮助将不胜感激,如果只是帮助开发一些测试以查看问题是否与以某种方式在32模式下运行的东西有关..编

java - 分析堆转储,Map#size() 不是一个函数?

得到这个奇怪的错误:javax.script.ScriptException:sun.org.mozilla.javascript.internal.EcmaError:TypeError:size不是一个函数,它是空的。(#1)在VisualVM上分析堆转储并运行此OQL查询时:select{map:x}fromjava.util.concurrent.ConcurrentHashMapxwherex.size()问题出在where子句上,虽然Map显然有一个size方法,但不知何故它不起作用。 最佳答案 @ruakh的回答非常好

java - @RequestMapping 与 "params"在不同类中的相同 URL 导致 "IllegalStateException: Cannot map handler"在 JUnit 与 SpringJUnit4ClassRunner

我执行重构并将Controller拆分为2个Controller:@RequestMapping(value="/graph.htm",method=RequestMethod.POST,params="first")在第一个Controller中:@RequestMapping(value="/graph.htm",method=RequestMethod.POST,params="second")在第二个Controller中,所以这些注释位于不同的文件中。当我构建和使用项目时,一切都很好(我将inputHTML标记放在我的表单中,名称不同:first和second)。但是当我尝试