撩课-Java每天5道面试题第9天
撩课Java+系统架构 视频 点击开始学习
76、XML技术的作用?
XML技术用于数据存储、
信息配置、
数据交换三方面。 可以将数据存储在XML中,
通过节点、
元素内容、
属性标示数据内容及关系。 可以使用XML很方便的做信息配置,
软件的各种配置参数和对象关系
都存贮在XML文件中。 在做数据交换平台时,
将数据组装成XML文件,
然后将XML文件压缩打包加密后
通过网络传送给接收者,
接收解密与解压缩后再同XML文件中
还原相关信息进行处理。
77.XML文档约束有哪几种?有什么区别?
有两种定义形式,
dtd文档类型定义和SchemaXML模式;
XML Schema 和DTD都用于文档验证,
但二者还有一定的区别,
本质区别是:Scheme本身是xml的,
可以被XML解析器解析,
这也是从DTD上发展Schema的根本目的。 另外,
XML Schema 是内容开放模型,
可扩展,功能性强,
而DTD可扩展性差。
XML Schema 支持丰富的数据类型,
而 DTD不支持元素的数据类型,
对属性的类型定义也很有限。
XML Schema 支持命名空间机制,
而DTD不支持。
XML Schema 可针对不同情况
对整个XML 文档或文档局部进行验证;
而 DTD缺乏这种灵活性。
XML Schema 完全遵循XML规范,
符合XML语法,
可以和DOM结合使用,
功能强大;
而DTD 语法本身有自身的语法和要求,
难以学习。
78.XML的解析方式有哪几种?有什么区别?
1.DOM解析:
DOM的全称是Document Object Model,
也即文档对象模型。
在应用程序中,
基于DOM的XML分析器
将一个XML文档转换成
一个对象模型的集合(通常称DOM树),
应用程序正是通过对
这个对象模型的操作,
来实现对XML文档数据的操作。
通过DOM接口,
应用程序可以在任何时候
访问XML文档中的任何一部分数据,
因此,这种利用DOM接口的机制
也被称作随机访问机制。 2.SAX解析:
SAX的全称是Simple APIs for XML,
也即XML简单应用程序接口。
与DOM不同,
SAX提供的访问模式是一种顺序模式,
这是一种快速读写XML数据的方式。
当使用SAX分析器对XML文档进行分析时,
会触发一系列事件,
并激活相应的事件处理函数,
应用程序通过这些事件处理函数
实现对XML文档的访问,
因而SAX接口也被称作事件驱动接口。 3.JDOM解析:
JDOM采用了Java中的Collection架构来封装集合,
是Java爱好者更加熟悉的模式 4.DOM4J解析:
xml解析器一次性把整个xml文档加载进内存,
然后在内存中构建一颗Document的对象树,
通过Document对象,
得到树上的节点对象,
通过节点对象访问(操作)到xml文档的内容
79.Http请求的Get和Post的区别?
1. get从地址栏以明文的方式提交请求
信息内容
?username=admin&password=123,
用户可见,
而post从请求正文提交请求信息内容,
用户不可见。 2. get提交因为是从地址栏传递,
而浏览器的地址栏长度有限制,
不能提交大数据
post从请求正文传递信息内容,
对文件大小无限制,
文件上传只能选择post 3. request对象是服务器获取请求信息
从请求头,请求正文中获取
我们可以使用request.setCharacterEncoding方法
修改请求对象字符编码信息,
但是不能修改地址栏字符编码。 get从地址栏传递信息,
不能使用request.setCharacterEncoding这个方法
去修改字符编码。
post从请求正文以form表单形式提交,
所以可以使用request.setCharacterEncoding
这个方法去修改字符编码。 4. 总结: 能够使用post提交尽量使用post提交。
80.ServletConfig对象和ServletContext对象有什么区别?
一个Servlet对应有一个ServletConfig对象,
可以用来读取初始化参数。 一个webapp对应一个ServletContext对象。 ServletContext对象
获取初始化定义的参数。 ServletContext对象可以通过
context.getResourceAsStream("/PATH");
或者context.getRealPath("/")。 去获取webapp的资源文件。 ServletContext对象的
setAttribute(String name,Object o)方法
可以将对象存储在Context作用范围域
又称为全局作用范围域,
在整个web应用当中可以共享. ServletContext对象
可以和服务器进行通讯,
比如写信息到服务器的日志信息当中。。
撩课-Java每天5道面试题第9天的更多相关文章
- 撩课-Java每天5道面试题第13天
撩课Java+系统架构点击开始学习 96.JDBC操作数据库的步骤 ? .加载数据库驱动 .创建并获取数据库链接 .创建jdbc statement对象 .设置sql语句 .设置sql语句中的参数(使 ...
- 撩课-Java每天5道面试题第15天
撩课Java+系统架构点击开始学习 106.什么是Hibernate的并发机制?怎么去处理并发问题? a.Hibernate的Session对象是非线程安全的, 对于单个请求,单个会话, 单个的工作单 ...
- 撩课-Java每天5道面试题第10天
撩课Java+系统架构 视频 点击开始学习 81.Servlet的会话机制? HTTP 是一种无状态协议, 这意味着每次客户端检索网页时, 都要单独打开一个服务器连接, 因此服务器不会记录下 先前客户 ...
- 撩课-Java每天5道面试题第8天
撩课Java+系统架构 视频 点击开始学习 71.jsp有哪些内置对象?作用分别是什么? Page, pageContext, request, response, session, applicat ...
- 撩课-Java每天10道面试题第7天
撩课Java+系统架构 视频 点击开始学习 61.什么是并发修改异常? 什么是并发修改异常: 当我们在遍历实现了collection接口 与iterator接口的集合时(List.Set.Map), ...
- 撩课-Java每天10道面试题第4天
撩课Java+系统架构 视频 点击开始学习 31.静态变量和实例变量的区别? 静态变量也叫类变量, 这种变量前加了static修饰符. 可以直接用类名调用, 也可以用对象调用, 而且所有对象的同一个类 ...
- 撩课-Java每天5道面试题第17天
116.说下Struts的设计模式 MVC模式: web应用程序启动时 就会加载并初始化ActionServler. 用户提交表单时, 一个配置好的ActionForm对象被创建, 并被填入表单相应的 ...
- 撩课-Java每天5道面试题第24天
151.springMVC和struts2的区别有哪些? .springmvc的入口是一个servlet即前端控制器(DispatchServlet), 而struts2入口是一个filter过虑器( ...
- 撩课-Java每天5道面试题第23天
146.什么是Spring MVC ?简单介绍下你对springMVC的理解? Spring MVC是一个基于MVC架构的 用来简化web应用程序开发的应用开发框架, 它是Spring的一个模块, 无 ...
随机推荐
- “全栈2019”Java第一百零八章:匿名内部类与final关键字
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- MysqliDb 库的一些使用简单技巧(php)
一.分页功能 假设接口要接受输入:page, page_limit,key,value,table 来查询 table 中 key like value 的元组中以 page_limit 为 page ...
- eclipse打包jar文件
论文仿真做线性回归分类在人脸识别中应用与研究,在单机下实现LRC算法后,又在Hadoop云平台下实现了该算法.在比较实验结果时候需要放在相同硬件条件下比较.但是LRC单机算法是在windows下的ec ...
- 鸡肋点搭配ClickJacking攻击-获取管理员权限
作者:jing0102 前言 有一段时间没做测试了,偶尔的时候也会去挖挖洞.本文章要写的东西是我利用ClickJacking拿下管理员权限的测试过程.但在说明过程之前,先带大家了解一下ClickJac ...
- [Objective-C语言教程]指针(15)
Objective-C中的指针简单易学.使用指针可以更轻松地执行某些Objective-C编程任务,并且在不使用指针的情况下无法执行其他任务(如动态内存分配). 所以有必要学习指向成为一个完美的Obj ...
- Windows 计划任务之消息提醒
Windows 计划任务之消息提醒 你肯定也有这种需求.想做一个计划任务,却发现老式消息提醒已经被微软禁止了. 或者就是很单纯的希望给系统弹出一个消息框而并非CMD的echo命令. so...how ...
- Class文件分析
java源码和class文件 源码: package classloader; public class TestCase { private int value; public int test() ...
- multiprocess(上)
仔细说来,multiprocess不是一个模块而是python中一个操作.管理进程的包. 之所以叫multi是取自multiple的多功能的意思,在这个包中几乎包含了和进程有关的所有子模块.由于提供的 ...
- MySQL , MHA , Haproxy 配置
1. 基本架构 2. 读端口影射 3. 写端口影射 进行一个Health Check MHA Manager对Master节点MySQL 进行存活监控 读FailOver 1 读FailOver 2 ...
- 39.oracle高级篇
标题说是高级篇,其实也就是相对于基础篇来说的,也不是很深奥,自己平时工作中也都会用到,这里回忆的并不是特别冷门的知识,不要掉以轻心,以为“高级”就觉得工作中不会用到了. 一.select into 和 ...