Annotation based Configuration in spring

This is 15 of 16 parts of tutorial series

Tutorial Content: Spring tutorial for beginners

There are two ways via which you can inject dependency in spring

  1. By configuring XML.
  2. By using annotation.

In all our previous posts,we have injected dependency by configuring XML file but instead of doing this,we can move the bean configuration into the component class itself by using annotations on the relevant class, method, or field declaration.

You might think what if you have done both i.e.used annotations and XML both.In that case,XML configuration will override annotations because XML configuration will be injected after annotations.

Now annotations based configuration is turned off by default so you have to turn it on by entering into spring XML file.

ApplicationContext.xml

Now you are ready to use annotations in your code.Let us discuss few important annotations in spring

@Required:

 The @Required annotation applies to bean property setter methods.

@Autowired:

The @Autowired annotation can apply to bean property setter methods, non-setter methods, constructor and properties.

 @Qualifier:

The @Qualifier annotation along with @Autowired can be used to remove the confusion by specifiying which exact bean will be wired.

 JSR 250 Annotations: 

Spring supports JSR-250 based annotations which include @Resource, @PostConstruct and @PreDestroy annotations.


import_contacts

You may also like:

Related Posts

  • 24 June

    No qualifying bean of type in Spring or Spring Boot

    Table of ContentsReason 1: You forgot to declare the bean itself.XML configurationJava configurationReason 2: You have not added package name to @ComponentScan. Reason 3: You have more than one candidate for autowiring In this post, we will see about an exception: No qualifying bean of type. Exceptions are least expected but you might get it […]

  • 17 June

    Spring XML configuration example

    Table of Contents1. Create a simple java maven project.2. Maven dependency3. Create Bean class4. ApplicationContext.xml5. Create SpringXMLConfigurationMain.java6. Run it In this post, we will see how to create Spring hello world XML based configuration example. Here are simple steps to create Spring XML configuration example. 1. Create a simple java maven project. 2. Maven dependency put […]

  • 15 June

    Injecting Prototype bean into a Singleton bean in Spring

    Table of ContentsProblemSolutionUsing Method injectionUsing ObjectFactoryUsing ApplicationContextAware In this post, we will see how to inject prototype bean scope into Singleton Instance in Spring. This is one of the most asked Spring interview questions. Problem When you inject prototype bean to singleton bean, prototype bean still behave like a singleton bean. Let’s understand this with […]

  • 15 June

    Circular dependencies in Spring

    Table of ContentsProblemSolutionRedesignSetter [email protected] with @Autowired [email protected] with @Autowired annotation In this post, we will discuss one of the most asked Spring interview questions. What happens if there are circular dependencies in Spring. Problem What if there are circular dependencies in Spring? For example: Class A requires an instance of Class B and Class B […]

  • 12 September

    Spring init-method and destroy-method example

    In this post, we will see about Spring init-method and destroy-method. When bean is instantiated or destroyed , there are some operations you may need to perform, so you can use init-method and destroy-method to call this methods while bean is being created or destroyed. Lets understand it with the help of simple example: For […]

  • 27 July

    Prefix “context” for element “context:component-scan” or “context:annotation-config” is not bound : Spring error

    When you are working on spring or spring mvc application, you may encounter below error message. org.xml.sax.SAXParseException: The prefix “context” for element “context:component-scan” is not bound . or org.xml.sax.SAXParseException: The prefix “context” for element “context:annotation-config” is not bound . This issue generally occurs when you do not include context namespace. For example: Lets say you have below […]

Comments

  1. awesome tutorial with useful working examples. thx for the great work! I learn Spring solely from these example.

  2. finally i learned the basics of Spring 🙂 in just a day! thanks for this very comprehensive tutorials 🙂 though i was hoping you'd have an example for the annotation based configurations.

Leave a Reply

Your email address will not be published. Required fields are marked *

Subscribe to our newletter

Get quality tutorials to your inbox. Subscribe now.