您的位置:首页 > Web前端 > JavaScript

jsp基础学习---jsp常用脚本元素

2016-09-21 16:52 465 查看


JavaWeb学习----JSP脚本元素、指令元素、动作元素

1、声明(declaration)
2、表达式(express)
3、脚本(Scriplets)

“声明”用的少,一般是用“表达式”和“脚本”。

一、声明

声明用的不是很多,但是想要在一个jsp页面上用到全局变量和全局java函数还是要用到声明这种脚本元素

基本语法是<%!  语句块   %>

比如使用jsp页面打印五层的三角形

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><!-- 设置字符集,不然无法在页面显示中文 -->
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP 'MyJsp1.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 my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->

</head>

<body>
<h1>打印三角形</h1>
<%! int i;
int j;
int num = 5;
int k;
String shape = "*";
%>
<%

for(i=1;i<=5;i++) /*外层循环控制每行打印*/
{
for(j=1;j<=5-i;j++) /*控制每行符号输出的位置*/
{System.out.print(" ");
out.print(" ");}
for(k=1;k<=2*i-1;k++)
/*控制每行输出符号的个数*/
{
System.out.print("*");
out.print("*");
}
out.print("<br>");
System.out.println("\n"); /*一行符号输出完后换行*/
}
%>

</body>
</html>
二、表达式

语法:<%=   语句>

<h1>打印当前时间</h1>
<%= new Date()%>

这里比较要注意的一点是<%= >  %和=之间不能有空格

三、脚本

语法:java语法

<% 语句  %>

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><!-- 设置字符集,不然无法在页面显示中文 -->
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP 'MyJsp1.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 my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->

</head>

<body>
<%!
boolean juge(int num)
{
for(int i=2;i<=num/2;i++)
{
if(num%i==0)
return false;
}
return true;
}
%>
<%
for(int i=2;i<100;i++)
{
if(juge(i)==true)
{

%>
<%= i+"<br>" %>
<%
}
}
%>
</body>
</html>


上述代码是用jsp打印1-100之间素数的代码。嵌入的脚本是java代码进行逻辑运算,结果展示在页面上

定义脚本的页面在当前整个页面有效,但是不会被其他进程共享,用户对改变变量的作用不会影响到其他用户,当变量所在页面关闭时该变量随之销毁
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: