JavaWeb倉庫管理系統詳解
系統界面圖
難度系數(易入)
因為才有比較基礎的語法,對Java初學者、基礎不是太好的小夥伴來說,也是比較容易上手的
後端:
1.使用Java Servlet 本身就是Java語法,無縫鏈接,也無效更種配置,web.xml輕松配置一次既可。
2.采用C3P0連接數據庫,配置文件、代碼、jar包,均已就位,無需二次操作。
3.代碼采用Service、Dao分層邏輯,清晰實用,代碼簡單易懂。
前端:
1.Jsp也是Java語法,無需學習新東西,直接寫Java代碼。
2.HTML僅僅隻需最簡單的常用標簽的語法,小白也能輕松明白。
3.css隻是一點點頁面的樣式,很容易。
4.JavaScript需要瞭解基本的語法,學web必備。
5.Jquery是JavaScript的插件庫,這裡僅僅是用來與後臺交互,僅僅會使用 $.post 與後臺交互即可。
最重要的,就是通過比較簡單、基礎的語法,讓你瞭解用Java怎麼開發一個web系統,完整的瞭解整個開發流程,進而提升學習的信心和增加成就感。
開發環境
僅僅是我個人的喜歡用,也可以自己選自己喜歡的
開發工具:eclipse/myEclipse8.5
數據庫:mysql 5
web容器:tomcat 6
jdk版本:1.6
系統功能
角色介紹
1.超級管理員
權限:超級管理員是權限最大的角色,有系統所有的權限。
2.系統管理員
權限:用戶管理、倉庫管理、分類管理、物品管理、出入貨信息管理、密碼管理、登陸模塊。
3.普通用戶
權限:權限最小的角色,僅有修改密碼、註冊登陸登出系統、查看分類、查詢貨品信息、查詢自己的出貨信息。
表結構介紹
用戶表
//用戶表 CREATE TABLE `user` ( `id` int(11) NOT NULL auto_increment COMMENT '主鍵', `no` varchar(20) default NULL COMMENT '賬號-學生一般用學號', `name` varchar(100) not NULL COMMENT '名字', `password` varchar(20) not NULL COMMENT '密碼', `sex` varchar(20) default NULL COMMENT '性別', `phone` varchar(20) default NULL COMMENT '電話', `role_id` int(11) default NULL COMMENT '角色 0超級管理員,1管理員,2普通用戶', `isValid` varchar(4) default 'Y' COMMENT '是否有效,Y有效,其他無效', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
默認插入超級管理員數據
INSERT INTO `user` VALUES ('1', 'sa', '超級管理', '123', '1', '111', '0', 'Y');
菜單表
CREATE TABLE `menu` ( `id` int(11) NOT NULL, `menuCode` varchar(8) default NULL COMMENT '菜單編碼', `menuName` varchar(16) default NULL COMMENT '菜單名字', `menuLevel` varchar(2) default NULL COMMENT '菜單級別', `menuParentCode` varchar(8) default NULL COMMENT '菜單的父code', `menuClick` varchar(16) default NULL COMMENT '點擊觸發的函數', `menuRight` varchar(8) default NULL COMMENT '權限 0超級管理員,1表示管理員,2表示普通用戶,可以用逗號組合使用', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
默認插入的數據(建議一行行的插入,反正我的mysql一條條的弄,不然後面的中文會亂碼)
INSERT INTO `menu` VALUES ('1', '001', '管理員管理', '1', null, 'adminManage', '0'); INSERT INTO `menu` VALUES ('2', '002', '用戶管理', '1', null, 'userManage', '0,1'); INSERT INTO `menu` VALUES ('3', '003', '倉庫管理', '1', null, 'storageManage', '0,1'); INSERT INTO `menu` VALUES ('4', '004', '物品分類管理', '1', null, 'goodsTypeManage', '0,1,2'); INSERT INTO `menu` VALUES ('5', '005', '物品管理', '1', null, 'goodsManage', '0,1,2'); INSERT INTO `menu` VALUES ('6', '006', '出入庫記錄', '1', null, 'recordManage', '0,1,2'); INSERT INTO `menu` VALUES ('7', '007', '修改密碼', '1', null, 'modPwd', '0,1,2'); INSERT INTO `menu` VALUES ('8', '008', '退出系統', '1', null, 'logout', '0,1,2');
倉庫表
CREATE TABLE `storage` ( `id` int(11) NOT NULL auto_increment COMMENT '主鍵', `name` varchar(100) not NULL COMMENT '倉庫名', `remark` varchar(1000) default NULL COMMENT '備註', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
分類表
CREATE TABLE `goodsType` ( `id` int(11) NOT NULL auto_increment COMMENT '主鍵', `name` varchar(100) not NULL COMMENT '分類名', `remark` varchar(1000) default NULL COMMENT '備註', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
貨品表
CREATE TABLE `goods` ( `id` int(11) NOT NULL auto_increment COMMENT '主鍵', `name` varchar(100) not NULL COMMENT '貨名', `storage` int(11) not NULL COMMENT '倉庫', `goodsType` int(11) not NULL COMMENT '分類', `count` int(11) default NULL COMMENT '數量', `remark` varchar(1000) default NULL COMMENT '備註', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
出入庫記錄表
CREATE TABLE `record` ( `id` int(11) NOT NULL auto_increment COMMENT '主鍵', `goods` int(11) not NULL COMMENT '貨品id', `userId` int(11) default NULL COMMENT '取貨人/補貨人', `createtime` datetime default NULL COMMENT '操作時間', `admin_id` int(11) default NULL COMMENT '操作人id', `count` int(11) default NULL COMMENT '數量', `remark` varchar(1000) default NULL COMMENT '備註', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
系統模塊介紹
系統管理員管理
超級管理員才有的權限,可以增加、修改、刪除系統管理員。
用戶管理
管理員和超管都可以操作,新增、修改、刪除等操作。
倉庫管理
管理員和超管都可以操作,新增、修改、刪除等操作。
分類管理
管理員和超管都可以操作,新增、修改、刪除等操作。
物品管理
管理員和超管都可以操作,新增、修改、刪除、出貨、補貨等操作。
用戶 僅僅有查看功能
出入貨物管理
可以查看到出入庫的情況(包含物品、操作人、取貨人、時間,數量等,紅色負數表示出貨、綠色表示補貨)。
修改密碼
代碼目錄
java文件
頁面
後端分層
總結
因為有之前類似系統的積累,所以編碼效率比較高吧,這也是老程序員的能力,有代碼參考 CV 的很快,哈哈!也希望能夠給朋友們帶來些許幫助!
註意點
1.樣式比較簡單,可能不太好看,因為沒有去花精力做樣式。
2.表設計可能不是特別完善、功能也比較簡單,自己憑感覺做的。
3.難免會有些bug吧,不過也不是上線用的,參考學習的話我覺得是足夠瞭。
4.代碼裡面也有部署文檔。
本篇文章就到這裡瞭,希望能夠給你帶來幫助,也希望您能夠多多關註WalkonNet的更多內容!
推薦閱讀:
- MySQL 8.0 之不可見列的基本操作
- Mysql using 用法示例詳解
- MySQL 字段默認值該如何設置
- 一文搞清楚MySQL count(*)、count(1)、count(col)區別
- Mysql根據某層部門ID查詢所有下級多層子部門的示例