Scriptlet是包含在<%和%>之间的Java代码,在Web容器处理JSP页面时执行,通常会产生输出,并将输出发送到客户的输出流里。Scriptlet除了不能定义类和方法、不能用import引入类外,可以包含任何有效的Java代码。(Java类在Jsp外部定义,可用page指令的import属性引入,也可以Java Bean的形式使用。Java中的方法必须在类内定义,但Jsp允许使用声明定义方法。窗体(GUI)设计代码在Jsp中无效)。
Scriptlet例程:
<%@ page contentType="text/htmlcharset=gb2312" %>
<html>
<head>
<title>JSP基本语法</title>
</head>
<body>
<h1>Scriptlet示例页面</h1>
<table border="1">
<caption>乘法口诀表</caption>
<%-- 在网页中嵌入Java代码的主要方法 --%>
<%
for(int i=1i<=9i++) {
int j=1
//out是JSP的一个内部对象,print方法用于向客户端输出数据
out.println("<tr>")
for(j<=ij++) {
out.print("<td>" + j + "*" + i + "=" + j*i + "</td>")
}
for(j<=9j++) {
out.print("<td></td>")
}
out.println("</tr>")
}
%>
</table>
</body>
</html>
这样不好,
不符合mvc思想,而且给程序的扩展维护,人员的分工合作带来很大的困难,美工只懂HTML代码,而大量的java代码在页面,显而易见!程序的可读性差,你自己想想,大量的代码全部混合在页面看代码有多费力。
在jsp中使用java类举例如下:1.新建一个项目,在src文件夹下添加一个包:如:tianaoweb.com
2.再在包中添加一个类:如
package com
public class test {
public String sd(){
return "sd"
}
}
3.在默认的首页index.jsp(当然也可以自己新建一个jsp文件)的开头引入
<%@ page import= "tianaoweb.com.* "%>
4.在<body></body>中添加相应的java代码片:
如:
<%
String str
test te=new test()
%>
<%=te.sd() %>