Annotations used for configuring DAO or Repository classes:-
Data Access Objects (DAOs) or repositories provide exception translation is to
use the @Repository annotation. This annotation also allows the component
scanning support to find and configure your DAOs and repositories without having
to provide XML configuration entries for them.
@Repository
public class SomeMovieFinder implements MovieFinder {
// ...
}
Any DAO or repository implementation will need to access to a persistence resource, depending on the persistence technology used; for example, a JDBC-based repository will need access to a JDBC DataSource; a JPA-based repository will need access to an EntityManager. The easiest way to accomplish this is to have this resource dependency injected using one of the @Autowired,, @Inject, @Resource or @PersistenceContext annotations.
Below Example show for JDBC support. You would have the DataSource injected into an initialization method where you would create a JdbcTemplate and other data access support classes like SimpleJdbcCall etc using this DataSource.
@Repository
public class JdbcMovieFinder implements MovieFinder {
private JdbcTemplate jdbcTemplate;
@Autowied
public void init(DataSource dataSource) {
this.jdbcTemplate = new JdbcTemplate(dataSource);
}
// ...
}