Java Web2

javaweb学习笔记

XML  可扩展标记语言(eXtensible Markup Language)

html是用于显示数据(被设计用来显示数据, 其焦点是数据的外观.)

xml也可以显示数据,但主要功能是为了传输信息,存储数据(设计为传输和存储数据, 其焦点是数据的内容.)

1.用于系统之间数据的传输 2.用于表示生活中有关系的数据 3.作为配置文件

1.xml的文档声明

格式:<?xml version=”1.0” encoding=”gbk”?> 版本(1.0)编码样式(保存和打开的编码要一致) 文档声明必须写在第一行第一列(前面不能有空格、空行及注释)

属性: (version:xml的版本 1.0(使用) 1.1 )(encoding:xml的编码 gbk utf-8)( standing:说明文档是否依赖其他文件 yes/no)

2.定义元素(标签)

一个xml中有且只有一个根标签,可以自定义 ,在xml中空格和换行都当成内容来解析,所以书写要注意紧凑

标签的命名规则: 1.区分大小写,可以是中文 2.不能以数字和下划线开头 3.不能以 xml 开头(大写也不行 4.不能包含空格和冒号

3.定义属性

4.注释

5.特殊字符

6.CDATA区<![CDATA[ 内容 ]]>把内容当成文本输出,遇到特殊字数也当成文本

7.PI指令可以在xml中设置样式,但一般用不到 写法:<?xml-stylesheet href=”css的路径”?> 注意:只能对英文标签名称起作用,对中文标签名称不起作用

XML的约束

DTD 约束和 Schema 约束 - 约束的作用是定义 xml 文档的结构.

// 第一种方式: 引入外部的 dtd 文件
    <!DOCTYPE 根元素名称 SYSTEM "dtd 路径">

// 第二种方式: 使用 xml 页面内部的 dtd 文件
    <!DOCTYPE 根元素名称 [
            <!ELEMENT person (name,age)>
            <!ELEMENT name (#PCDATA)>
            <!ELEMENT age (#PCDATA)>
        ]>

// 第三种方式: 使用网络上的 dtd 文件
    <!DOCTYPE 根元素 PUBLIC "dtd 名称" "dtd 文档的 url">
    // 示例: struts 2 中使用的配置文件, 使用的是外部的 dtd 文件
    <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
        "http://struts.apache.org/dtds/struts-2.0.dtd">


// 示例: 带有 DTD 的 XML 文档
<?xml version="1.0" encoding="gbk"?>
// dtd 约束
<!DOCTYPE note [
    <!ELEMENT note (to,from,heading,body)>
    <!ELEMENT to    (#PCDATA)>
    <!ELEMENT from  (#PCDATA)>
    <!ELEMENT heading (#PCDATA)>
    <!ELEMENT body   (#PCDATA)>
]>

// xml 内容
<note>
    <to>zhangsan</to>
    <from>lisi</from>
    <heading>Invitation</heading>
    <body>Don't forget the meeting!</body>
</note>

 Schema 约束

// 示例
    // xml 文档
    <?xml version="1.0" encoding="gbk"?>
    <note>
        <to>zhangsan</to>
        <from>lisi</from>
        <heading>Invitation</heading>
        <body>Don't forget the meeting!</body>
    </note>


    // Schema 约束
    <?xml version="1.0" encoding="gbk"?>
    <xs:shema xmlns:xs="http://www.w3.org/2001/XMLSchema"
    targetNamespace="http://www.cnblogs.com/linkworld/"
    xmlns="http://www.cnblogs.com/linkworld/"
    elementFormDefault="qualified">

    <xs:element name="note">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="to" type="xs:string"/>
                <xs:element name="from" type="xs:string"/>
                <xs:element name="heading" type="xs:string"/>
                <xs:element name="body" type="xs:string"/>
            </xs:sequence>
        </xs:complexType>
    <xs:element>
    </xs:schema>

    // 对于 Schema 的引用
    <?xml version="1.0" encoding="gbk"?>
    <note
    xmlns="http://www.cnblogs.com/linkworld/"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.cnblogs.com/linkworld/ note.xsd">

        <to>zhangsan</to>
        <from>lisi</from>
        <heading>Invitation</heading>
        <body>Don't forget the meeting!</body>
    </note>

DOM4J简介

 

AJAX (Asynchronous Javascript And XML异步 JavaScript 和 XML,用于创建快速动态网页的技术)

XMLHttpRequest 是 AJAX 的基础。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script>
function loadXMLDoc()
{
    .... AJAX 脚本执行 ...
}
</script>
</head>
<body>

<div id="myDiv"><h2>使用 AJAX 修改该文本内容</h2></div>
<button type="button" onclick="loadXMLDoc()">修改内容</button>

</body>
</html>

向服务器发送请求  xmlhttp.open("GET","ajax_info.txt",true);            xmlhttp.send();

GET 请求

xmlhttp.open("GET","/try/ajax/demo_get.php?t=" + Math.random(),true); xmlhttp.send();

POST 请求

xmlhttp.open("POST","/try/ajax/demo_post2.php",true);

xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");

xmlhttp.send("fname=Henry&lname=Ford");

jQuery简介

轻量的、免费开源的JS函数库(就是JS的简单框架)

jQuery的函数库文件就是一个普通的JS文件,引入jQuery和引入JS文件的方式一样

<!-- 在使用jQuery之前,必须先引入jQuery的函数库文件 -->
<script src="js/jquery-1.8.3.js"></script>

jQuery选择器

基本选择器

(1)元素名选择器

$("div") -- 选中所有的div元素

$("span") -- 选中所有的span元素

(2)class/类选择器

$(".s1") -- 选中所有class值为s1的元素(class值为s1的元素可能是任何元素)

$("span.s1") -- 选中所有class值为s1的span元素

(3)id选择器

$("#one") -- 选中id为one的元素

(4)多元素选择器

$("div,span,.s1,#one") -- 选中所有的div元素,以及所有的span元素,以及所有class值为s1的元素,以及id为one的元素

层级选择器

基本过滤选择器

Servlet(Server Applet)是Java Servlet的简称

Servlet接口
  |-- GenericServlet类(抽象类)
      |-- HttpServlet类
在web应用的web.xml文件中配置Servlet程序对外访问的路径

request是代表HTTP请求信息的对象,response是代表HTTP响应信息的对象。

Filter(过滤器)

对 Servlet 容器调用 Servlet 的过程进行拦截,从而在 Servlet 进行响应处理的前后实现一些特殊的功能。Filter 程序可以拦截 Jsp, Servlet, 静态图片文件和静态 html 文件

Filter(继承Filter,重写doFilter方法), FilterChain

FilterConfig

@Override
public void init(FilterConfig filterConfig) throws ServletException {
	System.out.println("执行MyFilter的init方法..");
	// 获取过滤器的配置参数
	name = filterConfig.getInitParameter("name");
}

Listener(监听器)

Cookie(客户端)与Session(服务器)(https://zhuanlan.zhihu.com/p/42918845)

2个感知监听 HttpSessionBindingListener   HttpSessionActivationListener

6个常规监听器   分别对应JavaWeb三大域对象(除去JSP的Page域):ServletContext、HttpSession、ServletRequest

 ServletContext      ServletContextListener(生命周期监听) ServletContextAttributeListener(属性监听)
HttpSession   HttpSessionListener(生命周期监听)  HttpSessionAttributeListener(属性监听)
ServletRequest   ServletRequestListener(生命周期监听)   ServletRequestAttributeListener(属性监听)

 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值