1、使用初始化参数配置应用程序

  初始化参数的方式有两种

  • 在Web.xml文件中使用<context-param>标签声明上下文初始化参数
  <context-param>
<param-name>user</param-name>
<param-value>one</param-value>
</context-param>
<context-param>
<param-name>sex</param-name>
<param-value>man</param-value>
</context-param>

  这里创建了值为one的user和值为man的sex两个参数

  • 第二种方法是使用Servlet初始化参数

    这里有两种方式,一个是在web.xml声明和映射Servlet的时候完成初始化参数

  <servlet>
<servlet-name>ContextSerlvet</servlet-name>
<servlet-class>servlet.ContextServlet</servlet-class>
<init-param>
<param-name>data</param-name>
<param-value>123</param-value>
</init-param>
<init-param>
<param-name>data2</param-name>
<param-value>123.23.2</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>ContextSerlvet</servlet-name>
<url-pattern>/Context</url-pattern>
</servlet-mapping>

   还有就是使用@WebServlet注解

@WebServlet(
name = "ContextServlet",
urlPatterns = {"/Context"},
initParams = {
@WebInitParam(name = "data", value = "123"),
@WebInitParam(name = "data2", value = "123.23.2")
}
)

  这里定义了值为123的data和值为123.23.2的data2

  使用这些参数的时候,

  • 使用上下文初始化的参数要从ServletContext中获得
  • 使用Servlet初始化的参数要从ServletConfig中获得

完整的java代码:

@WebServlet(
name = "ContextServlet",
urlPatterns = {"/Context"},
initParams = {
@WebInitParam(name = "data", value = "123"),
@WebInitParam(name = "data2", value = "123.23.2")
}
)
public class ContextServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
ServletContext context = this.getServletContext();
ServletConfig config = this.getServletConfig();
PrintWriter writer = resp.getWriter(); writer.append("user = ").append(context.getInitParameter("user") + "\n")
.append("sex = ").append(context.getInitParameter("sex") + "\n")
.append("data = ").append(config.getInitParameter("data") + "\n")
.append("data2 = ").append(config.getInitParameter("data2") + "\n");
}
}

效果:

JavaWeb——Servlet开发3的更多相关文章

  1. 【Java123】JavaWeb Servlet开发

    http://www.runoob.com/servlet/servlet-intro.html https://www.cnblogs.com/xdp-gacl/tag/JavaWeb学习总结/de ...

  2. JavaWeb——Servlet开发

    什么是Servlet? Servlet运行的过程 Servlet的生命周期 生命周期的各个阶段 Servlet的配置 使用Web.xml配置 使用注解配置 Servlet相关接口 ServletCon ...

  3. JavaWeb——Servlet开发2

    1.HttpServletRequest的使用 获取Request的参数的方法. 方法getParameter将返回参数的单个值 方法getParameterValues将返回参数的值的数组 方法ge ...

  4. JavaWeb——Servlet开发1

    Java Servlet是运行在服务器端上的程序,Servlet是Java Servlet包中的一个接口,能够直接处理和相应客户端的请求,也可以将工作委托给应用的其他类. public interfa ...

  5. javaweb学习之Servlet开发(二)

    javaweb学习总结(六)--Servlet开发(二) 一.ServletConfig讲解 1.1.配置Servlet初始化参数 在Servlet的配置文件web.xml中,可以使用一个或多个< ...

  6. JavaWeb学习总结第四篇--Servlet开发

    Servlet开发 用户在浏览器中输入一个网址并回车,浏览器会向服务器发送一个HTTP请求.服务器端程序接受这个请求,并对请求进行处理,然后发送一个回应.浏览器收到回应,再把回应的内容显示出来.这种请 ...

  7. JavaWeb开发之四:servlet技术 黑马程序员_轻松掌握JavaWeb开发之四Servlet开发 方立勋老师视频教程相当的经典

    总结: 记住:servlet对象在应用程序运行的过程中只创建一次,浏览器每次访问的时候,创建reponse对象 request对象,然后调用servlet的service方法,reponse对象和re ...

  8. javaweb学习总结(五)——Servlet开发(一)

    一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向 ...

  9. javaWeb中servlet开发(5)——WEB开发模式:Mode I与Mode II

    1.servlet开发 2.model I模式 客户端通过访问JSP,调用里面的javabean,而通过javabean调用处理数据库的操作,javabean中有专门处理数据库的操作,数据库主要以DA ...

随机推荐

  1. vim与系统剪切板之间的复制粘贴

    背景 vim各种快捷建溜得飞起,然而与系统剪切板之间的复制粘贴一直都是我的痛. 每次需要从vim中拷贝些文字去浏览器搜索,都需要用鼠标选中vim的文字后,Ctrl+c.Ctrl+v,硬生生掐断了纯键盘 ...

  2. 寻觅Azure上的Athena和BigQuery (二):神奇的PolyBase

    前情回顾 在“数据湖”概念与理论逐渐深入人心的今天,面向云存储的交互式查询这个需求场景显得愈发重要.这是因为原生的云存储(主要指S3这样的对象存储)既能够容纳大容量的明细数据,又能在性能和成本间取得一 ...

  3. ecshop面包屑修改

    找到includes 找到lib_main.php 大约163样左右 /* 处理有分类的 */这段代码下面的一行修改成的对应的自己网站的分类,类似这样: 注释掉180行到194行左右,然后添加自己的分 ...

  4. 版本管理--svn解决代码冲突

    高级的svn解决冲突的方法: 选择正在冲突的文件,右键,选择Edit confilicts,这时候出现一个弹框, 看你实际的需要用自己的代码,还是用同事的代码,或者合并起来.最后点击Mark as r ...

  5. linux 不重启识别新添加的硬盘

    1.fdisk -l 看有没有新的磁盘 oebiotech@hadoop08:/media/nbc9$ sudo fdisk -l |grep sdl 2.查看主机总线 oebiotech@hadoo ...

  6. 教你发布vue+.netCore项目到服务器

    最近一直在做项目,发布部署的事情都是同事或者老大做的,无奈什么事都要自己尝试经历后才能记住,所以发布的事情轮到我了,由于是第一次发布部署项目到一个新的服务器环境,难免会遇到各种各样的问题,总结下来,希 ...

  7. 【译】深入理解G1的GC日志(一)

    本文翻译自:https://www.redhat.com/en/blog/collecting-and-reading-g1-garbage-collector-logs-part-2?source= ...

  8. Netty中的策略者模式

    策略者模式的特点 在设计类的继承体系时,我们会刻意的把公共的部分都提取到基类中 比如先设计Person类,把人类都具有的行为放到这个Person,特有的行为设计成抽象方法,让子类具体去实现, 这样后续 ...

  9. zabbix 支持的主要监控方式

    zabbix 支持的主要监控方式 一.zabbix支持的主要监控方式: zabbix主要Agent,Trapper,SNMP,JMX,IPMI这几种监控方式,本文章主要通过监控理论和实际操作测试等方式 ...

  10. <<Modern CMake>> 翻译 2.2 CMake 编程

    <<Modern CMake>> 翻译 2.2 CMake 编程 流程控制 CMake有一个 if 语句, 经年累月之后,现在它已经相当复杂. 您可以在 if 语句中使用全大写 ...