java web各个技术细节总结

时间:2021-01-07 15:04:46

 

HTML

   非表单标签

     1、b 粗体   u 下划线  i 斜体  del 删除效果

     2、a  超链接  href  target=-blank

     3、img 图片  

     4、frameset(frame)  框架集

      5、table 表格  tb tr td (table data cell)  colspan  rowspan

     6、ul li or 列表标签

     7、embed  用来播放MP3、视频等等。

     8、div   虚拟矩形区域      span  行内元素(不会换行)

   表单标签

     1、<form>  表单标签  action提交表单的地址   method表单提交的方式(get post) 

          name (命名方式 : regFrm)

      2、表单域(表单域一定要有name属性,否则该表单域的值不会被提交!)

          a、文本域( test单行文本域,password密码框,textarea多行文本域)

          b、radio单选按钮组(组,name属性一致即为一组,每一组只能提交一个值)

          c、checkbox复选框(组,name属性一致即为一组,每一组可以提交多个值)

          d、select.option 下拉框(可以实现多选一、多选多)

          c、file   文件域  用来实现文件上传(method-post,enctype-multipart/form-data)

          f、hidden    隐藏域(不需要用户输入,但是服务器有需要的值)

          g、reset   重置

          h  submit   提交按钮

          i   button    普通按钮(通常用来激活一个js函数)

    

CSS

      1、如何引用css信息

        a、通过html元素的:style属性  clas属性

        b、通过<style>块

        c、通过引用外部的css文件    <link>

      2、css选择器

        a、ID选择器  #myRed{colorred;}  <b id=myRed>我是红色吗?</b>

        b、class 选择器 .myRed(colorred;)  <b class=myRed>我是红色吗?</b>

        c、元素选择器  b(colorred; font-size:20px;)   <b>ddddd</b>

      3、css属性

         a、文本属性

         b、定位属性

         c、列表属性

         d、布局属性

         e、边框属性

         f、。。。。。。

 JAVAScript

    js的基本语法

      1、基本数据类型:undefined,null,number,字符串,boolean,Object

      2、变量的定义:var

      3、控制语句

      4、内置语句:eval()  escape(),unescape()区别?

      5、常用的对象:Date,Math,String,RegExp

      6、数组:var a=[]; var b=new Array();

      7、对象的定义。

      8、JSON  :

          var user={name:'阿旭',pwd:'123645',sleep:function(){

            alert("zzzzzzzz");

            }};

          user.sleep();

      9、函数也是对象

      10、继承是通过prototype属性来模拟。   String prototype trim=function(){

                            return this.replace("(^\s+)||(\s+$)","")}    

                    "   12356" . trim()

      11、对话框:alert 警告框,prompt询问框,

      12、浏览器对象

        a、window

            (1) open打开了窗口  close 关闭窗口

            (2) 定时操作:setTimeout,clearTimeout    setInterval  clearInterval

        b、navigator

        c、history

        d、location

 

    dom操作

       1、如何获得节点

          直接获得

            document.getElementByid()

            document.getElementsByName()  返回的是数组

            document.getElementsByTagName()  根据标签名字获取,返回的是数组

          间接获得

            通过父节点获得子节点

              childNode

              firstChild、lastChild

            通过子节点获得父节点

              parentNode

            兄弟节点

              nextSibling、preSibling

        2、如何操作节点

          a、判断节点类型:nodeType:  1元素节点  文本节点

          b、节点的属性:通过点操作符即可

          c、节点的文本内容:innerHTML

       3、改变DOM结构

          a、增加节点:appendChild  inserBefore

          b、删除节点:removeChild

          c、替换节点:replaceChild

      4、表单的操作

           a、通用属性:value,disabled。表单对象elements

           b、单选按钮和复选框操作的时候,一般此采用便利

          c、表单验证: 

              (1)  <submit    value=提交  onclick=“return check(this.form)”/>

               (2)  <form onsubmit="return check(this);">

 

HTTP协议

 

Tomcat服务器

    1、server.xml

    2、web.xml

    3、目录结构的作用:

        a、lib

             b、work:存放jsp编译后的java文件

        c、webapps:存放项目

          d、conf

 

Servlet

    

    浏览器发给服务器的请求内容。HttpServletRequest对象

      getParameter()  getParameterValues() 处理复选框

      作为作用域:setAttribute,getAttribute,removeAttribute

      getRequestURL、getRequestURI、getQueryStirng(获取请求行?后面的数据)、getContextPath

      获得客户端IP和端口:getRemote Addr.getRemotePort

      request.setCharacerEncoding   设置请求实体的编码。他对post有效,对get无效。要让对get方式提交的数据也有效。可以改动tomcat配置文件           server.xml对connection元素增加一个属性:useBodyEncodingForURI="true"        

      请求转发:request.getRequestDispatcher("2.jsp").forward(request,response);  

    服务器回送给浏览器的相应内容。HttpServletResponse对象

      setCharacterEncoding   setContextType("text/html;charset=utf-8")

      getWriter  输出文本  getOutputStream  输出非文本

      重定向:response.sendRedirect("http://www.baidu.com");

    servlet类读取web.xml中自己的配置信息。ServletConfig

      getInitParameter("ddd")

    需要读取web.xml中的公共信息<contxt-param>。  ServletContext(项目中只有一个)

       获得:this.getServletContext()

      作用域:可以被所有的servlet共享

      其他方法:getRealPath("1.jsp") 返回物理路径       获得子目录信息getResourcePaths

  将所有的servlet放入一个容器中统一管理。ServletContext

       保存以前操作的状态。   客户端保存Cookie  服务器保存Session

       客户端保存cookie的流程

      1、服务器端写代码:Cookie c=new Cookie("a","aaaaa"); c.getMaxAge(2000);

         response.setCookie(c);

      2、响应头中就会有一个:SetCookie :a=aaaaa

      3、浏览器受到以后,先放到内存中。如果cookie设置了有效期,则会写到硬盘的cookie文件中。

      4、浏览器以后访问服务器时,就会自动携带(在请求头中)有效的cookie信息。

 

      服务器端如何保存信息(session的跟踪机制):

        1、服务器会new 一个session对象,同时,指定一个id给session对象。

        2、通过响应头设置:setCookie:sessionId=163165454526321;

        3、浏览器收到sessionid这个信息,下次访问一定会携带sessionid

        4、服务器收到sessionid后,根据session找到对应的session对象。然后,就可以查看对象里面的内容。从而,确定之前我们进行了什么操作,也就是,实现了状态的保存!

 

  Servlet声明周期

      1、加载和实例化

         a、第一个请求的时候。(Servlet是单例,只有一个servlet对象)

         b、如果配置了<load-on-startup>,启动时加载

      2、初始化

         a、调用Init

      3、执行

         a、service  doGet  doPost  

      4、销毁

         a、destory

    过滤器:

        1、实现Filter

        2、doFilter

        3、配置位于<servlet>之前

    监听器:

        1、实现Listener

        2、配置位于<filter>之后,<servlet> 之前。

   JSP

    1、<%   %>

    2、<%=  %>

    3、<%!    %>

    4、<%-------%>  jsp注释

    5、<%@include  file="2.jsp" %>   静态导入。两个jsp翻译时java文件就合并到一起。

    6、<jsp:include> 相当于一个类调用另一个类

    7、jsp九个内置对象分别是:

     request,response,out,session,application,page,pageContext,Exception,config

 EL和JSTL

     EL表达式:操作的是作用域中的属性

       格式:${ } 

     JSTL标签库:

        foreach

        if

        choose  when  otherwise

        set

        import

  ajax:

    技术核心:通过XHR(XMLHttpRequest)对象发送请求,通过XHR对象接收响应。在通过js操作dom对象,接收新的数据,赋给某个元素。从而实现局部刷新效果。

    如何使用XHR对象:

      1、创建XHR对象

    var req
         if(window.XMLHttpRequest){
            req=new XMLHttpRequest();
          }else if(window.ActiveXobject){
                req=new ActiveXobject("Msxml2.XMLHTTP")
          }  
        

       2、创建一个请求

        req.open("get","DemoServlet?usename="+username.value+"&aaa="+new Date())

       3、设置监听,处理服务器返回的响应内容

        req.onreadystatechange=function(){

          if(4==req.readyState){

            if(200==req.status){

                .......

              }

            }

              }

        4、发送请求

           req.send(null);

  XML

    1、XML基本语法

    2、XML的解析(DOM方式、SAX方式   JDOM、DOM4J)

       3、dtd/schema 定义XML数据的语法规则

       4、xslt  定义xml数据的显示方式