JavaWeb基础——JSP

JSP全名是JAVA Server Pages,根本上是一个简化的Servlet设计。在传统的网页HTML文件中插入Java程序段Scriptlet和JSP标记(tag),从而形成JSP文件,后缀名为*.jsp。

JSP基本语法

编译指令

<%@ page contentType="text/html;charset=UTF-8" language="java" %>

导入类库文件<%@page import="" %>

<%@page import="java.util.ArrayList" %>
<html>
<body>
<%
    ArrayList arrayList = new  ArrayList();
    arrayList.add(1);
%>
</body>
</html>

声明语法

一个声明语句可以声明一个或多个变量、方法,供后面的Java代码使用。在JSP文件中,您必须先声明这些变量和方法然后才能使用它们。

JSP声明的语法格式

<%!
    String str = "Hello world";

    String getStr() {
        return "Hello Java";
    }
%>

程序脚本

<%
    out.println("Your IP address is " + request.getRemoteAddr());
 %>
<br>
<%=this.getStr()%>
<% int i = 100; %>
<%
if ( i > 10 ){
out.print(“hello world”); }
%>

注释

可以使用HTML的注释 但是会返回给客户端,客户端通过查看源代码可以显示出来,所有建议使用jsp注释

<%-- Java脚本、JSP中其他代码--%>

内容输出表达式

<%! int i = 10; %>
<%=i %>

包引入语法

不同的包引用被逗号隔开

<%@ page import =“java.io.*” %>
<%@ page import =“java.util.*” %>
<%@ page import = “java.util.*,java.io.*” %> 

JSP内置对象简介

内置对象

说明

request

封装了由WEB浏览器或其它客户端生成地HTTP请求的 细节(参数,属性,头标和数据)作用域:用户的请求周期

out

代表输出流的对象

response

封装了返回到HTTP客户端的输出,向页面作者提供设 置响应头标和状态码的方式

pageContext

提供所有四个作用域层次的属性查询和修改能力, 它也提供了转发请求到其它资源和包含其他资源的方法

page

代表了正在运行的由JSP文件产生的类对象 page作用域:当前执行页面

session

主要用于跟踪会话 ,session作用域:会话期间

config

获取配置信息

exception

异常对象

application

提供了关于服务器版本,应用级初始化参数和应用内 资源绝对路径注册信息的方式,application作用域:web容器的生命周期

JSP生命周期

JSP生命周期中所走过的几个阶段:

  1. 编译阶段:解析JSP文件,将JSP文件转为servlet,编译servlet,生成servlet类
  2. 初始化阶段:加载与JSP对应的servlet类,创建其实例,并调用它的初始化方法
  3. 执行阶段:调用与JSP对应的servlet实例的服务方法
  4. 销毁阶段:调用与JSP对应的servlet实例的销毁方法,然后销毁servlet实例

配置Tomcat

<plugin>
  <groupId>org.apache.tomcat.maven</groupId>
  <artifactId>tomcat7-maven-plugin</artifactId>
  <version>2.1</version>
  <configuration>
    <path>/</path>
  </configuration>
</plugin>

运行

mvn tomcat7:run

配置Jetty

<plugin>
  <groupId>org.eclipse.jetty</groupId>
  <artifactId>jetty-maven-plugin</artifactId>
  <version>9.4.15.v20190215</version>
</plugin>

运行

mvn jetty:run

修改配置信息

在plugin节点下,添加configuration节点就可以配置jetty插件了。

<configuration>
    <httpConnector>
        <port>8080</port>
        <host>localhost</host>
    </httpConnector>
    <scanIntervalSeconds>1</scanIntervalSeconds>
</configuration>

idleTimeout。一次连接的最大空闲时间。
port。jetty服务器的端口号。
host。jetty服务器监听的地址。
scanIntervalSeconds。扫描进行热部署的间隔时间。

war配置到tomcat

$ tree
.
├── HelloWord.iml
├── pom.xml
├── src
│   └── main
│       └── webapp
│           ├── WEB-INF
│           │   └── web.xml
│           ├── hello.jsp

mvn 编译war(web application resource)文件

mvn clean package

jar 编译

jar -cvf HelloWord.war *

image.png

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券