<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

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

    接著就是寫資源文件了。

    com.game.resources包中添加ApplicationResourcesProducts.properties文件。如果你的eclipse中有Properties Editor這個(gè)插件,就可以用Properties Editor打開資源文件進(jìn)行編寫,省去了用命令行轉(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=游戲中文名稱
    errors.gameNameEn=游戲英文名稱
    errors.gameCapacity=碟數(shù)
    errors.gamePrice=價(jià)格


     

    需要注意的是

     ssh3.jpg

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

     

    接下來(lái)就是寫頁(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">中文名稱</option>
            
    <option value="gameNameEn">英文名稱</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>游戲中文名稱</td>
            
    <td>游戲英文名稱</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>游戲中文名稱</td>
            
    <td>游戲英文名稱</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>游戲中文名稱</td>
            
    <td>游戲英文名稱</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)目基本編寫完了,運(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 千山鳥飛絕 閱讀(7504) 評(píng)論(18)  編輯  收藏 所屬分類: Web開發(fā)

    FeedBack:
    # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(2)[未登錄](méi)
    2007-03-14 13:24 | 阿蜜果
    :)
    可以試著將分頁(yè)部分寫成自定義標(biāo)簽的形式。  回復(fù)  更多評(píng)論
      
    # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(2)
    2007-03-24 09:07 | 千山鳥飛絕
    @阿蜜果
    等有時(shí)間再來(lái)修改。  回復(fù)  更多評(píng)論
      
    # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(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層代碼編寫(2)
    2007-04-26 14:18 | 軍軍
    收益非淺
    可以加10000個(gè)頂。
    向你學(xué)習(xí)。  回復(fù)  更多評(píng)論
      
    # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(2)
    2007-04-30 14:06 | furong
    千山鳥飛絕
    非常感謝你寫的這些系列文章

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

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

    最近比較忙,一直沒(méi)時(shí)間寫文章,只是將一些示例放在網(wǎng)上了。有空的時(shí)候會(huì)寫幾篇關(guān)于struts2.0和hibernate annotation以及spring2.0的文章。  回復(fù)  更多評(píng)論
      
    # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(2)
    2007-05-09 09:50 | 東東
    大體意思很清晰 比較有價(jià)值 愛  回復(fù)  更多評(píng)論
      
    # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(2)
    2007-06-06 09:49 | neusoft029
    非常漂亮,寫的很好  回復(fù)  更多評(píng)論
      
    # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(2)
    2007-06-14 11:53 | sgwood
    你寫得不錯(cuò),支持一下,最近研究Struts2.0
    有興趣的人一起聯(lián)系:sgwood@qq.com  回復(fù)  更多評(píng)論
      
    # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(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層代碼編寫(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層代碼編寫(2)
    2007-08-28 11:17 | kewon
    為什么jsp的頁(yè)面不能編譯?  回復(fù)  更多評(píng)論
      
    # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(2)[未登錄](méi)
    2007-11-09 13:25 | sky
    非常感謝  回復(fù)  更多評(píng)論
      
    # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(2)
    2007-11-29 22:19 | 易京勇
    基本思路還是很清晰的,學(xué)到東西拉!  回復(fù)  更多評(píng)論
      
    # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(2)
    2008-04-25 07:44 | 問(wèn)問(wèn)
    樓主,你的代碼真的不怎么樣(真的沒(méi)啥先進(jìn)的地方),也許用不了多久你就會(huì)贊同我的看法。
    實(shí)話實(shí)說(shuō),請(qǐng)見諒。  回復(fù)  更多評(píng)論
      
    # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(2)[未登錄](méi)
    2008-04-29 11:18 | aa
    寫得不錯(cuò) 頂起來(lái)   回復(fù)  更多評(píng)論
      
    # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(2)
    2008-12-11 09:50 | Yu
    雖然可能寫的不完美,但是對(duì)于初學(xué)者來(lái)說(shuō),還是一個(gè)很好的入門例子,畢竟網(wǎng)上寫得那些詳細(xì)的教程很少,謝謝了:)  回復(fù)  更多評(píng)論
      
    # re: struts+spring+hibernate的web應(yīng)用 Web層代碼編寫(2)
    2011-09-02 11:20 | 右手懸空
    標(biāo)記下,回去研究  回復(fù)  更多評(píng)論
      
    正在閱讀:



    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿(35)

    隨筆檔案

    文章分類

    文章檔案

    好友的blog

    我的其他blog

    老婆的Blog

    搜索

    •  

    積分與排名

    • 積分 - 775111
    • 排名 - 56

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 美女被免费视频网站| 亚洲国产成人精品电影| 国产91成人精品亚洲精品| 99久久免费精品国产72精品九九| 亚洲一区二区影院| 人妻无码一区二区三区免费 | 亚欧免费无码aⅴ在线观看| 亚洲欧洲无码AV电影在线观看 | 亚洲最大黄色网站| 91精品免费国产高清在线| 激情综合亚洲色婷婷五月APP| 无人在线直播免费观看| 亚洲日本国产综合高清| 免费看AV毛片一区二区三区| 在线视频亚洲一区| 亚洲精品国产精品乱码不卡| 永久免费观看黄网站| 亚洲人成人一区二区三区| 亚洲一区二区在线免费观看| 91亚洲国产成人久久精品| 性色av无码免费一区二区三区| 亚洲国产精品99久久久久久| 又粗又黄又猛又爽大片免费| 久青草视频97国内免费影视| 久久精品国产亚洲AV麻豆不卡| 日韩精品无码免费一区二区三区| 亚洲日本乱码一区二区在线二产线| 2019中文字幕在线电影免费 | 亚洲天堂中文字幕在线观看| 成全视频免费高清| 一区二区三区免费看| 久久精品国产亚洲av水果派| 免费鲁丝片一级观看| 高清永久免费观看 | 亚洲风情亚Aⅴ在线发布| 亚洲国产成人久久一区久久| 久久99毛片免费观看不卡| jiz zz在亚洲| 亚洲日韩av无码| 无码一区二区三区免费视频| 在线观看人成视频免费无遮挡|