Servlet入门--图文并茂(二)

来看看init里面的方法---这三个了解一下就行

 

ServletConfig 该接⼝是⽤来描述 Servlet 的基本信息的。

getServletName() 返回 Servlet 的名称,全类名(带着包名的类名)

getInitParameter(String key) 获取 init 参数的值(web.xml)

getInitParameterNames() 返回所有的 initParamter 的 name 值,⼀般⽤作遍历初始化参数 

 第一个:getInitParameterNames()  知道干啥的就行了

public class ServletTest01 implements Servlet {
    //当Servlet第一次被创建对象时执行该方法,该方法在整个生命周期中只执行一次
    @Override
    public void init(ServletConfig servletConfig) throws ServletException {
        //输出当前类的名字
        System.out.println(servletConfig.getServletName());
        System.out.println("完成初始化操作");
    }

 看看效果

 第二个:getInitParameter(String key) 获取 init 参数的值(web.xml)

 //当Servlet第一次被创建对象时执行该方法,该方法在整个生命周期中只执行一次
    @Override
    public void init(ServletConfig servletConfig) throws ServletException {
       //获取初始化参数,需要读配置文件里的参数--key,value 的形式
        System.out.println(servletConfig.getInitParameter("username"));
    }

先需要xml的配置来看看

 <servlet>
            <servlet-name>ServletTest01</servlet-name>
            <servlet-class>com.javaweb.study.ServletTest01</servlet-class>

            <init-param>
                <param-name>username</param-name>
                <param-value>zhangshang</param-value>
            </init-param>
        </servlet>

        <servlet-mapping>
            <servlet-name>ServletTest01</servlet-name>
            <url-pattern>/test</url-pattern>
        </servlet-mapping>

运行截图--

第三个:getInitParameterNames() 返回所有的 initParamter 的 name 值,

先设置参数

            <init-param>
                <param-name>username</param-name>
                <param-value>zhangshang</param-value>
            </init-param>
            <init-param>
                <param-name>password</param-name>
                <param-value>123123</param-value>
            </init-param>

看看我的代码及效果

 输出意思是把element对应的值输出来


getServletContext() 返回 ServletContext 对象,它是 Servlet 的上下⽂,整个 Servlet 的管理者------用的最多


ServletConfig 作⽤于某个 Servlet 实例,每个 Servlet 都有对应的 ServletConfig,ServletContext 作⽤ 于整个 Web 应⽤,⼀个 Web 应⽤对应⼀个 ServletContext,多个 Servlet 实例对应⼀个 ServletContext。 ⼀个是局部对象,⼀个是全局对象 

 来感受一下区别

现在xml配置一下(context是全局,里面的是init是局部)

<context-param>
    <param-name>username</param-name>
    <param-value>context对象</param-value>
</context-param>
<servlet>
    <servlet-name>ServletTest01</servlet-name>
    <servlet-class>com.javaweb.study.ServletTest01</servlet-class>

    <init-param>
        <param-name>username</param-name>
        <param-value>config对象</param-value>
    </init-param>
    
</servlet>

 看看效果

 咱们下期再见

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值