在servlet中注入spring环境

  1. import java.io.IOException;
  2. import javax.servlet.ServletConfig;
  3. import javax.servlet.ServletException;
  4. import javax.servlet.http.HttpServlet;
  5. import javax.servlet.http.HttpServletRequest;
  6. import javax.servlet.http.HttpServletResponse;
  7. import org.springframework.web.context.support.SpringBeanAutowiringSupport;
  8. /**
  9. * Servlet implementation class AbstractServlet
  10. */
  11. public class AbstractServlet extends HttpServlet {
  12. private static final long serialVersionUID = 1L;
  13. /**
  14. * @see HttpServlet#HttpServlet()
  15. */
  16. public AbstractServlet() {
  17. super();
  18. // TODO Auto-generated constructor stub
  19. }
  20. public void init(ServletConfig config) throws ServletException {
  21. SpringBeanAutowiringSupport.processInjectionBasedOnServletContext(this,
  22. config.getServletContext());
  23. }
  24. /**
  25. * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
  26. * response)
  27. */
  28. protected void doGet(HttpServletRequest request,
  29. HttpServletResponse response) throws ServletException, IOException {
  30. }
  31. /**
  32. * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
  33. * response)
  34. */
  35. protected void doPost(HttpServletRequest request,
  36. HttpServletResponse response) throws ServletException, IOException {
  37. doGet(request, response);
  38. }
  39. }

只需要集成这个servlet即可。

null

时间: 2024-11-05 22:55:43

在servlet中注入spring环境的相关文章

非spring组件servlet、filter、interceptor中注入spring bean

问题:在filter和interceptor中经常需要调用Spring的bean,filter也是配置在web.xml中的,请问一下这样调用的话,filter中调用Spring的某个bean,这个bean一定存在吗?现在总是担心filter调用bean的时候,bean还没被实例化? 答案:因为spring bean.filter.interceptor加载顺序与它们在 web.xml 文件中的先后顺序无关.即不会因为 filter 写在 listener 的前面而会先加载 filter.最终得出

eclipse中配置spring环境

初识Spring框架 1.简单使用 eclipse中配置Spring环境,如果是初学的话,只需要在eclipse中引入几个jar包就可以用了, 在普通java project项目目录下,建一个lib文件夹,将常用的jar包导入,并Build Path. jar包资源下载:http://pan.baidu.com/s/1pKAP8gj 这样就可以快速进行Spring的简单学习了 2.正常使用 要使用Spring的完整功能还需要下载 Spring Tool Suite 与 完整版的 spring-f

java多线程中注入Spring对象问题

web应用中java多线程并发处理业务时,容易抛出NullPointerException. 原因: 线程中的Spring Bean没有被注入.web容器在启动时,没有提前将线程中的bean注入,在线程启动之前,web容器是无法感知的. 解决方案: 方法一.在声明成员变量的时候,将其定义为static的.(据说不可行) 方法二.将线程设置为主程序的内部类. 在外部类中注入bean,这样在内部类线程中就可以“共享”这个对象. 方法三.定义一个工具类,使用静态工厂方法通过getBean获得bean对

Java(多)线程中注入Spring的Bean

问题说明 今天在web应用中用到了Java多线程的技术来并发处理一些业务,但在执行时一直会报NullPointerException的错误,问题定位了一下发现是线程中的Spring bean没有被注入,bean对象的值为null. 原因分析 web容器在启动应用时,并没有提前将线程中的bean注入(在线程启动前,web容易也是无法感知的) 解决方案 方法有多种,网上也看到了不少. 1. 使用static声明变量 可参见 引用 http://blog.csdn.net/bjamosgavin/ar

在main方法中初始化spring环境,注入bean

public static void main(String[] args) { LOGGER.info("==启动APP日志队列程序=="); SpringUtils.getBean(UserAppLogConsumerListener.class); } 一开始我是使用自定义的spring工具类的getBean方法进行初始化,但是存在问题:配置文件中用有引用UserAppLogConsumerListener这个bean,导致报错expected single matching b

quartz的job中注入spring对象!

一般情况下,quartz的job中使用autowired注解注入的对象为空,这时候我们就要使用spring-quartz提供的AdaptableJobFactory类. 自定义一个类: [java] view plain copy public class JobFactory extends AdaptableJobFactory { @Autowired private AutowireCapableBeanFactory capableBeanFactory; @Override prot

在非spring组件中注入spring bean

1.在spring中配置如下<context:spring-configured/>     <context:load-time-weaver aspectj-weaving="autodetect"/> 2.spring bean如下 用@configurable进行注解,这样我们可以直接new RealTimeStatisticTask,那么RealTimeStaticDao也能被正常注入了. 3.将spring-instrument-tomcat-4.1

如何用Spring将Service注入到Servlet中

解决方法有两种(推荐使用第二种) 方法一: 直接重写Servlet的Init()方法,代码如下: public void init(ServletConfig servletConfig) throws ServletException { ServletContext servletContext = servletConfig.getServletContext(); WebApplicationContext webApplicationContext = WebApplicationCo

非Spring环境注入bean

在有些不属于spring容器里的环境,想使用getBean的方式注入的话,在spring的Application.xml里面配置这条bean. 这种方式相当于将bean注入spring环境中去. 调用方式为下图: 这样就完成了非Spring环境的bean注入