JAVA学习日志2-9(XML)

本文深入探讨了ServletConfig和ServletContext在Servlet中的应用,包括如何获取和设置配置信息,以及它们在不同Servlet间传递数据的作用。同时,对比了转发和重定向的区别,介绍了Servlet3.0注解的使用,以及XML在配置中的角色。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ServletConfig
在servlet运行的时候,需要获取到当前servlet的配置信息(设置编码格式),可以使用ServletConfig来进行获取,ServletConfig是由tomcat容器进行创建 ,当servlet实例化的时候,就会把当前servlet的一些配置信息放入到ServletConfig对象里

  • 获取servlet ServletConfig对象
    在init()方法有这个对象可以使用
    在这里插入图片描述
    在servlet 其它的方法中 获取该对象:this.getServletConfig();
  • 设置Servlet的配置信息
    可以在xml文件中设置,以键值对的形式存储
    在这里插入图片描述
  • 获取配置信息
    获取单个
    在这里插入图片描述
    获取全部
    在这里插入图片描述

ServletContext
项目在tomcat容器运行时,tomcat 会创建一个唯一的全局上下文的对象 就是ServletContext,
这个对象主要用于给整个web项目来设置配置信息,所有的servlet都能来获取到这个配置
ServletContext 可以对应多个servlet

  • 获取全局上下文对象
    req.getServletContext(); 通过request 来进行获取
  • 设置整个web项目的配置信息
    context-param是于servlet平级的
    在这里插入图片描述
  • 获取配置信息
    获取全部
    在这里插入图片描述

作用域对象
1.作用域对象:也就是有作用域(在一定的范围)的对象,在一定的范围之内可以存值 取值,可以使不同的servlet之间进行数据的传递
2.servlet中的作用域对象 request servletContext对象
3.request作用范围是一次请求,在这次请求内都可以进数据的传递,域的范围比较小
req.getRequestDispatcher(“userServlet”).forward(req,resp);
这种方式进行页面跳转的时候 request 作用域下的值都可以获取到
servletContext 在整个web项目之内都可以进行数据的传递 域范围比较大
4.三个方法
setAttribute(“键”,”值”); 以键值对来进行设置值
getAttribute(); 通过键来获取值(获取的是setAttrubute设置的值,获取表单或href里参数的值时使用.getParameter(“参数名”)来获取)
removeAttribute(); 通过键来删除值

转发和重定向
转发和重定向都可以实现页面的跳转

  1. 转发语法: req.getRequestDispatcher(“需要转发的路径”).forward(req,resp);
    注意:路径可以是页面路径也可以是servlet路径。.forward(req,resp)如果不写的化无法跳转
  2. 重定向语法:resp.sendRedirect(“路径”);
    注意:路径可以是页面路径也可以是servlet路径
转发重定向
发生在服务器发生在客户端
发生在一次请求里发生在多次请求中
url地址不会改变url地址会发生改变
可携带参数一般不携带参数
无法实现由项目A跳转到项目B可以实现项目A跳转到项目B
多用于查询(因为url不变,查询到结果后,刷新页面返回查询前页面)多用于增删改

Servlet3.0注解
使用注解可以减少xml文件中的配置,即写好注解后就无需在xml里配置servlet的servlet,servlet-mapping等内容,servlet3.0的版本才能使用这个注解 java1.5 的版本以后支持注解

//简写的servlet注解
//@WebServlet("/studentservlet")
//注解中可以携带参数
/*@WebServlet(name = "studentservlet" ,urlPatterns = "/studentservlet",
initParams = {
        @WebInitParam(name="uname",value = "zs")
})*/
@WebServlet(name = "studentservlet" ,urlPatterns = "/studentservlet")

xml
xml是一个可扩展标语言,即是自定义标签。主要用于存储配置信息。框架的配置信息都是使用xml进行编写的。
xml与html 区别:

  1. xml 主要用于做编写配置信息 ,标签的自定义的,但是在实际使用中会给其约束dtd
  2. html 主要用与做页面的展示,使用的是预定义的标签

编写规则:

  1. 根节点只能有一个
  2. 标签都是成对 出现 有单个标签
  3. xml中是严格区别大小写
  4. 标签命名 不要有特殊符号 尽量使用纯英文
  5. 标签必须进行正确的嵌套

解析xml
常用的解析方式: dom,第三方 (dom4j sax xpath)使用的都是dom解析
解析如下xml文件在这里插入图片描述
得到docment 对象
在这里插入图片描述

查询
在这里插入图片描述
增加
在这里插入图片描述
存储
在这里插入图片描述
删除
在这里插入图片描述

dom4j对xml进行解析
得到document对象
在这里插入图片描述
查询
在这里插入图片描述
增加
在这里插入图片描述
存储
在这里插入图片描述
删除
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值