如何实现Struts 数据库应用程序(1)

类别:Java 点击:0 评论:0 推荐:

如何实现Struts 数据库应用程序

 

[相关链接]

JavaWebStudio系列开发工具Visaul Struts版本简介》http://dev.csdn.net/develop/article/28/28871.shtm

如何实现最简单的Struts程序》http://dev.csdn.net/develop/article/28/28946.shtm

Struts下拉框的实现》http://dev.csdn.net/develop/article/28/28956.shtm

《Sruts单选框的实现》http://dev.csdn.net/develop/article/29/29042.shtm

《Struts复选框的实现》http://dev.csdn.net/develop/article/29/29043.shtm

《Struts程序各文件之间的关系(1)》http://dev.csdn.net/develop/article/29/29131.shtm

《Struts程序各文件之间的关系(2)》http://dev.csdn.net/develop/article/29/29133.shtm

《如何实现Struts 数据库应用程序》

《如何在Struts 数据库应用程序中实现分页显示》

《如何在Struts 数据库应用程序中实现记录的删除、更新及链接》

《如何在Struts 数据库应用程序中实现记录的添加》

《如何建立一个带登陆页面的Struts数据库应用程序》

《如何建立一个带登陆页面及角色的Struts数据库应用程序》

 

上述例子开发环境:Java Web Studio系列开发环境visual strutst版本。

最新JavaWebStudio下载地址:ftp://210.36.64.79/kui

 

[目标]

本例的目标是实现一个简单的Struts 数据库应用程序。其功能是从SQL Server 2000中读取数据,并以表格的形式在输出页中显示出来。

定义一个名为“Test”表的字段:

录入一些测试数据:

  

[效果]

(1)全部显示:

输入页面:

输出页面:

 

(2)查询显示:

 

[背景知识]

 

 

[步骤]

 

1、打开Visual Struts开发环境:

从桌面JavaWebStudio快揵或BIN目录下的JavaWebStudio.exe文件启动JavaWebStudio的Visual Struts开发环境。

 

2、建立一个“空的Struts数据库应用模板”应用程序:

    选择菜单“文件”—“新建”—“新建项目”,弹出新建项目对话框,如图3-1所示:

 

在对话框中选择“空的Struts数据库应用模板”,在项目名称中输入“DBApp”,package (包名)和位置(项目的路径)采用默认的值就行,当然也可以根据需要改变。最后点击“确定”按钮完成新项目的建立。

 

从文件管理器中可看出DBApp项目的文件结构如下:

在DBApp项目根目录下包含四个子目录和两个文件,这是JSPStudio项目的标准结构,最好不要改变它们默认的名称,否则会出现问题。

 

3、利用Struts数据库应用文件向导建立新的应用:

在JSPStudio文件管理器内点击鼠标右键,在弹出的菜单中选择“Struts数据库应用文件向导”进入Struts文件向导对话框,也可以选择菜单“文件”—“新建”—“Struts数据库应用文件向导”进入Struts文件向导对话框。如下图所示:

(1)输入文件名:

(2)从数据源中导入SQL语句及数据表的字段信息(字段名和字段类型):

 

(3)从数据据表中选择所需的表“Test”。

需要特别注意的是,这里的“从数据源中导入SQL语句及数据表的字段信息”及“从数据据表中选择所需的表”仅仅是为了自动生成SQL语句及读取字段信息,这里完成可以直接手工输入,与该项目的数据库连接池的配置无关,下面第(4)点将另行配置数据库连接池。

 

接下来配置数据库连接池,其它属性页可采用默认的就行了,下面直接转去数据连接配置属性页即可。

(4)配置数据库连接池:

 

 

本例只采用了系统默认的一个变量mybeanvariable1,就用它保存输入数据。

 

 

4、项目文件结构

 

项目目录结构分析见《如何实现最简单的Struts程序》,这次Struts数据库应用文件向导自动生成了六个文件,其中web目录下是输入、输出两个JSP文件,src目录下是Java文件。除了文件名是我们输入之外,所有程序源代码都是文件向导自动生成的,所有的配置也是自动完成的。

刷新JSPStudio文件管理器,这时发现web目录下自动生成了两个文件,分别是DbList.jsp和DbList.jsp,前者是输入JSP文件,后者是输出JSP文件;src\emptyprj目录下自动生成了四个文件,分别是DbList Action.java和DbList Form.java,前者是Action文件,后者是FormAction文件;还有是数据库操作文件DbList.java和DbListDAO.java,前者用于保存数据表记录的Bean,后者是数据库操作DAO文件。

 

dbList.jsp文件:

 

dbListOut.jsp文件:

 

 

5、编译、启动服务器、运行:

   通过工具条上的按键分别编译项目及启动服务器,然后把开dbList.jsp并通过工具条上的“运行”按键运行dbList.jsp:

 

  首先试一下全部显示功能,点击“全部显示”接钮,如果如下图所示:

 

 接一来试一下查找功能,在文本框中输入数字3,点击“查找”接钮,如果如下图所示:

 

 

通过上述步骤,实现了预计的目标功能。

 

 

 

 

[程序源代码]

dbList.jsp文件:

 

dbListOut.jsp文件:

 

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

<%@ 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" %>

<%@ taglib uri="/WEB-INF/struts-template.tld" prefix="template" %>

<html:html>

<head>

<title></title>

<html:base/>

</head>

<body bgcolor="white">

<table width="98%" border="1" bgColor="#E6F2E7" borderColorDark="#FFFFFF" borderColorLight="#008000" cellPadding="3" cellSpacing="0" >

<tr bgcolor='#90C090'>

<td><span CONTENTEDITABLE=true>序号</span></td>

<td><span CONTENTEDITABLE=true>姓名</span></td>

<td><span CONTENTEDITABLE=true>备注</span></td>

</tr>

<logic:iterate name='dblist' id='dblist' type='emptyprj.dblist' scope='request'>

<logic:notEqual name='dblistForm' property='action' value='edit'>

<tr>

<td><bean:write name='dblist' property='序号' /></td>

<td><bean:write name='dblist' property='姓名' /></td>

<td><bean:write name='dblist' property='备注' /></td>

</tr>

</logic:notEqual>

<logic:equal name='dblistForm' property='action' value='edit'>

<tr>

<form method='post' name='dblistForm'

action="/DBApp/dblistAction.do?action=update&search=search

&expression=<bean:write name='dblist' property='序号' />">

<td><html:text name='dblist' property='序号' /></td>

<td><html:text name='dblist' property='姓名' /></td>

<td><html:text name='dblist' property='备注' /></td>

</tr>

</logic:equal>

</logic:iterate>

<tr><td  align=middle colSpan=4 ></td></tr>

</tr>

</table>

</body>

</html:html>

 

dbList.java文件:

这样定义一个用于保存数据表数据的Bean,它的变量与数据库表的字段完全对应,也就是与数据库应用文件向导中的SQL语句要查找的字段完全对应。

 

dbListDAO.java文件:

  这里定义一个DAO类,用于实现数据加的查找、删除、更新、添加及生成分页字符串等功能。

 

dbListForm.java文件:

  这里定义一个ActionForm Bean,除了包含与数据库表的字段完全对应的变量外(例如可用于保存查询条件中相应字段的变量的值、保存某行记录的数据等),还包含了与分页相关的变量,例如当前页码、分页字符串等变量。

 

dbListAction.java文件:

   这里定义一个Action类,用于实现页面的转发功能,另外还包括了不同请求类型的不同操作。其中action变量表示操作类型,相当于事件类型。通过这个变量,实现了类似于.NET中的“事件驱动”的功能。

 

web.xml文件:

  这里除了普通的Struts项目的配置之外,还包括数据库连接池的配置,见暗体字部分的代码。

 

struts-config.xml文件:

 

另外,项目中还包含了数据库连接池的实现文件ConnectionPool.java和数据库连接池的初始化文件DBInitServlet.java。这两个文件的代码这里省略了,如果读者需要可下载Java Web Studio。

本文地址:http://com.8s8s.com/it/it16373.htm