二级课题 二级实践课题 农资店信息管理系统.doc_第1页
二级课题 二级实践课题 农资店信息管理系统.doc_第2页
二级课题 二级实践课题 农资店信息管理系统.doc_第3页
二级课题 二级实践课题 农资店信息管理系统.doc_第4页
二级课题 二级实践课题 农资店信息管理系统.doc_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

朱俐楠 农资店信息管理系统 I 中中 原原 工工 学学 院院 二二 级级 课课 题题 任任 务务 书书 2011 年 6 月 13 日 学生姓名学生姓名朱俐楠朱俐楠学号学号201007132211 专专 业业软件技术软件技术班级班级编码编码 J102 课题名称课题名称农资店信息管理系统农资店信息管理系统 课题来源课题来源二级实训模拟课题二级实训模拟课题 指导教师指导教师郭彦宾郭彦宾专业专业计算机科学与技术计算机科学与技术职称职称集成项目经理集成项目经理 课题说明 农资店信息主要有农资货物的各种信息 如 货物的名字 类型 课题说明 农资店信息主要有农资货物的各种信息 如 货物的名字 类型 单价 生产日期 保质期等 其次是客户的各种信息 如 客户的名字 地址 电单价 生产日期 保质期等 其次是客户的各种信息 如 客户的名字 地址 电 话 购得货物种类 数量及时间 备注等 本系统主要实现上述信息的增删改查功话 购得货物种类 数量及时间 备注等 本系统主要实现上述信息的增删改查功 能 对特殊信息的汇总等其他功能 能 对特殊信息的汇总等其他功能 额承担的任务 额承担的任务 1 数据库设计 数据库设计 2 实现客户信息管理的 实现客户信息管理的 SWING 界面并实现监听器的添加界面并实现监听器的添加 朱俐楠 农资店信息管理系统 II 中中 原原 工工 学学 院院 二二 级级 课课 题题 任任 务务 书书 2011 年 6 月 14 日 工作进度安排 工作进度安排 时间轴时间轴 2011 6 13 至至 2011 6 28 除周 除周 日 日 负责人负责人 审审 核核 人人 任务名称任务名称 123456789101 1 12孙军超 总体进度30 62 8 范金梅 整理资料范金梅 编写代码孙军超 代码测试朱俐楠 整理文档朱俐楠 郭 彦 宾 指导教师签字 指导教师签字 2011 年年 6 月月 28 日日 实训单位意见实训单位意见 签章 签章 年年 月月 日日 学学院院意意见见 签章 签章 年年 月月 日日 朱俐楠 农资店信息管理系统 III 中中 原原 工工 学学 院院 二二 级级 课课 题题 评评 审审 表表 学号学号201007132211姓名姓名朱俐楠专业专业软件技术班级班级编码 J102 题目题目农资店信息管理系统 指指 导导 教教 师师 评评 语语 成绩 百分制 成绩 百分制 指导教师签名 指导教师签名 2011 年年 6 月月 日日 朱俐楠 农资店信息管理系统 IV 软软软软 件件件件 学学学学 院院院院 二级课题实训报告二级课题实训报告 课题名称 课题名称 农资店信息管理系统农资店信息管理系统 专专 业 业 软件技术 班班 级 级 编码 J102 学学 号 号 201007132211 学生姓名 学生姓名 朱俐楠 指导教师 指导教师 郭彦宾 2011 年年 6 月月 28 日日 5 摘摘 要要 3 3 第第 1 1 章章 项目分析项目分析 4 4 1 1 问题描述 4 1 2 技术分析 4 1 3 工程进度计划 4 第第 2 2 章章 系统分析与设计系统分析与设计 5 5 2 1 系统分析 5 2 1 1 参与者 5 2 1 2 需求分析 5 2 1 3 可行性分析 5 2 2 系统设计 5 2 2 1 系统规划 6 2 2 2 类图 6 2 2 3 E R 图 7 2 3 数据库设计 7 2 3 1 表结构设计 7 2 3 2 系统功能结构图 8 第第 3 3 章章 实现与测试实现与测试 9 9 3 1 部分功能模块展示 9 3 1 1 界面 9 3 1 2 代码 9 第第 4 4 章章 结束语结束语 1414 附录 主要源代码附录 主要源代码 1515 朱俐楠 农资店信息管理系统 6 摘 要 随着计算机的普及和计算机科学技术的飞速发展 人们开始越来越多地利 用计算机来解决实际问题 现在连街头的小商店有些都有自己信息管理系统 帮助店主有条理的管理自己的货物 同样跟生活杂物商店功能及性质差不多的 农资商店的货物种类以及各种账目数量一点也不亚于其他种类的商店 为了解 决这个问题 我们小组经过协商之后决定利用这次做课题的机会 做一套方便 农资店主管理货物和账目的小型软件 首先实现整个登陆界面及菜单界面 根据所要实现的功能实现各种 SWING 界面并添加相应的监听器 再根据提前规划的功能实现 DAO 层中的各种方法 再实现监听器方法体中的具体代码 整个系统从操作简便 界面友好 灵活 实用 安全的要求出发 完成对 进货登记 销售查询 账目管理 包括对系统数据的维护 信息的添加 删除 查询等 计算机信息化管理以其存储信息量大 速度快 便于管理等优点将会 受到更多用户的青睐 关键词 监听器 数据库连接 DAO SWING 朱俐楠 农资店信息管理系统 7 第 1 章 项目分析 1 1 问题描述 实现各种 SWING 界面及监听器 统一编写 DAO 层中实现各种功能的方 法 完善监听器方法体中的内容 1 2 技术分析 SWING 界面的容器采用 JFrame 编写 底层数据库采用 MYSQL 实现功 能时连接数据库采用 使用某个功能前 连接一次数据库 使用完毕后 立即关闭数据库的模式 添加监听器时 统一使用一个监听器内部类 监 听器方法采用判断名字进行区分各个 BUTTON 之间的不同 汇总各种信息 使用 JTABLE 组件 所有监听器方法统一写在一个 DAO 包中进行封装 客 户 货物 用户信息使用 JAVABEAN 封装 使用其 GET SET 方法进行信息 在数据库和 SWING 界面之间的流通 欢迎 菜单界面友好 易懂 便于用 户使用 并且有友好的提示界面 数据库是一项技术 主要包括数据的管 理和处理两部分 在数据库的设计中 重点在数据库的需求分析中 构化 出来 把用户所需的要求统统分析出来 再进一步的进行设计 完成相应 的需求分析后 就是对数据库结构的设计 数据库结构设计主要分为数据 库结构设计和数据库行为设计 数据库结构设计是在需求分析的基础上逐 步形成对数据库概念 逻辑 物理结构的描述了 概念结构要有丰富的语 义表达能力 表达用户的各种需求 概念设计的策略主要有三种 自上向 下 自顶向外 自里向外和混合策略 逻辑结构设计主要是把在概念设计 中设计的基本 E R 模型转换为具体数据库管理系统支持的组织层数据模型 一般包括将概念结构转换为组织层数据模型 对组织层数据模型进行优化 物理结构设计是利用数据库管理系统提供的方法 对已确定数据库逻辑结 构进行优化存储结构 数据存取路径 合理的位置以及存储分配等 从而 设计出一个高效 可实现的无理数据结构 1 3 工程进度计划 6 月 13 日到 6 月 17 日 需求分析 6 月 17 日到 6 月 19 日 结构设计 概念 逻辑 物理结构设计 6 月 19 日到 6 月 22 日 行为设计 功能设计 事务设计 程序设计 6 月 22 日到 6 月 25 日 代码实现 6 月 25 日到 6 月 27 日 代码测试 6 月 27 日到 6 月 28 日 整理文档 朱俐楠 农资店信息管理系统 8 第 2 章 系统分析与设计 2 1 系统分析 2 1 1 参与者 系统分析指导 老师 数据库设计者 范金梅 朱俐楠 需求分析与可行性分析者 孙军超 2 1 2 需求分析 经过对几个农资店铺的日常工作的调查研究及管理流程的分析 要求本系 统具有以下功能 农资信息查询功能 方便店员销售货物时掌握价格的尺度 农资信息的删除 修改 增加功能 确保信息的准确性和完整性 客户信息的增删改查功能 利用备注信息掌握客户的各种信息 账目总结功能 防止漏帐 错帐的状况发生 统一 友好的操作界面 以保证系统的易用性 2 1 3 可行性分析 根据调查得知 现在大多数小型农资商店采取手工方式对农资信息进行管 理 将不好记住的价格弄个标签贴在货物架上 当进价调整时再统一换一遍 工作量大 也不免出现差错 对客户信息也是采用纯手工操作 既费时又费力 一旦账本等用作记录的本子丢失 将死无对证 基于这一系列的问题 实在是有必要建立一个农资信息管理系统 使农资 店的日常生活管理工作规范化 系统化 程序化 避免管理的随意性 提高信 息处理的速度和准确性 能够及时 有效准确地完成每天的销售 账目管理任 务 为广大农资店主提供方便 朱俐楠 农资店信息管理系统 9 2 2 系统设计 先在 Jpane 添加设计好的 Jlabel 和 Jbutton 建好界面 再给按钮添加监听器 使其实现相应的功能 实现功能的同时连接数据库 比如说查询 按下查询按 钮 监听器进行监听 连接数据库 执行查询语句 调出数据库中的数据实现 查询 更新 删除 清空 实现其功能时 与查询雷同 2 2 1 系统规划 本系统由货物管理 客户管理 账目管理三个功能模块组成 以后也可扩 充 具体内容如下 货物管理 货物管理主要实现货物的增删改查功能 客户管理 客户管理主要实现客户的增删改查功能 账目管理 账目管理主要实现账目的添加和总结功能 2 2 2 类图 AgriculturalDAO conn Connection getConnection Connection add ClienteleInformationDO a int add AgriculturallInformationDO a int add UserInformationDO a int closeConnection ResultSet r PreparedStatement p Connection conn Void delete AgriculturallInformationDO a int delete ClienteleInformationDO a int delete UserInformationDO a int update AgriculturallInformationDO a int update ClienteleInformationDO a int 朱俐楠 农资店信息管理系统 10 2 2 3 E R 图 货物客户销售 ID Name Type Date Beizhu Price KIDKName Tel Pay Beizhu Address Beizhu Number 2 3 数据库设计 2 3 1 表结构设计 Load 表结构 字段名字段名数据类型数据类型是否为空是否为空是否主键是否主键默认值默认值 USERIdInt 11 NO是0 USERVarchar 255 YES是NULL PWDVarchar 255 YES否NULL Agricultural Information 表结构 字段名字段名数据类型数据类型是否为空是否为空是否主键是否主键默认值默认值 AgriculturalIdInt 11 NO是0 NameVarchar 20 YES否NULL TypeVarchar 255YES否NULL 朱俐楠 农资店信息管理系统 11 PriceVarchar 255 YES否NULL DateVarchar 255 YES否NULL BeizhuVarchar 255 YES否NULL Clientele Information 表结构 字段名字段名数据类型数据类型是否为空是否为空是否主键是否主键默认值默认值 ClienteleIdInt 11 NO是0 KeHuNameVarchar 20 YES否NULL TelVarchar 20 YES否NULL PayVarchar 255 YES否NULL AddressVarchar 255 YES否NULL BeizhuVarchar 255 YES否NULL Sale Information 表结构 字段名字段名数据类型数据类型是否为空是否为空是否主键是否主键默认值默认值 ClienteleIdInt 11 NO是0 AgriculturalIdInt 11 NO是0 NumberVarchar 255 YES否NULL BeizhuVarchar 255 YES否NULL 2 3 2 系统功能结构图 朱俐楠 农资店信息管理系统 12 农资店管理系统农资店管理系统 货物信息管理客户信息管理账目管理 添加货物信息 删除货物信息 修改货物信息 查询货物信息 修改客户信息 删除客户信息 添加客户信息 查询客户信息 年终结账 退出系统 第 3 章 实现与测试 3 1 部分功能模块展示 3 1 1 界面 朱俐楠 农资店信息管理系统 13 3 1 2 代码 import java awt BorderLayout import java awt GridLayout import java awt event ActionEvent import java awt event ActionListener import java sql SQLException import javax swing JButton import javax swing JFrame import javax swing JLabel import javax swing JPanel import javax swing JTextArea import javax swing JTextField import DO ClienteleInformationDO import dao AgriculturalDAO public class SelectKeHuSwing extends JFrame private JTextField jtf new JTextField 3 private AgriculturalDAO dao new AgriculturalDAO private JTextArea jta new JTextArea private JTextArea jta1 new JTextArea String tablename ClienteleInformation public SelectKeHuSwing for int i 0 i 3 i jtf i new JTextField 8 JPanel pane new JPanel JPanel pane2 new JPanel pane add new JLabel 请输入客户名字进行查询 JPanel pane1 new JPanel pane1 setLayout new GridLayout 5 2 5 5 pane1 add new JLabel 客户名 pane1 add jtf 0 pane1 add new JLabel 客户电话 朱俐楠 农资店信息管理系统 14 pane1 add jtf 1 pane1 add new JLabel 客户住址 pane1 add jtf 2 pane1 add new JLabel 消费额 pane1 add jta pane1 add new JLabel 备注 pane1 add jta1 JButton d1 new JButton 查询 pane2 add d1 JButton d2 new JButton 清空 pane2 add d2 JButton d4 new JButton 更新 pane2 add d4 JButton d3 new JButton 删除 pane2 add d3 add pane1 BorderLayout CENTER add pane BorderLayout NORTH add pane2 BorderLayout SOUTH setTitle 查询客户信息 setLocationRelativeTo null setDefaultCloseOperation JFrame EXIT ON CLOSE setSize 300 200 setVisible true d1 addActionListener new ActionListener public void actionPerformed ActionEvent e for int i 0 i 4 i try jtf i setText dao select tablename jtf 0 getText getString i 1 catch SQLException e1 TODO Auto generated catch block e1 printStackTrace try jta setText dao select tablename jtf 0 getText getString 4 jta1 setText dao select tablename jtf 0 getText getString 5 catch SQLException e1 TODO Auto generated catch block e1 printStackTrace d2 addActionListener new ActionListener 朱俐楠 农资店信息管理系统 15 public void actionPerformed ActionEvent e for int i 0 i 3 i jtf i setText jta setText jta1 setText d3 addActionListener new ActionListener public void actionPerformed ActionEvent e dao delete keHuDO d4 addActionListener new ActionListener public void actionPerformed ActionEvent e dao update keHuDO public ClienteleInformationDO keHuDO ClienteleInformationDO a new ClienteleInformationDO a setName jtf 0 getText a setTel jtf 1 getText a setPay jtf 2 getText a setAddress jta getText a setBeizhu jta1 getText return a import java awt GridLayout import java awt event ActionEvent import java awt event ActionListener import javax swing JButton import javax swing JFrame import javax swing JLabel import javax swing JPanel import javax swing JTextArea import javax swing JTextField import DO AgriculturalInformationDO import DO ClienteleInformationDO import dao AgriculturalDAO public class AddKeHuSwing extends JFrame private JTextField jtf new JTextField 3 private AgriculturalDAO dao new AgriculturalDAO 朱俐楠 农资店信息管理系统 16 private JTextArea jta new JTextArea private JTextArea jta1 new JTextArea public ClienteleInformationDO keHuDO ClienteleInformationDO a new ClienteleInformationDO a setName jtf 0 getText a setTel jtf 1 getText a setPay jtf 2 getText a setAddress jta getText a setBeizhu jta1 getText return a public AddKeHuSwing for int i 0 i 3 i jtf i new JTextField 8 JPanel pane1 new JPanel pane1 setLayout new GridLayout 6 2 5 5 pane1 add new JLabel 客户名 pane1 add jtf 0 pane1 add new JLabel 客户电话 pane1 add jtf 1 pane1 add new JLabel 客户地址 pane1 add jta pane1 add new JLabel 消费额 pane1 add jtf 2 pane1 add new JLabel 备注 pane1 add jta1 JButton d1 new JButton 添加 pane1 add d1 JButton d2 new JButton 清空 pane1 add d2 add pane1 setTitle 添加客户信息 setLocationRelativeTo null setDefaultCloseOperation JFrame EXIT ON CLOSE setSize 300 200 setVisible true d1 addActionListener new ActionListener public void actionPerformed ActionEvent e dao add keHuDO d2 addActionListener new ActionListener public void actionPerformed ActionEvent e 朱俐楠 农资店信息管理系统 17 for int i 0 i 3 i jtf i setText jta setText jta1 setText 第 4 章 结束语 在这次系统开发的过程中 我们这组遇到了许多难题 也许是由于基础 知识的不足 也或许是因为第一次开发软件的问题 刚下手的时候明显有些吃 力 不过经过组里人员的认真探讨和专注编程 最终度过重重难关 完成了这 次课题 虽然仍有许多不足之处 但里面包含着组里人员这段时间的汗水和努 力 心中还是挺高兴的 这次课题不仅让我巩固了基础知识 还让我从组员那 里学到了更深一层的知识 让我明白了软件开发不仅需要的是技术 更多的还 有团队精神和团队合作 也让我体会到了编码的深奥之处 让我对编码有了重 新的认识 在做课题之前我对连接数据库这部分知识非常迷茫 恰好我们这组 开发的系统能用到这些知识 组里给我分配的任务是建表 建表相对其他组成 员的任务比较容易 所以我很快就完了任务 完成任务不是目的 最重要的是 要从别的成员那里学到自己不会的知识 我们组长很精通数据库这部分知识 经过他的耐心教导 让我学会了关于数据库的这部分知识 也让我明白了知识 是自己主动去学的 要主动把握住每次可以学到知识的机会 这次课题让我体会到了组成员之间的友谊 这次我们的合作非常成功 如果以后有类似的课题我们会继续合作 创作出更加完美的系统 朱俐楠 农资店信息管理系统 18 参考文献 1 何玉洁 等编著的 数据库原理与应用教程 机械工业出版社 2010 年 9 月 2 万波 郑海红 李娜 等译的 JAVA 语言程序设计 基础篇及进阶篇 机械工业出版社 3 王国辉 王毅 王殊宇等编著的 JAVA web 开发典型模块大全 人民邮政出版社 附录 主要源代码 package dao import java sql import java util Vector import javax swing table DefaultTableModel import DO public class AgriculturalDAO private static Connection conn null public Connection getConnection try Class forName com mysql jdbc Driver conn DriverManager getConnection jdbc mysql localhost 3306 agricultural useUnicode true catch ClassNotFoundException e e printStackTrace catch SQLException e e printStackTrace 朱俐楠 农资店信息管理系统 19 return conn public void closeConnection ResultSet rs PreparedStatement pstmt Connection conn try rs close pstmt close conn close catch SQLException e TODO 自动生成 catch 块 e printStackTrace public void closeConnection PreparedStatement pstmt Connection conn try pstmt close conn close catch SQLException e e printStackTrace private ResultSet executeQuery String sql try if conn null getConnection return conn createStatement ResultSet TYPE SCROLL SENSITIVE ResultSet CONCUR U PDATABLE executeQuery sql catch SQLException e e printStackTrace return null finally private int executeUpdate String sql try if conn null getConnection return conn createStatement executeUpdate sql catch SQLException e System out println e getMessage return 1 finally 朱俐楠 农资店信息管理系统 20 public ResultSet select String tablename String str String sql select from tablename where name ResultSet result null try Connection conn getConnection PreparedStatement pstmt conn prepareStatement sql pstmt setString 1 str result executeQuery sql closeConnection result pstmt conn catch SQLException e e printStackTrace return result public DefaultTableModel showTable String tablename DefaultTableModel tableModel new DefaultTableModel Vector row new Vector Vector column new Vector String sql select from tablename int i 0 try Connection conn getConnection PreparedStatement pstmt conn prepareStatement sql ResultSet result executeQuery sql i result getMetaData getColumnCount System out println 影响结果条数 i while result next Vector single new Vector for int j 0 j i j single addElement result getObject j 1 row addElement single for int k 1 k i k column addElement result getMetaData getColumnName k tableModel setDataVector row column closeConnection result pstmt conn catch SQLException e TODO 自动生成 catch 块 e printStackTrace return tableModel 朱俐楠 农资店信息管理系统 21 public int isload UserInformationDO u int flag 0 String sql select from where user u getUser try Connection conn getConnection PreparedStatement pstmt conn prepareStatement sql ResultSet resultset pstmt executeQuery if resultset next if u getPwd equals resultset getString pwd flag 1 resultset last int rowSum resultset getRow resultset first if rowSum 1 flag 0 else flag 0 else flag 0 closeConnection pstmt conn catch SQLException e TODO 自动生成 catch 块 flag 0 return flag public int add AgriculturalInformationDO a String sql insert into AgriculturalInformation name type price date beizhu values int i 0 try Connection conn getConnection PreparedStatement pstmt conn prepareStatement sql 设置各个占位符的实际参数 pstmt setString 1 a getName pstmt setString 2 a getType pstmt setString 3 a getPrice pstmt setString 4 a getDate pstmt setString 5 a getBeizhu 朱俐楠 农资店信息管理系统 22 执行sql i pstmt executeUpdate System out println 影响结果条数 i closeConnection pstmt conn catch SQLException e e printStackTrace return i public int add ClienteleInformationDO a String sql insert into ClienteleInformation name tel pay address beizhu values int i 0 try Connection conn getConnection PreparedStatement pstmt conn prepareStatement sql 设置各个占位符的实际参数 pstmt setString 1 a getName pstmt setString 2 a getTel pstmt setString 3 a getPay pstmt setString 4 a getAddress pstmt setString 5 a getBeizhu 执行sql i pstmt executeUpdate System out println 影响结果条数 i closeConnection pstmt conn catch SQLException e TODO 自动生成 catch 块 e printStackTrace return i public int add UserInformationDO a String sql insert into load user pwd values int i 0 try Connection conn getConnection PreparedStatement pstmt conn prepareStatement sq

温馨提示

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

评论

0/150

提交评论