搜档网
当前位置:搜档网 › JSP基本语法及用法

JSP基本语法及用法

JSP基本语法及用法
JSP基本语法及用法

JSP 基本语法一、本节内容

JSP文件的结构

JSP的脚本元素

JSP指令元素

JSP动作元素

1.1 jsp文件结构

1.1.1指令:在"<%@ " 和"%>"之间常用的指令有page、

taglib

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

1.1.2注释:分为客户端注释和服务器端注释

1.客户端注释:

2.服务器端注释:

<%-- 注释内容(可以是多行) -->

<% //注释内容(只能是单行) %>

<% /** 注释内容(可以是多行) */ %>

1.1.3 脚本

脚本在jsp文件有分为三种定义(声明)、输出和普通代码(脚本段)

1.1.3.1 定义(声明)JSP中脚本的定义格式<%! 定义语句%>

注意:如果在JSP中要定义函数,必须采用定义。如果要定义一个全局变量也必须采用定义,否则采用脚本段。

定义的变量是该JSP被转化为的java类的一个成员变量.(字段),也是全局变量。

功能:可以定义变量,函数(方法)

1.1.3.2 输出:格式<%= 输出表达式%> 切忌输出表达式后无分号,就等于<% out.print(输出表达式); %>

功能:在网页中输出表达式的值

示例: 在网页中输出变量name 的值

<%!String name="里斯"; %> 定义

<%=name %>

<% out.println(name); %>

1.1.3.3 普通代码(脚本段)格式<% 代码段%>

功能: 普通的java代码,执行相应的运算等

复习扩展

客户端访问服务器我们称之为请求request

服务器将数据返回给客户端我们称之为响应response

请求request 是HttpServletRequest接口的一个实例对象它封装了我们请求服务器所携带的所有信息包括你请求的地址端口等

响应response 是HttpServletResponse接口的一个实例对象它封装了服务器返回给客户端的所有数据信息

request可以通过request.getParameter("test")获取请求表单中name为test的input对象的value

练习题目:根据用户输入的数字来打印直角三角形

比如用户输入的数字为4 那么打印的图形如下

*

**

***

****

题目分析:

分析一:如何根据数字打印图形

跟据数据打印图形规律

当用户输入的数字为1 时,打印1行,打印一个换行

当用户输入的数字为2 时,打印2行,第一行1个第二行2个

当用户输入的数字为3 时,打印3行,第一行1个第二行2个第三行 3

... ...

当用户输入的数字为n 时,打印n 行,第一行1个,第二行2个,第三行3个 ... ...第n行 n个

输入n为n行,每一行的行数和该行的“*”的个数相同

解决方法:

采用两层循环,外层循环控制行数,内层循环控制单一行的“*”的个数。

外层循环条件:从1开始到n结束

内层循环条件:从1开始到当前行数的数字

分析二:用户如何输入数字,服务器如何接收数字来响应相应的图形

采用用户使用表单提交数据,服务器根据request获取用户提交的数据input.jsp body部分

output.jsp 导包指令和body部分

<%@ page import="java.util.regex.Pattern" %>

<%

//接收用户提交的num

String str = request.getParameter("num");

//定义整型变量 num 用于保存用户输入的数据

//正则表达式

if(Pattern.matches("^\\d+$",str))//验证str字符串是否由数字组成

{

int num = Integer.valueOf(str);

//外层循环控制打印的行数从1开始到num结束

for(int i =1;i<=num;i++){

//变量i即为行数

//内层循环控制打印*的个数,从1开始到i结束

for(int j =1;j<=i;j++){

//输出*

out.print("*");

}

//内层循环结束后换行

out.print("
");

}

}else{

out.print("您输入的数据不合法!");

}

%>

返回重新输入

启动服务后访问 input页面

输入不正确

1.2 include 指令

格式<%@ include file=“URL”%>

功能将URL所指向的文件包含到当前JSP文件中

1.3 JSP动作元素

1.3.1

就等于

java.util.Date now = new java.util.Date();

1.3.2

格式:

value="objectnamepropertyvalue" />

功能:

为对象objectname的字段属性objectnameproperty设置值为objectnamepropertyvalue

User lisi = new User();

lisi.setName("里斯");

lisi.setAge(16);

lisi.setSex("女");

就等于

其中name=变量名property=变量的字段名 value=变量的字段的值

1.3.3

格式:

功能:

输出对象objectname的字段属性objectnameproperty的值

https://www.sodocs.net/doc/b4514699.html, = zhangsan.sex = zhangsan.age =

附件

https://www.sodocs.net/doc/b4514699.html,er.java 文件

package test;

public class User {

private String name;

private String sex;

private int age;

public String getName() {

return name;

}

public void setName(String name) {

https://www.sodocs.net/doc/b4514699.html, = name;

}

public String getSex() {

return sex;

}

public void setSex(String sex) {

this.sex = sex;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

}

2 JSP的内置对象

何为内置对象?内置对象是JSP服务器引擎为我们初始化好的对象实例,我们可以不用new而直接使用的对象

九大内置对象

requset对象

response对象

out对象

pageContext对象

session对象

application对象

page对象

config对象

exception对象

Request对象

相关主题