一、SpringMVC带的有两种方式:
ModelMap,大概用法:
@RequestMapping(value = "method1")
public String imports(>
不用配置xml,直接java代码实现,参考代码如下:
public class GetApplicationContext {private static class ApplicationContextHolder {
// 单例变量
private static ApplicationContext AC = new FileSystemXmlApplicationContext(
"classpath:applicationContextxml");
}
// 私有化的构造方法,保证外部的类不能通过构造器来实例化。
private GetApplicationContext() {
}
// 获取单例对象实例
public static ApplicationContext getInstance() {
if (ApplicationContextHolderAC == null) {
ApplicationContextHolderAC = new FileSystemXmlApplicationContext(
"classpath:applicationContextxml");
}
return ApplicationContextHolderAC;
}
}
获取所有spring自动装配的bean:
<span style="font-size:18px;">//获取spring装配的bean个数GetApplicationContextgetInstance()getBeanDefinitionNames()length;
//逐个打印出spring自动装配的bean。根据我的测试,类名第一个字母小写即bean的名字
for(int i=0;i<33;i++){
Systemoutprintln( GetApplicationContextgetInstance()getBeanDefinitionNames()[i]);
}</span>
然后通过下面的代码获取到spring注解装配的bean供自己使用:
<span style="font-size:18px;">StorageReturnService ossService = (StorageReturnService) GetApplicationContextgetInstance()getBean("storageReturnServiceImpl");</span>在初始化时保存ApplicationContext对象
代码:
ApplicationContext ac = new FileSystemXmlApplicationContext("applicationContextxml");
acgetBean("beanId");
说明:这种方式适用于采用Spring框架的独立应用程序,需要程序通过配置文件手工初始化Spring的情况。
ApplicationContext context=new ClassPathXmlApplicationContext("classpath:applicationContextxml");
CustomerService customerService=(CustomerService)contextgetBean("customerService");
第一种方式:FileSystemXmlApplicationContext通过程序在初始化的时候,导入Bean配置文件,然后得到Bean实例:ApplicationContextac=newFileSystemXmlApplicationContext(applicationContextxml)acgetBean(beanName);第二种方式:WebApplicationContextUtil在B/S系统中,通常在webxml初始化bean的配置文件,然后由WebAppliCationContextUtil得到ApplicationContext例如:ApplicationContextctx=WebApplicationContextUtilsgetRequiredWebApplicationContext(ServletContextsc);ApplicationContextctx=WebApplicationContextUtilsgetWebApplicationContext(ServletContextsc);其中servletContext sc 可以具体 换成 servletgetServletContext()或者 thisgetServletContext()或者requestgetSession()getServletContext();另外,由于spring是注入的对象放在ServletContext中的,所以可以直接在ServletContext取出WebApplicationContext 对象:WebApplicationContext webApplicationContext = (WebApplicationContext) servletContextgetAttribute(WebApplicationContextROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE);下面几种方式没有用过,
spring xml中定义
<!--spring 工具类-->
<bean id="springContextUtil" class="comskylinepubutilsSpringContextUtil"/>
SpringContextUtil的代码如下
package comskylinepubutils;
import orgspringframeworkbeansBeansException;
import orgspringframeworkcontextApplicationContext;
import orgspringframeworkcontextApplicationContextAware;
import javautilLocale;
/
Spring 获取 bean工具类
Author: skyline{>
以上就是关于spring mvc里,jsp中怎么获取bean全部的内容,包括:spring mvc里,jsp中怎么获取bean、如何用spring获取bean、如何获取spring 注解的bean等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)