jsp技术

1.什么是JSP

JSP全名是Java Server Page,它是建立在Servlet规范之上的动态网页开发技术。在JSP文件中,HTML代码与Java代码共同存在。Html代码用来实现网页中静态内容的显示,Java代码用来实现网页中动态内容的显示。
实例:

<%@ page language="java"import="java.util.*"pageEncoding="UTF-8"%>

<html>
 <head>   
    <title>My JSP 'simple.jsp' starting page</title> 
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">   
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is mypage">
    <!--
    <link rel="stylesheet"type="text/css" href="styles.css">
    -->
 </head>
 <body>
 当前访问时间是:
    <%
       out.print(newjava.util.Date().toLocaleString());
%>
 </body>
</html>

2.jsp运行原理

1.servlet运行原理:首先Servlet运行时需要在web.xml配置文件中查找匹配的,然后将请求发给指定的Servlet程序去处理。JSP则不需要在web.xml配置,因为在Tomcat服务器的web.xml中实现了JSP的相关配置.

<servlet>
<servlet-name>jsp</servlet-name>     
<servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
<init-param>
<param-name>fork</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>xpoweredBy</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>3</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>jsp</servlet-name>
<url-pattern>*.jsp</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>jsp</servlet-name>
<url-pattern>*.jspx</url-pattern>
</servlet-mapping>

2.jsp所生成的servlet代码 当用户第一次访问JSP页面时,该页面都会被JspServlet翻译成一个Servlet源文件,然后将源文件编译为.class文件.

myeclipse生成的源码:Servlet源文件和.class文件都放在“tomcat安装目录/work/Catalina/localhost/应用名/”目录下。

idea生成的源码:C:\Users\Administrator.IntelliJIdea2017.3\system\tomcat\Tomcat8047demo1\work\Catalina\localhost\ROOT\org\apache\jsp

3.其实JSP文件也可以像Servlet程序一样,在web.xml文件中进行注册和映射虚拟路径。注册JSP页面的方式与Servlet类似,只需将元素修改为元素即可。

<servlet>
<servlet-name>SimpleServlet</servlet-name>
<jsp-file>/simple.jsp</jsp-file>
</servlet>
<servlet-mapping>
<servlet-name>SimpleServlet</servlet-name>
<url-pattern>/SimpleServlet</url-pattern>
</servlet-mapping>

3.jsp基本语法

3.1.JSP模板元素

JSP页面中的静态HTML内容称之为JSP模版元素。JSP模版元素定义了页面的结构和外观。

3.2.Jsp脚本

(1) <%=expression%>:JSP表达式 JSP表达式(expression)用于将程序数据输出到客户端,数据封装在“<%=” 开头 “%>”结尾的标记中。 然后针对JSP表达式的使用,重点讲解以下几点:

l 表达式将要输出的变量或者表达式直接封装在“<%”和“%>”标记中。

l 表达式中的变量或表达式的计算结果将被转换成一个字符串,然后插入JSP页面输出结果的相应位置处。

l JSP表达式中的变量或表达式后面不能有分号(;)

(2)JSP脚本片段

JSP脚本片断是指嵌套在<% 和%>之中的一条或多条Java程序代码,这些Java代码必须严格遵守Java语法规范,否则编译会报错。

然后针对JSP脚本片段的使用,重点讲解以下两点:

l JSP脚本片断是嵌套在<% 和 %>之中的Java程序代码,必须严格遵守Java语法规范,否则编译会报错。每个执行语句后都使用分号(;)结束。

l 单个脚本片断中的Java语句可以是不完整的,但是,多个脚本片断组合后的结果必须是完整的Java语句。

例:

<h2>标题党</h2> <%int x=3; Out.println(x); %>

一个jsp页面中,可以出现多个脚本片段,在两个或者多个脚本片段之间可以嵌套文本、html标记等。

例:

<%int x=3; %><h2>标题党</h2> <% Out.println(x); %>

(3)JSP声明

当JSP页面被翻译成Servlet程序时,JSP中包含的脚本片段、表达式、模板元素都将转换为Servlet中jspService()方法的程序代码。这时,JSP脚本片段中定义的变量都将成为jspService()方法中的局部变量,而JSP脚本片段中定义的方法都将插入_jspService()方法,从而会出现程序的方法再定义方法,这样的语法是错误的。 为了解决上述问题,在JSP技术中提供了声明

在声明中定义了getS方法。

<%!

    public static String getS(){

        return "abc";

    }

%>

<%

//    下面是输出abc

   out.print(getS());

%>

(4)JSP注释

<%--注释信息--%>
<%@ page language="java"contentType="text/html; charset=UTF-8"%>
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<%-- 这个是注释内容--%>
</body>
</html>

注释信息不会打印在客户端 jsp注释与html注释的区别:是否打印在客户端
以上便是JSP的介绍及技术

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值