项目四停车收费系统_第1页
项目四停车收费系统_第2页
项目四停车收费系统_第3页
项目四停车收费系统_第4页
项目四停车收费系统_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

项目四停车场收费系统主讲:雷静[项目目标]

完成一个关于停车收费的数据库信息管理的设计与开发。通过该项目掌握使用JDBC连接数据库的方法;掌握访问数据库实现添加、删除、修改和查询的方法;掌握信息管理系统的设计与开发的方法。

任务一系统分析与设计[任务描述]

完成停车收费管理程序的系统分析与设计。[本节目标]能够进行完备的需求分析;能够进行系统功能划分;能够进行数据库设计;能够进行详细设计。

1、软件开发流程软件开发流程(Softwaredevelopmentprocess)即软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法、软件的总体结构设计和模块设计、编程和调试、程序联调和测试以及编写、提交程序。2、E-R图E-R图也称实体-联系图(EntityRelationshipDiagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。实体型(Entity):具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体;在E-R图中用矩形表示,矩形框内写明实体名属性(Attribute):实体所具有的某一特性,一个实体可由若干个属性来刻画。在E-R图中用椭圆形表示,并用无向边将其与相应的实体连接起来联系(Relationship):联系也称关系,信息世界中反映实体内部或实体之间的联系。在E-R图中用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1,1:n或m:n)。

2、E-R图联系可分为以下3种类型:(1)一对一联系(1∶1)(2)一对多联系(1∶N)(3)多对多联系(M∶N)2、E-R图绘制E-R图的步骤:⑴确定所有的实体集合⑵选择实体集应包含的属性⑶确定实体集之间的联系⑷确定实体集的关键字,用下划线在属性上表明关键字的属性组合⑸确定联系的类型,在用线将表示联系的菱形框联系到实体集时,在线旁注明是1或n(多)来表示联系的类型任务二连接数据库[任务描述]

编写Java程序连接MicrosoftSQLServer数据库。

[本节目标]掌握使用JDBC方式连接不同数据库的方法。

数据库访问技术简介

客户机/服务器应用程序数据库编程ODBCJDBC两个常用的API数据库执行SQL语句检索查询结果数据库ODBC客户机/服务器GUI应用程序ODBC(开放式数据库连接)(Microsoft提供)插入删除修改应用程序编程接口查询JDBCJDBC(Java数据库连接)(sun公司提供)Java应用程序编程接口Java应用程序数据库插入修改删除查询

JDBC体系结构2-1Java程序JDBC驱动程序数据库SQL命令结果JDBC体系结构2-2应用层Driver

StatementResultSet

Connection

各接口驱动层java.sql

包3-1接口名说明

Connection此接口表示与数据的连接PreparedStatement此接口用于执行预编译的SQL语句

ResultSet此接口表示了查询出来的数据库数据结果集Statement此接口用于执行SQL语句并将数据检索到ResultSet

java.sql

包3-2类名说明

DriverManager此类用于加载和卸载各种驱动程序并建立与数据库的连接Date此类包含将SQL日期格式转换成Java

日期格式的各种方法Time此类用于表示时间TimeStamp此类通过添加纳秒字段为时间提供更高的精确度

JDBC程序访问数据库的步骤

2-1开始导入java.sql包加载并注册驱动程序创建一个Connection对象创建一个Statement对象执行语句关闭ResultSet

对象关闭Statement对象关闭连接结束使用ResultSet对象任务三用户登录功能[任务描述]

编写程序,实现登录程序的用户和密码的判断。根据数据库中的Users表,根据用户名查找密码,若用户名及密码正确,进入主界面,若用户名或密码错误,弹出错误提示对话框。[本节目标]掌握向数据库发送SQL语句的方式;掌握处理数据库回返结果的方式;掌握PreparedStatement接口的使用。

JDBC查询2-1SQL查询字符串executeQuery()方法作为参数传递ResultSet

返回查询数据SELECTname,email,phoneFROMcolleagues;使用SQL语句,查询可编写为:Stringstr="SELECTemp_id,lname,fnameFROMcolleagues";Statementstmt=con.createStatement();ResultSet

rset=stmt.executeQuery(str);使用JDBC编写此查询,则代码为:Statement接口PreparedStatement接口3-1PreparedStatement接口(预编译的SQL语句)PreparedStatement

用于提高运行时效率执行PreparedStatement

对象比执行Statement对象快Statement接口使用结果集3-1ResultSet

对象完全依赖于Statement对象和Connection对象每次执行SQL语句时,都会用新的结果重写结果集当相关的Statement关闭时,ResultSet

对象会自动关闭Next()get<Type>()此方法将光标从当前位置下移一行从ResultSet

对象返回数据

使用结果集3-2它演示对当前行的处理使用next()

方法时,记录是按顺序处理的必须按照数据返回的顺序处理每行中的数据…ResultSet

rset=stmt.getResultSet();

while(rset.next()){Stringdept_name=rset.getString(1);} …使用结果集

3-3演示对当前列的处理使用

get<Type>()

方法可以直接访问列…Statementstmt=con.createStatement();Stmt.executeQuery("Select

emp_id,fnamefromEmployee");ResultSet

rset=stmt.getResultSet();while(rset.next()){Stringename=rset.getString("fname");

System.out.println(ename);}……Statementstmt=con.createStatement();stmt.executeQuery("Select

emp_id,fnamefromEmployee");ResultSet

rset=stmt.getResultSet();while(rset.next()) {Stringemployeeid=rset.getString(1);}…以下代码显示值

1

被作为参数传递给

getString()方法,这实际上指列

emp_id

的索引结果集的类型可滚动不可滚动光标仅向前移动光标可前后移动,也可移动至与当前位置相对的某一行如果对数据库做了更改,则新值是可见的结果集

TYPE_SCROLL_INSENSITIVETYPE_SCROLL_SENSITIVE

TYPE_FORWARD_ONLY任务四车辆入场模块实现[任务描述]

根据任务一中的详细设计完成“车辆入场”模块的代码编写。[本节目标]掌握页面选项卡的设计及创建;掌握将数据添加到数据库的方法;掌握程序编写的方法。

卡片选项页面(JTabbedPane)addTdb()方法有3种结构方式:addTab(Stringtitle,Componentcomponent);addTab(Stringtitle,Iconicon,Componentcomponent);addTab(Stringtitle,Iconicon,Coraponent

component.Stringtip);其中,title为卡片标题,icon为卡片图标,component为放到选项页面中的面板,tip为当鼠标停留在该页面标题时显示的提示文字。任务五车辆收费模块实现[任务描述]

根据任务一中的详细设计完成“车辆出场”模块的代码编写。[本节目标]掌握日期类Date的使用及组成部分的提取;掌握修改、访问数据库中数据的方法;掌握程序逻辑的完成。

Date类Date类表示日期和时间提供操纵日期和时间各组成部分的方法Date类的最佳应用之一是获取系统当前时间Date类构造方法构造方法说明Date()使用当天的日期创建DateDate(longdt)使用自1970年1月1日以后的指定毫秒数创建Date

演示:示例1voiddisplay(){StringstrDate,strTime="";

System.out.println(“今天的日期是:"+objDate);longtime=objDate.getTime();

System.out.println(“自1970年1月1日起"+“以毫秒为单位的时间(GMT):"+time);

strDate=objDate.toString();//提取GMT时间

strTime=strDate.substring(11,(strDate.length()-4));//按小时、分钟和秒提取时间

strTime=“时间:"+strTime.substring(0,8);

System.out.println(strTime);}Date对象用于输出日期DateTimeDisplay(){

objDate=newDate();}使用getTime()

方法从Date对象获取时间任务六程序优化[任务描述]

优化程序,使程序结构更加合理。[本节目标]掌握使用MVC模式优化程序;掌握使用DAO模式优化程序。

设计模式设计模式(Designpattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。下面介绍两种常用模式:MVC模式和DAO模式。

1、MVC模式MVC模式将交互系统分为模型(Model),视图(View),控制器(Controller)三个部分。模型部分,是软件所处理问题逻辑在独立于外在显示内容和形式情况下的内在抽象,封装了问题的核心数据、逻辑和功能的计算关系,它独立于具体的界面表达和I/O操作。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论