Exercise 2: Implementing Dependency Injection
Scenario:
In the library management application, you need to manage the dependencies between the BookService and
BookRepository classes using Spring's IoC and DI.
SOLUTION:
[Link]:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="[Link]
xmlns:xsi="[Link]
xsi:schemaLocation="
[Link]
[Link]
<bean id="bookRepository"
class="[Link]"/>
<bean id="bookService"
class="[Link]">
<property name="bookRepository"
ref="bookRepository"/>
</bean>
</beans>
[Link]:
package [Link];
public class BookRepository {
public String getBook() {
return "Spring Framework";
}
}
[Link]:
package [Link];
import [Link];
public class BookService {
private BookRepository bookRepository;
public void setBookRepository(BookRepository bookRepository) {
[Link] = bookRepository;
}
public void displayBook() {
[Link]("Book Name: " + [Link]());
}
}
[Link]:
package [Link];
import [Link];
import [Link];
import [Link];
public class MainApp {
public static void main(String[] args) {
ApplicationContext context =
new ClassPathXmlApplicationContext("[Link]");
BookService service =
[Link]("bookService", [Link]);
[Link]();
}
}
OUTPUT: