草庐IT

map-files

全部标签

java - 在顶级 map 上使用@JacksonInject 和@JsonCreator

使用Jacksonjson库,可以通过使用@JsonCreator反序列化对象,并给出表示输入json的“顶级”映射,如下所示:classMyClass{finalintfield;@JsonCreatorpublicMyClass(Mapmap){this.field=(int)map.get("theInt");}}甚至在静态工厂方法上:classMyClass{finalintfield;publicMyClass(inttheInt){this.field=theInt;}@JsonCreatorstaticMyClasscreate(Mapmap){returnnewMyCl

java - 使用 <> 通过匿名类创建 map

这个问题在这里已经有了答案:Doublebraceinitialisation(anonymousinnerclass)withdiamondoperator(4个答案)关闭9年前。在JDK1.7中我可以创建一个Collection让我们举个例子说一个HashMap像这样:privateHashMapmap=newHashMap();与钻石在最后。但是如果我创建这样的map:privatestaticfinalHashMapMAP=newHashMap(){{put("something","something");}};在钻石编译器上说:Cannotuse''''withanonym

java - JFileChooser.showSaveDialog : All files greyed out

我正在尝试使用JFileChooser获取要加载和保存的文件。openFileDialog()出现的对话框工作正常,但是当我使用saveFileDialog()方法时,对话框窗口的所有文件名都变灰了。使用或不使用FileFilter都会发生这种情况(我的示例包含一个以更好地展示我所看到的内容)。这里有一个最小的程序来说明:importjavax.swing.JFileChooser;importjavax.swing.JFrame;importjavax.swing.filechooser.FileNameExtensionFilter;publicclassTempextendsJF

java - 按值排序的 Map<K, V> 的前 N ​​个值

我有一个字符串列表。我想根据返回double的函数评估每个字符串。然后我想要前5个字符串,基于它们的计算值。如果少于5个,我想要全部(按顺序)。假设字符串是化合物,函数计算质量。该函数在计算上很昂贵;我需要对每个字符串进行一次评估。(不过,我只是在编造数据。)H2O=>18.5C12H11O22=>109.1HeNe=>32.0H2SO4=>54.37HCl=>19.114FeO3=>82.39Xe6=>281.9程序应返回按各自值顺序排列的前五个字符串。对于此样本数据:H20,HCl,HeNe,H2SO4,4FeO3.实际上,我真的不在乎顺序;我只需要任意顺序中最低的五个。我考虑过如

java - 在 Windows 上监听 "open file with my java application"事件

标题很乱,不知道怎么用几句话来解释:我有一个读取*.example文件的java应用程序。由于install4j,我还添加了一个文件关联,因此当用户双击任何扩展名为*.example的文件时,我的应用程序就会启动install4j似乎在args[]中发送文件路径,因此打开该文件并在我的应用程序中显示它应该很容易。但是如果应用已经在运行会怎样?我只能允许应用程序的一个实例,那么我怎么知道用户正在打开一个文件?我找到了这个:http://resources.ej-technologies.com/install4j/help/api/com/install4j/api/launcher/S

java - 如何配置 jdee `find-class-source-file` 以使用 Cassandra 源代码树?

我正在尝试为即将开始的Java项目安装Emacs+JDEE,但我无法让JDEE正常工作。我想解决的第一个问题是能够跳转到给定类名的源文件。我正在使用Cassandrasource作为我使用JDEE的Playground。我已经设置了一个新的Ubuntu12.04VM和Emacs23.3.1作为我的测试环境。我正在使用默认Ubuntu存储库中的openjdk-1.6并且JDEE似乎正在使用它。我下载了jdeetarball并将其解压到~/.emacs.d中。Cassandra源代码树被checkout到~/cassandra。我的~/.emacs.d/init.el包含以下内容:(set

java - org.hibernate.hql.internal.ast.QuerySyntaxException : is not mapped [from Team]

我正在开发小型SpringMVCCRUD应用程序。遇到一些奇怪的问题:配置类:packagesbk.spring.simplejc.config;importjava.util.Properties;importjavax.annotation.Resource;importjavax.sql.DataSource;importorg.springframework.context.annotation.Bean;importorg.springframework.context.annotation.ComponentScan;importorg.springframework.co

java - 如何使用AOP拦截File、FileReader、FileWriter、FileInputStream、FileOutputStream的构造函数?

我想拦截File、FileReader、FileWriter、FileInputStream和FileOutputStream的构造函数,并防止任何文件名包含“..”(以防止路径遍历攻击)或“\0”(以防止文件名空字符攻击)。关于如何使用SecurityManager做同样的事情,我还有另一个悬而未决的问题,但还没有人回答它,所以我希望这种替代方法能奏效。这是用于tomcat上的springwebapp。我知道我可以通过创建自己的SafeFile、SafeFileReader等类并修改代码以使用它们来手动执行此操作。但是,我们的代码中有960个地方使用了这些对象的构造函数,所以我宁愿避

Java泛型方法。为什么T被推导为Map?

考虑以下代码classMyClass{publicMyClass(Mapm){System.out.println("map");}publicMyClass(SortedMapm){System.out.println("sortedmap");}}publicclassTest{public>Test(Tt){newMyClass(t);}publicstaticvoidmain(String[]args){newTest(newTreeMap());}}它打印map.为什么是T推断为Map而不是SortedMap在public>Test(Tt)?有没有办法改变这种行为,以便为My

Java 流 : Combining two collections into a map

我有两个集合,一个仓库ID列表和一个小部件集合。小部件以不同的数量存在于多个仓库中:ListwarehouseIds;Listwidgets;这是一个类定义的例子:publicclassWidget{publicCollectiongetStocks();}publicclassStock{publicLonggetWarehouseId();publicIntegergetQuantity();}我想使用StreamsAPI创建一个Map,其中仓库ID是键,值是特定仓库中数量最少的Widget列表。因为多个小部件可能具有相同的数量,所以我们返回一个列表。例如,仓库111有5个Widg