2012-04-04 11 views
3

Ich habe eine spring.xml-Datei, in der alle Bean-Definitionen aufgelistet sind, wo ich alle Abhängigkeiten mit Beans aufgelistet, MessageSource, DataSource usw. angegeben habe. Auch habe ich eine Klasse ApplicationContext-Klasse, wo iam den Kontext verwendet, um alle zu erhalten Bohnen. Der Code ist ::Verwenden von ApplicationContext in Spring MVC.

package models; 

import org.springframework.context.ApplicationContext; 
import org.springframework.context.support.AbstractApplicationContext; 
import org.springframework.context.support.ClassPathXmlApplicationContext; 

public class ApplicationContextClass { 

    /** 
    * @param args 
    */ 
    public static void main(String[] args) { 
     // TODO Auto-generated method stub 
     AbstractApplicationContext context = new ClassPathXmlApplicationContext("Spring.xml"); 
     context.registerShutdownHook(); 
     ATTModel attmodel = (ATTModel) context.getBean("att"); 
     //ProjectModel project = (ProjectModel)context.getBean("project"); 
     //project.call1(); 
     attmodel.call(); 
     System.out.println(context.getMessage("insertiondone",null, "Default greeting",null)); 

    } 

} 

und ich habe Dao-Klasse, wo ein application verwendet wird JDBCtemplate verwandten bean zuzugreifen. Ich muss jetzt eine Web-Anwendung entwickeln, die Spring MVC verwendet, und ich muss diesen ApplicationContext verwenden. Wie kann ich diese ApplicationContext-Klassen in SpringMVC verwenden. Ich weiß, dass ich Applicationcontextlisteners verwenden muss, aber wo soll ich sie schreiben? Danke ..

Antwort

3

Sie haben zwei Möglichkeiten. In web.xml definieren Sie dies.

Und in Ihrem WEB-INF-Ordner fügen Sie yourapp-servlet.xml mit Ihrer Beans- und MVC-Konfiguration hinzu.

Anderen Weg ist. In web.xml definieren Sie dies.

<context-param> 
    <param-name>contextConfigLocation</param-name> 
    <param-value> 
     /WEB-INF/applicationContext.xml 
    </param-value> 
</context-param> 
<listener> 
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
</listener> 

Und zu Ihrem WEB-INF fügen Sie applicationContext.xml mit Ihren Beans hinzu.

Sie können diese Ansätze auch kombinieren.

Verwandte Themen