基础项目实战
来源:互联网 发布:网络教育软件 编辑:程序博客网 时间:2024/05/20 03:39
书店管理系统:
项目练习目标 :
1、Java应用程序基本分析
2、培养面向对象编程的基本思想
3、Java基本设计模式综合应用
4、掌握分层和接口的基本设计
5、构建合理的Java应用程序包结构
6、综合应用JSE所学习的知识
7、在应用中合理使用集合框架
8、在应用中综合使用swing的常用组件
9、基本的表现层的实现机制
10、IO流和文件的基本操作
11、培养良好的Java编程习惯
12、培养调试Java程序的能力,培养改错的能力
项目功能需求 :
1、能进行操作用户的注册,修改基本信息,删除和查询。
2、能对图书的基本信息进行增加、删除、修改和查询操作。
3、能填写进货单,一张进货单带有多条具体的进货信息,进货的书籍必须是图书管理里面已经有的;进货的同时修改库存对应书籍的存货量。
4、能填写销售单,一张销售单带有多条具体的销售信息,销售的书籍必须是图书管理里面已经有的,而且销售的数量不能超过当前库存的数量;销售的同时修改库存对应书籍的存货量。
5、可以查看库存的明细,可以按照条件进行查找具体的图书的库存值。
6、权限方面进行简化,做固定的权限控制。把用户按照模块分成不同操作权限的人员,特设一个admin的用户,可以操作全部的功能。
项目基本设计 :
★ 架构设计
整体框架、模块划分
模块划分:用户、图书、进货、销售和库存5个模块
★ 系统功能结构设计
每个功能模块的具体功能子模块
★ 数据库设计
项目框架实现:分模块、分层、分包、构建应用程序
1、用户管理(User.txt)
说明:其中的type为int类型,用来表示操作用户的类型。
1——表示为admin,可以进行全部操作
2——表示为能操作图书模块的人员
3——表示为能操作进货模块的人员
4——表示为能操作销售模块的人员
5——表示为能操作库存模块的人员
2、图书管理(Book.txt)
3、进货管理(InMain.txt)
4、进货明细管理(InDetail.txt)
5、销售管理(OutMain.txt)
6、销售明细管理(OutDetail.txt)
7、库存管理(Stock.txt)
项目分包
第一层:按照模块分
用户模块(user)、
图书(book)、
进货(in)、
销售(out)、
库存(store)
第二层:按照三层模式分
表现层(ui)、逻辑层(business) 和 数据层(dao)
通常还要增加一个值对象层(vo)
第三层:按照层内划分去分
视具体情况而定,如business和dao内还要再采用铁三角的形式建子包,而ui和vo则不需要再划分子包)。
项目分层思想:
未完善,请继续关注本系列(二)
下面为部分代码:(util里面的一个公共类)
cn.hncu.bookStore.util
FileIoUtil.java:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
封装的用户数据:
cn.hncu.bookStore.user.vo;
UserModel.java
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128
- 129
- 130
- 131
封装的用户查询数据:
cn.hncu.bookStore.user.vo;
UserQueryModel.java
- 1
- 2
- 3
- 4
虽然这个类什么都没有,就只是继承了UserModel,但还是必须写,这是大家都遵守的java编写规范!
用户Dao(数据层):(接口)
cn.hncu.bookStore.user.dao.dao;
UserDao.java
- 基础项目实战
- .net实战项目零基础学习视频教程
- 【Redis基础】Redis在项目中实战
- Java基础实战Bank项目01-04
- 【Redis基础】Redis在项目中实战
- Java基础实战_Bank项目_项目需求.txt
- java基础项目实战教程视频下载,ja…
- java基础项目实战教程视频下载,ja…
- OC基础Day6-实战:购买电影票的小项目
- grunt基础思路+运行于中型项目实战
- 【电信计费系统项目实战】基础篇---登录界面实现
- 【电信计费系统项目实战】基础篇---登录界面实现
- 【电信计费系统项目实战】基础篇---解析XML文件
- 【电信计费系统项目实战】基础篇---解析XML文件
- Web基础之Request对象和Response对象项目实战
- Web基础之Servlet+JDBC+JSP项目实战终结篇
- Flask零基础到项目实战(一)
- Flask零基础到项目实战(五)Flask-Script
- (hdu1085)Holding Bin-Laden Captive!(母函数,打表)
- nowcoder数圈圈 | 51nod1042 数字0-9的数量
- 检测设备是否支持Google Play服务
- vue动画之点击按钮往上渐渐显示出来
- oracle中的greatest 函数和 least函数
- 基础项目实战
- MongoDB数据建模小案例:朋友圈评论内容管理
- tensorflow电子书
- Facebook前高管批社交网络破坏社会,劝人们少用
- Repo介绍
- 玩转Android monkey之monkey小实战
- 资料大放送,Python、前端、Java、Android、算法...总有你想要的!
- sqlite3数据库写入时间操作
- Python ORM框架之 Peewee入门