JSP和JavaBean可以互相調(diào)用其中的內(nèi)容?,F(xiàn)在我們實(shí)現(xiàn)一個(gè)最簡(jiǎn)單的JSP與JavaBean。
我們實(shí)現(xiàn)一個(gè)輸入文字,將文字傳給JavaBean,然后再讓JavaBean返回內(nèi)容給JSP的功能。我們需要一個(gè)JSP文件,一個(gè)JavaBean。
JavaBean文件
在scr目錄下新建一個(gè)名為packagemane的包,在這個(gè)包下面新建一個(gè)java文件,BeanName.java(文件名任意)
代碼如下:
- package packagename;
-
- public class BeanName {
- String ProName;
- //參數(shù)名必須和jsp:setProperty中property,param的值相同。
- //JavaBean中有一個(gè)set方法,一個(gè)get方法。注意方法名和參數(shù)名的關(guān)系,注意方法返回值的對(duì)應(yīng)。
- public void setProName(String proName){
- this.ProName = proName;
- }
- public String getProName(){
- String newStr="你輸入了:"+ProName;
- return newStr;
- }
- }
JSP文件
在WebRoot或其子目錄下新建一個(gè)jsp文件,名字任意。
里面的代碼如下:
比較關(guān)鍵的地方有三個(gè):
1、useBean。
定義Bean的名稱(chēng)。后面setProperty和getProperty的名稱(chēng)要和這個(gè)保持一致。
2、setProperty
用于將網(wǎng)頁(yè)上面的內(nèi)容傳給JavaBean.setProperty有好幾種方法,這里隨便用了一種。
關(guān)于property和param的值,建議相同。其實(shí)我現(xiàn)在還沒(méi)搞清它們到底和后面的哪個(gè)對(duì)應(yīng)。
特別需要注意的是這個(gè)值一定要和JavaBean文件中的參數(shù)名相同。比如我這里寫(xiě)的是proName,JavaBean里面的參數(shù)是String ProName。
3、getProperty
用于將JavaBean中的內(nèi)容傳給網(wǎng)頁(yè)。
- <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
- <%request.setCharacterEncoding("UTF-8");%>
- <%response.setCharacterEncoding("UTF-8");%>
- <%--強(qiáng)力防中文亂碼--%>
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html>
- <head>
-
- <title>最簡(jiǎn)單的JSP和JavaBean</title>
- <jsp:useBean id="entityName" scope="page" class="packagename.BeanName"></jsp:useBean>
- <!--scope的參數(shù)有四種:page,request,session,application
- class的值為包名.Bean的文件名 -->
- <jsp:setProperty name="entityName" property="proName" param="proName"/>
- <!-- setProperty是將JSP網(wǎng)頁(yè)的參數(shù)傳給JavaBean,getProperty則是將JavaBean的參數(shù)傳給JSP頁(yè)面
- 為避免混亂property和param最好相同。并且該值也必須和Bean文件中的參數(shù)名相同。 -->
-
- </head>
-
- <body>
-
- <form name="form1" action="" method="post">
- 在這里輸入傳給JavaBean的內(nèi)容:<br>
- <input type="text" name="proName"/>
- <input type="submit" name="T1" value="提交"/>
- <br>
- </form>
- 下面顯示的是從JavaBean返回的內(nèi)容:<br>
- <jsp:getProperty name="entityName" property="proName" />
- </body>
- </html>
實(shí)現(xiàn)效果
輸入前
提交后
|