- 浏览: 205452 次
- 性别:
- 来自: 成都
文章分类
- 全部博客 (231)
- C++学习 (41)
- vc学习 (25)
- vc异常 (4)
- Flex (2)
- Ext (0)
- java学习笔记 (15)
- mysql学习笔记 (1)
- ibatis学习笔记 (7)
- struts1学习笔记 (1)
- hibernate学习笔记 (3)
- javascript学习笔记 (8)
- eclipse快捷键 (2)
- 英语学习 (1)
- cmd (1)
- eclipse 配置 (2)
- 其他 (4)
- JAVASE (34)
- firefox (1)
- linux (8)
- Apache (6)
- cms (22)
- jsuc (10)
- html (3)
- css (1)
- 作图 (2)
- vs2012 (2)
- 编码转换 (12)
- work_unicode (1)
- work_webbrowser (1)
- work_trade_quotes_login (1)
- c#学习 (38)
- wpf学习 (31)
- wpf快速学习 (1)
- VB学习 (1)
- NSIS (4)
- log4cpp (3)
- 学习web (1)
- 经验 (1)
- c_汇编 (1)
最新评论
public class InitBeanFactoryServlet extends HttpServlet { public static final String INIT_FACTORY_NAME = "_my_bean_factory"; @Override public void init(ServletConfig config) throws ServletException { super.init(config); BeanFactory factory = null; String configLocation = config.getInitParameter("configLocation"); if(configLocation == null){ factory = new PropertiesBeanFactory(); }else{ factory = new PropertiesBeanFactory(configLocation); } System.out.println("初始化BeanFactory......"); getServletContext().setAttribute(INIT_FACTORY_NAME, factory); //初始化BeanUtils的转换器 ConvertUtils.register(new ChannelsSetConverter(), Set.class); } }
当重写init(ServletConfig)方法的时候,记得调用super.init(ServletConfig)
调用super.init(ServletConfig)的目的,主要是由于在父类(GenericServlet)中
有一个ServletConfig实例变量,super.init(ServletConfig)就是给这个实例变量复制。
这样,再后续的getServletContext()操作,才可以拿到ServletContext对象:
GenericServlet的部分源代码如下所示:
public abstract class GenericServlet implements Servlet, ServletConfig, java.io.Serializable { private transient ServletConfig config; public void init(ServletConfig config) throws ServletException { this.config = config; this.init(); } public void init() throws ServletException { } public ServletConfig getServletConfig() { return config; } public ServletContext getServletContext() { return getServletConfig().getServletContext(); }
发表评论
-
显示上传的文件,图片则显示,附件则提供下载
2012-12-13 17:22 754package cn.com.leadfar.cms.back ... -
文件上传进行封装
2012-12-12 17:37 905BaseServlet.java if(isMultipar ... -
网页显示附件链接提供下载,显示图片提供下载
2012-12-12 17:34 1030网页显示附件链接提供下载,显示图片提供下载 packag ... -
浏览选择文件
2012-12-12 17:22 831浏览选择文件 <input type=" ... -
后台编辑文章,插入图片,插入文章链接提供下载
2012-12-12 17:20 758function insertFile(value){ v ... -
文件上传
2012-12-07 14:56 773文件上传 < ... -
ckeditor使用
2012-12-07 13:50 690<script type="text/java ... -
MyBatis生成GeneratedKeys
2012-11-27 15:55 1028生成GeneratedKeys<insert id=&q ... -
contentType,pageEncoding
2012-11-22 15:36 680contentType,pageEncoding -
BeanUtils
2012-11-22 15:36 611需要用到两个jar包:commons-beanutils.ja ... -
ThreadLocal
2012-11-22 15:34 535ThreadLocal 则保存其他线程各自的变量,不会相互影响 ... -
服务器端包含
2012-11-22 15:33 694<jsp:include page="Na ... -
编写jstl函数
2012-11-22 15:29 7221) 函数 package cn.com.leadfar. ... -
点击量统计
2012-11-21 17:22 888阅读:<script type="text/j ... -
提交前验证
2012-11-21 17:18 718<form action="MemberSer ... -
history.go(-1)返回上一页
2012-11-21 17:16 917<A href="javascript:his ... -
referer引用页面
2012-11-21 17:15 755referer引用页面 在网站上有多处可供登录的网页,要求在 ... -
将login窗口平铺到整个窗口
2012-11-21 17:13 705将login窗口平铺到整个窗口 if(window.pare ... -
null强制转换
2012-11-20 16:38 684null强制转换 PagerVO pv = articleD ... -
load-on-startup
2012-11-20 16:36 727load-on-startup <servlet ...
相关推荐
如果选择重写`init(ServletConfig config)`,则必须确保调用`super.init(config)`,以便将配置信息正确地传递给父类,否则Servlet可能无法正确地获取其配置信息。 以下是如何重写这两种`init()`方法的示例: ```...
如果需要在Web服务器(如Tomcat)上发布WebService,可以通过扩展`HttpServlet`并重写`init()`方法来发布服务。例如: ```java public class PublishServlet extends HttpServlet { @Override public void init...
子类如果重写`init()`,别忘了调用`super.init(config)`以确保配置信息被正确处理。 7. `abstract void service(Request request, Response response) throws ServletException, IOException`: 这是一个抽象方法,...
2. `void init() throws ServletException`: 子类可以重写此方法来实现初始化逻辑,但记得调用`super.init(config)`以确保配置信息被正确保存。 3. `ServletConfig getServletConfig()`: 返回在`init()`方法中传递...
开发者通常需要覆盖`init()`方法,但别忘了调用`super.init(config)`来确保`GenericServlet`的初始化行为。 7. `void log(String msg)`: 使用Servlet上下文的日志功能记录消息。 8. `void log(String msg, ...
在`init(ServletConfig config)`方法结束后自动调用,记得调用`super.init(config)`以确保正确初始化。 9. `void log(String msg)` - 用于记录日志,消息会被添加到Servlet名称前面。 10. `void log(String msg, ...
此方法通过调用 `ServletConfig.getInitParameter(name)` 实现。 ```java public String getInitParameter(String name) { return this.config.getInitParameter(name); } ``` - **`getInitParameterNames()...
因此,通常我们在覆盖`init()`方法时只需要覆盖无参数版本,并确保在自定义的`init()`方法中调用`super.init(config)`,以便利用`GenericServlet`提供的默认行为。 总之,Servlet是Java Web开发的核心组件,它们...
- `init(ServletConfig config)`: 存储`config`对象,并调用`init()`方法,子类可以重写`init()`进行初始化操作,别忘了调用`super.init(config)`。 - `log(String msg)` 和 `log(String msg, Throwable t)`: 分别...
如果重写`init(ServletConfig config)`,记得在第一行调用`super.init(config);`以确保初始化流程的正确性。 3. **Servlet生命周期中的服务方法**: 当Servlet接收到请求时,会调用`doGet`或`doPost`方法来处理。`...
子类通常需要重写 `init()` 来完成初始化工作,别忘了调用 `super.init(config)`。 - `void log(String msg)`: 记录日志,调用 `ServletContext` 的 `log()` 方法,方便调试和追踪。 - `void log(String msg, ...
- `init(ServletConfig config)`: 子类可以重写此方法进行初始化,但通常需要调用`super.init(config)`来确保父类的初始化工作正常进行。 - `destroy()`: 子类可以在此方法中释放资源,结束后台线程等。 - `...
如果子类覆盖了`init(ServletConfig config)`方法,则无需再调用`super.init(config)`,因为已经通过这个便利方法进行了处理。 - **service()方法** ```java public abstract void service(ServletRequest req, ...
2. **ServletConfig接口**:提供了获取Servlet初始化参数的方法,通常在`init()`方法中使用。 - `String getInitParameter(String paraName)`:获取指定名称的初始化参数值。 3. **GenericServlet抽象类**:实现了...