Tag: 嵌套

如何使用Spring将属性文件中的嵌套键值对加载到Java对象中?

我了解如何使用Spring和PropertyPlaceholderConfigurer在我们知道期望的属性时加载.properties文件,并使用@Value将这些值存储到变量或某个对象中。 但是,当密钥可以变化时,如何让Spring加载具有嵌套键,值对的属性文件? 例如,假设我有以下car.properties文件: Chevy=Corvette:String,1234567890:long,sportsCar:String Honda=Odyssey:String,2345678910:long,minivan:String Ford=F350:String,4567891011:long,truck:String 其中属性文件的每一行都有一个键是make,后面是三个嵌套的键值对,即一个用于模型,一个用于VIN,一个用于车辆类型,即: =:,:,: 我正在使用这种结构,因为将来会添加未来的车辆,我不想更改我的底层Java代码。 并且假设我想使用这些车辆属性生成一些关于车辆的随机数据以进行测试。 我如何使用Spring将属性文件的每一行加载为要存储在arraylist中的车辆值的集合? 我想我会有一个2D arraylist,其中每辆车都是“所有车辆”arraylist中的arraylist。 然后我会随机选择一个车辆arraylists来生成虚拟车辆数据。 无论如何,我认为我在正确的轨道上,但似乎无法弄清楚如何使用Spring加载我的嵌套键,值对。 有什么建议么? UPDATED context.xml对我有用: 顺便说一句,这是我正在使用的context.xml:

如何为Java 8分组函数形成的结果添加标签?

我目前有一节课, public class Person { private String country; private String age; private String name; } 以此Person类的列表作为参数, List 我设法使用Java 8 group by(集合)函数将它们分组到以下数据结构中: Map<String, Map<String, Set>> 例: USA={ 21= [ John, Peter. Andrew ], 22= [ Eric, Mark ] ] }, France = { etc…. 以下是我的function: public static Map<String, Map<String, Set>> getNestedMap(List persons) { return persons.stream().collect( groupingBy(Person::getCountry, […]

Java:将JSON结构反序列化为Map

我有一个JSON字符串,我想转换为Map结构,其中Object是基本类型的Java版本(即String,Int,Double),Map。 或者一份清单。 我用于测试的示例字符串是: “{\”cases\”:[{\”documents\”:[{\”files\”:[{\”name\”:\”a.pdf\”}]}]}]}” 这应该是一个案例数组,每个案例都有一个文档数组,每个文档都有一个文件数组,每个文件都有一个名称 我试过Google的Gson,但是 Gson gson = new Gson(); List<Map> results = gson.fromJson(dictString, List.class); 给我: com.google.gson.JsonParseException: The JsonDeserializer com.google.gson.DefaultTypeAdapters$CollectionTypeAdapter@561777b1 failed to deserialize json object {“cases”:[{“documents”:[{“files”:[{“name”:”a.pdf”}]}]}]} given the type interface java.util.List 我试过jackson,但是 List<Map> results = (List<Map>) new ObjectMapper().readValue(dictString, List.class); 给我: org.codehaus.jackson.map.JsonMappingException: Can not deserialize instance of java.util.List out of START_OBJECT token at [Source: java.io.StringReader@1c5aebd9; […]

在Android中使用XMLPullParser的XML嵌套标记很困难

我正在尝试获取名称并阅读type =“alpha”。 我是初学者,英语不是我的第一语言,请原谅我。 我已经阅读过DOM,SAX,Simple,其他StackOverflowpost,其他样本,但我不明白,并希望在这种情况下了解XMLPullParser。 以下示例XML: Title Name1 Name2 我读过这个: http : //developer.android.com/training/basics/network-ops/xml.html并且示例代码适用于上面的示例XML而没有标签来获取名称和记录日期。 private List readFeed(XmlPullParser parser) throws XmlPullParserException, IOException { List entries = new ArrayList(); parser.require(XmlPullParser.START_TAG, ns, “feed”); while (parser.next() != XmlPullParser.END_TAG) { if (parser.getEventType() != XmlPullParser.START_TAG) { continue; } if (parser.getName().equals(“entry”)) { entries.add(readEntry(parser)); } else { skip(parser); } } return entries; } 我尝试使用标签(但不起作用)的是: private […]

JUnit 5 @Nested注释的目的是什么?

在JUnit 5中,有一个新的注释: @Nested 。 我理解它是如何工作的,我理解为什么我们使用嵌套类,我只是不明白为什么我们需要在测试中使用嵌套测试类。

如何使用枚举与分组和子组层次结构/嵌套

我有一个名为Example enum “类”如下: enum Example { //enums belonging to group A: enumA1, enumA2, enumA3, //enums belonging to group B: enumB1, enumB2, enumB3, //enums belonging to group C: enumC1, enumC2, enumC3; } 对我的项目来说,重要的是我使用的所有枚举都属于Example (因为这是类的构造函数中的参数)。 如何使用enum层次结构/嵌套来实现以下目的: 测试enum是否属于组A,B或C的方法。例如,像Example.enumA1.isGroupBelonging(Group.A)或isGroupBelonging(Example.enumA1,Group.A)这样的isGroupBelonging(Example.enumA1,Group.A)方法将返回true 。 能够对A , B和C组的子组做同样的事情。 例如,组A可能具有子组a , b和c 。 然后我想要一个方法,例如Example.enumA1.isSubGroupBelonging(SubGroup.a) ,它是一个public boolean 。 一种方法来完成所有这些,而不需要一些精心设计的enum名称堵塞我的代码。 例如,能够在我的其他类中引用Example.enumA1而不需要使用像Example.enumA1(Group.A,SubGroup.a)或Example.enumA1.Group.A.SubGroup.a这样的引用它会很好。 Example.enumA1.Group.A.SubGroup.a

可以在Java中实例化静态嵌套类吗?

从Oracle的Java 教程中我发现了这个文本: 与类方法和变量一样,静态嵌套类与其外部类相关联。 和静态类方法一样,静态嵌套类不能直接引用其封闭类中定义的实例变量或方法 – 它只能通过对象引用来使用它们。 注意:静态嵌套类与其外部类(和其他类)的实例成员交互,就像任何其他顶级类一样。 实际上,静态嵌套类在行为上是一个顶级类,它已嵌套在另一个顶级类中以方便打包。 使用封闭的类名访问静态嵌套类: OuterClass.StaticNestedClass 例如,要为静态嵌套类创建对象,请使用以下语法: OuterClass.StaticNestedClass nestedObject = new OuterClass.StaticNestedClass(); 我认为不可能实例化一个静态类,所以我并不真正理解粗体句。 你知道这意味着什么吗?

如何使用嵌套的三角形

我需要在Java中使用嵌套的for循环来制作这样的三角形 ******** ******* ****** ***** **** *** ** * inheritance我的代码: for (int i=8; i>0; i–) { for (int j=0; j<i; j++) { System.out.print('#'); } System.out.println(""); } 我得到一个三角形但不是我想要的那个。 相反,我的三角形看起来像这样: ******** ******* ****** ***** **** *** ** *

Elasticsearch嵌套排序

我正在尝试在Elasticsearch中进行嵌套排序,但到目前为止还没有成功。 我的数据结构: { “_id” : 1, “authorList” : [ {“lastName”:”hawking”, “firstName”:”stephan”}, {“lastName”:”frey”, “firstName”:”richard”} ] } { “_id” : 2, “authorList” : [ {“lastName”:”roger”, “firstName”:”christina”}, {“lastName”:”freud”, “firstName”:”damian”} ] } 我想根据文件中第一作者的姓氏对文件进行排序。 使用的映射: “authorList” : { “type” : “nested”, “properties” : {“lastName”:{“type”:”keyword”}}} 使用SearchRequestBuilder(JAVA)排序: searchRequestBuilder.addSort( SortBuilders.fieldSort(“authorList.lastName”) .order(SortOrder.ASC) .sortMode(SortMode.MIN) .setNestedPath(“authorList”) ) 这可行,但不会给出想要的结果(例如,首先“叫卖”然后“罗杰”)。 我错过了什么吗? 有没有办法表明Elasticsearch访问数组authorList的index = 0? 是否有任何映射/规范化器分别索引数组的第一个条目?

如何打印素数到用户输入的整数?

大家下午好, 我目前正在尝试创建一个执行以下操作的程序: 开发一个代码,打印所有素数,直到用户输入的数字。 输出的一个例子: Enter an integer (2 or above): 19 The prime numbers up to you integer are: 2 3 5 7 11 13 17 19 不幸的是,还有一个需要满足的“要求”清单: 如果用户输入的数字低于2,则程序应打印一条消息,表明该数字无效,然后停止。 如果数字不能被除1和它本身之外的任何数字整除,则数字是素数。 对于这个程序,为了测试一个数字以查看它是否为素数,你应该尝试将数字除以从2到数字1的每个值,以查看它是否均匀分配。 例如: – 看5是否为素数:5不均匀分为2 5不均匀分为3 5不均匀分为4因此5是素数 – 看9是素数:9不均匀分为2 9除以3均为9因此9不是素数 该程序要求您编写嵌套循环(即循环内的循环)。 将使用一个循环从2到用户的数字进行计数,以便您可以测试这些数字中的每一个以确定它是否为素数。 对于这些数字中的每一个,x: 嵌套循环将检查从2到x-1的所有值,以查看x是否均匀划分。 您将需要使用布尔变量(也称为标志变量)来帮助您确定是否在屏幕上打印数字 上面的问题是关于我的代码到目前为止: import java.util。*; public class Something3 { public static void main(String[] […]