(转)struts+spring+hibernate的web应用(四) Web层代码编写(2)

struts+spring+hibernate的web应用<四> Web层代码编写(2)

接着就是写资源文件了。

com.game.resources包中添加ApplicationResourcesProducts.properties文件。如果你的eclipse中有Properties Editor这个插件,就可以用Properties Editor打开资源文件进行编写,省去了用命令行转换格式的麻烦。配置内容如下:

errors.required={0}不能为空.
errors.minlength={0}不能小于 {1} 个字符.
errors.maxlength={0}不能大于 {1} 个字符.
errors.invalid={0}输入格式不对.
errors.byte={0}必须为字节.
errors.short={0}必须为短整型.
errors.integer={0}必须为整型.
errors.long={0}必须为长整型.
errors.float={0}必须为浮点型.
errors.double={0}必须为双精度型.
errors.date={0}不是一个正确的日期或格式不对.
errors.range={0} is not in the range {1} through {2}.
errors.creditcard={0} is not a valid credit card number.
errors.email={0}不是一个有效的email地址.

errors.gameNameCn=游戏中文名称
errors.gameNameEn=游戏英文名称
errors.gameCapacity=碟数
errors.gamePrice=价格


 

需要注意的是

 ssh3.jpg

这一节是不能省去的。

 

接下来就是写页面文件了。在products文件夹中添加如下页面。

 

index.jsp页面代码:

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

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK"/>
<title>游戏软件管理系统</title>
</head>
<body>

<href="/game/getProducts.do?method=doGetProducts&&flag=1">进入游戏软件管理单元</a>
</body>
</html>

 

 

products.jsp页面代码:

<%@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(
"请输入查询关键字!"
);
    }
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">碟数</option>
        
<option value="gameVersion">版本</option>
        
<option value="gameMedia">介质</option>
        
<option value="gameCopyright">版权</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>软件介质</td>
        
<td>碟数</td>
        
<td>版权</td>
        
<td>价格(元)</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"/>&nbsp;
                共
<bean:write name="PAGER" property="totalPages"/>&nbsp;
                
<html:link action="/getProducts.do?method=doGetProducts&&flag=1&&pagerMethod=first" paramName="PAGER" paramProperty="currentPage" paramId="currentPage">首页</html:link>
                
<html:link action="/getProducts.do?method=doGetProducts&&flag=1&&pagerMethod=previous" paramName="PAGER" paramProperty="currentPage" paramId="currentPage">上一页</html:link>
                
<html:link action="/getProducts.do?method=doGetProducts&&flag=1&&pagerMethod=next" paramName="PAGER" paramProperty="currentPage" paramId="currentPage">下一页</html:link>
                
<html:link action="/getProducts.do?method=doGetProducts&&flag=1&&pagerMethod=last" paramName="PAGER" paramProperty="currentPage" paramId="currentPage">尾页</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"/>&nbsp;
                共
<bean:write name="PAGER" property="totalPages"/>&nbsp;
                
<href="/game/queryProducts.do?method=doQueryProduct&&flag=2&&fieldname=<%=fieldname%>&&value=<%= value%>&&pagerMethod=first&&currentPage=<%=pager.getCurrentPage()%>" >首页</a>
                
<href="/game/queryProducts.do?method=doQueryProduct&&flag=2&&fieldname=<%=fieldname%>&&value=<%= value%>&&pagerMethod=previous&&currentPage=<%=pager.getCurrentPage()%>" >上一页</a>
                
<href="/game/queryProducts.do?method=doQueryProduct&&flag=2&&fieldname=<%=fieldname%>&&value=<%= value%>&&pagerMethod=next&&currentPage=<%=pager.getCurrentPage()%>" >下一页</a>
                
<href="/game/queryProducts.do?method=doQueryProduct&&flag=2&&fieldname=<%=fieldname%>&&value=<%= value%>&&pagerMethod=last&&currentPage=<%=pager.getCurrentPage()%>" >尾页</a>
                
            
</td>     
        
<%}%>

    
</tr>
</table>
</form>
</body>
</html>



addproduct.jsp页面代码:

<%@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>软件介质</td>
        
<td>碟数</td>
        
<td>版权</td>
        
<td>价格(元)</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页面代码:

<%@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>软件介质</td>
        
<td>碟数</td>
        
<td>版权</td>
        
<td>价格(元)</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
页面代码:

<%@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%>">继续添加</a>
</body>
</html>

 

product_failure.jsp页面代码:

 

<%@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文件。

 ssh4.jpg

 

至此,整个项目基本编写完了,运行tomcat,看看我们的项目的效果吧!

在地址栏输入http://localhost:8088/game/products/index.jsp

 

然后点击“进入游戏软件管理单元”链接,主界面出现了。

ssh5.jpg
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值