zoukankan      html  css  js  c++  java
  • javaEE与JSP基础

     JSP基础

    1. jsp的作用:
      * Servlet:
        > 缺点:不适合设置html响应体,需要大量的response.getWriter().print("<html>")
        > 优点:动态资源,可以编程。
      * html:
        > 缺点:html是静态页面,不能包含动态信息
        > 优点:不用为输出html标签而发愁
      * jsp(java server pages):
        > 优点:在原有html的基础上添加java脚本,构成jsp页面。

    2. jsp和Servlet的分工:

     
      * JSP:
        > 作为请求发起页面,例如显示表单、超链接。
        > 作为请求结束页面,例如显示数据。
      * Servlet:
        > 作为请求中处理数据的环节。

    3. jsp的组成
      * jsp = html + java脚本 + jsp标签(指令)
      * jsp中无需创建即可使用的对象一共有9个,被称之为9大内置对象。例如:request对象、out对象
      * 3种java脚本:
        > <%...%>:java代码片段(常用),用于定义0~N条Java语句!方法内能写什么,它就可以放什么!
        > <%=...%>:java表达式,用于输出(常用),用于输出一条表达式(或变量)的结果。response.getWriter().print( ... );这里能放什么,它就可以放什么!
        > <%!...%>:声明,用来创建类的成员变量和成员方法(基本不用,但容易被考到),类体中可以放什么,它就可以放什么!


        案例:演示jsp中java脚本的使用!

    <%int a=10 ;%>
        
        <% out.print(a); %>
        
        <%= a%>
        <%! 
        private String hello = "world";
        public String sayHello() {
          return hello;
        }      
        %>
        <%=sayHello()%>

        案例:演示jsp与servlet分工!

          代码:

    from.jsp//提交数据

     <form action="/Day11_1//Aservlet" method="post">
          整数1:<input type="text"  name="int1"/>
          整数2:<input type="text"  name="int2" /><br>
          <input type="submit" value="相加" />
      </form>

    result.jsp//显示结果

    <body>
        <% Integer a=(Integer)request.getAttribute("result") ;%>
        <%=a%>
      </body>

    Aservlet//处理数据

     1 public void doPost(HttpServletRequest request, HttpServletResponse response)
     2             throws ServletException, IOException {
     3              //获取数据
     4            String  int1=request.getParameter("int1");
     5            String  int2=request.getParameter("int2");
     6            if(int2==null||int1==null){
     7                System.out.println("输入值为空");
     8            }else{
     9                //转换数据为int
    10            int i1=Integer.parseInt(int1);
    11            int i2=Integer.parseInt(int2);
    12            //数据相加
    13            int sum=i1+i2;
    14            //保存数据
    15            request.setAttribute("result", sum);
    16            //请求包含
    17            request.getRequestDispatcher("/jia/result.jsp").forward(request, response);
    18            }
    19     }

     4. JSP真身

       

      * JSP也是Servlet
      * JSP会在第一次被请求时编码成.java,再编码成.class文件,它其实就是一个Servlet,在处理请求时执行service()方法。
      查看真身可以得到,jsp中有9个对象可以无需创建即可使用,它们就是jsp九大内置对象。
    5. JSP注释
      * <!-- -->,html注释,不是JSP注释,它会出现在JSP的真身中,并发送到客户端,但客户端浏览器不会显示它。
      * <%-- --%>,JSP注释,它不会出现在JSP真身中,也就不可能发送到客户端浏览器了。

  • 相关阅读:
    hihoCoder 1148 2月29日
    Java 之常用运算符(3)
    Java 之变量和常量(2)
    Codeforces Round #414 A. Bank Robbery
    Codeforces Round #413 B. T-shirt buying
    C++中 set(集合容器)的用法
    Codeforces Round #411 B. 3-palindrome
    Codeforces Round #411 A. Fake NP
    Codeforces Round #413 A. Carrot Cakes
    Codeforces Round #412 B. T-Shirt Hunt
  • 原文地址:https://www.cnblogs.com/lxp503238/p/6542674.html
Copyright © 2011-2022 走看看