`
jiqimiao
  • 浏览: 63312 次
  • 性别: Icon_minigender_1
  • 来自: 常州
社区版块
存档分类
最新评论

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

 
阅读更多
接上一篇:struts+spring+hibernate的web应用<四> Web层代码编写(1)

接着就是写资源文件了。

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}isnotintherange{1}through{2}.
errors.creditcard={0}isnotavalidcreditcardnumber.
errors.email={0}不是一个有效的email地址.

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


需要注意的是

ssh3.jpg

这一节是不能省去的。

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

index.jsp页面代码:

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

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

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

products.jsp页面代码:

<%@pagepageEncoding="GBK"contentType="text/html;charset=GBK"import="com.game.commons.Pager;"%>
<%@tagliburi="struts-html"prefix="html"%>
<%@tagliburi="struts-logic"prefix="logic"%>
<%@tagliburi="struts-bean"prefix="bean"%>
<%
Stringflag=(String)request.getAttribute("flag");
StringtotalRows=(String)request.getAttribute("totalRows");
Stringfieldname="";
Stringvalue="";
if(flag.equals("2")){
fieldname
=(String)request.getAttribute("fieldname");
value
=(String)request.getAttribute("value");
}
%>
<html>
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=GBK"/>
<title></title>
<scriptlanguage="JavaScript">
functionbtnQuery(){
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>
<formname="myfm"method="post">
<tableborder="1">
<tr>
<td>
<ahref="/game/getProducts.do?method=doGetProducts&&flag=1">察看所有记录</a>
&nbsp;&nbsp;&nbsp;
</td>
<td>
<ahref="/game/addProductPage.do?method=doAddProductPage&&flag=<%=flag%>&&fieldname=<%=fieldname%>&&value=<%=value%>">添加</a>
&nbsp;&nbsp;&nbsp;
</td>
<td>
<selectname="fieldname">
<optionvalue="gameNameCn">中文名称</option>
<optionvalue="gameNameEn">英文名称</option>
<optionvalue="gameCapacity">碟数</option>
<optionvalue="gameVersion">版本</option>
<optionvalue="gameMedia">介质</option>
<optionvalue="gameCopyright">版权</option>
</select>
<inputvalue=""name="value"/>

<ahref="#"onclick="btnQuery()">查询</a>
</td>
</tr>
</table>
<br>
<br>

<tableborder="1">
<tr>
<td>游戏中文名称</td>
<td>游戏英文名称</td>
<td>软件版本</td>
<td>软件介质</td>
<td>碟数</td>
<td>版权</td>
<td>价格(元)</td>
<td>攻略</td>
</tr>
<logic:iterateid="pd"name="productsList">
<tr>
<td><ahref="/game/getProduct.do?method=doGetProduct&&flag=<%=flag%>&&gameId=<bean:writename="pd"property="gameId"/>&&flag=<%=flag%>&&fieldname=<%=fieldname%>&&value=<%=value%>"><bean:writename="pd"property="gameNameCn"/></a></td>
<td><bean:writename="pd"property="gameNameEn"/></td>
<td>
<logic:equalname="pd"property="gameVersion"value="1">
中文版
</logic:equal>
<logic:equalname="pd"property="gameVersion"value="2">
英文版
</logic:equal>
</td>
<td>
<logic:equalname="pd"property="gameMedia"value="1">
CD
</logic:equal>
<logic:equalname="pd"property="gameMedia"value="2">
DVD5
</logic:equal>
<logic:equalname="pd"property="gameMedia"value="3">
DVD9
</logic:equal>
</td>
<td><bean:writename="pd"property="gameCapacity"/></td>
<td>
<logic:equalname="pd"property="gameCopyright"value="1">
正版
</logic:equal>
<logic:equalname="pd"property="gameCopyright"value="2">
翻版
</logic:equal>
</td>
<td><bean:writename="pd"property="gamePrice"/></td>
<td><bean:writename="pd"property="gameContent"/></td>
</tr>
</logic:iterate>
<tr>
<%if(flag.equals("1")){%>
<tdcolspan="8"align="right"class="head">
共有
<%=totalRows%>条记录&nbsp;&nbsp;&nbsp;&nbsp;
<bean:writename="PAGER"property="currentPage"/>&nbsp;
<bean:writename="PAGER"property="totalPages"/>&nbsp;
<html:linkaction="/getProducts.do?method=doGetProducts&&flag=1&&pagerMethod=first"paramName="PAGER"paramProperty="currentPage"paramId="currentPage">首页</html:link>
<html:linkaction="/getProducts.do?method=doGetProducts&&flag=1&&pagerMethod=previous"paramName="PAGER"paramProperty="currentPage"paramId="currentPage">上一页</html:link>
<html:linkaction="/getProducts.do?method=doGetProducts&&flag=1&&pagerMethod=next"paramName="PAGER"paramProperty="currentPage"paramId="currentPage">下一页</html:link>
<html:linkaction="/getProducts.do?method=doGetProducts&&flag=1&&pagerMethod=last"paramName="PAGER"paramProperty="currentPage"paramId="currentPage">尾页</html:link>
</td>
<%}elseif(flag.equals("2")){%>
<%Pagerpager=(Pager)request.getAttribute("PAGER");%>
<tdcolspan="8"align="right"class="head">
共有
<%=totalRows%>条记录&nbsp;&nbsp;&nbsp;&nbsp;
<bean:writename="PAGER"property="currentPage"/>&nbsp;
<bean:writename="PAGER"property="totalPages"/>&nbsp;
<ahref="/game/queryProducts.do?method=doQueryProduct&&flag=2&&fieldname=<%=fieldname%>&&value=<%=value%>&&pagerMethod=first&&currentPage=<%=pager.getCurrentPage()%>">首页</a>
<ahref="/game/queryProducts.do?method=doQueryProduct&&flag=2&&fieldname=<%=fieldname%>&&value=<%=value%>&&pagerMethod=previous&&currentPage=<%=pager.getCurrentPage()%>">上一页</a>
<ahref="/game/queryProducts.do?method=doQueryProduct&&flag=2&&fieldname=<%=fieldname%>&&value=<%=value%>&&pagerMethod=next&&currentPage=<%=pager.getCurrentPage()%>">下一页</a>
<ahref="/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页面代码:

<%@pagepageEncoding="GBK"contentType="text/html;charset=GBK"%>
<%@tagliburi="struts-html"prefix="html"%>
<%@tagliburi="struts-logic"prefix="logic"%>
<%@tagliburi="struts-bean"prefix="bean"%>
<%
Stringflag=(String)request.getAttribute("flag");
Stringfieldname="";
Stringvalue="";
if(flag.equals("2")){
fieldname
=(String)request.getAttribute("fieldname");
value
=(String)request.getAttribute("value");
}
Stringmaxid=(String)request.getAttribute("maxid");
%>
<html>
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=GBK"/>
<title></title>
<html:base/>
<html:javascriptformName="productsForm"method="validate"/>
<scriptLanguage="JavaScript">
functionbtn_AddFolder(){
if(confirm("确定要保存吗?")){
if(document.productsForm.onsubmit()){
document.forms[
0].submit();
}

}

}

</script>
</head>
<body>

<ahref="/game/returnProduct.do?method=doReturnProduct&&flag=<%=flag%>&&fieldname=<%=fieldname%>&&value=<%=value%>">返回</a>
<html:formaction="/addProduct.do"onsubmit="returnvalidate(this)">
<tableborder="1">
<tr>
<td>游戏中文名称</td>
<td>游戏英文名称</td>
<td>软件版本</td>
<td>软件介质</td>
<td>碟数</td>
<td>版权</td>
<td>价格(元)</td>
<td>攻略</td>
</tr>
<tr>
<td><html:textproperty="gameNameCn"/></td>
<td><html:textproperty="gameNameEn"/></td>
<td>
<html:selectproperty="gameVersion">
<html:optionvalue="2">英文版&nbsp;&nbsp;&nbsp;&nbsp;</html:option>
<html:optionvalue="1">中文版</html:option>
</html:select>
</td>
<td>
<html:selectproperty="gameMedia">
<html:optionvalue="1">CD&nbsp;&nbsp;&nbsp;&nbsp;</html:option>
<html:optionvalue="2">DVD5</html:option>
<html:optionvalue="3">DVD9</html:option>
</html:select>
</td>
<td><html:textproperty="gameCapacity"size="5"/></td>
<td>
<html:selectproperty="gameCopyright">
<html:optionvalue="2">翻版&nbsp;&nbsp;&nbsp;&nbsp;</html:option>
<html:optionvalue="1">正版</html:option>
</html:select>
</td>
<td><html:textproperty="gamePrice"/></td>
<td><html:textproperty="gameContent"/></td>
</tr>

</table>
<html:hiddenproperty="gameId"value="<%=maxid%>"/>
<html:hiddenproperty="method"value="doAddProduct"/>
<html:hiddenproperty="flag"value="<%=flag%>"/>
<html:hiddenproperty="fieldname"value="<%=fieldname%>"/>
<html:hiddenproperty="value"value="<%=value%>"/>
<inputtype="button"value="保存"onclick="btn_AddFolder()"/>

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


product.jsp页面代码:

<%@pagepageEncoding="GBK"contentType="text/html;charset=GBK"%>
<%@tagliburi="struts-html"prefix="html"%>
<%@tagliburi="struts-logic"prefix="logic"%>
<%@tagliburi="struts-bean"prefix="bean"%>
<%
Stringflag=(String)request.getAttribute("flag");
Stringfieldname="";
Stringvalue="";
if(flag.equals("2")){
fieldname
=(String)request.getAttribute("fieldname");
value
=(String)request.getAttribute("value");
}
%>
<html>
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=GBK"/>
<title></title>
<html:javascriptformName="productsForm"method="validate"/>
</head>
<body>
<ahref="/game/addProductPage.do?method=doAddProductPage&&flag=<%=flag%>&&fieldname=<%=fieldname%>&&value=<%=value%>">添加</a>&nbsp;&nbsp;&nbsp;
<ahref="/game/returnProduct.do?method=doReturnProduct&&flag=<%=flag%>&&fieldname=<%=fieldname%>&&value=<%=value%>">返回</a>&nbsp;&nbsp;&nbsp;
<ahref="/game/deleteProduct.do?method=doDeleteProduct&&flag=<%=flag%>&&gameId=<bean:writename="pd"property="gameId"/>&&fieldname=<%=fieldname%>&&value=<%=value%>">删除</a>
<br>
<br>
<html:formaction="/updateProduct.do"onsubmit="returnvalidate(this)">
<tableborder="1">
<tr>
<td>游戏中文名称</td>
<td>游戏英文名称</td>
<td>软件版本</td>
<td>软件介质</td>
<td>碟数</td>
<td>版权</td>
<td>价格(元)</td>
<td>攻略</td>
</tr>
<tr>
<td><html:textname="pd"property="gameNameCn"/></td>
<td><html:textname="pd"property="gameNameEn"/></td>
<td>
<html:selectname="pd"property="gameVersion">
<html:optionvalue="1">中文版&nbsp;&nbsp;&nbsp;&nbsp;</html:option>
<html:optionvalue="2">英文版</html:option>
</html:select>
</td>
<td>
<html:selectname="pd"property="gameMedia">
<html:optionvalue="1">CD&nbsp;&nbsp;&nbsp;&nbsp;</html:option>
<html:optionvalue="2">DVD5</html:option>
<html:optionvalue="3">DVD9</html:option>
</html:select>
</td>
<td><html:textname="pd"property="gameCapacity"size="5"/></td>
<td>
<html:selectname="pd"property="gameCopyright">
<html:optionvalue="1">正版&nbsp;&nbsp;&nbsp;&nbsp;</html:option>
<html:optionvalue="2">翻版</html:option>
</html:select>
</td>
<td><html:textname="pd"property="gamePrice"size="10"/></td>
<td><html:textname="pd"property="gameContent"/></td>
</tr>

</table>
<html:hiddenproperty="method"value="doUpdateProduct"/>
<html:hiddenname="pd"property="gameId"/>
<html:hiddenproperty="flag"value="<%=flag%>"/>
<html:hiddenproperty="fieldname"value="<%=fieldname%>"/>
<html:hiddenproperty="value"value="<%=value%>"/>
<html:submitproperty="submit"value="保存"></html:submit>
</html:form>
</body>
</html>


product_success.jsp
页面代码:

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

<ahref="/game/returnProduct.do?method=doReturnProduct&&flag=<%=flag%>&&fieldname=<%=fieldname%>&&value=<%=value%>">返回</a>
<ahref="/game/addProductPage.do?method=doAddProductPage&&flag=<%=flag%>&&fieldname=<%=fieldname%>&&value=<%=value%>">继续添加</a>
</body>
</html>

product_failure.jsp页面代码:

<%@pagepageEncoding="GBK"contentType="text/html;charset=GBK"%>
<%
Stringflag=(String)request.getAttribute("flag");
Stringfieldname="";
Stringvalue="";
if(flag.equals("2")){
fieldname
=(String)request.getAttribute("fieldname");
value
=(String)request.getAttribute("value");
}
%>
<html>
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=GBK"/>
<title></title>
</head>
<body>
操作失败!
<ahref="/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
分享到:
评论

相关推荐

    struts+spring+hibernate实现图书修改和删除

    在IT行业中,SSH(Struts + Spring + Hibernate)是一个经典的Java Web开发框架组合,用于构建高效、可扩展的Web应用程序。本项目通过SSH框架实现了图书管理系统的图书修改和删除功能,下面将详细介绍这三个核心组件...

    最新项目系统:Struts2+Spring4+Hibernate4三大框架整合

    Struts2、Spring4和Hibernate4是Java Web开发中的三大主流框架,它们分别负责MVC模式中的表现层、业务层和服务层。这个最新的项目系统整合了这三个框架,旨在提供一个高效、灵活且易于维护的开发环境。下面将详细...

    struts2+spring4+hibernate

    Struts2、Spring4和Hibernate是Java开发中的三大框架,它们在构建企业级Web应用程序时起着核心作用。本教程将深入探讨这三个框架如何协同工作,以实现高效、灵活和可扩展的电子商务平台。 首先,Struts2是一个基于...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (1)

    12.6.16 编写Spring和Hibernate的配置文件spring-config.xml 12.6.17 编写web.xml 12.6.18 验证示例 12.7 小结 第四篇 J2EE项目案例精选 第十三章 网上调查系统 13.1 系统概述 13.2 需求分析 13.2.1 系统用例图 ...

    Struts2+Spring+Hibernate和Struts2+Spring+Ibatis

    Struts2+Spring+Hibernate和Struts2+Spring+Ibatis是两种常见的Java Web应用程序集成框架,它们分别基于ORM框架Hibernate和轻量级数据访问框架Ibatis。这两种框架结合Spring,旨在提供一个强大的、可扩展的、易于...

    SSH(Struts+Spring+Hibernate)结合项目简单实例

    SSH(Struts+Spring+Hibernate)是Java Web开发中一种常见的技术栈,它将MVC设计模式、依赖注入和持久层框架集成为一个整体,大大提高了开发效率和代码的可维护性。下面我们将深入探讨SSH框架的各个组成部分及其结合...

    java web 实战宝典_JSP+Servlet+Struts_2+Hibernate+Spring+Ajax

    这本“java web 实战宝典_JSP+Servlet+Struts_2+Hibernate+Spring+Ajax”涵盖了JSP和Servlet作为Web基础技术的知识,以及Struts 2、Spring、Hibernate三个主流的SSH框架,并且提供了Ajax技术的应用介绍。这是一本...

    Struts+Spring+Hibernate+MySQL

    Struts、Spring、Hibernate以及MySQL是Java开发领域中非常经典的四大框架组合,它们共同构建了一个强大的Web应用程序架构。Struts提供了MVC(Model-View-Controller)设计模式的支持,Spring作为一个全面的轻量级...

    struts+spring+hibernate(mysql)用户登录及文件上传

    Struts、Spring 和 Hibernate 是Java Web开发中的三大框架,它们结合使用可以构建高效、模块化的应用程序,特别是对于处理用户登录和文件上传等常见功能。在这个项目中,"struts+spring+hibernate(mysql)用户登录及...

    struts+spring+hibernate

    Struts、Spring 和 Hibernate 是Java开发中非常著名的三个开源框架,它们组合在一起形成的SSH(Struts、Spring、Hibernate)框架,是企业级Web应用开发的常用解决方案。SSH框架的整合可以实现模型-视图-控制器(MVC...

    Struts1+Spring2+Hibernate2整合详细例子

    Struts1、Spring2和Hibernate2是Java Web开发中的三个重要框架,它们分别负责MVC模式中的表现层、业务层和服务层。这个整合例子旨在展示如何将这三个框架协同工作,以构建一个完整的Java Web应用程序。 Struts1是...

    博客Struts2+Spring2+Hibernate3 web应用示例

    总之,"博客Struts2+Spring2+Hibernate3 web应用示例"是一个典型的Java Web项目结构,展示了如何利用SSH框架实现高效的数据管理,以及如何通过MVC模式组织代码,以提高项目的可扩展性和可维护性。通过学习和理解这个...

    Struts+Spring+Hibernate+Ajax的Demo

    Struts、Spring、Hibernate和Ajax是Java Web开发中的四大核心技术,它们共同构建了一个高效、灵活的Web应用程序架构。在这个"Struts+Spring+Hibernate+Ajax的Demo"中,开发者使用了这些技术来创建一个功能丰富的示例...

    struts2.1+spring2.5+hibernate3.3整合之第一步(spring2.5+hibernate3.3)

    总的来说,Struts2.1、Spring2.5和Hibernate3.3的整合为开发者提供了一个强大的开发平台,可以高效地构建复杂的Java Web应用。尽管现代框架如Spring Boot已逐渐取代这种传统的整合方式,但对于理解企业级开发的底层...

    Struts2+Spring2+Hibernate3 web应用示例

    Struts2、Spring2和Hibernate3是经典的Java Web开发框架组合,它们共同构建了一个强大的、模块化的、可扩展的应用架构。这个"Struts2+Spring2+Hibernate3 web应用示例"旨在展示如何将这三个框架集成到一个项目中,以...

    轻量级J2EE企业应用实战--Struts+Spring+Hibernate整合开发笔记

    轻量级 J2EE 企业应用实战 -- Struts+Spring+Hibernate 整合开发笔记 本资源为轻量级 J2EE 企业应用实战开发笔记,涵盖 Struts、Spring 和 Hibernate 三大框架的整合开发实践。笔记从 JDK 安装和配置环境变量开始,...

    超市管理信息系统(SSH struts+spring+hibernate)

    总的来说,"超市管理信息系统(SSH struts+spring+hibernate)"涵盖了Java Web开发的核心技术和业务流程,是学习和提升Java企业级应用开发能力的理想案例。通过深入研究和实践,开发者不仅可以提升技术水平,还能为...

    零基础学Java_Web开发:JSP+Servlet+Struts+Spring+Hibernate+Ajax

    本资料集合了"零基础学Java_Web开发:JSP+Servlet+Struts+Spring+Hibernate+Ajax",涵盖了从初级到进阶的重要概念,帮助初学者系统地掌握Web开发技能。 1. **JSP(JavaServer Pages)技术**: JSP是Java平台上的...

Global site tag (gtag.js) - Google Analytics