jsp我们知道怎么写了,java我们也会了,现在我们需要从jsp里怎么读取我java里写的函数呢?
这一个过程专业述语叫做:JavaBean
一、 编写java函数
1. 这个java函数跟普通的函数有那一点点的区别,他是需要添加一个包,在jsp里调用是通过包来找到你要调用的函数。
下面我们编写一个简单得再简单不过的小函数,设置一个字符串,返回一个字符串。
package test; //package 必须要有,要不jsp要调用那一个包下的类
public class HelloWorld {
public String saySomething;
public HelloWorld(){
saySomething = "hello!";
}
//修改saySomething的值
public void setSaySomething(String saySomething){
this.saySomething = saySomething;
}
//获取saySomething的值
public String getSaySomething(){
return saySomething;
}
}
保存为 HelloWorld.java,把编译出HelloWorld.class拷贝到:apache-tomcat-7.0.27\webapps\ROOT\WEB-INF\classes\test\目录下
好像必须得放到classes目录下,test(跟package包名相同),HelloWorld.java(跟类名相同)
2. 编写jsp页面调用
<!--需要显示中文,所以把编码改成gb2312-->
<%@ page language="java" contentType="text/html;charset=gb2312" pageEncoding="gb2312"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>你好 JSP Page.</title>
</head>
<body>
<font size="10">
<!--id 就像我们在调用类的时候创建一个对像,同等于: test.HelloWorld say = new test.HelloWorld();-->
<jsp:useBean id="say" class="test.HelloWorld" scope="page" />
<%
String somethingToSay = "";
somethingToSay = say.getSaySomething();
out.println(somethingToSay); //输出默认值:hello!
%>
</br>
<%
say.setSaySomething("my name is cqf!");//改变值
somethingToSay =say.getSaySomething();//重新获取
out.println(somethingToSay);//输出为:my name is cqf!
%>
</font>
</body>
</html>
把jsp页面保存到:\apache-tomcat-7.0.27\webapps\ROOT\下面,命名为:LoveJsp.jsp
的浏览器里输入:http://localhost:8080/LoveJsp.jsp 显示结果如下: