我用javac命令行查看了我的编译代码,每当我使用String运算符+运算符时,我就会看到,编译后的代码被StringBuilder的append()方法替换.现在我认为使用StringBuilder和String连接具有相同的性能,因为它们具有相似的字节码,是否正确?
我正在尝试编写一个使用Spring Data从MongoDB获取数据的访问层类,但我有以下问题:我有以下界面:
public interface BlogDataRepository extends MongoRepository<Article, String> {
public Article findArticleByName(String name);
}
Run Code Online (Sandbox Code Playgroud)
和访问层类:
@EnableAutoConfiguration
public class BlogDataAccessLayer {
@Autowired
private BlogDataRepository dataRepository;
...
}
Run Code Online (Sandbox Code Playgroud)
最后一个主要课程:
@EnableAutoConfiguration
public class Test implements CommandLineRunner {
public static void main(String[] args) {
SpringApplication.run(Test.class, args);
}
public void run(String... args) throws Exception {
BlogDataAccessLayer layer = new BlogDataAccessLayer();
Article article = new Article("test", "first article");
layer.addArticle(article);
}
}
Run Code Online (Sandbox Code Playgroud)
每次我试图运行应用程序,我收到了NullPointerExeption来自dataRepository位于BlogDataAccessLayer.
我不明白为什么dataRepository不自动装配.如果我搬进dataRepository …