JAVA涂鴉
          關(guān)于JAVA的點(diǎn)點(diǎn)滴滴
          posts - 50,  comments - 689,  trackbacks - 0
          接上一篇:struts+spring+hibernate的web應(yīng)用<四> Web層代碼編寫(xiě)(1)

          接著就是寫(xiě)資源文件了。

          com.game.resources包中添加ApplicationResourcesProducts.properties文件。如果你的eclipse中有Properties Editor這個(gè)插件,就可以用Properties Editor打開(kāi)資源文件進(jìn)行編寫(xiě),省去了用命令行轉(zhuǎn)換格式的麻煩。配置內(nèi)容如下:

          errors.required={0}不能為空.
          errors.minlength={0}不能小于 {1} 個(gè)字符.
          errors.maxlength={0}不能大于 {1} 個(gè)字符.
          errors.invalid={0}輸入格式不對(duì).
          errors.byte={0}必須為字節(jié).
          errors.short={0}必須為短整型.
          errors.integer={0}必須為整型.
          errors.long={0}必須為長(zhǎng)整型.
          errors.float={0}必須為浮點(diǎn)型.
          errors.double={0}必須為雙精度型.
          errors.date={0}不是一個(gè)正確的日期或格式不對(duì).
          errors.range={0} is not in the range {1} through {2}.
          errors.creditcard={0} is not a valid credit card number.
          errors.email={0}不是一個(gè)有效的email地址.

          errors.gameNameCn=游戲中文名稱(chēng)
          errors.gameNameEn=游戲英文名稱(chēng)
          errors.gameCapacity=碟數(shù)
          errors.gamePrice=價(jià)格


           

          需要注意的是

           ssh3.jpg

          這一節(jié)是不能省去的。

           

          接下來(lái)就是寫(xiě)頁(yè)面文件了。在products文件夾中添加如下頁(yè)面。

           

          index.jsp頁(yè)面代碼:

          <%@ page contentType="text/html;charset=GBK" language="java" %>

          <html>
          <head>
          <meta http-equiv="Content-Type" content="text/html; charset=GBK"/>
          <title>游戲軟件管理系統(tǒng)</title>
          </head>
          <body>

          <href="/game/getProducts.do?method=doGetProducts&&flag=1">進(jìn)入游戲軟件管理單元</a>
          </body>
          </html>

           

           

          products.jsp頁(yè)面代碼:

          <%@page pageEncoding="GBK" contentType="text/html; charset=GBK" import="com.game.commons.Pager;"%>
          <%@ taglib uri="struts-html" prefix="html" %>
          <%@ taglib uri="struts-logic" prefix="logic" %>
          <%@ taglib uri="struts-bean" prefix="bean" %>
          <%
          String flag=(String)request.getAttribute("flag");
          String totalRows=(String)request.getAttribute("totalRows");
          String fieldname="";
          String value="";
          if(flag.equals("2")){
              fieldname
          =(String)request.getAttribute("fieldname");
              value
          =(String)request.getAttribute("value");
          }
          %>
          <html>
          <head>
          <meta http-equiv="Content-Type" content="text/html; charset=GBK"/>
          <title></title>
          <script language = "JavaScript">
          function btnQuery() {
              
          if(myfm.value.value=="")
              
          {    
                  alert(
          "請(qǐng)輸入查詢關(guān)鍵字!");
              }
          else{
                  window.location.href
          ="/game/queryProducts.do?method=doQueryProduct&&flag=2&&fieldname="+myfm.fieldname.value+"&&value="+myfm.value.value;
               }

           }

           
          </script>
          </head>
          <body>
          <form  name="myfm" method="post">
          <table border="1">
          <tr>
          <td>
          <href="/game/getProducts.do?method=doGetProducts&&flag=1">察看所有記錄</a>
          &nbsp;&nbsp;&nbsp;
          </td>
          <td>
          <href="/game/addProductPage.do?method=doAddProductPage&&flag=<%= flag%>&&fieldname=<%=fieldname%>&&value=<%= value%>">添加</a>
          &nbsp;&nbsp;&nbsp;
          </td>
          <td>
              
          <select name="fieldname" >
                  
          <option value="gameNameCn">中文名稱(chēng)</option>
                  
          <option value="gameNameEn">英文名稱(chēng)</option>
                  
          <option value="gameCapacity">碟數(shù)</option>
                  
          <option value="gameVersion">版本</option>
                  
          <option value="gameMedia">介質(zhì)</option>
                  
          <option value="gameCopyright">版權(quán)</option>
              
          </select>
              
          <input value="" name="value"  />

          <href="#" onclick="btnQuery()">查詢</a>
          </td>
          </tr>
          </table>
          <br>
          <br>
            
          <table border="1">
              
          <tr>
                  
          <td>游戲中文名稱(chēng)</td>
                  
          <td>游戲英文名稱(chēng)</td>
                  
          <td>軟件版本</td>
                  
          <td>軟件介質(zhì)</td>
                  
          <td>碟數(shù)</td>
                  
          <td>版權(quán)</td>
                  
          <td>價(jià)格(元)</td>
                  
          <td>攻略</td>
              
          </tr>
              
          <logic:iterate id="pd" name="productsList">
              
          <tr>
                  
          <td><href="/game/getProduct.do?method=doGetProduct&&flag=<%=flag%>&&gameId=<bean:write name="pd" property="gameId"/>&&flag=<%= flag%>&&fieldname=<%=fieldname%>&&value=<%= value%>"><bean:write name="pd" property="gameNameCn"/></a></td>
                  
          <td><bean:write name="pd" property="gameNameEn"/></td>
                  
          <td>
                      
          <logic:equal name="pd" property="gameVersion" value="1">
                          中文版
                      
          </logic:equal>
                      
          <logic:equal name="pd" property="gameVersion" value="2">
                          英文版
                      
          </logic:equal>
                  
          </td>
                  
          <td>
                      
          <logic:equal name="pd" property="gameMedia" value="1">
                          CD
                      
          </logic:equal>
                      
          <logic:equal name="pd" property="gameMedia" value="2">
                          DVD5
                      
          </logic:equal>
                      
          <logic:equal name="pd" property="gameMedia" value="3">
                          DVD9
                      
          </logic:equal>
                  
          </td>
                  
          <td><bean:write name="pd" property="gameCapacity"/></td>
                  
          <td>
                      
          <logic:equal name="pd" property="gameCopyright" value="1">
                          正版
                      
          </logic:equal>
                      
          <logic:equal name="pd" property="gameCopyright" value="2">
                          翻版
                      
          </logic:equal>
                  
          </td>
                  
          <td><bean:write name="pd" property="gamePrice"/></td>
                  
          <td><bean:write name="pd" property="gameContent"/></td>
              
          </tr>
              
          </logic:iterate>
              
          <tr>
                  
          <%if(flag.equals("1")){%>
                      
          <td colspan="8" align="right" class="head">
                          共有
          <%=totalRows%>條記錄&nbsp;&nbsp;&nbsp;&nbsp;
                          第
          <bean:write name="PAGER" property="currentPage"/>頁(yè)&nbsp;
                          共
          <bean:write name="PAGER" property="totalPages"/>頁(yè)&nbsp;
                          
          <html:link action="/getProducts.do?method=doGetProducts&&flag=1&&pagerMethod=first" paramName="PAGER" paramProperty="currentPage" paramId="currentPage">首頁(yè)</html:link>
                          
          <html:link action="/getProducts.do?method=doGetProducts&&flag=1&&pagerMethod=previous" paramName="PAGER" paramProperty="currentPage" paramId="currentPage">上一頁(yè)</html:link>
                          
          <html:link action="/getProducts.do?method=doGetProducts&&flag=1&&pagerMethod=next" paramName="PAGER" paramProperty="currentPage" paramId="currentPage">下一頁(yè)</html:link>
                          
          <html:link action="/getProducts.do?method=doGetProducts&&flag=1&&pagerMethod=last" paramName="PAGER" paramProperty="currentPage" paramId="currentPage">尾頁(yè)</html:link>
                      
          </td>    
                  
          <%}else if(flag.equals("2")){%>
                  
          <% Pager pager=(Pager)request.getAttribute("PAGER");%>
                      
          <td colspan="8" align="right" class="head">
                          共有
          <%=totalRows%>條記錄&nbsp;&nbsp;&nbsp;&nbsp;
                          第
          <bean:write name="PAGER" property="currentPage"/>頁(yè)&nbsp;
                          共
          <bean:write name="PAGER" property="totalPages"/>頁(yè)&nbsp;
                          
          <href="/game/queryProducts.do?method=doQueryProduct&&flag=2&&fieldname=<%=fieldname%>&&value=<%= value%>&&pagerMethod=first&&currentPage=<%=pager.getCurrentPage()%>" >首頁(yè)</a>
                          
          <href="/game/queryProducts.do?method=doQueryProduct&&flag=2&&fieldname=<%=fieldname%>&&value=<%= value%>&&pagerMethod=previous&&currentPage=<%=pager.getCurrentPage()%>" >上一頁(yè)</a>
                          
          <href="/game/queryProducts.do?method=doQueryProduct&&flag=2&&fieldname=<%=fieldname%>&&value=<%= value%>&&pagerMethod=next&&currentPage=<%=pager.getCurrentPage()%>" >下一頁(yè)</a>
                          
          <href="/game/queryProducts.do?method=doQueryProduct&&flag=2&&fieldname=<%=fieldname%>&&value=<%= value%>&&pagerMethod=last&&currentPage=<%=pager.getCurrentPage()%>" >尾頁(yè)</a>
                          
                      
          </td>    
                  
          <%}%>
              
          </tr>
          </table>
          </form>
          </body>
          </html>



          addproduct.jsp頁(yè)面代碼:

          <%@page pageEncoding="GBK" contentType="text/html; charset=GBK" %>
          <%@ taglib uri="struts-html" prefix="html" %>
          <%@ taglib uri="struts-logic" prefix="logic" %>
          <%@ taglib uri="struts-bean" prefix="bean" %>
          <%
          String flag=(String)request.getAttribute("flag");
          String fieldname="";
          String value="";
          if(flag.equals("2")){
              fieldname
          =(String)request.getAttribute("fieldname");
              value
          =(String)request.getAttribute("value");
          }
          String maxid=(String)request.getAttribute("maxid");
          %>
          <html>
          <head>
          <meta http-equiv="Content-Type" content="text/html; charset=GBK"/>
          <title></title>
          <html:base/>
          <html:javascript formName="productsForm" method="validate"/>
          <script Language="JavaScript">
                 
          function btn_AddFolder() {
                     
          if(confirm("確定要保存嗎?")){
                      
          if(document.productsForm.onsubmit()){        
                          document.forms[
          0].submit();
                      }

                  }
            
              }

          </script>
          </head>
          <body>

          <href="/game/returnProduct.do?method=doReturnProduct&&flag=<%= flag%>&&fieldname=<%=fieldname%>&&value=<%= value%>">返回</a>
          <html:form action="/addProduct.do" onsubmit="return validate(this)">
          <table border="1">
              
          <tr>
                  
          <td>游戲中文名稱(chēng)</td>
                  
          <td>游戲英文名稱(chēng)</td>
                  
          <td>軟件版本</td>
                  
          <td>軟件介質(zhì)</td>
                  
          <td>碟數(shù)</td>
                  
          <td>版權(quán)</td>
                  
          <td>價(jià)格(元)</td>
                  
          <td>攻略</td>
              
          </tr>
              
          <tr>
                  
          <td><html:text property="gameNameCn"/></td>
                  
          <td><html:text property="gameNameEn"/></td>
                  
          <td>
                      
          <html:select property="gameVersion" >
                            
          <html:option value= "2">英文版&nbsp;&nbsp;&nbsp;&nbsp;</html:option>
                            
          <html:option value= "1">中文版</html:option>
                        
          </html:select>   
                  
          </td>
                  
          <td>
                      
          <html:select property="gameMedia" >
                            
          <html:option value= "1">CD&nbsp;&nbsp;&nbsp;&nbsp;</html:option>
                            
          <html:option value= "2">DVD5</html:option>
                            
          <html:option value= "3">DVD9</html:option>
                        
          </html:select>   
                  
          </td>
                  
          <td><html:text property="gameCapacity" size="5"/></td>
                  
          <td>
                      
          <html:select property="gameCopyright" >
                            
          <html:option value= "2">翻版&nbsp;&nbsp;&nbsp;&nbsp;</html:option>
                            
          <html:option value= "1">正版</html:option>
                        
          </html:select>  
                  
          </td>
                  
          <td><html:text property="gamePrice"/></td>
                  
          <td><html:text property="gameContent"/></td>
              
          </tr>
              
          </table>
          <html:hidden property="gameId" value="<%= maxid%>"/>
          <html:hidden property="method" value="doAddProduct"/>
          <html:hidden property="flag" value="<%= flag%>"/>
          <html:hidden property="fieldname" value="<%= fieldname%>"/>
          <html:hidden property="value" value="<%=value%>"/>
          <input type="button" value="保存" onclick="btn_AddFolder()"/>

          </html:form>
          </body>
          </html>


          product.jsp頁(yè)面代碼:

          <%@page pageEncoding="GBK" contentType="text/html; charset=GBK" %>
          <%@ taglib uri="struts-html" prefix="html" %>
          <%@ taglib uri="struts-logic" prefix="logic" %>
          <%@ taglib uri="struts-bean" prefix="bean" %>
          <%
          String flag=(String)request.getAttribute("flag");
          String fieldname="";
          String value="";
          if(flag.equals("2")){
              fieldname
          =(String)request.getAttribute("fieldname");
              value
          =(String)request.getAttribute("value");
          }
          %>
          <html>
          <head>
          <meta http-equiv="Content-Type" content="text/html; charset=GBK"/>
          <title></title>
          <html:javascript formName="productsForm" method="validate"/>
          </head>
          <body>
          <href="/game/addProductPage.do?method=doAddProductPage&&flag=<%= flag%>&&fieldname=<%=fieldname%>&&value=<%= value%>">添加</a> &nbsp;&nbsp;&nbsp;
          <href="/game/returnProduct.do?method=doReturnProduct&&flag=<%= flag%>&&fieldname=<%=fieldname%>&&value=<%= value%>">返回</a>&nbsp;&nbsp;&nbsp;
          <href="/game/deleteProduct.do?method=doDeleteProduct&&flag=<%= flag%>&&gameId=<bean:write name="pd" property="gameId"/>&&fieldname=<%=fieldname%>&&value=<%= value%>">刪除</a>
          <br>
          <br>
          <html:form action="/updateProduct.do" onsubmit="return validate(this)">
          <table border="1">
              
          <tr>
                  
          <td>游戲中文名稱(chēng)</td>
                  
          <td>游戲英文名稱(chēng)</td>
                  
          <td>軟件版本</td>
                  
          <td>軟件介質(zhì)</td>
                  
          <td>碟數(shù)</td>
                  
          <td>版權(quán)</td>
                  
          <td>價(jià)格(元)</td>
                  
          <td>攻略</td>
              
          </tr>
              
          <tr>
                  
          <td><html:text name="pd" property="gameNameCn"/></td>
                  
          <td><html:text name="pd" property="gameNameEn"/></td>
                  
          <td>
                      
          <html:select name="pd" property="gameVersion" >
                            
          <html:option value= "1">中文版&nbsp;&nbsp;&nbsp;&nbsp;</html:option>
                            
          <html:option value= "2">英文版</html:option>
                        
          </html:select> 
                  
          </td>
                  
          <td>
                      
          <html:select name="pd" property="gameMedia" >
                            
          <html:option value= "1">CD&nbsp;&nbsp;&nbsp;&nbsp;</html:option>
                            
          <html:option value= "2">DVD5</html:option>
                            
          <html:option value= "3">DVD9</html:option>
                        
          </html:select>  
                  
          </td>
                  
          <td><html:text name="pd" property="gameCapacity" size="5"/></td>
                  
          <td>
                      
          <html:select name="pd" property="gameCopyright" >
                            
          <html:option value= "1">正版&nbsp;&nbsp;&nbsp;&nbsp;</html:option>
                            
          <html:option value= "2">翻版</html:option>
                        
          </html:select>  
                  
          </td>
                  
          <td><html:text name="pd" property="gamePrice" size="10"/></td>
                  
          <td><html:text name="pd" property="gameContent"/></td>
              
          </tr>
              
          </table>
          <html:hidden property="method" value="doUpdateProduct"/>
          <html:hidden name="pd" property="gameId" />
          <html:hidden property="flag" value="<%= flag%>"/>
          <html:hidden property="fieldname" value="<%= fieldname%>"/>
          <html:hidden property="value" value="<%=value%>"/>
          <html:submit property="submit" value="保存"></html:submit>
          </html:form>
          </body>
          </html>


          product_success.jsp
          頁(yè)面代碼:

          <%@page pageEncoding="GBK" contentType="text/html; charset=GBK" %>
          <%
          String flag=(String)request.getAttribute("flag");
          String fieldname="";
          String value="";
          if(flag.equals("2")){
              fieldname
          =(String)request.getAttribute("fieldname");
              value
          =(String)request.getAttribute("value");
          }
          %>
          <html>
          <head>
          <meta http-equiv="Content-Type" content="text/html; charset=GBK"/>
          <title></title>
          </head>
          <body>
          操作成功!

          <href="/game/returnProduct.do?method=doReturnProduct&&flag=<%= flag%>&&fieldname=<%=fieldname%>&&value=<%= value%>">返回</a>
          <href="/game/addProductPage.do?method=doAddProductPage&&flag=<%= flag%>&&fieldname=<%=fieldname%>&&value=<%= value%>">繼續(xù)添加</a>
          </body>
          </html>

           

          product_failure.jsp頁(yè)面代碼:

           

          <%@page pageEncoding="GBK" contentType="text/html; charset=GBK" %>
          <%
          String flag=(String)request.getAttribute("flag");
          String fieldname="";
          String value="";
          if(flag.equals("2")){
              fieldname
          =(String)request.getAttribute("fieldname");
              value
          =(String)request.getAttribute("value");
          }
          %>
          <html>
          <head>
          <meta http-equiv="Content-Type" content="text/html; charset=GBK"/>
          <title></title>
          </head>
          <body>
          操作失敗!
          <href="/game/returnProduct.do?method=doReturnProduct&&flag=<%= flag%>&&fieldname=<%=fieldname%>&&value=<%= value%>">返回</a>
          </body>
          </html>

           

          最后在tld文件夾中添加下列tld文件。

           

           

          至此,整個(gè)項(xiàng)目基本編寫(xiě)完了,運(yùn)行tomcat,看看我們的項(xiàng)目的效果吧!

          在地址欄輸入http://localhost:8088/game/products/index.jsp

           

          然后點(diǎn)擊“進(jìn)入游戲軟件管理單元”鏈接,主界面出現(xiàn)了。


          posted on 2007-03-14 10:25 千山鳥(niǎo)飛絕 閱讀(7527) 評(píng)論(18)  編輯  收藏 所屬分類(lèi): Web開(kāi)發(fā)

          FeedBack:
          # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(xiě)(2)[未登錄](méi)
          2007-03-14 13:24 | 阿蜜果
          :)
          可以試著將分頁(yè)部分寫(xiě)成自定義標(biāo)簽的形式。  回復(fù)  更多評(píng)論
            
          # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(xiě)(2)
          2007-03-24 09:07 | 千山鳥(niǎo)飛絕
          @阿蜜果
          等有時(shí)間再來(lái)修改。  回復(fù)  更多評(píng)論
            
          # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(xiě)(2)[未登錄](méi)
          2007-04-22 15:41 | leo
          頁(yè)面最好不要有代碼,后臺(tái)處理下放到form里直接在頁(yè)面顯示不是很好嗎.  回復(fù)  更多評(píng)論
            
          # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(xiě)(2)
          2007-04-26 14:18 | 軍軍
          收益非淺
          可以加10000個(gè)頂。
          向你學(xué)習(xí)。  回復(fù)  更多評(píng)論
            
          # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(xiě)(2)
          2007-04-30 14:06 | furong
          千山鳥(niǎo)飛絕
          非常感謝你寫(xiě)的這些系列文章

          但是感覺(jué)最后的web應(yīng)用層代碼很多,對(duì)于我這種初學(xué)者來(lái)說(shuō)看起來(lái)有點(diǎn)困難
          不知道你能不能把web層用struts2寫(xiě)出來(lái),總感覺(jué)struts2可能沒(méi)有這么煩瑣

          感激不盡!  回復(fù)  更多評(píng)論
            
          # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(xiě)(2)
          2007-04-30 16:09 | 千山鳥(niǎo)飛絕
          @furong
          你可以看看這個(gè)示例中的struts2.0的代碼:
          Struts2.0+spring2.0+hibernate3.1 ACEGI應(yīng)用(權(quán)限判斷)
          http://www.aygfsteel.com/rickhunter/archive/2007/04/24/113103.html

          最近比較忙,一直沒(méi)時(shí)間寫(xiě)文章,只是將一些示例放在網(wǎng)上了。有空的時(shí)候會(huì)寫(xiě)幾篇關(guān)于struts2.0和hibernate annotation以及spring2.0的文章。  回復(fù)  更多評(píng)論
            
          # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(xiě)(2)
          2007-05-09 09:50 | 東東
          大體意思很清晰 比較有價(jià)值 愛(ài)  回復(fù)  更多評(píng)論
            
          # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(xiě)(2)
          2007-06-06 09:49 | neusoft029
          非常漂亮,寫(xiě)的很好  回復(fù)  更多評(píng)論
            
          # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(xiě)(2)
          2007-06-14 11:53 | sgwood
          你寫(xiě)得不錯(cuò),支持一下,最近研究Struts2.0
          有興趣的人一起聯(lián)系:sgwood@qq.com  回復(fù)  更多評(píng)論
            
          # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(xiě)(2)
          2007-06-27 15:48 | 盧濤
          是的Web層的代碼多了點(diǎn).
          建議JSP頁(yè)面中使用JSTL,頁(yè)面更加簡(jiǎn)潔  回復(fù)  更多評(píng)論
            
          # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(xiě)(2)
          2007-08-28 11:16 | kewon
          org.apache.jasper.JasperException: Unable to compile class for JSP:

          An error occurred at line: 22 in the generated java file
          The method getJspApplicationContext(ServletContext) is undefined for the type JspFactory

          Stacktrace:
          org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92)
          org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
          org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:423)
          org.apache.jasper.compiler.Compiler.compile(Compiler.java:308)
          org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
          org.apache.jasper.compiler.Compiler.compile(Compiler.java:273)
          org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
          org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
          org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
          org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
          javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
          com.game.commons.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:36)

          這是怎么原因?  回復(fù)  更多評(píng)論
            
          # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(xiě)(2)
          2007-08-28 11:17 | kewon
          為什么jsp的頁(yè)面不能編譯?  回復(fù)  更多評(píng)論
            
          # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(xiě)(2)[未登錄](méi)
          2007-11-09 13:25 | sky
          非常感謝  回復(fù)  更多評(píng)論
            
          # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(xiě)(2)
          2007-11-29 22:19 | 易京勇
          基本思路還是很清晰的,學(xué)到東西拉!  回復(fù)  更多評(píng)論
            
          # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(xiě)(2)
          2008-04-25 07:44 | 問(wèn)問(wèn)
          樓主,你的代碼真的不怎么樣(真的沒(méi)啥先進(jìn)的地方),也許用不了多久你就會(huì)贊同我的看法。
          實(shí)話實(shí)說(shuō),請(qǐng)見(jiàn)諒。  回復(fù)  更多評(píng)論
            
          # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(xiě)(2)[未登錄](méi)
          2008-04-29 11:18 | aa
          寫(xiě)得不錯(cuò) 頂起來(lái)   回復(fù)  更多評(píng)論
            
          # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(xiě)(2)
          2008-12-11 09:50 | Yu
          雖然可能寫(xiě)的不完美,但是對(duì)于初學(xué)者來(lái)說(shuō),還是一個(gè)很好的入門(mén)例子,畢竟網(wǎng)上寫(xiě)得那些詳細(xì)的教程很少,謝謝了:)  回復(fù)  更多評(píng)論
            
          # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(xiě)(2)
          2011-09-02 11:20 | 右手懸空
          標(biāo)記下,回去研究  回復(fù)  更多評(píng)論
            
          正在閱讀:



          <2025年8月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          31123456

          常用鏈接

          留言簿(35)

          隨筆檔案

          文章分類(lèi)

          文章檔案

          好友的blog

          我的其他blog

          老婆的Blog

          搜索

          •  

          積分與排名

          • 積分 - 776608
          • 排名 - 56

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 陆河县| 丽江市| 甘南县| 太湖县| 辉县市| 磐石市| 英吉沙县| 扎囊县| 神农架林区| 葵青区| 镇江市| 怀集县| 清苑县| 东乡县| 灵台县| 平遥县| 康平县| 普定县| 阜新| 策勒县| 伊宁市| 汽车| 剑川县| 九龙县| 从化市| 光泽县| 高邑县| 裕民县| 郴州市| 茂名市| 乌海市| 三原县| 泊头市| 临潭县| 大余县| 米泉市| 曲麻莱县| 沈阳市| 建德市| 平舆县| 贵州省|