zoukankan      html  css  js  c++  java
  • web后台知识点整理

    五、JEE  

    适用于创建server端的大型的软件服务系统

    1. JEE : JAVA  PLATFORM  ENTERPRISE  DEDITON

    .是一个规范集、技术集、框架集(API集)

    一种技术相应一种或多种规范

         框架是可以完毕一定功能的半成品

        1.长处:完毕一定的功能、提供一个经良的应用程序架构

       2.框架都是以接口的形式出现

        3应该了解框架完毕的功能、框架的API接口、框架的功能是怎么实现的

    .C/S B/S 模式

         a.   C/S client/server client也參与程序的执行与计算(富client、瘦client)

     b.  B/S border/server 

    4、企业级应用(大规模的应用)

         1.生命周期长、稳定、可靠

         2.组件往往分布在异构的环境中,可以跨平台

         3.维护性、扩展性、重用性

         4.有事务、安全、线程

    5、业务逻辑

        划分模块是 按照业务逻辑,所谓判定业务 就是起具有下面特征:   

        1.业务流程

        2.业务推断

    6、平台(角色)

       1. 平台供应商。

    提供满足API集实现的厂商(BEA weblogin IBM webshphere

       2.组件供应商 

       3.组件装配人员

       4.部署人员

       5.系统管理人员

       6.工具供应商 提供开发组件所使用的工具(Jbuildereclipse) 

    7java技术分布(设计架构 模块内部设计)

       1.表现层 Servlet、 Jsp、 JavaBean、 Taglib

       2.逻辑层 EJB(SessionBean)

       3.数据层 ( JDBC EJBEntityBean))

       4.服务 JTAJAVA事务架构) JTSJAVA事务服务) JAASJAVA授权与验证服务) 

       5.分布式通讯 RMIIIOP+JNDI JAXP JAVA 的 XML 架构

          JAVAMAIL(邮件服务)、JMS(消息服务)、IDLCJCAJAVA连接器框架 (成))                    

    8JEE的体系结构: 是一种组件的体系结构

        1.组件    : 可以完毕一定功能的封状体(独立的功能的集合)

                     不能单独执行必须执行在容器上

                     web组件 ejb组件

    2.体系结构: 应用组件之间的关系  

    3.容器    : 提供组件的执行环境,并对组件进行管理(一段程序)

                管理组件的生命后期

    不能单独执行必须执行在server上

    程序通过上下文来调用容器(context

    容器通过回调的方法来调用组件

                web容器 ejb容器

    4.server  :提供容器的执行环境。提供大量的JEE基础服务             

                    webserver(仅仅提供web服务)

                    jeeserver(提供webjee服务)

    9部署描写叙述  :(用xml来描写叙述)

                   组件向容器描写叙述自己,使容器可以认识组件

                   容器通过回调的方法来调用组件

                   回调:由程序实现的方法,程序自己不调,由容器自己主动调用的方法

    10JAVA 关于XML 的 API

                   JAXPJava  API for  xml prasing )解析xml文件以便读写    

                   JAXB (Java  API  for  xml Binding ) 映射技术

                        JAVA 数据映射到xml文件

    11webservice :提供web服务 (功能的重用 相同的功能仅仅存在一份)

     

       机制例如以下:

              

    1. server注冊uddi,来展示自己的功能

    2. client通过uddi来寻找自己想要的功能

    3. uddi返回信息给client

    4. client通过webservice来调用server的方法,在调用时封装了RPC、RMI、JNDI(SOAP)

    5.  调用是屏蔽了client与server端的差异,通过统一的rmi来进行通讯

     12、RMI远程方法的调用机制

        比如:A主机有B()方法,C主机有D()方法,A 想调用C主机的D方法

             webservice 又出现不同的版本号    集成技术     SOA

    13、JAVA的体系结构

      

    14、学习方法

      1.规范(熟记) 2.熟悉API   3.多练   4.多想

    六、servlet

    1:什么是B/SC/S

     Browser/Server浏览器/server(瘦client)     Custom/Server client/server(胖client)

    2:描写叙述war包、jar包、ear包的结构

    war-

    --myweb

    ---WEB-INF

    ----web.xml

    ----lib

    ----classes

    jar-

    --myjar

    ---META-INF

    ----.MF

    ear-

    --META-INF

    ---Application.xml

    --.war

         --.jar

    3:什么是servletservlet主要做什么?

    网络服务的请求和响应方式

    通过WEB浏览器调用servlet的方法,主要是在服务端写动态代码与server端交流。

    4servlet cgi相比的长处?servlet的缺点

    长处:

     性能(线程比进程更快)

     可伸缩

     Java强健且面向对象

     Java平台独立

    缺点:

       处理代码(业务逻辑)与HTML(表现逻辑)混合在一起

    5:经常使用的servlet包的名称是?

    javax.servlet

    javax.servlet.http

    6:描写叙述servlet接口的层次结构?

    Servlet

    --genericServlet

    --HttpServlet

    --自己的servlet

    ServletRequest

    ServletResponse

    7:对照get方法和post方法?

    get方法: 请求对server没有负面影响,Form数据量小,数据的内部应在url中可见;

                  明文传输。安全度低

    post方法:请求的数据过程改变server的状态,Form数据量大,数据的内部应在url

    中不可见,安全度高。

    8:归类描写叙述HttpServletRequest接口都完毕那些功能

    1.读取和写入HTTP头标 

    2.取得和设置cookies

    3.取得路径信息 

    4.标识HTTP会话。

    9:归类描写叙述HttpServletResponse接口都完毕那些功能

    HttpServletResponse增加表示状态码、状态信息和响应头标的方法,它还负责对URL中写入一Web页面的HTTP会话ID进行解码。

    10:描写叙述Service方法所完毕的基本功能?默认是在那里实现的?

    service方法是在servlet生命周期中的服务期,依据HTTP请求方法(GETPOST等),将请求分发到doGetdoPost等方法

    HttpServlet类实现

    11:怎样开发自己的Servlet?描写叙述应该做的步骤和每步须要完毕的工作

    1.jar

      1)构建开发环境 common-->lib-->servlet--->api.jar

      2.开发servlet

          1)首先继承HttpServlet

          2)实现 doGet() doPost()

      3)定义 doGet() doPost()

      3.建个web应用

      4.部署

    安装web容器。比如Tomcat

    Tomcatwebapps文件夹下新建一个文件夹作为web程序的根

    在根下新建一个名为WEB-INF的目录,里面建立一个web.xml的文件、一个classes的目录、一个lib目录

    依照servletDTD配置web.xml文件

    把编译好的servletclass文件拷贝到classes文件夹下

    lib文件存放程序所须要的jar

    12:为何servlet须要部署描写叙述?

     servlet须要配置web.xml文件来使容器认识servlet程序

    13Servlet主要的描写叙述应该是?请写出来

    <servlet>

    <servlet-name>Hello</servlet-name>

    <servlet-class>sl314.web.FormBasedHello</servlet-class>

    </servlet>

    <servlet-mapping>

    <servlet-name>Hello</servlet-name>

    <url-pattern>/greeting</url-pattern>

    </servlet-mapping>

    14:怎样在html中使用servlet

    FORM标记

    ACTION– 指定form信息的目的地(相关的URL

    METHOD – 指定HTTP方法(GETPOST

    语法:

    <FORM ACTION=’servlet-URL’ METHOD=’{GET|POST}’>

    {HTML form tags and other HTML content}

    </FORM>

    15:怎样接受request中的參数

    String userName = (String)request.getParameter("userName")方法

    16:怎样接受requestheader的值

    request.getHeader(name);

    request.getHeaders(names);

    17:怎样输出html

    PrintWriter pw = response.getWriter();

    pw.write("<html>");

    pw.write("Hello");

    pw.write("</html>");

    18:怎样设置输出的contentType

    response.getContentType()

    19:描写叙述servlet的生命周期?

    生命周期是指servlet实例在web容器中从:首次创建调用init方法開始初始化期,经过service方法执行期,一直到destory方法销毁期 结束

    servlet实例的生命周期由web容器来管理

    20:描写叙述init,service,destroy方法的功能和特点

    init方法:   是在servlet实例创建时调用的方法,用于创建或打开不论什么与servlet相的

    资源和初始化servlet的状态Servlet规范保证调用init方法前不会处理

    不论什么请求

    service方法:是servlet真正处理client传过来的请求的方法,由web容器调用,

    依据HTTP请求方法(GETPOST等),将请求分发到doGetdoPost等方法

    destory方法:是在servlet实例被销毁时有web容器调用。Servlet规范确保在

    destroy方法调用之前全部请求的处理均完毕须要覆盖destroy方法的情况:释放不论什么在init方法中打开的与servlet相关的资源存储servlet的状态

    21:什么是回调方法?有什么特点?

    由容器来调用程序的方法

    由容器来决定什么时候来调

    22:怎样设置初始化servlet的參数?

    <init-param>

           <param-name>greetingText</param-name>

           <param-value>Hello</param-value>

      </init-param>

    23:怎样获取servlet初始化的參数

    public void init() {

         greetingText = getInitParameter("greetingText");

         System.out.println(">> greetingText = '" + greetingText + "'");

    }

    24ServletConfig接口默认在那里实现的

    GenericServlet类实现ServletConfig接口

    25:什么是ServletContext?有什么作用?

    Servlet上下文 

    ServletContext对象是Web应用的执行时表示。可通过事实上现Web应用中的资源共享

    26:怎样訪问ServletContext接口?是在那里实现的?

    Servlet通过getServletContext()方法訪问

    GenericServlet类实现

    27ServletContext接口的功能包含?分别用代码演示样例

    仅仅读初始化參数: getInitParameter(name:String) : String

    getInitParameterNames() : Enumeration

    读写訪问应用级属性:getAttribute(name:String) : Object

    setAttribute(name:String, value:Object)

    getAttributeNames() : Enumeration

    仅仅读訪问文件资源: getResource(path) : URL

    getResourceAsStream(path) : InputStream

    web应用日志文件:log(message:String)

    log(message:String, Throwable:excp)

    28:怎样设置Context的參数?

    <context-param>

    <param-name>catalogFileName</param-name>

    <param-value>/WEB-INF/catalog.txt</param-value>

    </context-param>

    29:怎样获取Context设置的參数值?

    ServletContext context = sce.getServletContext();

        String catalogFileName = context.getInitParameter(“catalogFileName”);

    30:描写叙述Web应用的生命周期?

    Web容器启动时。初始化每一个Web应用

    能够创建"监听器"对象触发这些事件;

    Web容器关闭时。销毁每一个Web应用

    31:怎样用代码实现监控Web应用的生命周期?

    public class Test implements ServletContextListener{

    public void contextInitialized(ServletContextEvent sce) {

    //

    }

    }

    <listener>

    <listener-class>

        com.csy.Test

    </listener-class>

    </listener>

    32web应用中例如以下错误码示什么意思:400401404500

    400    Bad Request

    401    Unauthorized

    404    Not Found

    500    Internal Server Error

    33:描写叙述Web应用中用声明方式来进行错误处理的两种方法

    使用error-page元素声明一个给定HTTP状态码的处理器

    <error-page>

     <error-code>404</error-code>

     <location>/error/404.html</location>

    </error-page>

    能够声明随意数量的错误页面。但一个给定的状态码仅仅能相应一个页面

    使用exception-type元素声明给定Java异常的处理器

    <error-page>

     <exception-type>

            java.lang.ArithmeticException

     </exception-type>

    <location>/error/ExceptionPage</location>

    </error-page>

    能够声明随意数量的错误页面,但一个给定的异常类型仅仅相应一个页面

    不能使用父类捕获多种异常

    34:描写叙述记录异常日志的方法,都位于那些接口?

    GenericServlet

    log(message:String)

    log(message:String, Throwable:excp)

    ServletContext

    log(message:String)

    log(message:String, excp:Throwable)

    35:什么是会话?

    Web容器可为每一个用户保存一个"会话对象"。用来存储特定用户的会话信息

    36:怎样获得会话?

    HttpSession session = request.getSesseion();

    37:会话Api的基本功能?

    getID() :String

    isNew() :boolean

    getAttribute(name):Object

    setAttribute(name,value)

    removeAttribute(name)

    38:怎样销毁会话?

    1、可使用部署描写叙述符控制全部会话的生命周期

    <session-config>

        <session-timeout>10</session-timeout>

        </session-config>

    2、可使用控制特定会话对象的生命周期HttpSession接口

    invalidate()

        getCreationTime() :long

    getLastAccessedTime() :long

    getMaxInactiveInterval() :int

        setMaxInactiveInterval(int)

    39:描写叙述会话保持状态的基本原理

            client                                server

                        

     request      

                 response (sessionid)

                 request  (cookies) 

       当client第一次请求时。server创建一个sessionrequest绑定,用响应对象response来返回sessionid 放到client的cookies中存储下来。下次在发送请求时,直接依据sessionid来检索server的会话(每次请求都会将全部的cookies带到server端)

    40:怎样读写cookie,代码演示样例

    写:String name = request.getParameter("firstName");

    Cookie c = new Cookie("yourname", name);

    response.addCookie(c);

    读:Cookie[] allCookies = request.getCookies();

    for ( int i=0; i < allCookies.length; i++ ) {

              if ( allCookies[i].getName().equals(“yourname”) ) {

                name = allCookies[i].getValue();  

              }

        }

    41:什么是URL重写。怎样实现。代码演示样例

    Cookie不能使用时。可使用URL重写 request.encodeURL();

    客户在每一个URL的后面追加额外的数据

    server将此标识符与其存储的有关会话数据相关联

    http://host/path/file;jsessionid=123

    41:描写叙述web应用的4种认证技术

    BASIC – Web浏览器接收username和口令,将其以明码方式发送给Webserver

    DIGEST – Web浏览器接收username和口令,使用加密算法将此数据发送给Webserver

    FORM – Web应用提供发送给Web浏览器的HTML form

    CLIENT-CERT – Web容器使用SSL验证用户。服务端和client的链路保护

    42:什么是授权,什么是验证?

    授权是分局用户角色划分web资源的过程,其标识web应用中的安全域   分配权限

    web容器使用厂商指定的机制验证用户的角色   匹配权限

    43:什么是HTTPS

    HTTPS (Secure Hypertext Transfer Protocol) 是使用SSL协议的HTTP

    44:什么是审计?

    也就是訪问跟踪。是为web应用的每次訪问保留记录的过程

    45:怎样实现声明性授权

    1、标识web资源集

    2、标识角色

    3、将web资源集影射到角色

    4、标识每一个角色中的用户

    在 web.xml里配

    46:描写叙述servlet并发问题?

    多个同类线程执行,能够共享同一个Servlet实例,共享的数据和资源未合理同步,可能会引起数据的冲突

    47:描写叙述Web应用中的六种属性范围

    局部变量(页面范围)

    实例变量

    类变量

    请求属性(请求范围)

    会话属性(会话范围)

    上下文属性(应用范围)

    48:支出上述六种那些是线程安全的

    局部变量和请求属性

    49:什么是STM?怎样实现?

    SingleThreadModel接口

    能够实现SingleThreadModel接口保证某一时刻仅仅有一个请求运行service方法

    50:怎样实现并发管理?

    尽可能使用局部和请求属性

    使用synchronized语法控制并发

    尽可能降低同步块和同步方法的使用

    使用正确设置了线程安全的资源类

    六、Jsp

    1:什么是Jsp?

    Java Server Page 结合javahtml在服务端动态生成web页面的技术

    2:描写叙述Jsp页面的执行过程?

    第一步:

    请求进入Web容器。将JSP页面翻译成Servlet代码

    第二步:

    编译Servlet代码,并将编译过的类文件装入Web容器(JVM)环境

    第三步:

    Web容器为JSP页面创建一个Servlet类实例。并运行jspInit方法

    第四步:

    Web容器为该JSP页面调用Servlet实例的_jspService方法。将结果发送给用户

    3:描写叙述Jsp页面的五类脚本元素的功能、写法、并演示样例

    凝视  <%--    --%>

    <HTML>

    <%-- scripting element --%>

    </HTML>

    指令标记  <%@   %> 指令标记影响JSP页面的翻译阶段

    <%@ page session=”false” %>

    声明标记  <%!   %> 声明标记同意JSP页面开发者包括类级声明

    <%! public static final String DEFAULT_NAME = “World”; %>

    脚本标记  <%    %> 脚本标记同意JSP页面开发者在_jspService方法中包括随意的Java代码

    <% int i = 0; %>

        表达式标记 <%= %>  表达式标记封装Java执行时的表达式。其值被送至HTTP响应流   <B>Ten is <%= (2 * 5) %></B>

    4:描写叙述Jsp页面中的凝视种类和写法

    HTML凝视

    <!-- HTML凝视显示在响应中 -->

    JSP页面凝视

    <%-- JSP凝视仅仅在JSP代码中可见,不显示在servlet代码或响应中。--%>

    Java凝视

    <%

    /* Java凝视显示在servlet代码中。不显示在响应中

    */

    %>

    5:描写叙述Jsp页面的指令标记的功能、写法、并演示样例

    指令标记影响JSP页面的翻译阶段

    <%@ page session=”false” %>

    <%@ include file=”incl/copyright.html” %>

    <%@ taglib  %>

    6:描写叙述Jsp页面的声明标记的功能、写法、并演示样例

    声明标记同意JSP页面开发者包括类级声明

    写法:

    <%!  JavaClassDeclaration %>

    例:

    <%! public static final String DEFAULT_NAME = “World”; %>

    <%! public String getName(HttpServletRequest request) {

                    return request.getParameter(“name”);

        }

    %>

    <%! int counter = 0; %>

    7:描写叙述Jsp页面翻译成Servlet的规则

    jsp中的凝视标记被翻译成Servlet类中的凝视

    jsp中的指令标记被翻译成Servlet类中的import语句等

    jsp中的声明标记被翻译成Servlet类中的属性

    jsp中的脚本标记被转移到Servlet类中service方法中的代码

    jsp中的表达式标记被翻译成Serlvet类中的write()或者print()方法括号里的代码

    8:描写叙述Jsp页面的九个提前定义变量的功能、使用方法、并演示样例

    request       与请求相关的HttpServletRequest对象

    response      与送回浏览器的响应相关的HttpServletResponse对象

    out          与响应的输出流相关的JspWriter对象

    session       与给定用户请求会话相关的HttpSession对象,该变量仅仅在JSP页面參

    与一个HTTP会话时有意义

    Applicationn    用于Web应用的ServletContext对象

    config        与该JSP页面的servlet相关的ServletConfig对象

    pageContext   该对象封装了一个JSP页面请求的环境

    page         该变量与Java编程语言中的this变量等价

    exception     由其他JSP页面抛出的Throwable对象,该变量仅仅在

    "JSP错误页面"中可用

    9page指令的功能,写法、并演示样例,并描写叙述它的例如以下属性的功能和使用方法:importsessionbuffererrorPageisErrorPageContentTypepageEncoding

    import       import 定义了一组servlet类定义必须导入的类和包。值是一个由

    逗号分隔的全然类名或包的列表。

     session      session 定义JSP页面是否參与HTTP会话。值能够为true(缺省)

    false

    buffer       buffer 定义用于输出流(JspWriter对象)的缓冲区大小,值能够为

    noneNkb,缺省为8KB或更大。

    errorPage     用来指定由还有一个jsp页面来处理全部该页面抛出的异常

    isErrorPage   定义JSP页面为其他JSP页面errorPage属性的目标,值为true

    false(缺省)。

    ContentType   定义输出流的MIME类型,缺省为text/html

    pageEncoding  定义输出流的字符编码。缺省为ISO-8859-1

    10:描写叙述MVC各部分的功能?

    Model

       封装应用状态

       响应状态查询

       暴露应用的功能

        Controller

       验证HTTP请求的数据

       将用户数据与模型的更新相映射

       选择用于响应的视图

        View

       产生HTML响应

       请求模型的更新

       提供HTML form用于用户请求

    11:什么是Model 1结构,以及结构中各部分的功能

    Model1中使用jsp来处理web应用中的视图控制部分

        jsp+javabean

    12:什么是JavaBean?

    用户能够使用JavaBean将功能、处理、值、数据库訪问和其它不论什么能够用java代码

    创造的对象进行打包,而且其它的开发人员能够通过内部的JSP页面、Servlet、其

    JavaBeanapplet程序或者应用来使用这些对象。

    13JavaBean的规则?

    使用getset方法定义属性

    一个无參构造方法

    public实例变量

    14:什么是jsp标准动作?包括那些?分别都是什么功能?怎样使用?

    JSP页面中使用类似于XML的标记表示执行时的动作

    jsp:userBean

    jsp:setProperty

    jsp:getProperty

    jsp:parameter

    jsp:include

    jsp:forward

    15:用代码示比例如以下标准动作的使用:useBeangetPropertysetProperty

    <jsp:useBean

    id="myForms" 

    class="com.base.mystruts.forms.MyActionForm" scope="session" />

    <jsp:setProperty name="MyForms" property="name" />

    <jsp:getProperty name="MyForms" property="id" />

    16:描写叙述说明Bean的四种scope

    Request

    Session

    Application

    Page

    17:描写叙述说明页面上的字段和Bean中属性的相应规则

    id javabean的变量名

    classjavabean类的全路径

    scopejavabean的应用范围

    name指所用到的javabean的变量名

    propertyjavabean中的属性

    18:描写叙述useBean动作的处理过程

    使用id声明变量

    试图在指定的范围内查找对象

    假设没找到

       创建一个类的实例

       运行useBean标记体初始化对象 

    假设找到

       将对象转换为类指定的类型

    19:描写叙述forward动作的功能

    使用脚本代码处理请求时。可用jsp:forward 动作产生一个不同的视图,

    使用同一个request

    20:什么是Model 2结构。以及结构中各部分的功能

    jsp+javabean+servlet

    Model 2架构使用MVC模式。JSP页面充当视图,Servlet充当控制器

    Servlet控制器:

    验证HTML form数据

    调用模型中的业务服务

    存储请求(或会话)范围内的域对象

    选择下一个用户的视图

    JSP页面视图:

    使用用户界面(在HTML中)

    訪问域对象

    21:怎样获得分发器?分发器的功能?

    上下文对象中的分发器:

    ServletContext context = getServletContext();

    RequestDispatcher servlet = context.getNamedDispatcher("MyServlet");

    servlet.forward(request, response);

    请求对象中的分发器:

    RequestDispatcher view = request.getRequestDispatcher("tools/nails.jsp");

    view.forward(request, response);

    能够将请求转发到还有一个jsp页面

       Client      request(1)        aServlet   

                         request(2)         bServlet

                                 

                                                requers(1)

                                        RequestDispatcher

                当从client发出请求到request1),a再请求brequest2)就变成两个不同的请求。用RequestDispatcher来保持原来的请求

                 (在不同的servlet之间保持同一个请求时用RequestDispatcher

            RequestDispatcher   rd  =  request.getRequestDispatcher(“string”);

            Rd.forword(request);//前往下一个请求 到下一个servlet

    22:描写叙述Jsp中引入另外页面的两种方法?

    <%@ include%>

    <jsp:include>

    23:比較上述两种方法的特点

    <%@ include%> 再编译期间把还有一个页面全然嵌入这个页面,能够说是一个页面

                       在这里能够共享变量

    <jsp:include>    动态的再执行期间把还有一个页面增加这个页面,能够说是两个

    页面,不能够共享变量

    24:什么是自己定义标记

    自己定义标记库是一个Web组件。

    包含:

    一个标记库描写叙述符文件

    全部相关的标记处理器类

    25:描写叙述使用自己定义标记的步骤,以及每步具体的工作

    1.自己定义标记遵循XML标记规则

          自己定义标记使用XML规则。

        标记名属性,以及前缀都是大写和小写敏感;

        标记嵌套规则;  

    2.须要在JSP页面和Web应用程序的部署描写叙述符中声明标记库

          taglib

          在部署描写叙述符中使用taglib元素声明web应用程序使用一个标记库。

          在jsp页面中使用taglib指令表明要使用哪个标记库及对应的自己定义标记所

    使用的前缀; 

          使用自己定义的空标记 

          使用自己定义的条件标记 

          使用自己定义的迭代标记 

       3.JSP页面中可使用自己定义的空标记

          getPepParam()标记:将命名的请求标志插入的输出中。

       4.JSP页面中使用自己定义标记。可有条件地运行HTML响应的某部分

        heading标记:生成一个隐藏的Html table创建一个彩色且格式化过的页表头

       5.JSP页面中使用自己定义标记,可迭代运行HTML响应中的某部分

         IterateOverErrors标记:stutas中的全部异常现象进行迭代;

       taglib

         1.把类烤过去

         2.Taglib的描写叙述文件(*.tld)放在web-inf根文件夹下

         3.web.xml里配置

         4.回到页面去,定义Taglib使用的前缀

         5.直接使用,一定要结尾;

     

     

    以下将解说web前端的技术知识点

  • 相关阅读:
    学习制作iOS程序第八天:首页之本地缓存(26)
    学习制作iOS程序第五天:首页之推荐二手房(18)
    Webpack探索【15】--- 基础构建原理详解(模块如何被组建&如何加载)&源码解读
    计算税收在线工具
    XSS详解【3】---防御防御思路和防御方法
    XSS详解【2】---主要危害及其原理
    XSS详解【1】---基本概念和攻击原理
    11111111--临时保存
    Webpack探索【14】--- Typescript构建详解
    Webpack探索【13】--- Shimming详解
  • 原文地址:https://www.cnblogs.com/lxjshuju/p/7063369.html
Copyright © 2011-2022 走看看