ImageVerifierCode 换一换
格式:DOCX , 页数:27 ,大小:88.24KB ,
资源ID:6528767      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6528767.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(4支持校园卡的食堂消费信息管理系统数据库设计.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

4支持校园卡的食堂消费信息管理系统数据库设计.docx

1、4支持校园卡的食堂消费信息管理系统数据库设计数据库原理课程设计题目:支持校园卡的食堂消费信息管理系统支持校园卡的食堂消费信息管理系统数据库设计一需求分析阶段1.引言通过对本校区学生日常生活的实地调查以及自己的亲身体验, 了解到现在许多高校学生 生活消费仍然停留在多种消费分块进行,相对独立的模式。开发出合适的学生消费管理 系统,可以有利于提高高校消费管理的工作效率。2目标与任务(1)需求分析阶段的目标:1.了解目前高校的学生消费管理现状2.通过平时的观察、思考和亲身体会,加上重点实地调查和记录的方式了解和收集大部分 学生所需要的消费管理的工作流程,确定系统的基本开发方向。3.与小组成员讨论个人想

2、法,共同制定开发方案 4与指导老师交流小组的想法,征求意见,改正不合理的地方,确定新系统的边界,为下 面的概念设计与逻辑设计奠定基础。3. 需求分析阶段的任务(1)处理对象:系统要处理的对象包括: 学生基本信息, 发卡部门的基本信息,财务部门的基本信息, 校园 卡的基本信息, 食堂消费的基本信息, 各个对象包括信息如下所示 (详细的数据见于数据字 典)1.学生的基本信息( Student ):包括学生姓名,学生学号,身份证号,学生性别,学生所 在院系,学生所在专业等方面的信息2.校园卡的基本信息:包括持卡人的学生学号,持卡人的身份证号,持卡人的所在院系, 校园卡的状态,校园卡内的余额3.食堂消

3、费基本信息:包括消费( HConsume)金额等基本信息4.财务部门基本信息:包括办公室基本信息5.校园卡日常事务管理基本信息:包括办卡部门基本信息,办卡信息( FStudentAdd ),挂失信息( FLostInf),充值信息( DRecharge)每个数据结构中的数据项见数据字典(2)处理功能要求: 系统主要完成以下几个功能: 1.学生基本信息的信息查询与更新2.校园卡日常事务管理情况基本信息查询与更新3.校园卡状态的查询4.学生在食堂的消费金额的查询5.食堂营业额的基本信息的查询和修改, 查询所有食堂的营业额以体现食堂总体的收入状况, 查询各个食堂的收入为评价食堂的服务质量提供依据(3

4、)安全性和完整性要求安全性是通过视图机制, 不同的用户只能访问系统授权的视图, 这样可提供系统数据一定程 度上的安全性, 再通过用户授权机制, 用用户登录方式来识别用户级别, 根据这个级别来分 配用户权限,达到数据更高层次的安全保密功能。完整性要求用于描述学生的基本信息, 财务部门的基本信息, 校园卡日常事务管理的基本信 息,校园卡基本信息,食堂消费基本信息中数据项能否为 null ,以及一些用户自定义完整性 (符合实际要求) ,此处用于触发器实现,详细完整性要求见于系统的逻辑设计阶段和数据 库实施阶段。二、概念结构设计阶段1. E-R 图:学生食堂消费2.数据字典:编号数据项名称简述类型及宽

5、度取值范围DI-1Studentid学生身份证号Char(18)0-999999999999999999DI-2Studentno学生学号Char(9)0-999999999DI-3Studentna学生姓名Char(10)DI-4Studentsex学生性别Char(4)“男”女“”DI-5Studentbirth学生出生年IntDI-6Studentdept学生所在院系Char(20)DI-7Studentspecial学生所在专业Char(20)DI-8Studentclass学生所在班级Char(20)DI-9Cardstate校园卡状态“挂失 ”未“挂失 ”DI-10Cardmone

6、y校园卡余额FloatDI-11CZmoney充值金额FloatDI-12Dinmoney食堂刷卡金额Float3.数据结构:数据结构 编号数据结 构名称数据结构别 名数据结 构含义数据项组成Ds-1学生信 息Student记录学 生的信 息Studentid , Studentno , Studentna , Studentsex , Studentdept , StudentspecialDs-2办卡信 息FStudentAdd记录办 卡信息Studentno , StudentidDs-3挂失信 息FloseInf记录挂 失信息Studentno , StudentidDs-4解挂信 息

7、FUnlose记录解 挂信息Studentno , StudentidDs-5充值信 息DRecharge记录充 值信息Studentno,CZmoneyDs-6校园卡 信息StudentEdit记录校 园卡信 息Studentno,Studentid,Cardstates,CardmoneyDs-7食堂刷 卡信息Hconsume记录食 堂刷卡 信息Consumemoney4.数据流:编号数据流名称输入信息输出信息1查询学生信息学号学生基本信息2修改学生信息变更信息学生基本信息3查询校园卡信息校园卡号校园卡基本信息4修改校园卡信息变更信息校园卡基本信息5查询食堂消费信息校园卡号食堂消费基本信息

8、6修改食堂消费信息变更信息食堂消费基本信息5.数据存储:数据存储名输入数据流输出数据流学生信息表修改学生信息记录学生信息校园卡信息表修改校园卡信息记录校园卡信息食堂信息表修改食堂信息记录食堂信息处理过程:处理过程名输入数据流输出数据流数据维护各数据表的更新、修改信息更新及修改后的各信息表注册学生信息学生基本信息学生基本信息注册校园卡信息校园卡基本信息校园卡基本信息三、逻辑结构设计阶段:1.将 E-R 图转化为关系模型 通过分析所要实现的功能以及现有的实体和联系, 确定要把学生实体, 校园卡实体, 食堂实体分别转化为单独的关系模式, 为了便于查询学生在食堂刷卡消费信息, 学生的校园卡 信息管理,

9、 把消费型刷卡关系转化为独立的关系模式, 考虑到学生要往校园卡里充值, 再从 学生和校园卡的拥有关系中抽取出校园卡的充值关系模式。具体关系模式转化结果如下: 学生:Student( Studentid ,Studentno ,Studentna ,Studentsex,Studentdept ,Studentspecial ) 校园卡: Card( Cardno, Studentno , Studentid , Cardstate, Cardmoney ) 充值信息: DRecharge( Studentno ,Czmoney) 消费刷卡: Hconsume ( Consumemoney )2

10、.系统功能模块图:四、数据库的物理设计阶段1. 物理设计阶段的目标和任务数据库的物理设计就是根据所用的 DBMS 和处理需求,进行物理存储安排,建立索引, 形成数据库的内模式, 为逻辑数据模型选取一个最适合应用要求的物理结构的过程, 在这个 阶段中要完成两大任务:( 1) 确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构( 2) 对物理结构进行评价,评价的重点是时间和空间效率。2. 数据存储方面 为数据库中各基本表建立的索引如下:(1) 由于进本表 Card, Student 的主码 Cardno, Studentno 经常在查询条件和连接操作 的连接条件中出现,且他们的取值唯一,

11、考虑在这两个属性上分别建立唯一性索引;(2) 有的基本表中的属性经常性的发生变化, 索引并不是越多越好, 而要权衡系统为维 护索引付出的代价,因此在其他的表上可考虑不建立索引,也可以适当的建立索引。五、数据库实施阶段1. 程序编码 部分源代码:Controller -Mainwindow/* To change this license header, choose License Headers in Project Properties.* To change this template file, choose Tools | Templates* and open the templa

12、te in the editor.*/package controller;import java.awt.*;import java.awt.event.*;import javax.swing.*; import view.DRecharge;import view.FLoseInf;import view.SLogin;import view.FStudentAdd;import view.FUnLose; import view.HConsume;import view.SInformation;* author computer*/public class MainWindow ex

13、tends JFrame implements ActionListenerJMenuBar menuBar;JMenu menu1,menu2,menu3,menu4;JMenuItem m11,m12,m13;JMenuItem m21;JMenuItem m31,m32,m33,m34;JMenuItem m41;public MainWindow()createMenu();setTitle( 支持校园卡的食堂信息管理系统 );setIconImage(new ImageIcon(icon.gif).getImage(); setSize(800, 600);Dimension siz

14、e = Toolkit.getDefaultToolkit().getScreenSize(); setLocation(size.width - getWidth() / 2,(size.height - getHeight() / 2); setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); setVisible(true);private void createMenu()menuBar = new JMenuBar();menu1 = new JMenu( 系统管理( S) );menu1.setMnemonic(S);m11 = new

15、 JMenuItem( 学生信息查询 );m12 = new JMenuItem( 用户登录 );m13 = new JMenuItem( 退出( X) ); m13.setAccelerator(KeyStroke.getKeyStroke(X,2); menu1.add(m11);menu1.add(m12);menu1.addSeparator();menu1.add(m13);menu2 = new JMenu( 财务部门( D) );menu2.setMnemonic(D);m21 = new JMenuItem( 校园卡充值 );menu2.add(m21); menu3 = ne

16、w JMenu( 发卡部门 (F); menu3.setMnemonic(F);m31 = new JMenuItem( 校园卡挂失 ); m32 = new JMenuItem( 校园卡解卦 ); m33 = new JMenuItem( 补办校园卡 ); m34 = new JMenuItem( 办理校园卡 ); menu3.add(m31);menu3.add(m32); menu3.add(m33); menu3.add(m34);menu4 = new JMenu( 食堂刷卡机 (H); menu4.setMnemonic(H);m41 = new JMenuItem( 消 费 );

17、 menu4.add(m41); m11.addActionListener(this); m12.addActionListener(this); m13.addActionListener(this); m21.addActionListener(this); m31.addActionListener(this); m32.addActionListener(this); m33.addActionListener(this); m34.addActionListener(this); m41.addActionListener(this); menuBar.add(menu1); me

18、nuBar.add(menu2); menuBar.add(menu3); menuBar.add(menu4); this.setJMenuBar(menuBar);Overridepublic void actionPerformed(ActionEvent e) if(e.getSource()=m34)new FStudentAdd(); if(e.getSource()=m12) new SLogin(); if(e.getSource()=m21) new DRecharge(); if(e.getSource()=m31) new FLoseInf(); if(e.getSour

19、ce()=m32) new FUnLose(); if(e.getSource()=m41) new HConsume(); if(e.getSource()=m11) new SInformation();/ public static void main(String args)/ new MainWindow();/Controller -Start/* To change this license header, choose License Headers in Project Properties.* To change this template file, choose Too

20、ls | Templates* and open the template in the editor.*/package controller;import java.awt.event.ActionEvent;import javax.swing.JFrame;/* author computer*/public class Start public void actionPerformed(ActionEvent e) public static void main(String args)JFrame.setDefaultLookAndFeelDecorated(true); new

21、MainWindow(); Dao-ConnectDB/* To change this license header, choose License Headers in Project Properties.* To change this template file, choose Tools | Templates* and open the template in the editor.*/package dao;import java.sql.Connection;import java.sql.DriverManager;* author computer*/public cla

22、ss ConnectDB public static Connection connect() try Class.forName(com.mysql.jdbc.Driver); / 加载驱动程序Connection conDriverManager.getConnection(jdbc:mysql:/localhost:3306/school?useUnicode=true&char acterEncoding=utf8, root, 123456); / 连接数据库return con; / 返回连接对象 catch (Exception e) e.printStackTrace(

23、);return null;Dao-FStudentDao/* To change this license header, choose License Headers in Project Properties.* To change this template file, choose Tools | Templates* and open the template in the editor.*/package dao;import idao.IFStudentDao;import java.sql.Connection;import java.sql.PreparedStatemen

24、t;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;import java.util.List;import model.FStudent;* author computer*/public class FStudentDao implements IFStudentDaopublic boolean addFStudent(FStudent fStudent) Connection con = null;/ 连接对象PreparedStatement ps = null;/SQ

25、L 预处理类接口,能大大提高系统效率 try con = ConnectDB.connect();/ 连接数据库String sql = insert into student(StudentId,StudentDe,StudentNa,StudentSex,StudentPo,StudentNo) values(?,?,?,?,?,?);ps = con.prepareStatement(sql);ps.setString(1, fStudent.getStudentId();ps.setString(2, fStudent.getStudentDe();ps.setString(3, fS

26、tudent.getStudentNa();ps.setString(4, fStudent.getStudentSex();ps.setString(5, fStudent.getStudentPo();ps.setString(6, fStudent.getStudentNo();int n = ps.executeUpdate();return n 0; catch (SQLException e) e.printStackTrace();return false; finally try ps.close(); catch (SQLException ex) Overridepubli

27、c boolean editFStudent(FStudent fStudent) throw new UnsupportedOperationException(Not supported yet.); /To change body of generated methods, choose Tools | Templates.Overridepublic boolean deleteFStudent(int fStudentId) supported yet.);/To change bodysupported yet.);/To change bodysupported yet.);/T

28、o change bodythrow new UnsupportedOperationException(Not of generated methods, choose Tools | Templates.Overridepublic FStudent fintFStudent(int fStudentId) throw new UnsupportedOperationException(Not of generated methods, choose Tools | Templates.Override public List fintAllFStudents() throw new Un

29、supportedOperationException(Notof generated methods, choose Tools | Templates. Overridepublic List fintSomeFStudents(String fStudentName, int pageNo, int pageSize) throw new UnsupportedOperationException(Not supported yet.); /To change body of generated methods, choose Tools | Templates.Overridepublic int fintCount(String fStudentName) throw new UnsupportedOperationException(Not supported yet.); /To change body of generated methods, choose Tools | Templates.Idao-IFstudentDao/* To change this license header, choose License Headers in Pro

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1