自定义帐户存储库如何成为没有任何注释的bean?

时间:2017-04-23 07:43:56

标签: java spring

我为我的春季启动应用程序定制了弹簧安全性。

我使用自定义帐户存储库:

import org.springframework.data.jpa.repository.JpaRepository;
import com.boot.cut_costs.config.security.CustomUserDetails;

public interface AccountRepository extends JpaRepository<CustomUserDetails, String>{
    public CustomUserDetails findByUsername(String username);
}

如您所见,我没有使用任何注释。但在其他类中,我可以作为bean访问它?这怎么可能 ?

2 个答案:

答案 0 :(得分:1)

当你在其他类上面的root包中使用spring boot和你的main应用程序类时,将自动扫描和检测bean类,你可以看一下here

  

@SpringBootApplication注释等同于使用   @Configuration@EnableAutoConfiguration@ComponentScan。   此外,@EnableAutoConfiguration注释隐式定义了一个基础   某些项目的“搜索包”。

答案 1 :(得分:1)

查看此注释@EnableJpaRepositories。您可能正在将其用作@Configuration类之一的类级别注释。

来自docs

  

启用JPA存储库的注释。默认情况下,将扫描Spring Data存储库的带注释配置类的包。

示例:

@Configuration
@EnableJpaRepositories(basePackages = {"xxx.xxx.xxx.core.dao"})
@EnableTransactionManagement
public class DatabaseConfig{

}