说properties运行JAR最佳的人在执行中使用的文件属于其中是否正确META-INF?这个概念是正好与标准的目录结构指定的Maven。
假设需要这种结构,如何properties从中加载文件META-INF?
thufir@doge:~/NetBeansProjects/json_parser$
thufir@doge:~/NetBeansProjects/json_parser$ java -jar build/libs/json_parser-all.jarAug 18, 2017 6:44:24 AM net.bounceme.doge.json.Main main
INFO: starting
Aug 18, 2017 6:44:24 AM net.bounceme.doge.json.Main run
INFO: actually
Aug 18, 2017 6:44:24 AM net.bounceme.doge.json.PropertiesReader tryGetProps
INFO: properties
Aug 18, 2017 6:44:24 AM net.bounceme.doge.json.PropertiesReader getProps
INFO: properties
Exception in thread "main" java.lang.NullPointerException
at java.util.Properties$LineReader.readLine(Properties.java:434)
at java.util.Properties.load0(Properties.java:353)
at java.util.Properties.load(Properties.java:341)
at net.bounceme.doge.json.PropertiesReader.getProps(PropertiesReader.java:26)
at net.bounceme.doge.json.PropertiesReader.tryGetProps(PropertiesReader.java:16)
at net.bounceme.doge.json.Main.run(Main.java:18)
at net.bounceme.doge.json.Main.main(Main.java:12)
thufir@doge:~/NetBeansProjects/json_parser$
thufir@doge:~/NetBeansProjects/json_parser$ jar tf build/libs/json_parser-all.jarMETA-INF/ …Run Code Online (Sandbox Code Playgroud) 我无法从嵌入的文档中检索地址字段。我还没有看到 3.4 MongoDB 驱动程序的任何解决方案。
System.out.println("Selecting Person ");
MongoCollection<Document> collection = mdb.getCollection("Person");
MongoCursor<Document> cursor = collection.find().iterator();
try {
while (cursor.hasNext()) {
Document temp_person_doc=cursor.next();
Document temp_address_doc=temp_person_doc.get("address");
String houseNo=temp_address_doc.getString("houseNo");
}
} finally {
cursor.close();
}
Run Code Online (Sandbox Code Playgroud)
这是文档结构。
{
"_id" : "5aae9920982f271ba4b08735",
"firstName" : "homer",
"surname" : "simpson",
"address" : {
"houseNo" : 742,
"address" : "evergreen terrace",
"city" : "springfield",
}
}
Run Code Online (Sandbox Code Playgroud) 我想测试我的控制器,并使用以下方法对其进行测试:
package spittr.web;
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.view;
import static org.springframework.test.web.servlet.setup.MockMvcBuilders.standaloneSetup;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import org.junit.Test;
import org.mockito.Mockito;
import org.springframework.test.web.servlet.MockMvc;
import org.springframework.web.servlet.view.InternalResourceView;
import spittr.data.Spittle;
import spittr.data.SpittleRepository;
public class SpittleControllerTest {
@Test
public void shouldShowRecentSpittles() throws Exception {
List<Spittle> expectedSpittles = createSpittleList(20);
SpittleRepository mockRepository = Mockito.mock(SpittleRepository.class);
Mockito.when(mockRepository.findSpittles(Long.MAX_VALUE, 20))
.thenReturn(expectedSpittles);
SpittleController controller = new SpittleController(mockRepository);
MockMvc mockMvc = standaloneSetup(controller)
.setSingleView(
new InternalResourceView("/WEB-INF/views/spittles.jsp"))
.build();
mockMvc.perform(get("/spittles"))
.andExpect(view().name("spittles"))
.andExpect(model().attributeExists("spittleList"))
.andExpect(model().attribute("spittleList", hasItems(expectedSpittles.toArray())));
}
private List<Spittle> createSpittleList(int count) {
List<Spittle> spittles = new …Run Code Online (Sandbox Code Playgroud) 我有一个包含多个模块的项目。每个模块都有自己的logback.xml。他们的附加程序是滚动文件。如何在每个输出日志文件的开头添加特定的表达式?
如果我org.junit.Test在运行 JUnit 时导入,它会给我一个错误,如“未找到 Test Runner JUnit 5 的测试”。
相反,如果我导入,org.junit.jupiter.api.Test那么我可以运行 JUnit 测试。