由于在此篇教程中并沒有涉及到國際化應(yīng)用,應(yīng)此我們并沒有編寫相應(yīng)的資源文件! struts-config.xml的源代碼
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts-config PUBLIC "-// Apache Software Foundation//DTD Struts Configuration 1.1//EN"
"http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd"> <struts-config> <form-beans> <form-bean name="lyForm" type="guestbook.maxuan.action.LyForm" /> </form-beans> <action-mappings> <action path="/lyList" type="guestbook.maxuan.action.LyListAction"> <forward name="success" path="/indexCnt.jsp" redirect="false" /> </action> <action path="/saveLy" type="guestbook.maxuan.action.LySaveAction" name="lyForm" input="/ly.jsp"
scope="request"> <forward name="success" path="/index.jsp" redirect="true" /> </action> <action path="/editLy" type="guestbook.maxuan.action.LyEditAction" name="lyForm" scope="request"> <forward name="success" path="/ly.jsp" redirect="false" /> </action> </action-mappings> <message-resources parameter="ApplicationResources" key="org.apache.struts.action.MESSAGE" /> </struts-config>
以上,我們完成了此次教程應(yīng)用的struts-config.xml的編寫,我們看到使用struts console工具編寫Struts-config.xml是多么的輕松容易,如果用純文本編輯工具來寫一個大型的struts配置文件,我想恐怕是一個噩夢!
在完成了配置后,我們開始寫JSP頁面,首先我們定義template,它是struts的模板,所有相同的部份都可以使用template! template.jsp的源代碼
<%@ taglib uri='/WEB-INF/struts-template.tld' prefix='template' %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=GBK"> <title>留言本教程范例</title> </head> <body bgcolor="#ffffff" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"> <template:get name='header'/> <template:get name='content'/> <template:get name='footer'/> </body> </html>
接著完成首頁index.jsp文件,它的模板使用template.jsp,定義了頁首(header.htm),頁尾(footer.htm),及內(nèi)容顯示(由/lyList.do映射到indexCnt.jsp) index.jsp的源代碼
<%@ taglib uri='/WEB-INF/struts-template.tld' prefix='template' %> <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %> <template:insert template='/template.jsp'> <template:put name='header' content='/header.htm'/> <template:put name='content' content='/lyList.do'/> <template:put name='footer' content='/footer.htm'/> </template:insert>
頁首header.htm的代碼(由于只是教程,我并沒有進行頁面美化工作,大家可以根據(jù)自己的喜愛自定義)
<table width="90%" height="50" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td align="center"><strong>留 言 本</strong></td> </tr> </table>
頁尾footer.htm的源代碼
<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td align="center">留言本教程范例 2003-9-21</td> </tr> </table>
留言內(nèi)容顯示indexCnt.jsp的源代碼
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %> <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %> <%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %> <jsp:useBean id="lyList" scope="session" type="java.util.ArrayList"/> <table width="90%" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td align="right"><html:link page="/editLy.do?action=Add">我要 留言</html:link> </td> </tr> </table> <logic:iterate id="value" name="lyList" type="guestbook.maxuan.ejb.entity.value.BookValue"
indexId="index"> <table width="90%" border="0" align="center" cellpadding="5" cellspacing="2"> <tr> <td><font size="4"><b><bean:write name="value" property="name"/></b></font><br> Email:<a href='mailto:<bean:write name="value" property="email"/>'><bean:write name="value"
property="email"/></a> | QQ:<bean:write name="value" property="qq"/> <br> 留言時間:<bean:write name="value"
property="posttime"/><br><br> <bean:write name="value" property="comment"/></td> </tr> <tr> <td height="1"><hr size="1" noshade></td> </tr> </table> </logic:iterate>
留言輸入頁面ly.jsp的源代碼
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %> <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %> <%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %> <html> <head> <title>留言</title> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> </head> <body> <table width="70%" border="1" align="center" cellpadding="2" cellspacing="2"
bordercolor="#000000"> <html:form action="/saveLy"> <tr> <td width="21%" height="20">姓名</td> <td width="79%" height="20"><html:text property="name" size="20"/></td> </tr> <tr> <td height="20">email</td> <td height="20"><html:text property="email" size="20"/></td> </tr> <tr> <td height="20">qq</td> <td height="20"><html:text property="qq" size="20"/></td> </tr> <tr> <td height="20">留言內(nèi)容</td> <td height="20"><html:textarea property="comment" rows="5" cols="50"/></td> </tr> <tr align="center"> <td height="20" colspan="2"><html:submit>保存</html:submit> <html:reset>重置</html:reset></td> </tr> </html:form> </table> </body> </html> 最后效果如圖: 此時我們的j2ee體系的留言本教程也就告于段落! 從這篇教程我們可以窺見j2ee多層體系結(jié)構(gòu)的端倪, 本篇教程只是一個基石,在此之上,你可以靈活地搭建更大型的應(yīng)用, 這才是我寫此文的最終目的! 后記:幻想曲花了30多分鐘的時間從經(jīng)典論壇中將maxuan9的帖子整理到了文檔區(qū), 希望對那些想學(xué)J2EE和正在學(xué)J2EE的朋友一點啟示、一點幫助!
出處:藍色理想
責(zé)任編輯:藍色
上一頁 [J2EE] 實戰(zhàn)留言本 [8] 下一頁 [J2EE] 實戰(zhàn)留言本[補遺]
◎進入論壇網(wǎng)絡(luò)編程版塊參加討論
|