JSP代码块

1.jsp脚本 (3种代码块)

1.<% JAVA代码块 %>
2.<%= JAVA变量或者表达式%>
3.<%! JAVA代码块%>
方法1:<% java代码 %>

特点:内部的java代码直接翻译到Servlet方法内部
如图所示:

jsp窗口:


jsp生成的Servlet窗口:


方法2:<%= java变量或者表达式 %>
特点:相当于out.print(java变量或者表达式)
jsp窗口:


jsp生成的Servlet窗口:


方法3:<%! java代码 %>
特点:存放在Servlet方法块里
jsp窗口:

jsp生成的Servlet窗口:


index.jsp代码

[plain]  view plain  copy
  1. <%@ page contentType="text/html;charset=UTF-8" language="java" %>  
  2. <html>  
  3. <head>  
  4.     <title>我的网页</title>  
  5. </head>  
  6. <body>  
  7. <%  
  8.     int i=0;  
  9.     out.print(i);  
  10. %>  
  11. <%=i+3  
  12. %>  
  13. <%!  
  14.     public class Student  
  15.     {  
  16.         int age;  
  17.         String name;  
  18.   
  19.         public Student(String name,int age) {  
  20.             this.age = age;  
  21.             this.name = name;  
  22.         }  
  23.   
  24.         public int getAge() {  
  25.             return age;  
  26.         }  
  27.   
  28.         public void setAge(int age) {  
  29.             this.age = age;  
  30.         }  
  31.   
  32.         public String getName() {  
  33.             return name;  
  34.         }  
  35.   
  36.         public void setName(String name) {  
  37.             this.name = name;  
  38.         }  
  39.   
  40.         @Override  
  41.         public String toString() {  
  42.             return "Student{" + "age=" + age + ", name='" + name + '\'' + '}';  
  43.         }  
  44.     }  
  45. %>  
  46.   
  47. <%  
  48.     Student me = new Student("神奇的我", 12);  
  49.     out.println(me.toString());  
  50. %>  
  51. </body>  
  52. </html>  

生成的index_jsp.java  代码 (具体可以在Tomcat的work下找到)

[java]  view plain  copy
  1. /* 
  2.  * Generated by the Jasper component of Apache Tomcat 
  3.  * Version: Apache Tomcat/9.0.1 
  4.  * Generated at: 2017-12-03 14:54:33 UTC 
  5.  * Note: The last modified time of this file was set to 
  6.  *       the last modified time of the source file after 
  7.  *       generation to assist with modification tracking. 
  8.  */  
  9. package org.apache.jsp.web;  
  10.   
  11. import javax.servlet.*;  
  12. import javax.servlet.http.*;  
  13. import javax.servlet.jsp.*;  
  14.   
  15. public final class index_jsp extends org.apache.jasper.runtime.HttpJspBase  
  16.     implements org.apache.jasper.runtime.JspSourceDependent,  
  17.                  org.apache.jasper.runtime.JspSourceImports {  
  18.   
  19.   
  20.     public class Student  
  21.     {  
  22.         int age;  
  23.         String name;  
  24.   
  25.         public Student(String name,int age) {  
  26.             this.age = age;  
  27.             this.name = name;  
  28.         }  
  29.   
  30.         public int getAge() {  
  31.             return age;  
  32.         }  
  33.   
  34.         public void setAge(int age) {  
  35.             this.age = age;  
  36.         }  
  37.   
  38.         public String getName() {  
  39.             return name;  
  40.         }  
  41.   
  42.         public void setName(String name) {  
  43.             this.name = name;  
  44.         }  
  45.   
  46.         @Override  
  47.         public String toString() {  
  48.             return "Student{" + "age=" + age + ", name='" + name + '\'' + '}';  
  49.         }  
  50.     }  
  51.   
  52.   private static final javax.servlet.jsp.JspFactory _jspxFactory =  
  53.           javax.servlet.jsp.JspFactory.getDefaultFactory();  
  54.   
  55.   private static java.util.Map<java.lang.String,java.lang.Long> _jspx_dependants;  
  56.   
  57.   private static final java.util.Set<java.lang.String> _jspx_imports_packages;  
  58.   
  59.   private static final java.util.Set<java.lang.String> _jspx_imports_classes;  
  60.   
  61.   static {  
  62.     _jspx_imports_packages = new java.util.HashSet<>();  
  63.     _jspx_imports_packages.add("javax.servlet");  
  64.     _jspx_imports_packages.add("javax.servlet.http");  
  65.     _jspx_imports_packages.add("javax.servlet.jsp");  
  66.     _jspx_imports_classes = null;  
  67.   }  
  68.   
  69.   private volatile javax.el.ExpressionFactory _el_expressionfactory;  
  70.   private volatile org.apache.tomcat.InstanceManager _jsp_instancemanager;  
  71.   
  72.   public java.util.Map<java.lang.String,java.lang.Long> getDependants() {  
  73.     return _jspx_dependants;  
  74.   }  
  75.   
  76.   public java.util.Set<java.lang.String> getPackageImports() {  
  77.     return _jspx_imports_packages;  
  78.   }  
  79.   
  80.   public java.util.Set<java.lang.String> getClassImports() {  
  81.     return _jspx_imports_classes;  
  82.   }  
  83.   
  84.   public javax.el.ExpressionFactory _jsp_getExpressionFactory() {  
  85.     if (_el_expressionfactory == null) {  
  86.       synchronized (this) {  
  87.         if (_el_expressionfactory == null) {  
  88.           _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory();  
  89.         }  
  90.       }  
  91.     }  
  92.     return _el_expressionfactory;  
  93.   }  
  94.   
  95.   public org.apache.tomcat.InstanceManager _jsp_getInstanceManager() {  
  96.     if (_jsp_instancemanager == null) {  
  97.       synchronized (this) {  
  98.         if (_jsp_instancemanager == null) {  
  99.           _jsp_instancemanager = org.apache.jasper.runtime.InstanceManagerFactory.getInstanceManager(getServletConfig());  
  100.         }  
  101.       }  
  102.     }  
  103.     return _jsp_instancemanager;  
  104.   }  
  105.   
  106.   public void _jspInit() {  
  107.   }  
  108.   
  109.   public void _jspDestroy() {  
  110.   }  
  111.   
  112.   public void _jspService(final javax.servlet.http.HttpServletRequest request, final javax.servlet.http.HttpServletResponse response)  
  113.       throws java.io.IOException, javax.servlet.ServletException {  
  114.   
  115.     final java.lang.String _jspx_method = request.getMethod();  
  116.     if (!"GET".equals(_jspx_method) && !"POST".equals(_jspx_method) && !"HEAD".equals(_jspx_method) && !javax.servlet.DispatcherType.ERROR.equals(request.getDispatcherType())) {  
  117.       response.sendError(HttpServletResponse.SC_METHOD_NOT_ALLOWED, "JSPs only permit GET POST or HEAD");  
  118.       return;  
  119.     }  
  120.   
  121.     final javax.servlet.jsp.PageContext pageContext;  
  122.     javax.servlet.http.HttpSession session = null;  
  123.     final javax.servlet.ServletContext application;  
  124.     final javax.servlet.ServletConfig config;  
  125.     javax.servlet.jsp.JspWriter out = null;  
  126.     final java.lang.Object page = this;  
  127.     javax.servlet.jsp.JspWriter _jspx_out = null;  
  128.     javax.servlet.jsp.PageContext _jspx_page_context = null;  
  129.   
  130.   
  131.     try {  
  132.       response.setContentType("text/html;charset=UTF-8");  
  133.       pageContext = _jspxFactory.getPageContext(this, request, response,  
  134.                 nulltrue8192true);  
  135.       _jspx_page_context = pageContext;  
  136.       application = pageContext.getServletContext();  
  137.       config = pageContext.getServletConfig();  
  138.       session = pageContext.getSession();  
  139.       out = pageContext.getOut();  
  140.       _jspx_out = out;  
  141.       out.write("\n");  
  142.       out.write("\n");  
  143.       out.write("<html>\n");  
  144.       out.write("<head>\n");  
  145.       out.write("<title>我的网页</title>\n");  
  146.       out.write("</head>\n");  
  147.       out.write("<body>\n");  
  148.       int i=0;  
  149.       out.print(i);  
  150.       out.write('\n');  
  151.       out.print(i+3);  
  152.       out.write('\n');  
  153.       out.write('\n');  
  154.       out.write('\n');  
  155.       Student me = new Student("神奇的我"12);  
  156.       out.println(me.toString());  
  157.       out.write("\n");  
  158.       out.write("\n");  
  159.       out.write('\n');  
  160.       out.write("\n");  
  161.       out.write("</body>\n");  
  162.       out.write("</html>\n");  
  163.      } catch (java.lang.Throwable t) {  
  164.       if (!(t instanceof javax.servlet.jsp.SkipPageException)){  
  165.         out = _jspx_out;  
  166.         if (out != null && out.getBufferSize() != 0)  
  167.           try {  
  168.             if (response.isCommitted()) {  
  169.               out.flush();  
  170.             } else {  
  171.               out.clearBuffer();  
  172.             }  
  173.           } catch (java.io.IOException e) {}  
  174.         if (_jspx_page_context != null) _jspx_page_context.handlePageException(t);  
  175.         else throw new ServletException(t);  
  176.       }  
  177.     } finally {  
  178.       _jspxFactory.releasePageContext(_jspx_page_context);  
  179.     }  
  180.   }  
  181. }  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值