JavaEE学习 javaweb前三章

   Javaweb 基础学习流程  十一章阶段 穿插数据库(JavaEE架构 web应用程序)

  1,JavaEE   ---企业级应用程序 

      多用户访问----通常通过浏览器访问或pc和 移动程序

      分布式系统---

      业务比较复杂

      需要数据源支持,通常是关系型数据库(RDBMS)--分两类:关系型数据库(RDBMS)MySQL 等  非关系型数据库

  2,客户层---表示层 业务层 整合层---资源层

      |                |                    |

     浏览器    --> 友好显示 --->  数据库            整合层与数据库访问        业务层 --业务逻辑计算          表示层--显示数据

     c/s是客户端通过一个软件访问服务器 (移动)

  3,JavaEE组件

       容器本身就是一个软件  组件就是(JavaSE的类--简单理解实现功能的一个类)

     

      轻量:就是小巧 开源  tomcat 相当于容器

       a,     EJB组件-----Javab(JavaSE写的类)-放企业组件  

       b,     web组件  

       Torncat 用的最多

    4.

        

      

     5,  UML:称统一建模语言或标准建模语言  

        协作图--是用例分析出来的 也称 产物

          

 

 

       这种图片是-----UI原型

 

 

 

    

 

 

 

 

   XML 称为可扩展标记语言 

    xml文件一般以配置文件而存在 (存储数据和传输数据) 但是: 一般用json存储

   XML 的规范

     1 , XML文档有且只有一个根标签,所谓的根标签就是一对<根标签></根标签>包含其他全部标签。比如<books></books>就是根标签了

      1 ,     2 

        2   ,XML文档内没一个开始标签都必须对应一个结束标签,也可以出现<books ……/>这种标签,叫做空元素        

      3 , XML的标签内的属性严格区分大写

      4 , XML标签的属性值必须用“”包含起来   --如果属性值本身被双引号 那么有必要                       使用单引号包围它

        xml元素可以在开始标签中包含属性(Attribute)

        属性提供了关于元素的额外(附加)信息 

 

         标签不嵌套(合理嵌套)

      5, 实体引用 --- 特殊符号

      6,在XML中空格会被保留 

  XML 的特征

    

  XML与html不同:     

 XML用途   

    1,作为web应用程序的配置文件--------作为工程,或者模块,框架的配置文件

      

      

   2, 作为企业平台之间数据交互的载体--数据共享,数据传输。数据交换格式

       

       

    3,作为HTML页面的数据支持,将数据从HTML分离----1.数据存储

       

  XML的结构和语法

   可以将XML文档看作是一种树形结构 从根部开始扩散 直到树的最底端 

     

    XML元素

         是指从开始标签到结束标签部分  

        每个元素可包含其他元素,文本或者两者的混合物    元素也可以拥有属性

    元素命名规则:

      a ,名称可以含字母,数字以及其他字符

      b, 名称不能以数字或者标点符号开始

      c  ,名称不能以含有xml开始

      d ,名称不能包含空格

      e , 可使用任意名称,没有保留字

    元素命名指南:

       

    xml属性和元素并没有明确界限   在xml中应该尽量避免使用属性

      如果信息感觉起来像数据 那么用子元素表达 -是首选方式 

        可能因为属性而引起的一些问题

          属性无法包含多重的值 ---元素可以

          属性无法描述树的结构,---元素可以

          属性不易扩展

          属性难以阅读和维护

    验证XML文档与查看

        

    DTD和Schema是两种常用的xml文件的约束文件,都是用来约定XML文件,目的是会提示使用者让使用者按照规定的格式去书写XML,验证XML文件有效性。主要的区别有一下几点:

        1、Schema遵循XML语法,学习成本低,不需要再学习新的语法;DTD和XML语法使用的是自己特殊的语法

        2、DTD只能指定元素含有文本,不定定义元素文本的类型,如字符型、整型、日期型、自定义类型等。Schema在这方面比DTD强大。

        3、Schema对命名空间的支持,如果出现两个相同的元素定义,使用命名空间可以完美的避免重复元素定义,而DTD不支持命名空间

    下面就同一个XML文件,分别使用DTD和Schema约束,W3C官方给出的示例

<?xml version="1.0"?>
<note>
<to>George</to>
<from>John</from>
<heading>Reminder</heading>
<body>Don't forget the meeting!</body>
</note>

DTD约束:

<!ELEMENT note (to, from, heading, body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>

Schema约束:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.w3school.com.cn"
xmlns="http://www.w3school.com.cn"
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>

 

 

    

 

 

 

 

 

    

 

   Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。通常模型对象负责在数据库中存取数据。
      View(视图)是应用程序中处理数据显示的部分。通常视图是依据模型数据创建的。
      Controller(控制器)是应用程序中处理用户交互的部分。通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据

  练习题1

   一:

      1,浏览器得到域名指向的IP后,浏览器会把我们输入的域名转化为HTTP的服务请求,例如,输入 www.dreamdu.com,可以转化为 http://www.dreamdu.com/,通过这种方式浏览器向服务器发出了请求。
由于输入的是域名,因此服务器接收到请求后,会查找域名下的默认网页(通常为default.php或default.html),如果直接输入http://www.dreamdu.com/default.php就直接查找这个页面。
      2,返回的请求通常是一些文件,包括文字信息(.html .css .asp文件等),图片,flash等(每个文件都要有一个唯一的网址,比如 http://www.dreamdu.com/xhtml/)
      3,浏览器将这些信息组织成用户可以查看的网页

    二:

    Get:是以实体的方式得到由请求URI所指定资源的信息,如果请求URI只是一个数据产生过程,那么最终要在响应实体中返回的是处理过程的结果所指向的资源,而不是处理过程的描述。
    Post:用来向目的服务器发出请求,要求它接受被附在请求后的实体,并把它当作请求队列中请求URI所指定资源的附加新子项,Post被设计成用统一的方法实现下列功能:
    1:对现有资源的解释
    2:向电子公告栏新闻组、邮件列表或类似讨论组发信息。
    3:提交数据块
    4:通过附加操作来扩展数据库
    从上面描述可以看出,Get是向服务器发索取数据的一种请求;而Post是向服务器提交数据的一种请求,要提交的数据位于信息头后面的实体中。

 

  具体:    

  GET方法:
    使用GET方法时,查询字符串(键值对)被附加在URL地址后面一起发送到服务器:
             /test/demo_form.jsp?name1=value1&name2=value2
特点:
  • GET请求能够被缓存
  • GET请求会保存在浏览器的浏览记录中
  • 以GET请求的URL能够保存为浏览器书签
  • GET请求有长度限制
  • GET请求主要用以获取数据
POST方法:
      使用POST方法时,查询字符串在POST信息中单独存在,和HTTP请求一起发送到服务器:
        POST /test/demo_form.jsp HTTP/1.1
        Host: w3schools.com
        name1=value1&name2=value2
特点:
  • POST请求不能被缓存下来
  • POST请求不会保存在浏览器浏览记录中
  • 以POST请求的URL无法保存为浏览器书签
  • POST请求没有长度限制
GET和POST的区别:
  GET POST
点击返回/刷新按钮 没有影响 数据会重新发送(浏览器将会提示用户“数据被从新提交”)
添加书签 可以 不可以
缓存 可以 不可以
编码类型(Encoding type) application/x-www-form-urlencoded
application/x-www-form-urlencoded or multipart/form-data. 请为二进制数据使用multipart编码
历史记录 没有
长度限制 没有
数据类型限制 只允许ASCII字符类型 没有限制。允许二进制数据
安全性 查询字符串会显示在地址栏的URL中,不安全,请不要使用GET请求提交敏感数据 因为数据不会显示在地址栏中,也不会缓存下来或保存在浏览记录中,所以看POST求情比GET请求安全,但也不是最安全的方式。如需要传送敏感数据,请使用加密方式传输
可见性 查询字符串显示在地址栏的URL中,可见 查询字符串不会显示在地址栏中,不可见
其他HTTP请求方式
方式 描述
HEAD 与GET请求类似,不同在与服务器只返回HTTP头部信息,没有页面内容
PUT 上传指定URL的描述
DELETE 删除指定资源
OPTIONS 返回服务器支持的HTTP方法
CONNECT 转换为透明TCP/IP隧道的连接请求
 

 

 

posted @ 2017-06-05 10:02  Huosirui  阅读(65)  评论(0编辑  收藏  举报