1 理解dom解析器机制
  1)dom解析和dom4j原理一致
  2)Node是所有元素的父接口
  3)常用的API:
DocumentBuilderFactory factory =
DocumentBuilderFactory.newInstance();取得DOM解析器工厂
DocumentBuilder domParser =
factory.newDocumentBuilder();取得DOM解析器
domParser.parse(*.xml)加载需要解析的XML文件
Document.getDocumentElement()取得XML文件的根元素/节点
Element.getNodeName():取得根元素
Element.getElementsByTagName_r("汽车")取得"汽车"元素的集合
NodeList.item(i)取得第N个元素,从0开始
Element.getTextContent():取得元素的文本内容
Element.getAttributes().getNamedItem("出产时间").getTextContent():取得元素中某属性的值
document.createElement_x("汽车");创建新元素
Element.setTextContent("我的汽车");设置元素的内容
Element.appendChild(newCarElement);在尾部添加元素
Element.insertBefore(newCarElement,
   
rootElement.getElementsByTagName_r("汽车").item(1));在指定的元素前添加元素
TransformerFactory tf =
TransformerFactory.newInstance();创建输出工厂
Transformer transformer = tf.newTransformer();创建输出对象
Source source = new DOMSource(document);创建内存的document对象
Result result = new StreamResult(new
File("src/cn/itcast/xml/dom/car.xml"));指定输出的目标地点
transformer.transform(source,result);将document对象输出到xml文件中
     
  Element.setTextContent("深圳");更新元素的内容
Element.removeChild(secondCarElement);在父元素基础上删除直接子元素
 
 4)dom解析器会将空白字符当作有效元素对待 
 
 5)要让dom解析器将空白字符忽略,必须满足二条件
a)对XML文件必须写一个DTD约束
b)factory.setIgnoringElementContentWhitespace(true);
   6)dom类解析器和sax类解析器
a)dom是一次性加载到内容,形成document对象,人工导航,适合curd
b)sax是分次性加载到内容,sax解析器导航,但程序员需要编写sax处理器,必须扩展DefaultHandler类,适合r

2 web基本概念
  1)JavaWeb是用Java技术开发基于Web的应用
  2)在Internet上运行的资源有二大类:
a)静态资源
无论何时何地以何种身份访问该资源,显示的结果一样
HTML或XHTML或XML,CSS,JavaScript,...
b)动态资源
无论何时何地以何种身份访问该资源,有可以结果不一样
Servlet,Jsp,...

*3 安装tomcat web服务器
 
1)将某个文件提外界用户访问,必须有一个类似的网络应用程序来接收和响应用户的请求
  2)web服务器有多种类型
java开源:tomcat6/7。。。
商用:weblogic,websphere
  3)安装tomcat
a)配置JDK正确版本[至少是JDK5]和路径
b)执行tomcat/bin/startup.bat启动Web服务器
     
  c)CATALINA_HOME指明需要启动哪台tomcat服务器
     
  错误案例:
a)tomcat端口被占用,可以通过server.xml文件修改默认端口号
b)查看当前进程使用情况,工具Fport.exe
     
  c)窗口一闪而过,JAVA_HOME目录设置出错
  4)tomcat目录的含义:
*bin/启动和停止tomcat的脚本文件
*conf/配置tomcat的文本,以xml文件为主
*lib/tomcat用到的第三方jar包
logs/tomcat服务器操作相关的日志文件
temp/tomcat运行时用到的一些临时文件
     
**webapps/tomcat能被外界访问的符合标准目录结构的web应用
work/tomcat运行的工作目录

   5)Web标准目录结构:
tomcat/webapps目录
  |
mail目录(Web应用或Web工程,该Web应用下有N多Web静动态资源) 
     
     |
     
  *.html(静态资源)
     
    6)Web常用的编号
404:客户端请求的资源,服务端找不到
  
  
*4 配置虚拟主机和目录
 
1)虚拟目录:在tomcat/conf/server.xml文件中设置如下代码:
path="以/开头,表示虚拟目录"
     
docBase="web应用的真实目录"
附加:
reloadable="false"服务端会自动监视/WEB-INF/classes或lib目录下的变化情况,一旦变化,服务湍在设置成true的情况下,自动加载最新的内容,如果设置成false,服务端无法加载最新的资源,需要手工重新启动服务器,开发阶段设置为true,上线阶段设置为false。
     
unpackWAR="true"服务器会自动将web压缩文件解压成标准的web目录结构



  2)设置默认web应用
  3)设置默认web资源
mail-WEB-INF-web.xml文件中设置如下代码:
   
     
  mail.html
     
 
 
4)设置虚拟主机:在tomcat/conf/server.xml文件中设置如下代码: 
     
     
     
     
     
name表示虚拟主机名,与HOSTS文件中定义的一致
     
appBase虚拟主机对应的Web应用根目录
     
\表示真实目录
     
/表示外界通过浏览器访问的目录
     
以windowXP为例:C:\WINDOWS\system32\drivers\etc\HOSTS文件
 
 
5)位于webapps/目录下的标准web应用,服务器会自动映射成一个虚拟目录
 
6)某些旧版的tomcat服务器,可能无法自动映射webapps/目录下的标准web应用,需要加上WEB-INF/web.xml文件才行
    
  

5 理解C/S和B/S结构的特点
  1)Domain Name Service
  2)DNS是电信内部的一个域名和IP地址的映射关系
 
3)在查询DNS之前,先查看本地操作系统对应的HOSTS文件,是否能找到对应的IP,如果能找到,不会查DNS了,只有在
   
查找不到的情况下,再连网找DNS服务器 
  4)CS结构:程序和数据分离在不同的端
   *BS结构:程序和数据绑定在服务端

JAVA-Web04的更多相关文章

  1. Spark案例分析

    一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  2. 六 java和Tomcat

    Java企业级应用TOMCAT实战 http://blog.oldboyedu.com/java-tomcat/ 老男孩笔记 常规应用架构模型 Tomcat对静态请求效率低,可以做动静分离,动态的给T ...

  3. 部署Java和Tomcat

    Tomcat介绍 Tomcat服务器是一个免费的开放源代码的Web应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP网页的首选. Tomcat和Nginx.Apach ...

  4. Java第三阶段学习(十二、HttpServletRequest与HttpServletResponse)

    一.HttpServletRequest 1.概述: 我们在创建Servlet时会覆盖service()方法,或doGet()/doPost(),这些方法都有两个参数,一个为代表请求的request和 ...

  5. JAVA基础之ServletContext应用

    创建一个登陆的界面,并且统计次数! 导入jar包; 1. driver=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/java0603?u ...

  6. 故障重现(内存篇2),JAVA内存不足导致频繁回收和swap引起的性能问题

    背景起因: 记起以前的另一次也是关于内存的调优分享下   有个系统平时运行非常稳定运行(没经历过大并发考验),然而在一次活动后,人数并发一上来后,系统开始卡. 我按经验开始调优,在每个关键步骤的加入如 ...

  7. Elasticsearch之java的基本操作一

    摘要   接触ElasticSearch已经有一段了.在这期间,遇到很多问题,但在最后自己的不断探索下解决了这些问题.看到网上或多或少的都有一些介绍ElasticSearch相关知识的文档,但个人觉得 ...

  8. 论:开发者信仰之“天下IT是一家“(Java .NET篇)

    比尔盖茨公认的IT界领军人物,打造了辉煌一时的PC时代. 2008年,史蒂夫鲍尔默接替了盖茨的工作,成为微软公司的总裁. 2013年他与微软做了最后的道别. 2013年以后,我才真正看到了微软的变化. ...

  9. 故障重现, JAVA进程内存不够时突然挂掉模拟

    背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize= # This ...

  10. 死磕内存篇 --- JAVA进程和linux内存间的大小关系

    运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...

随机推荐

  1. In-App Purchase Configuration Guide for iTunes Connect---(一)----Introduction

    Introduction In-App Purchase is an Apple technology that allows your users to purchase content and s ...

  2. Struts2返回JSON数据的具体应用范…

    Struts2返回JSON数据的具体应用范例 博客分类: Struts2 Struts2JSON  早在我刚学Struts2之初的时候,就想写一篇文章来阐述Struts2如何返回JSON数据的原理和具 ...

  3. 【机器学习】支持向量机SVM

    关于支持向量机SVM,这里也只是简单地作个要点梳理,尤其是要注意的是SVM的SMO优化算法.核函数的选择以及参数调整.在此不作过多阐述,单从应用层面来讲,重点在于如何使用libsvm,但对其原理算法要 ...

  4. linux c二级指针的内存分配和使用

    #include <stdio.h>#include <stdlib.h>#include <string.h>#include <unistd.h> ...

  5. 如何使用jmeter连接数据库并提取数据库中的值作为参数,与响应信息中提取的值进行比较

    思路: 连接数据库 获取数据库返回的数据 获取接口返回的数据 两者返回数据进行对比验证 连接数据库 1.jmeter要链接mysql数据库,首先得下载mysql jdbc驱动包(注:驱动包的版本一定要 ...

  6. 一、接口测试——HTTPRunner二次开发之参数化一

    目前项目中在使用开源框架HTTPRunner,时间使用过程中会用到生成随机信息的方法,如生成随机姓名.随机手机号.身份证号.姓名.地址等.以下对二次开发的过程进行简要描述. 一.需求 1.需要测试的接 ...

  7. FISCO BCOS WorkShop | 区块链开发特训营,开课啦!

    FISCO BCOS是完全开源的联盟区块链底层技术平台,由金融区块链合作联盟(深圳)(简称金链盟)成立开源工作组通力打造.开源工作组成员包括博彦科技.华为.深证通.神州数码.四方精创.腾讯.微众银行. ...

  8. es6入门5--class类的基本用法

    在ES6之前,准确来说JavaScript语言并无类的概念,却有模拟类的做法.相比在类似java这类传统面向对象语言中通过类来生成实例,js则通过构造函数模拟类来生成实例. 这是因为在JS设计初期,作 ...

  9. Docker学习:virtualbox安装和配置

    下载.安装 从官网:https://www.virtualbox.org/下载,根据说明直接一步步安装即可 安装ubuntu 说明:这里本机内存是16G,若内存<4G安装完成虚拟机, 安装完成之 ...

  10. github最火的springboot开源学习资料

    https://github.com/JeffLi1993/springboot-learning-example https://github.com/ityouknow/spring-boot-e ...