spring 管理servlet
来源:互联网 发布:java程序员面试指南 编辑:程序博客网 时间:2024/06/01 22:15
用spring管理servlet,如果servlet注入了service,service为null,查找资料,网上有通过代理servlet的方式来解决,参考http://justsee.iteye.com/blog/1211814;
其实spring提供了管理servlet的方式,参考:http://hanqunfeng.iteye.com/blog/605174;
利用第二种方式,我成功调用了servlet,以下是步骤:
第一步:web.xml:
<listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener> <context-param><param-name>contextConfigLocation</param-name><param-value>/WEB-INF/classes/spring/application*.xml</param-value></context-param><!-- springMVC控制器--><servlet><servlet-name>spring</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/classes/spring/application*.xml</param-value> </init-param><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>spring</servlet-name><url-pattern>*.po</url-pattern></servlet-mapping>
第二步:applicationContext.xml 加上
<!-- servlet适配器,这里必须明确声明,因为spring默认没有初始化该适配器 --><bean id="servletHandlerAdapter" class="org.springframework.web.servlet.handler.SimpleServletHandlerAdapter"/> <bean id="beanMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="mappings"> <value> /test.po=testServlet </value> </property> </bean>
第三步:实现servlet
package com.cheangis.servlet;import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;import com.cheangis.service.impl.TestService;@SuppressWarnings("serial") @Controllerpublic class TestServlet extends HttpServlet {@Autowiredprivate TestService testService;@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {System.out.println("参数:"+req.getParameter("name"));resp.getWriter().write(testService.getFullName(req.getParameter("name")));resp.getWriter().flush();} @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } }
第四步:service:
package com.cheangis.service.impl;import org.springframework.stereotype.Service;@Servicepublic class TestService { public String getFullName(String name) { return "my name is "+name; }}
第五步:测试
浏览器地址栏输入:
http://localhost:8080/test/test.po?name=22
打印出 my name is 22
表示ok了
- Spring管理Servlet
- spring管理servlet
- servlet注入spring管理
- spring 管理servlet
- spring 怎么连接servlet,spring整合servlet,spring管理servlet
- Spring管理Filter和Servlet
- Spring管理filter和servlet
- Spring管理Filter和Servlet
- Spring管理filter和servlet
- 使用 Spring 容器管理 Servlet
- Spring管理filter和servlet
- spring管理filter与Servlet
- Spring管理filter和servlet
- servlet 使用spring管理bean
- Spring管理Filter和Servlet
- Spring管理filter和servlet
- Spring管理Filter和Servlet
- Spring管理filter和servlet
- Android Robotium自动化测试二
- android中intent带Uri传输时中文的乱码、android 获取文件名乱码处理方法
- HDU 2707 Steganography 字符串处理
- DWR使用总结
- PHP数据库永久连接
- spring 管理servlet
- 无法从“void (__thiscall XXX::* )(void)”转换为“cocos2d::SEL_SCHEDUL 错误总结
- java_web学习第七天(jsp技术)
- mpegts代码分析
- visual assist x 代码颜色失效解决办法
- c++ 操作mysql
- VC++ Unable to register this add-in because its DllRegisterServer returns an error
- USB基础简介
- RVCT的Linux环境变量配置 ARM® RVDS™ 4.1(b713)