Java Spring@Repository@文档不是必需的吗?
我有一个spring启动应用程序,并连接到Mongo DB。 我知道大多数文档或博客都说示例代码应该是这样的:Java Spring@Repository@文档不是必需的吗?,java,spring,spring-boot,spring-data-mongodb,spring-annotations,Java,Spring,Spring Boot,Spring Data Mongodb,Spring Annotations,我有一个spring启动应用程序,并连接到Mongo DB。 我知道大多数文档或博客都说示例代码应该是这样的: @Repository public interface ProductRepository extends MongoRepository<Product, String> { } @Document public class Product { private String id; private String name; private i
@Repository
public interface ProductRepository extends MongoRepository<Product, String> {
}
@Document
public class Product {
private String id;
private String name;
private int price;
}
@存储库
公共接口ProductRepository扩展了MongoRepository{
}
@文件
公共类产品{
私有字符串id;
私有字符串名称;
私人int价格;
}
但我发现即使我删除了@Repository和@Document注释。应用程序仍然可以正常启动。Spring仍然可以知道ProductRepository是Springbean,还可以知道CRUDProduct
collection
那么,添加@Repository和@Document不需要这些吗?或者添加或不添加有什么区别吗?无需添加
Spring可以找到它,因为您扩展了MongoRepository
接口,并在其类型中添加了Product
@Repository
无论如何都是有用的,例如,如果您创建一个自定义存储库
@Document
也是,如果您想指定自定义属性值,例如集合名..注释@Repository
将类注册为Springbean,使其可自动编译。Spring数据不使用注释,而是通过扩展repostory类提供功能,如JpaRepository
或MongoRepository