2015-12-02 3 views
2

Я использую пример Spring JDBCTemplate + Java. В этом проекте мне нужно многократно использовать код ниже в моих классах StudentDetailsLoader, UserDetailsLoader, AdminDetailsLoader и VendorDetailsLoader и во многих классах для загрузки соответствующих классов классов.Как использовать тот же экземпляр класса ClassPathXmlApplicationContext в целом приложении?

ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml"); 

Есть ли какой-либо способ, который мы просто создаем в одном месте и называем его экземпляром одноэлементного места, где нам нужно? Пожалуйста, направляйте.

+1

Используйте какой-то статический держатель для него. Однако, как правило, все ваше приложение будет жить в контексте. Ни одна другая часть, кроме вашего метода 'main', не нуждается в прямом доступе к' ApplicationContext'. –

+0

Вы отметили 'spring-mvc'. Я предполагаю, что вы работаете через контейнер Servlet. Вам очень мало нужно иметь доступ к «ApplicationContext». –

ответ

1

Создание Bean и просто вызвать экземпляр бина

public class AppContext { 
    public static ApplicationContext getAppContext(){ 
     return new ClassPathXmlApplicationContext("applicationContext.xml"); 
    } 
} 

боба

<bean id="appContext" class="com.common.rest.AppContext" />