报刊订阅管理系统-课程设计说明书_第1页
报刊订阅管理系统-课程设计说明书_第2页
报刊订阅管理系统-课程设计说明书_第3页
报刊订阅管理系统-课程设计说明书_第4页
报刊订阅管理系统-课程设计说明书_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

千里之行,始于足下让知识带有温度。第第2页/共2页精品文档推荐报刊订阅管理系统——课程设计说明书名目

1需求分析(1)

2概要设计(3)

3具体设计(6)

4调试分析(14)

5用户使用说明(15)

6测试结果(22)

7结论(23)

8致谢(24)

9附录(25)

10

册后必需输入有效密码才干胜利进入此系统,可以举行报刊订阅与退订,修改个人信息和订单信息等操作。

关键词:报刊订阅管理系统,JAVA,数据库

引言

随着社会不断的进展,人们的生活水平越来越高,对学问和时事的渴求也越来越高,人们希翼能够便利快捷地订阅各种报刊杂志。但是各种各样的报刊目录和具体信息以及订阅,为相关企业的管理造成很大的棘手。因此我们想到开发一个报刊订阅管理系统。

在本系统中,需要实现:管理员可以录入用户信息,报刊信息,同时可按用户名、报刊名、部门对系统举行相应的查询信息以及统计信息等功能;用户可以注册、更新自己的信息,同时还可以订阅、退订报刊和查询、修改订单。

1需求分析

向来以来,人们在企业单位中都是使用传统人工方式管理单位的报刊订阅,这种管理方式存在着许多缺点,譬如,效率低,保密性差,而且时光一长,将产生大量的文件和数据,难以归类收拾,这对于查找、更新和维护都带来了不少的棘手。

通过学习,了解了JAVA、数据库,并在本次课程设计中利用这些学问点,实现一个面对于企业的报刊订阅管理系统,能够通过计算机和数据库对本单位的报刊订阅举行一系列的管理,实现智能化管理,克服了传统人工管理方式的缺点以及弊端。在报刊订阅管理系统中,要实现:管理员可以录入用户信息,报刊信息,同时可按用户名、报刊名、部门对系统举行相应的查询信息以及统计信息等功能;用户可以注册、更新自己的信息,同时还可以订阅、退订报刊和查询、修改订单。

订阅信息处理的特点是订阅信息处理量比较大,所管理的信息信息种类繁多,

而且订阅单、编辑单的发生量特殊大,关联信息多,查询和统计的方式各不相同。因此在管理上实现起来有一定因难。

本系统在设计过程中,为了克服这些困难,需要使程序代码标准化,软件统一化,确保软件的可维护性和有用性;删除不须要的管理冗余,实现管理规范化、科学化;界面友好、容易化,做到有用、便利,尽量满足报刊订阅中员工的需要。

1.1任务与分析

(1)界面需求:用户界面简洁明白,提供功能有用,按钮规律罗列清楚,简单使用。

(2)登陆功能需求:通过数据库衔接,对管理员ID和密码举行身份验证,进入报刊订阅管理系统界面。

(3)录入功能:1)系统管理员可以录入新用户信息,,信息一旦提交就存入到

后台数据库中;

2)系统管理员可以录入新报刊信息,,信息一旦提交就存入到后台

数据库中。

(4)订阅功能:系统管理员可以代替用户订阅报刊,系统自动计算所需金额。

(5)查询功能:1)管理员可以按人员查询信息。

2)管理员可以按报刊查询信息。

3)管理员可以按部门查询信息。

(6)统计功能:1)管理员可以按人员统计信息。

2)管理员可以按报刊统计信息。

3)管理员可以按部门统计信息。

(7)注册:新用户可以注册新帐号,并且将新用户的数据提交到数据库中。

1.2测试数据

(1)管理员:用户名(admin)、密码(admin)。

(2)录入报刊信息:报刊(1-3)、报刊名称(华西都市报)、出版社(华西

都市报出版社)、出版日期(2022-05-10)、内容介绍(生活)、季

度报价(45)。

(3)注册:用户帐号(3120220901506)、真切姓名(赵六)、用户密码(1234)、

联系电话(183********)、部门名称(公关部)、部门号(0135)、用户联系地址(西华高校)。

(4)订阅报刊:用户帐号(3120220901506)、真切姓名(赵六)、报刊(1-3)、报刊名称(华西都市报)、部门名称(公关部)、部门号(0135)、订阅份数(2)。

2概要设计

报刊订阅管理系统功能结构图如下:

本系统分为六大模块:

(1)登录功能:登录系统为身份验证登录。分为管理员登录和普通用户登录。分离通过不同的用户名和密码进入报刊订阅管理界面,新的用户需要注册。(2)录入新信息功能:录入报刊和用户信息,并能对报刊和用户信息举行增删

改查。

(3)订阅功能:用户可以订阅报刊,系统自动计算所需金额,并显示在界面上。

(4)查询功能:按人员查询、按报刊查询、按部门查询有关订阅信息,对查询结果能举行预览和打印。

(5)统计功能:按报刊统计、按人员统计、按部门统计,对统计结果能举行预览和打印。

(6)系统维护:权限管理,管理员只能登录管理员界面,用户只能按照正确的用户名和密码登录取户界面。

E-R如下:

数据库设计如下:admin管理员表

book订单表

users用户表

newspaper报刊表

3具体设计

3.1主函数的实现

(1)衔接数据库(Dbutils.java)packagecom.jdbc.utils;

importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;

importjava.sql.SQLException;

importjava.sql.Statement;

importjava.util.ResourceBundle;

publicclassDbutils{

privatestaticStringdriver;

privatestaticStringurl;

privatestaticStringuser;

privatestaticStringpwd;

privatestaticResourceBundle

rb=ResourceBundle.getBundle("com.jdbc.utils.jdbc");

static

{

driver=rb.getString("driver");

url=rb.getString("url");

user=rb.getString("user");

pwd=rb.getString("pwd");

try{

Class.forName(driver);

}catch(ClassNotFoundExceptione){

//TODO自动生成的catch块

e.printStackTrace();

}

}

privateDbutils(){}

publicstaticConnectiongetConnection()

{

Connectionconn=null;

try{

conn=DriverManager.getConnection(url,user,pwd);}catch(SQLExceptione){

//TODO自动生成的catch块

e.printStackTrace();

}

returnconn;

}

publicstaticvoidclose(Connectionconn,Statementstmt,ResultSetrs){

try{

if(conn!=null)conn.close();

if(stmt!=null)stmt.close();

if(rs!=null)rs.close();

}catch(SQLExceptione){

//TODO自动生成的catch块

e.printStackTrace();

}

}

publicstaticvoidmain(String[]args)

{

System.out.println(getConnection());

}

}

(2)主界面:添加面板,页面跳转(其他页面类似)Main.javaclassMainextendsJFrameimplementsActionListener{JRadioButtonmanager,users;

JLabellabel,label1,label2;

JTextFielduserName;

JPasswordFieldpassword;

JButtonlogin,register,exit;

JPanelp1,p2,p3;

publicMain(){

init();

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);setVisible(true);

}

voidinit(){

setLayout(newFlowLayout());

setSize(390,260);

p1=newJPanel();

p2=newJPanel();

p3=newJPanel();

label=newJLabel("欢迎使用报刊管理系统");Fontfont=newFont("隶书",Font.PLAIN,30);label.setFont(font);

p1.add(label);

ButtonGroupgroup=newButtonGroup();manager=newJRadioButton("管理员");

users=newJRadioButton("用户");

group.add(manager);

group.add(users);

p2.add(manager);

p2.add(users);

label1=newJLabel("用户名");

p3.add(label1);

userName=newJTextField(10);

p3.add(userName);

label2=newJLabel("密码");

p3.add(label2);

password=newJPasswordField(10);p3.add(password);

add(p1,BorderLayout.CENTER);

add(p2,BorderLayout.CENTER);

add(p3,BorderLayout.CENTER);

login=newJButton("登录");register=newJButton("注册");

exit=newJButton("退出");

add(login);

add(register);

add(exit);

userName.addActionListener(this);login.addActionListener(this);register.addActionListener(this);exit.addActionListener(this);

}

publicstaticvoidmain(String[]args)

{

Mainf=newMain();

f.setTitle("报刊订阅管理系统");

}

publicvoidactionPerformed(ActionEvente){

//TODO自动生成的办法存根

if(e.getSource()==register)//注册(登录、退出类似)

{

newUsersRegister();//过渡到新的窗口Menu;

this.dispose();//释放当前窗口

}

}

3.2数据录入实现

录入报刊信息(录入用户信息和对用户、报刊、订单的增删改查与之类似)(1)LoggingdataNewspaper.java

publicstaticvoidmain(String[]args)

{

LoggingdataNewspaperf=newLoggingdataNewspaper();

f.setTitle("报刊信息");

}

publicvoidactionPerformed(ActionEvente){

//TODO自动生成的办法存根

if(e.getSource()==button5)//退出

{

newManagerHome();//过渡到新的窗口Menu;

this.dispose();//释放当前窗口

}

if(e.getSource()==button1)//添加

{

//定义一个空的newspaper对象

newspapernews=newnewspaper();

//将数据封装到news中

news.setNewsNo(text1.getText().trim());

news.setNewsName(text2.getText().trim());

news.setPublish(text3.getText().trim());

news.setPubPeriod(text4.getText().trim());

news.setContent(text5.getText().trim());

news.setPrice(Float.parseFloat(text6.getText().trim()));System.out.println(news);

//定义一个控制对象

InformationDaoImplifd=newInformationDaoImpl();

//执行添加用户操作

ifd.addNews(news);

}

if(e.getSource()==button2)//删除

{

//定义一个空的newspaper对象

newspaperdelnews=newnewspaper();

//将数据封装到delnews中

delnews.setNewsNo(text1.getText().trim());delnews.setNewsName(text2.getText().trim());System.out.println(delnews);

//定义一个控制对象

InformationDaoImplifd=newInformationDaoImpl();//执行添加用户操作

ifd.deleteNews(delnews);

}

if(e.getSource()==button3)//查询

{

//定义一个空的newspaper对象

newspapern=newnewspaper();

//将数据封装在n中

Stringnews=text1.getText().trim();

//定义一个控制对象

InformationDaoImplifd=newInformationDaoImpl();n=ifd.FindNewsByNewspaper(news);

System.out.println(n);

text2.setText(n.getNewsName());

text3.setText(n.getPublish());

text4.setText(n.getPubPeriod());

text5.setText(n.getContent());

text6.setText(String.valueOf(n.getPrice()));}

if(e.getSource()==button4)//修改

{

//定义一个空的users对象

newspapernews=newnewspaper();

//将数据封装到u当中

news.setNewsNo(text1.getText().trim());news.setNewsName(text2.getText().trim());news.setPublish(text3.getText().trim());news.setPubPeriod(text4.getText().trim());news.setContent(text5.getText().trim());

news.setPrice(Float.parseFloat(text6.getText().trim()));//定义一个控制对象

InformationDaoImplifd=newInformationDaoImpl();

//执行修改用户信息操作

ifd

温馨提示

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

最新文档

评论

0/150

提交评论