我刚刚开始我的基本Spring项目,并遇到了一些关于bean和自动装配的奇怪问题。
app.user.UserModelImpl中的字段存储库需要一个类型为'app.user.UserRepository'的bean。
UserModel.java
public interface UserModel {
List<User> findAll();
}
UserModelImpl.java
@Service
public class UserModelImpl implements UserModel {
@Autowired
private UserRepository repository;
@Override
public List<User> findAll() {
List<User> users = (List<User>) repository.findAll();
return users;
}
}
UserController.java
@RestController
public class UserController {
@Autowired
UserModel userModel;
@GetMapping("/")
public List findUsers(Model model)
{
System.out.println("HERE");
List<User> users = userModel.findAll();
return users;
}
}
UserRepository.java
@Component
public interface UserRepository extends JpaRepository<User, Long> {
}
Application.java
@SpringBootApplication(scanBasePackages={"app.user"})
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
所有这些文件都在一个名为user的程序包中。我是这个话题的新手,对于这是很简单还是很琐碎的事情,我感到抱歉。