1) The
@Component
annotation marks a java class as a bean so the component-scanning mechanism of spring can pick it up and pull it into the application context. To use this annotation, apply it over class as below:@Component public class EmployeeDAOImpl implements EmployeeDAO { ... } |
2) The
@Repository
annotation is a specialization of the @Component
annotation with similar use and functionality. In addition to importing the DAOs into the DI container, it also makes the unchecked exceptions (thrown from DAO methods) eligible for translation into Spring DataAccessException
.
3) The
@Service
annotation is also a specialization of the component annotation. It doesn’t currently provide any additional behavior over the @Component annotation, but it’s a good idea to use @Service over @Component
in service-layer classes because it specifies intent better.
4)
@Controller
annotation marks a class as a Spring Web MVC controller. It too is a @Component
specialization, so beans marked with it are automatically imported into the DI container. When you add the @Controller
annotation to a class, you can use another annotation i.e. @RequestMapping
; to map URLs to instance methods of a class.
No comments:
Post a Comment