@Target(value=TYPE) @Retention(value=RUNTIME) @Documented @Import(value=org.springframework.boot.autoconfigure.domain.EntityScanPackages.Registrar.class) public @interface EntityScan
Using @EntityScan
will cause auto-configuration to:
packages scanned
for JPA entities.SessionFactory
.initial entity set
used with Spring Data
MongoDB
,
Cassandra
and
Couchbase
mapping contexts.
One of basePackageClasses()
, basePackages()
or its alias
value()
may be specified to define specific packages to scan. If specific
packages are not defined scanning will occur from the package of the class with this
annotation.
EntityScanPackages
Modifier and Type | Optional Element and Description |
---|---|
Class<?>[] |
basePackageClasses
Type-safe alternative to
basePackages() for specifying the packages to
scan for entities. |
String[] |
basePackages
Base packages to scan for entities.
|
String[] |
value
Alias for the
basePackages() attribute. |
@AliasFor(value="basePackages") public abstract String[] value
basePackages()
attribute. Allows for more concise annotation
declarations e.g.: @EntityScan("org.my.pkg")
instead of
@EntityScan(basePackages="org.my.pkg")
.@AliasFor(value="value") public abstract String[] basePackages
value()
is an alias for (and mutually
exclusive with) this attribute.
Use basePackageClasses()
for a type-safe alternative to String-based
package names.
public abstract Class<?>[] basePackageClasses
basePackages()
for specifying the packages to
scan for entities. The package of each class specified will be scanned.
Consider creating a special no-op marker class or interface in each package that serves no purpose other than being referenced by this attribute.