一、JSP:即是JavaServer Page,服务器端的脚本语言,不能在客户端执行的文件,只在web服务器中执行。

   简单的说的话,JSP本质上就是把Java代码嵌套到HTML中,然后经过Web容器的编译执行,先转换成Java文件,在编译成*.class文件,最后执行并将执行结果生成对应的HTML代码



为什么使用JSP?

JSP就是Sun公司开发的一种基于可以实现动态web的脚本语言,使用jsp的话就能实现动态页面了


二、JSP的运行原理

 如果JSP页面时第一次被请求运行,服务器的JSP编译器会生成JSP页面对应的Java代码,并且编译成类文件。当服务器再次收到对这个JSP页面的请求时,会判断这个JSP页面有没有修改过,如果有修改过就会重新生成java代码并且重新编译,如果没有被修改,服务器就会直接调用以前已经编译过的类文件。本质上就是Servlet


三、JSP的使用

1、在HTML中嵌入代码

<%  %>  <%= %>

·<%  %>这个里面可以定义变量,java语句

·<%= %>这个只是用来输出常量、变量或表达式最终结果


2、page指令:注意到jsp开头那段代码了么?

page指的就是当前页面,它的主要功能:

·设置页面MIME类型contentType:就是页面以什么形式显示

·导包指令


范例:设置MIME类型

<%@ page contentType="text/html;charset=utf-8"  %>  对应类型有哪些可在web.xml找

范例:导包import

<%@ page import="java.sql"  %>


3、include指令

include表示包含,可以将一个外文件包含到当前的页面中

有两种指令方式:

<%@ include file=”文件路径” %>

<jsp:include page=”页面” />


4、forward指令

跳转智力,当一执行到此指令的时候,程序会无条件立刻跳转

<jsp:forward page=”页面” />

注意:这个跳转只是页面跳转,地址没有变化!


5、jsp的内置对象

平时我们调用一个对象要先进行实例化吧?但现在这里直接调用了一个request对象,无须实 例化,这种对象,在JSP里就叫内置对象。

在JSP中内置对象大概有9个,碰到再去了解。

  ·request对象

         |-接收表单参数:request.getParameter("username");

         |-接收url参数(观察表单的get方式传参) 切记不要有空格

         |-接收表单多个同名的参数:request.getParameterValues()返回的是一个数组

         |-取得客户端IP地址:request.getRemoteAddr()方法



注意:request接收参数的过程中会产生乱码!!!

我们填写数据提交服务器,服务器接收处理后又返回了吧,但是假如客户端跟服务器端所用编码格式不一样的话,那就可能产生乱码。所以我们在接收数据的时候,设置一个统一的编码,按此编码进行数据接收



  ·response:服务器端对客户端的回应

     |-跳转

提供了跳转的方法sendRedirect();

不管放在页面哪个位置,页面执行完了才执行,地址变了—>客户端跳转






转载于:https://blog.51cto.com/surong/1275435