java web的 怎么加载spring
3个回答
展开全部
spring在web环境中,java代码里需要得到ApplicationContext; 根据前期配置的不同,有两种方式:
方式一,spring加载放到web.xml中配置:
[html] view plain copy print?
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
则得到ApplicationContext用如下方式:
[java] view plain copy print?
//在struts中需要实现ServletRequestAware类,便可得到request对象
ServletContext s = ServletActionContext.getRequest().getSession().getServletContext();
ApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(s);
java代码中调用 ctx.getBean(String beanId);
方式二,直接声明:
[java] view plain copy print?
public class BeanManager {
private static ApplicationContext context = new ClassPathXmlApplicationContext("appcontext.xml") ;
public static Object getBean(String beanId) {
return context.getBean(beanId);
}
}
在web.xml中写一个servlet,自动启动,init方法中调用一下BeanManager,为的是在Web应用启动的时候就让Spring加载bean配置文件,否则会在第一次调用BeanManager的时候加载,影响第一次访问速度。
[java] view plain copy print?
init() throws ServletException {
BeanManager bm = new BeanManager();
}
在java代码中使用 BeanManager.getBean(String beanId); 来获得bean实例。
方式一,spring加载放到web.xml中配置:
[html] view plain copy print?
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
则得到ApplicationContext用如下方式:
[java] view plain copy print?
//在struts中需要实现ServletRequestAware类,便可得到request对象
ServletContext s = ServletActionContext.getRequest().getSession().getServletContext();
ApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(s);
java代码中调用 ctx.getBean(String beanId);
方式二,直接声明:
[java] view plain copy print?
public class BeanManager {
private static ApplicationContext context = new ClassPathXmlApplicationContext("appcontext.xml") ;
public static Object getBean(String beanId) {
return context.getBean(beanId);
}
}
在web.xml中写一个servlet,自动启动,init方法中调用一下BeanManager,为的是在Web应用启动的时候就让Spring加载bean配置文件,否则会在第一次调用BeanManager的时候加载,影响第一次访问速度。
[java] view plain copy print?
init() throws ServletException {
BeanManager bm = new BeanManager();
}
在java代码中使用 BeanManager.getBean(String beanId); 来获得bean实例。
展开全部
使用监听器来注册spring
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!-- 默认配置在WEB-INF目录下 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:/applicationContext.xml</param-value> <!-- <param-value>/WEB-INF/spring*.xml</param-value> -->
</context-param>
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2016-08-28
展开全部
请直接使用 springmvc 。。。。。。。。官网有包、文档
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询