-- 作者:HB07140030
-- 发布时间:6/24/2009 9:36:00 AM
-- JSP中JavaBean应用步骤详解
JSP中JavaBean应用步骤详解 编写JSP动态网页设计时,怎么应用JavaBean呢?下面是对JavaBean的使用讲解,并根据UFO的一个JavaBean演示实例做详解,有兴趣的朋友可以去www.gm365.com下载最新版本的UFO,里面附带了近50个JSP、JavaBean、servlet的典型实例(针对中文用户)。 一、编写使用JavaBean的JSP文件,如UFO中的演示实例time.jsp: <%@ page contentType="text/html;Charset=GB2312" %> <%@ page import="ufobean.ShowCalendar" %> <HTML><BODY> <jsp:useBean id="clock" class="ufobean.ShowCalendar" scope="page" /> <Table border=4> <tr> <td align="center"><font color="blue"><jsp:getProperty name="clock" property="year"/></font>年</td> <td><jsp:getProperty name="clock" property="month"/>月 <jsp:getProperty name="clock" property="dayOfMonth"/>日 星期<jsp:getProperty name="clock" property="day"/> </td> </tr> <tr> <td>当前时间为</td> <td><jsp:getProperty name="clock" property="time"/></td> </tr> <tr> <td>今天是今年的第</td> <td><jsp:getProperty name="clock" property="dayOfYear"/>天</td> </tr> <tr> <td>本周是今年的第</td> <td><jsp:getProperty name="clock" property="weekOfYear"/>周</td> </tr> <tr> <td>本周是本月的第</td> <td><jsp:getProperty name="clock" property="weekOfMonth"/>周</td> </tr> </Table> <jsp:getProperty name="clock" property="date"/> </BODY></HTML> 在上面代码中的第二行<%@ page import="ufobean.ShowCalendar"%>这个语句,意思是引入ufobean包以及包中的文件;其次要注意 <jsp:useBean id="clock" class="ufobean.ShowCalendar" scope="page"/>语句,其中id的值是自定义的,class值是包名加点再加JavaBean名,scope有几个值,默认值是page,另外还有session,application等等,这里用page。time.jsp多次用到<jsp:getProperty>,其作用是获取JavaBean(ShowCalendar)的属性值,显示在页面中 。 JavaBean(ShowCalendar.java)代码如下: package ufobean; import java.util.*; public class ShowCalendar{ Calendar calendar = null; int year,dayOfMonth,dayOfYear,weekOfYear, weekOfMonth,dayOfWeek,hour,minute,second; String day,date,time; public ShowCalendar(){ calendar = Calendar.getInstance(); Date time = new Date(); calendar.setTime(time); } public int getYear(){ return calendar.get(Calendar.YEAR); } public String getMonth(){ int m=1+calendar.get(Calendar.MONTH); String months[]={"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12" }; if(m>12) return "0"; return months[m-1]; } public String getDay(){ int n =getDayOfWeek(); String days[]={"日","一", "二", "三","四", "五", "六"}; if(n>7) return "星期?"; return days[n]; } public String getDate(){ return getYear()+ "/" + getMonth()+"/"+getDayOfMonth(); } public String getTime(){ return getHour() + ":" + getMinute() + ":" + getSecond(); } public int getDayOfMonth(){ return calendar.get(Calendar.DAY_OF_MONTH); } public int getDayOfYear(){ return calendar.get(Calendar.DAY_OF_YEAR); } public int getWeekOfYear(){ return calendar.get(Calendar.WEEK_OF_YEAR); } public int getWeekOfMonth(){ return calendar.get(Calendar.WEEK_OF_MONTH); } public int getDayOfWeek(){ return calendar.get(Calendar.DAY_OF_WEEK)-1; } public int getHour(){ return calendar.get(Calendar.HOUR_OF_DAY); } public int getMinute(){ return calendar.get(Calendar.MINUTE); } public int getSecond(){ return calendar.get(Calendar.SECOND); } } 二、编译ShowCalendar.java文件 这里介绍在DOS下怎么编译JavaBean:开始——运行——输入cmd——通过cd..或者cd进入到JavaBean(ShowCalendar.java)所在目录,然后输入命令:javac ShowCalendar.java后,就可以得到生成在ufobean包中的ShowCalendar.class字节文件了,到此编译完毕。 如果重新修改过JavaBean,那么要先把以前的旧的.class文件删除掉,然后重新编译JavaBean。 三、在UFO中访问time.jsp文件调用JavaBean 1、在UFO原有的目录下运行time.jsp a)、将time.jsp放置于UFO\webapps\ROOT目录下,将ShowCalendar.class放置于UFO\webapps\ROOT\WEB-INF\classes\ufobean目录下, 启动UFO,输入如下地址http://localhost:80/time.jsp,便可成功运行了。 b)、将time.jsp放置于UFO\webapps\examples目录下,将ShowCalendar.class放置于UFO\webapps\examples\WEB-INF\classes\ufobean 目录下,启动UFO,输入如下地址http://localhost:80/examples/time.jsp,就OK了。 2、自己在webapps目录下建立新目录 建立目录的时候要注意:文件夹名是WEB-INF,而不是WEN_INF,注意中间的横杠要写对;文件夹名是classes而不是class;classes下的包 名也得注意,它是跟你JavaBean里所起的包名相同,比如,你在JavaBean文件中有以下语句:import ufobean;就意味着你引入了名为ufobean 的包,那么在classes文件夹下的包名(文件夹名)应该是ufobean了。剩余步骤对比1、b)中的方法做就OK了。 四、整个jsp使用JavaBean的过程就是这样,大家都会了吧。
|