项目四停车收费系统

上传人:沈*** 文档编号:242854946 上传时间:2024-09-08 格式:PPT 页数:32 大小:573KB
返回 下载 相关 举报
项目四停车收费系统_第1页
第1页 / 共32页
项目四停车收费系统_第2页
第2页 / 共32页
项目四停车收费系统_第3页
第3页 / 共32页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,项目四 停车场收费系统,主讲:雷静,项目目标,完成一个关于停车收费的数据库信息管理的设计与开发。通过该项目掌握使用,JDBC,连接数据库的方法;掌握访问数据库实现添加、删除、修改和查询的方法;掌握信息管理系统的设计与开发的方法。,任务一 系统分析与设计,任务描述,完成停车收费管理程序的系统分析与设计。,本节目标,能够进行完备的需求分析;,能够进行系统功能划分;,能够进行数据库设计;,能够进行详细设计。,1,、软件开发流程,软件开发流程(,Software development process,)即软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法、软件的总体结构设计和模块设计、编程和调试、程序联调和测试以及编写、提交程序。,2,、,E-R,图,E-R,图也称实体,-,联系图,(Entity Relationship Diagram),,提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。,实体型,(Entity),:具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体,;,在,E-R,图中用矩形表示,矩形框内写明实体名,属性,(Attribute),:实体所具有的某一特性,一个实体可由若干个属性来刻画。在,E-R,图中用椭圆形表示,并用无向边将其与相应的实体连接起来,联系,(Relationship),:联系也称关系,信息世界中反映实体内部或实体之间的联系。在,E-R,图中用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(,1 : 1,,,1 : n,或,m : n,)。,2,、,E-R,图,联系可分为以下,3,种类型:,(1),一对一联系,(11),(2),一对多联系,(1N),(3),多对多联系,(MN),2,、,E-R,图,绘制,E-R,图的步骤,:,确定所有的实体集合,选择实体集应包含的属性,确定实体集之间的联系,确定实体集的关键字,用下划线在属性上表明关键字的属性组合,确定联系的类型,在用线将表示联系的菱形框联系到实体集时,在线旁注明是,1,或,n(,多)来表示联系的类型,任务二 连接数据库,任务描述,编写,Java,程序连接,Microsoft SQL Server,数据库。,本节目标,掌握使用,JDBC,方式连接不同数据库的方法。,数据库访问技术简介,客户机,/,服务器,应用程序,数据库编程,ODBC,JDBC,两个常用的,API,数据库,执行,SQL,语句,检索查询结果,数据库,ODBC,客户机,/,服务器,GUI,应用程序,ODBC,(开放式数据库连接),(,Microsoft,提供),插 入,删 除,修 改,应用程序编程接口,查询,JDBC,JDBC,(,Java,数据库连接),(,sun,公司提供),Java,应用程序编程接口,Java,应用程序,数据库,插 入,修 改,删 除,查询,JDBC,体系结构,2-1,Java,程序,JDBC,驱动程序,数据库,SQL,命令,结果,JDBC,体系结构,2-2,应用层,Driver,Statement,ResultSet,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,对象,创建一个,S,tatement,对象,执行语句,关闭,ResultSet,对象,关闭,Statement,对象,关闭连接,结 束,使用,ResultSet,对象,任务三 用户登录功能,任务描述,编写程序,实现登录程序的用户和密码的判断。根据数据库中的,Users,表,根据用户名查找密码,若用户名及密码正确,进入主界面,若用户名或密码错误,弹出错误提示对话框。,本节目标,掌握向数据库发送,SQL,语句的方式;,掌握处理数据库回返结果的方式;,掌握,PreparedStatement,接口的使用。,JDBC,查询,2-1,SQL,查询字符串,executeQuery,(),方法,作为参数传递,ResultSet,返回查询数据,SELECT name, email, phone FROM colleagues;,使用,SQL,语句,查询可编写为:,String,str,= SELECT,emp_id,lname,fname,FROM colleagues;,Statement stmt =,con.createStatement,();,ResultSet,rset,=,stmt.executeQuery(str,);,使用,JDBC,编写此查询,则代码为:,Statement,接口,PreparedStatement,接口,3-1,PreparedStatement,接口,(,预编译的,SQL,语句,),PreparedStatement,用于提高运行时效率,执行,PreparedStatement,对象比执行,Statement,对象快,Statement,接口,使用结果集,3-1,ResultSet,对象完全依赖于,Statement,对象和,Connection,对象,每次执行,SQL,语句时,都会用新的结果重写结果集,当相关的,Statement,关闭时,,ResultSet,对象会自动关闭,Next( ),get(),此方法将光标从,当前位置下移一行,从,ResultSet,对象返回数据,使用结果集,3-2,它演示对当前行的处理,使用,next(),方法时,记录是按顺序处理的,必须按照数据返回的顺序处理每行中的数据,ResultSet,rset,=,stmt.getResultSet,();,while(rset.next,(),String,dept_name,= rset.getString(1);,使用结果集,3-3,演示对当前列的处理,使用,get(),方法可以直接访问列,Statement stmt =,con.createStatement,();,Stmt.executeQuery(Select,emp_id,fname,from Employee) ;,ResultSet,rset,=,stmt.getResultSet,();,while(rset.next,(),String,ename,=,rset.getString,(,fname,);,System.out.println,(,ename,) ;,Statement stmt =,con.createStatement,();,stmt.executeQuery(Select,emp_id,fname,from Employee);,ResultSet,rset,=,stmt.getResultSet,();,while(rset.next,(),String,employeeid,=,rset.getString,(1);,以下代码显示值,1,被作为参数传递给,getString,(),方法,,这实际上指列,emp_id,的索引,结果集的类型,可滚动,不可滚动,光标仅向前移动,光标可前后移动,也可移动,至与当前位置相对的某一行,如果对数据库做了更改,,则新值是可见的,结果集,TYPE_SCROLL_INSENSITIVE,TYPE_SCROLL_SENSITIVE,TYPE_FORWARD_ONLY,任务四 车辆入场模块实现,任务描述,根据任务一中的详细设计完成“车辆入场”模块的代码编写。,本节目标,掌握页面选项卡的设计及创建;,掌握将数据添加到数据库的方法;,掌握程序编写的方法。,卡片选项页面,(,JTabbedPane,),addTdb,(),方法有,3,种结构方式,:,addTab(String,title,,,Component,component,);,addTab(String,title,,,Icon,icon,,,Component,component,);,addTab(String,title,,,Icon,icon,,,Coraponent,component.String,tip);,其中,,title,为卡片标题,,icon,为卡片图标,,component,为放到选项页面中的面板,,tip,为当鼠标停留在该页面标题时显示的提示文字。,任务五 车辆收费模块实现,任务描述,根据任务一中的详细设计完成“车辆出场”模块的代码编写。,本节目标,掌握日期类,Date,的使用及组成部分的提取;,掌握修改、访问数据库中数据的方法;,掌握程序逻辑的完成。,Date,类,Date,类表示日期和时间,提供操纵日期和时间各组成部分的方法,Date,类的最佳应用之一是获取系统当前时间,Date,类构造方法,构造方法,说明,Date(),使用当天的日期创建,Date,Date(long,dt,),使用自,1970,年,1,月,1,日以后的指定毫秒数创建,Date,演示:示例,1,void display() ,String,strDate,strTime,= ;,System.out.println,(“,今天的日期是:, +,objDate,);,long time =,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,= new Date();,使用,getTime,(),方法从,Date,对象获取时间,任务六 程序优化,任务描述,优化程序,使程序结构更加合理。,本节目标,掌握使用,MVC,模式优化程序;,掌握使用,DAO,模式优化程序。,设计模式,设计模式(,Design pattern,)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。,下面介绍两种常用模式:,MVC,模式和,DAO,模式。,1,、,MVC,模式,MVC,模式将交互系统分为模型(,Model,),视图(,View,),控制器(,Controller,)三个部分。,模型部分,是软件所处理问题逻辑在独立于外在显示内容和形式情况下的内在抽象,封装了问题的核心数据、逻辑和功能的计算关系,它独立于具体的界面表达和,I/O,操作。,视图部分,它使表示模型数据及逻辑关系和状态的信息以特定形式展示给用户。它从模型获得显示信息,对于像他的信息可以有多个不同的显示形式或视图。,控制器部分,它用来处理用户与软件的交互操作,其职责是控制提供模型中任何变化的传播,确保用户界面与模型间的对应关系。,2,、,DAO,模式,DAO,是,Data Access Object,数据访问接口,数据访问:故名思义就是与数据库打交道。夹在业务逻辑与数据库资源中间。,DAO,设计模式包含,5,个部分:数据库连接类、,VO,类、,DAO,类、,DAO,实现类及,DAO,工厂类。使用,DAO,设计模式可以简化大量代码,增强程序的可移植性。,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!