• SMSBMS超市订单管理系统详解(一:准备工作)


     这是我们系统需要实现的功能 :

    之后我们进行数据库的设计:

    我们所创建的数据库的SQL语句如下所示:

    1. /*
    2. Navicat MySQL Data Transfer
    3. Source Server : localhost_3306
    4. Source Server Version : 50555
    5. Source Host : 127.0.0.1:3306
    6. Source Database : smbms
    7. Target Server Type : MYSQL
    8. Target Server Version : 50555
    9. File Encoding : 65001
    10. Date: 2019-04-19 17:54:33
    11. */
    12. SET FOREIGN_KEY_CHECKS=0;
    13. -- ----------------------------
    14. -- Table structure for smbms_address
    15. -- ----------------------------
    16. DROP TABLE IF EXISTS `smbms_address`;
    17. CREATE TABLE `smbms_address` (
    18. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
    19. `contact` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '联系人姓名',
    20. `addressDesc` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '收货地址明细',
    21. `postCode` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '邮编',
    22. `tel` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '联系人电话',
    23. `createdBy` bigint(20) DEFAULT NULL COMMENT '创建者',
    24. `creationDate` datetime DEFAULT NULL COMMENT '创建时间',
    25. `modifyBy` bigint(20) DEFAULT NULL COMMENT '修改者',
    26. `modifyDate` datetime DEFAULT NULL COMMENT '修改时间',
    27. `userId` bigint(20) DEFAULT NULL COMMENT '用户ID',
    28. PRIMARY KEY (`id`)
    29. ) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    30. -- ----------------------------
    31. -- Records of smbms_address
    32. -- ----------------------------
    33. INSERT INTO `smbms_address` VALUES ('1', '王丽', '北京市东城区东交民巷44号', '100010', '13678789999', '1', '2016-04-13 00:00:00', null, null, '1');
    34. INSERT INTO `smbms_address` VALUES ('2', '张红丽', '北京市海淀区丹棱街3号', '100000', '18567672312', '1', '2016-04-13 00:00:00', null, null, '1');
    35. INSERT INTO `smbms_address` VALUES ('3', '任志强', '北京市东城区美术馆后街23号', '100021', '13387906742', '1', '2016-04-13 00:00:00', null, null, '1');
    36. INSERT INTO `smbms_address` VALUES ('4', '曹颖', '北京市朝阳区朝阳门南大街14号', '100053', '13568902323', '1', '2016-04-13 00:00:00', null, null, '2');
    37. INSERT INTO `smbms_address` VALUES ('5', '李慧', '北京市西城区三里河路南三巷3号', '100032', '18032356666', '1', '2016-04-13 00:00:00', null, null, '3');
    38. INSERT INTO `smbms_address` VALUES ('6', '王国强', '北京市顺义区高丽营镇金马工业区18号', '100061', '13787882222', '1', '2016-04-13 00:00:00', null, null, '3');
    39. -- ----------------------------
    40. -- Table structure for smbms_bill
    41. -- ----------------------------
    42. DROP TABLE IF EXISTS `smbms_bill`;
    43. CREATE TABLE `smbms_bill` (
    44. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
    45. `billCode` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '账单编码',
    46. `productName` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '商品名称',
    47. `productDesc` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '商品描述',
    48. `productUnit` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '商品单位',
    49. `productCount` decimal(20,2) DEFAULT NULL COMMENT '商品数量',
    50. `totalPrice` decimal(20,2) DEFAULT NULL COMMENT '商品总额',
    51. `isPayment` int(10) DEFAULT NULL COMMENT '是否支付(1:未支付 2:已支付)',
    52. `createdBy` bigint(20) DEFAULT NULL COMMENT '创建者(userId)',
    53. `creationDate` datetime DEFAULT NULL COMMENT '创建时间',
    54. `modifyBy` bigint(20) DEFAULT NULL COMMENT '更新者(userId)',
    55. `modifyDate` datetime DEFAULT NULL COMMENT '更新时间',
    56. `providerId` int(20) DEFAULT NULL COMMENT '供应商ID',
    57. PRIMARY KEY (`id`)
    58. ) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    59. -- ----------------------------
    60. -- Records of smbms_bill
    61. -- ----------------------------
    62. INSERT INTO `smbms_bill` VALUES ('1', 'BILL2016_001', '洗发水、护发素', '日用品-洗发、护发', '瓶', '500.00', '25000.00', '2', '1', '2014-12-14 13:02:03', '15', '2019-04-16 21:43:12', '13');
    63. INSERT INTO `smbms_bill` VALUES ('2', 'BILL2016_002', '香皂、肥皂、药皂', '日用品-皂类', '块', '1000.00', '10000.00', '2', '1', '2016-03-23 04:20:40', null, null, '13');
    64. INSERT INTO `smbms_bill` VALUES ('3', 'BILL2016_003', '大豆油', '食品-食用油', '斤', '300.00', '5890.00', '2', '1', '2014-12-14 13:02:03', null, null, '6');
    65. INSERT INTO `smbms_bill` VALUES ('4', 'BILL2016_004', '橄榄油', '食品-进口食用油', '斤', '200.00', '9800.00', '2', '1', '2013-10-10 03:12:13', null, null, '7');
    66. INSERT INTO `smbms_bill` VALUES ('5', 'BILL2016_005', '洗洁精', '日用品-厨房清洁', '瓶', '500.00', '7000.00', '2', '1', '2014-12-14 13:02:03', null, null, '9');
    67. INSERT INTO `smbms_bill` VALUES ('6', 'BILL2016_006', '美国大杏仁', '食品-坚果', '袋', '300.00', '5000.00', '2', '1', '2016-04-14 06:08:09', null, null, '4');
    68. INSERT INTO `smbms_bill` VALUES ('7', 'BILL2016_007', '沐浴液、精油', '日用品-沐浴类', '瓶', '500.00', '23000.00', '1', '1', '2016-07-22 10:10:22', null, null, '14');
    69. INSERT INTO `smbms_bill` VALUES ('8', 'BILL2016_008', '不锈钢盘碗', '日用品-厨房用具', '个', '600.00', '6000.00', '2', '1', '2016-04-14 05:12:13', null, null, '14');
    70. INSERT INTO `smbms_bill` VALUES ('9', 'BILL2016_009', '塑料杯', '日用品-杯子', '个', '350.00', '1750.00', '2', '1', '2016-02-04 11:40:20', null, null, '14');
    71. INSERT INTO `smbms_bill` VALUES ('10', 'BILL2016_010', '豆瓣酱', '食品-调料', '瓶', '200.00', '2000.00', '2', '1', '2013-10-29 05:07:03', null, null, '8');
    72. INSERT INTO `smbms_bill` VALUES ('11', 'BILL2016_011', '海之蓝', '饮料-国酒', '瓶', '50.00', '10000.00', '1', '1', '2016-04-14 16:16:00', null, null, '1');
    73. INSERT INTO `smbms_bill` VALUES ('12', 'BILL2016_012', '芝华士', '饮料-洋酒', '瓶', '20.00', '6000.00', '1', '1', '2016-09-09 17:00:00', null, null, '1');
    74. INSERT INTO `smbms_bill` VALUES ('13', 'BILL2016_013', '长城红葡萄酒', '饮料-红酒', '瓶', '60.00', '800.00', '2', '1', '2016-11-14 15:23:00', null, null, '1');
    75. INSERT INTO `smbms_bill` VALUES ('14', 'BILL2016_014', '泰国香米', '食品-大米', '斤', '400.00', '5000.00', '2', '1', '2016-10-09 15:20:00', null, null, '3');
    76. INSERT INTO `smbms_bill` VALUES ('15', 'BILL2016_015', '东北大米', '食品-大米', '斤', '600.00', '4000.00', '2', '1', '2016-11-14 14:00:00', null, null, '3');
    77. INSERT INTO `smbms_bill` VALUES ('16', 'BILL2016_016', '可口可乐', '饮料', '瓶', '2000.00', '6000.00', '2', '1', '2012-03-27 13:03:01', null, null, '2');
    78. INSERT INTO `smbms_bill` VALUES ('17', 'BILL2016_017', '脉动', '饮料', '瓶', '1500.00', '4500.00', '2', '1', '2016-05-10 12:00:00', null, null, '2');
    79. -- ----------------------------
    80. -- Table structure for smbms_provider
    81. -- ----------------------------
    82. DROP TABLE IF EXISTS `smbms_provider`;
    83. CREATE TABLE `smbms_provider` (
    84. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
    85. `proCode` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '供应商编码',
    86. `proName` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '供应商名称',
    87. `proDesc` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '供应商详细描述',
    88. `proContact` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '供应商联系人',
    89. `proPhone` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '联系电话',
    90. `proAddress` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '地址',
    91. `proFax` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '传真',
    92. `createdBy` bigint(20) DEFAULT NULL COMMENT '创建者(userId)',
    93. `creationDate` datetime DEFAULT NULL COMMENT '创建时间',
    94. `modifyDate` datetime DEFAULT NULL COMMENT '更新时间',
    95. `modifyBy` bigint(20) DEFAULT NULL COMMENT '更新者(userId)',
    96. PRIMARY KEY (`id`)
    97. ) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    98. -- ----------------------------
    99. -- Records of smbms_provider
    100. -- ----------------------------
    101. INSERT INTO `smbms_provider` VALUES ('1', 'BJ_GYS001', '北京三木堂商贸有限公司', '长期合作伙伴,主营产品:茅台、五粮液、郎酒、酒鬼酒、泸州老窖、赖茅酒、法国红酒等', '张国强', '13566669999', '北京市丰台区育芳园北路', '010-58858787', '1', '2013-03-21 16:52:07', '2019-04-12 16:44:03', '10');
    102. INSERT INTO `smbms_provider` VALUES ('2', 'HB_GYS001', '石家庄帅益食品贸易有限公司', '长期合作伙伴,主营产品:饮料、水饮料、植物蛋白饮料、休闲食品、果汁饮料、功能饮料等', '王军', '13309094212', '河北省石家庄新华区', '0311-67738876', '1', '2016-04-13 04:20:40', null, null);
    103. INSERT INTO `smbms_provider` VALUES ('3', 'GZ_GYS001', '深圳市泰香米业有限公司', '初次合作伙伴,主营产品:良记金轮米,龙轮香米等', '郑程瀚', '13402013312', '广东省深圳市福田区深南大道6006华丰大厦', '0755-67776212', '1', '2014-03-21 16:56:07', null, null);
    104. INSERT INTO `smbms_provider` VALUES ('4', 'GZ_GYS002', '深圳市喜来客商贸有限公司', '长期合作伙伴,主营产品:坚果炒货.果脯蜜饯.天然花茶.营养豆豆.特色美食.进口食品.海味零食.肉脯肉', '林妮', '18599897645', '广东省深圳市福龙工业区B2栋3楼西', '0755-67772341', '1', '2013-03-22 16:52:07', null, null);
    105. INSERT INTO `smbms_provider` VALUES ('5', 'JS_GYS001', '兴化佳美调味品厂', '长期合作伙伴,主营产品:天然香辛料、鸡精、复合调味料', '徐国洋', '13754444221', '江苏省兴化市林湖工业区', '0523-21299098', '1', '2015-11-22 16:52:07', null, null);
    106. INSERT INTO `smbms_provider` VALUES ('6', 'BJ_GYS002', '北京纳福尔食用油有限公司', '长期合作伙伴,主营产品:山茶油、大豆油、花生油、橄榄油等', '马莺', '13422235678', '北京市朝阳区珠江帝景1号楼', '010-588634233', '1', '2012-03-21 17:52:07', null, null);
    107. INSERT INTO `smbms_provider` VALUES ('7', 'BJ_GYS003', '北京国粮食用油有限公司', '初次合作伙伴,主营产品:花生油、大豆油、小磨油等', '王驰', '13344441135', '北京大兴青云店开发区', '010-588134111', '1', '2016-04-13 00:00:00', null, null);
    108. INSERT INTO `smbms_provider` VALUES ('8', 'ZJ_GYS001', '慈溪市广和绿色食品厂', '长期合作伙伴,主营产品:豆瓣酱、黄豆酱、甜面酱,辣椒,大蒜等农产品', '薛圣丹', '18099953223', '浙江省宁波市慈溪周巷小安村', '0574-34449090', '1', '2013-11-21 06:02:07', null, null);
    109. INSERT INTO `smbms_provider` VALUES ('9', 'GX_GYS001', '优百商贸有限公司', '长期合作伙伴,主营产品:日化产品', '李立国', '13323566543', '广西南宁市秀厢大道42-1号', '0771-98861134', '1', '2013-03-21 19:52:07', null, null);
    110. INSERT INTO `smbms_provider` VALUES ('10', 'JS_GYS002', '南京火头军信息技术有限公司', '长期合作伙伴,主营产品:不锈钢厨具等', '陈女士', '13098992113', '江苏省南京市浦口区浦口大道1号新城总部大厦A座903室', '025-86223345', '1', '2013-03-25 16:52:07', null, null);
    111. INSERT INTO `smbms_provider` VALUES ('11', 'GZ_GYS003', '广州市白云区美星五金制品厂', '长期合作伙伴,主营产品:海绵床垫、坐垫、靠垫、海绵枕头、头枕等', '梁天', '13562276775', '广州市白云区钟落潭镇福龙路20号', '020-85542231', '1', '2016-12-21 06:12:17', null, null);
    112. INSERT INTO `smbms_provider` VALUES ('12', 'BJ_GYS004', '北京隆盛日化科技', '长期合作伙伴,主营产品:日化环保清洗剂,家居洗涤专卖、洗涤用品网、墙体除霉剂、墙面霉菌清除剂等', '孙欣', '13689865678', '北京市大兴区旧宫', '010-35576786', '1', '2014-11-21 12:51:11', null, null);
    113. INSERT INTO `smbms_provider` VALUES ('13', 'SD_GYS001', '山东豪克华光联合发展有限公司', '长期合作伙伴,主营产品:洗衣皂、洗衣粉、洗衣液、洗洁精、消杀类、香皂等', '吴洪转', '13245468787', '山东济阳济北工业区仁和街21号', '0531-53362445', '1', '2015-01-28 10:52:07', null, null);
    114. -- ----------------------------
    115. -- Table structure for smbms_role
    116. -- ----------------------------
    117. DROP TABLE IF EXISTS `smbms_role`;
    118. CREATE TABLE `smbms_role` (
    119. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
    120. `roleCode` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '角色编码',
    121. `roleName` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '角色名称',
    122. `createdBy` bigint(20) DEFAULT NULL COMMENT '创建者',
    123. `creationDate` datetime DEFAULT NULL COMMENT '创建时间',
    124. `modifyBy` bigint(20) DEFAULT NULL COMMENT '修改者',
    125. `modifyDate` datetime DEFAULT NULL COMMENT '修改时间',
    126. PRIMARY KEY (`id`)
    127. ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    128. -- ----------------------------
    129. -- Records of smbms_role
    130. -- ----------------------------
    131. INSERT INTO `smbms_role` VALUES ('1', 'SMBMS_ADMIN', '系统管理员', '1', '2016-04-13 00:00:00', null, null);
    132. INSERT INTO `smbms_role` VALUES ('2', 'SMBMS_MANAGER', '经理', '1', '2016-04-13 00:00:00', null, null);
    133. INSERT INTO `smbms_role` VALUES ('3', 'SMBMS_EMPLOYEE', '普通员工', '1', '2016-04-13 00:00:00', null, null);
    134. -- ----------------------------
    135. -- Table structure for smbms_user
    136. -- ----------------------------
    137. DROP TABLE IF EXISTS `smbms_user`;
    138. CREATE TABLE `smbms_user` (
    139. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
    140. `userCode` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '用户编码',
    141. `userName` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '用户名称',
    142. `userPassword` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '用户密码',
    143. `gender` int(10) DEFAULT NULL COMMENT '性别(1:女、 2:男)',
    144. `birthday` date DEFAULT NULL COMMENT '出生日期',
    145. `phone` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '手机',
    146. `address` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '地址',
    147. `userRole` int(10) DEFAULT NULL COMMENT '用户角色(取自角色表-角色id)',
    148. `createdBy` bigint(20) DEFAULT NULL COMMENT '创建者(userId)',
    149. `creationDate` datetime DEFAULT NULL COMMENT '创建时间',
    150. `modifyBy` bigint(20) DEFAULT NULL COMMENT '更新者(userId)',
    151. `modifyDate` datetime DEFAULT NULL COMMENT '更新时间',
    152. PRIMARY KEY (`id`)
    153. ) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    154. -- ----------------------------
    155. -- Records of smbms_user
    156. -- ----------------------------
    157. INSERT INTO `smbms_user` VALUES ('1', 'wen', '系统管理员', '123', '1', '1997-01-01', '15200981234', '湖南省衡阳市蒸湘区南华大学', '1', '1', '2019-04-07 10:15:55', null, null);
    158. INSERT INTO `smbms_user` VALUES ('5', 'hanlubiao', '韩路彪', '0000000', '2', '1984-06-05', '18567542321', '北京市朝阳区北辰中心12号', '2', '1', '2014-12-31 19:52:09', null, null);
    159. INSERT INTO `smbms_user` VALUES ('6', 'zhanghua', '张华', '0000000', '1', '1983-06-15', '13544561111', '北京市海淀区学院路61号', '3', '1', '2013-02-11 10:51:17', null, null);
    160. INSERT INTO `smbms_user` VALUES ('7', 'wangyang', '王洋', '0000000', '2', '1982-12-31', '13444561124', '北京市海淀区西二旗辉煌国际16层', '3', '1', '2014-06-11 19:09:07', null, null);
    161. INSERT INTO `smbms_user` VALUES ('8', 'zhaoyan', '赵燕', '0000000', '1', '1986-03-07', '18098764545', '北京市海淀区回龙观小区10号楼', '3', '1', '2016-04-21 13:54:07', null, null);
    162. INSERT INTO `smbms_user` VALUES ('10', 'sunlei', '孙磊', '0000000', '2', '1981-01-04', '13387676765', '北京市朝阳区管庄新月小区12楼', '3', '1', '2015-05-06 10:52:07', null, null);
    163. INSERT INTO `smbms_user` VALUES ('11', 'sunxing', '孙兴', '0000000', '2', '1978-03-12', '13367890900', '北京市朝阳区建国门南大街10号', '3', '1', '2016-11-09 16:51:17', null, null);
    164. INSERT INTO `smbms_user` VALUES ('12', 'zhangchen', '张晨', '0000000', '1', '1986-03-28', '18098765434', '朝阳区管庄路口北柏林爱乐三期13号楼', '3', '1', '2016-08-09 05:52:37', '1', '2016-04-14 14:15:36');
    165. INSERT INTO `smbms_user` VALUES ('13', 'dengchao', '邓超', '0000000', '2', '1981-11-04', '13689674534', '北京市海淀区北航家属院10号楼', '3', '1', '2016-07-11 08:02:47', null, null);
    166. INSERT INTO `smbms_user` VALUES ('14', 'yangguo', '杨过', '0000000', '2', '1980-01-01', '13388886623', '北京市朝阳区北苑家园茉莉园20号楼', '3', '1', '2015-02-01 03:52:07', null, null);
    167. INSERT INTO `smbms_user` VALUES ('15', 'test', 'test', '111', '1', '2019-04-16', '123456789', '南华大学', '1', '1', '2019-04-16 19:52:37', null, null);

    smbms_address表:

    1. /*
    2. Navicat MySQL Data Transfer
    3. Source Server : localhost_3306
    4. Source Server Version : 50555
    5. Source Host : 127.0.0.1:3306
    6. Source Database : smbms
    7. Target Server Type : MYSQL
    8. Target Server Version : 50555
    9. File Encoding : 65001
    10. Date: 2019-04-19 17:54:33
    11. */
    12. SET FOREIGN_KEY_CHECKS=0;
    13. -- ----------------------------
    14. -- Table structure for smbms_address
    15. -- ----------------------------
    16. DROP TABLE IF EXISTS `smbms_address`;
    17. CREATE TABLE `smbms_address` (
    18. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
    19. `contact` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '联系人姓名',
    20. `addressDesc` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '收货地址明细',
    21. `postCode` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '邮编',
    22. `tel` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '联系人电话',
    23. `createdBy` bigint(20) DEFAULT NULL COMMENT '创建者',
    24. `creationDate` datetime DEFAULT NULL COMMENT '创建时间',
    25. `modifyBy` bigint(20) DEFAULT NULL COMMENT '修改者',
    26. `modifyDate` datetime DEFAULT NULL COMMENT '修改时间',
    27. `userId` bigint(20) DEFAULT NULL COMMENT '用户ID',
    28. PRIMARY KEY (`id`)
    29. ) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    30. -- ----------------------------
    31. -- Records of smbms_address
    32. -- ----------------------------
    33. INSERT INTO `smbms_address` VALUES ('1', '王丽', '北京市东城区东交民巷44号', '100010', '13678789999', '1', '2016-04-13 00:00:00', null, null, '1');
    34. INSERT INTO `smbms_address` VALUES ('2', '张红丽', '北京市海淀区丹棱街3号', '100000', '18567672312', '1', '2016-04-13 00:00:00', null, null, '1');
    35. INSERT INTO `smbms_address` VALUES ('3', '任志强', '北京市东城区美术馆后街23号', '100021', '13387906742', '1', '2016-04-13 00:00:00', null, null, '1');
    36. INSERT INTO `smbms_address` VALUES ('4', '曹颖', '北京市朝阳区朝阳门南大街14号', '100053', '13568902323', '1', '2016-04-13 00:00:00', null, null, '2');
    37. INSERT INTO `smbms_address` VALUES ('5', '李慧', '北京市西城区三里河路南三巷3号', '100032', '18032356666', '1', '2016-04-13 00:00:00', null, null, '3');
    38. INSERT INTO `smbms_address` VALUES ('6', '王国强', '北京市顺义区高丽营镇金马工业区18号', '100061', '13787882222', '1', '2016-04-13 00:00:00', null, null, '3');
    39. -- ----------------------------

    smbms_bill表 :

    1. -- ----------------------------
    2. -- Table structure for smbms_bill
    3. -- ----------------------------
    4. DROP TABLE IF EXISTS `smbms_bill`;
    5. CREATE TABLE `smbms_bill` (
    6. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
    7. `billCode` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '账单编码',
    8. `productName` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '商品名称',
    9. `productDesc` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '商品描述',
    10. `productUnit` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '商品单位',
    11. `productCount` decimal(20,2) DEFAULT NULL COMMENT '商品数量',
    12. `totalPrice` decimal(20,2) DEFAULT NULL COMMENT '商品总额',
    13. `isPayment` int(10) DEFAULT NULL COMMENT '是否支付(1:未支付 2:已支付)',
    14. `createdBy` bigint(20) DEFAULT NULL COMMENT '创建者(userId)',
    15. `creationDate` datetime DEFAULT NULL COMMENT '创建时间',
    16. `modifyBy` bigint(20) DEFAULT NULL COMMENT '更新者(userId)',
    17. `modifyDate` datetime DEFAULT NULL COMMENT '更新时间',
    18. `providerId` int(20) DEFAULT NULL COMMENT '供应商ID',
    19. PRIMARY KEY (`id`)
    20. ) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    21. -- ----------------------------
    22. -- Records of smbms_bill
    23. -- ----------------------------
    24. INSERT INTO `smbms_bill` VALUES ('1', 'BILL2016_001', '洗发水、护发素', '日用品-洗发、护发', '瓶', '500.00', '25000.00', '2', '1', '2014-12-14 13:02:03', '15', '2019-04-16 21:43:12', '13');
    25. INSERT INTO `smbms_bill` VALUES ('2', 'BILL2016_002', '香皂、肥皂、药皂', '日用品-皂类', '块', '1000.00', '10000.00', '2', '1', '2016-03-23 04:20:40', null, null, '13');
    26. INSERT INTO `smbms_bill` VALUES ('3', 'BILL2016_003', '大豆油', '食品-食用油', '斤', '300.00', '5890.00', '2', '1', '2014-12-14 13:02:03', null, null, '6');
    27. INSERT INTO `smbms_bill` VALUES ('4', 'BILL2016_004', '橄榄油', '食品-进口食用油', '斤', '200.00', '9800.00', '2', '1', '2013-10-10 03:12:13', null, null, '7');
    28. INSERT INTO `smbms_bill` VALUES ('5', 'BILL2016_005', '洗洁精', '日用品-厨房清洁', '瓶', '500.00', '7000.00', '2', '1', '2014-12-14 13:02:03', null, null, '9');
    29. INSERT INTO `smbms_bill` VALUES ('6', 'BILL2016_006', '美国大杏仁', '食品-坚果', '袋', '300.00', '5000.00', '2', '1', '2016-04-14 06:08:09', null, null, '4');
    30. INSERT INTO `smbms_bill` VALUES ('7', 'BILL2016_007', '沐浴液、精油', '日用品-沐浴类', '瓶', '500.00', '23000.00', '1', '1', '2016-07-22 10:10:22', null, null, '14');
    31. INSERT INTO `smbms_bill` VALUES ('8', 'BILL2016_008', '不锈钢盘碗', '日用品-厨房用具', '个', '600.00', '6000.00', '2', '1', '2016-04-14 05:12:13', null, null, '14');
    32. INSERT INTO `smbms_bill` VALUES ('9', 'BILL2016_009', '塑料杯', '日用品-杯子', '个', '350.00', '1750.00', '2', '1', '2016-02-04 11:40:20', null, null, '14');
    33. INSERT INTO `smbms_bill` VALUES ('10', 'BILL2016_010', '豆瓣酱', '食品-调料', '瓶', '200.00', '2000.00', '2', '1', '2013-10-29 05:07:03', null, null, '8');
    34. INSERT INTO `smbms_bill` VALUES ('11', 'BILL2016_011', '海之蓝', '饮料-国酒', '瓶', '50.00', '10000.00', '1', '1', '2016-04-14 16:16:00', null, null, '1');
    35. INSERT INTO `smbms_bill` VALUES ('12', 'BILL2016_012', '芝华士', '饮料-洋酒', '瓶', '20.00', '6000.00', '1', '1', '2016-09-09 17:00:00', null, null, '1');
    36. INSERT INTO `smbms_bill` VALUES ('13', 'BILL2016_013', '长城红葡萄酒', '饮料-红酒', '瓶', '60.00', '800.00', '2', '1', '2016-11-14 15:23:00', null, null, '1');
    37. INSERT INTO `smbms_bill` VALUES ('14', 'BILL2016_014', '泰国香米', '食品-大米', '斤', '400.00', '5000.00', '2', '1', '2016-10-09 15:20:00', null, null, '3');
    38. INSERT INTO `smbms_bill` VALUES ('15', 'BILL2016_015', '东北大米', '食品-大米', '斤', '600.00', '4000.00', '2', '1', '2016-11-14 14:00:00', null, null, '3');
    39. INSERT INTO `smbms_bill` VALUES ('16', 'BILL2016_016', '可口可乐', '饮料', '瓶', '2000.00', '6000.00', '2', '1', '2012-03-27 13:03:01', null, null, '2');
    40. INSERT INTO `smbms_bill` VALUES ('17', 'BILL2016_017', '脉动', '饮料', '瓶', '1500.00', '4500.00', '2', '1', '2016-05-10 12:00:00', null, null, '2');

     smbms_provider表:

    1. -- ----------------------------
    2. -- Table structure for smbms_provider
    3. -- ----------------------------
    4. DROP TABLE IF EXISTS `smbms_provider`;
    5. CREATE TABLE `smbms_provider` (
    6. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
    7. `proCode` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '供应商编码',
    8. `proName` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '供应商名称',
    9. `proDesc` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '供应商详细描述',
    10. `proContact` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '供应商联系人',
    11. `proPhone` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '联系电话',
    12. `proAddress` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '地址',
    13. `proFax` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '传真',
    14. `createdBy` bigint(20) DEFAULT NULL COMMENT '创建者(userId)',
    15. `creationDate` datetime DEFAULT NULL COMMENT '创建时间',
    16. `modifyDate` datetime DEFAULT NULL COMMENT '更新时间',
    17. `modifyBy` bigint(20) DEFAULT NULL COMMENT '更新者(userId)',
    18. PRIMARY KEY (`id`)
    19. ) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    20. -- ----------------------------
    21. -- Records of smbms_provider
    22. -- ----------------------------
    23. INSERT INTO `smbms_provider` VALUES ('1', 'BJ_GYS001', '北京三木堂商贸有限公司', '长期合作伙伴,主营产品:茅台、五粮液、郎酒、酒鬼酒、泸州老窖、赖茅酒、法国红酒等', '张国强', '13566669999', '北京市丰台区育芳园北路', '010-58858787', '1', '2013-03-21 16:52:07', '2019-04-12 16:44:03', '10');
    24. INSERT INTO `smbms_provider` VALUES ('2', 'HB_GYS001', '石家庄帅益食品贸易有限公司', '长期合作伙伴,主营产品:饮料、水饮料、植物蛋白饮料、休闲食品、果汁饮料、功能饮料等', '王军', '13309094212', '河北省石家庄新华区', '0311-67738876', '1', '2016-04-13 04:20:40', null, null);
    25. INSERT INTO `smbms_provider` VALUES ('3', 'GZ_GYS001', '深圳市泰香米业有限公司', '初次合作伙伴,主营产品:良记金轮米,龙轮香米等', '郑程瀚', '13402013312', '广东省深圳市福田区深南大道6006华丰大厦', '0755-67776212', '1', '2014-03-21 16:56:07', null, null);
    26. INSERT INTO `smbms_provider` VALUES ('4', 'GZ_GYS002', '深圳市喜来客商贸有限公司', '长期合作伙伴,主营产品:坚果炒货.果脯蜜饯.天然花茶.营养豆豆.特色美食.进口食品.海味零食.肉脯肉', '林妮', '18599897645', '广东省深圳市福龙工业区B2栋3楼西', '0755-67772341', '1', '2013-03-22 16:52:07', null, null);
    27. INSERT INTO `smbms_provider` VALUES ('5', 'JS_GYS001', '兴化佳美调味品厂', '长期合作伙伴,主营产品:天然香辛料、鸡精、复合调味料', '徐国洋', '13754444221', '江苏省兴化市林湖工业区', '0523-21299098', '1', '2015-11-22 16:52:07', null, null);
    28. INSERT INTO `smbms_provider` VALUES ('6', 'BJ_GYS002', '北京纳福尔食用油有限公司', '长期合作伙伴,主营产品:山茶油、大豆油、花生油、橄榄油等', '马莺', '13422235678', '北京市朝阳区珠江帝景1号楼', '010-588634233', '1', '2012-03-21 17:52:07', null, null);
    29. INSERT INTO `smbms_provider` VALUES ('7', 'BJ_GYS003', '北京国粮食用油有限公司', '初次合作伙伴,主营产品:花生油、大豆油、小磨油等', '王驰', '13344441135', '北京大兴青云店开发区', '010-588134111', '1', '2016-04-13 00:00:00', null, null);
    30. INSERT INTO `smbms_provider` VALUES ('8', 'ZJ_GYS001', '慈溪市广和绿色食品厂', '长期合作伙伴,主营产品:豆瓣酱、黄豆酱、甜面酱,辣椒,大蒜等农产品', '薛圣丹', '18099953223', '浙江省宁波市慈溪周巷小安村', '0574-34449090', '1', '2013-11-21 06:02:07', null, null);
    31. INSERT INTO `smbms_provider` VALUES ('9', 'GX_GYS001', '优百商贸有限公司', '长期合作伙伴,主营产品:日化产品', '李立国', '13323566543', '广西南宁市秀厢大道42-1号', '0771-98861134', '1', '2013-03-21 19:52:07', null, null);
    32. INSERT INTO `smbms_provider` VALUES ('10', 'JS_GYS002', '南京火头军信息技术有限公司', '长期合作伙伴,主营产品:不锈钢厨具等', '陈女士', '13098992113', '江苏省南京市浦口区浦口大道1号新城总部大厦A座903室', '025-86223345', '1', '2013-03-25 16:52:07', null, null);
    33. INSERT INTO `smbms_provider` VALUES ('11', 'GZ_GYS003', '广州市白云区美星五金制品厂', '长期合作伙伴,主营产品:海绵床垫、坐垫、靠垫、海绵枕头、头枕等', '梁天', '13562276775', '广州市白云区钟落潭镇福龙路20号', '020-85542231', '1', '2016-12-21 06:12:17', null, null);
    34. INSERT INTO `smbms_provider` VALUES ('12', 'BJ_GYS004', '北京隆盛日化科技', '长期合作伙伴,主营产品:日化环保清洗剂,家居洗涤专卖、洗涤用品网、墙体除霉剂、墙面霉菌清除剂等', '孙欣', '13689865678', '北京市大兴区旧宫', '010-35576786', '1', '2014-11-21 12:51:11', null, null);
    35. INSERT INTO `smbms_provider` VALUES ('13', 'SD_GYS001', '山东豪克华光联合发展有限公司', '长期合作伙伴,主营产品:洗衣皂、洗衣粉、洗衣液、洗洁精、消杀类、香皂等', '吴洪转', '13245468787', '山东济阳济北工业区仁和街21号', '0531-53362445', '1', '2015-01-28 10:52:07', null, null);

     smbms_role表:

    1. -- ----------------------------
    2. -- Table structure for smbms_role
    3. -- ----------------------------
    4. DROP TABLE IF EXISTS `smbms_role`;
    5. CREATE TABLE `smbms_role` (
    6. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
    7. `roleCode` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '角色编码',
    8. `roleName` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '角色名称',
    9. `createdBy` bigint(20) DEFAULT NULL COMMENT '创建者',
    10. `creationDate` datetime DEFAULT NULL COMMENT '创建时间',
    11. `modifyBy` bigint(20) DEFAULT NULL COMMENT '修改者',
    12. `modifyDate` datetime DEFAULT NULL COMMENT '修改时间',
    13. PRIMARY KEY (`id`)
    14. ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    15. -- ----------------------------
    16. -- Records of smbms_role
    17. -- ----------------------------
    18. INSERT INTO `smbms_role` VALUES ('1', 'SMBMS_ADMIN', '系统管理员', '1', '2016-04-13 00:00:00', null, null);
    19. INSERT INTO `smbms_role` VALUES ('2', 'SMBMS_MANAGER', '经理', '1', '2016-04-13 00:00:00', null, null);
    20. INSERT INTO `smbms_role` VALUES ('3', 'SMBMS_EMPLOYEE', '普通员工', '1', '2016-04-13 00:00:00', null, null);

     smbms_user表:

    1. -- ----------------------------
    2. -- Table structure for smbms_user
    3. -- ----------------------------
    4. DROP TABLE IF EXISTS `smbms_user`;
    5. CREATE TABLE `smbms_user` (
    6. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
    7. `userCode` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '用户编码',
    8. `userName` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '用户名称',
    9. `userPassword` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '用户密码',
    10. `gender` int(10) DEFAULT NULL COMMENT '性别(1:女、 2:男)',
    11. `birthday` date DEFAULT NULL COMMENT '出生日期',
    12. `phone` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '手机',
    13. `address` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '地址',
    14. `userRole` int(10) DEFAULT NULL COMMENT '用户角色(取自角色表-角色id)',
    15. `createdBy` bigint(20) DEFAULT NULL COMMENT '创建者(userId)',
    16. `creationDate` datetime DEFAULT NULL COMMENT '创建时间',
    17. `modifyBy` bigint(20) DEFAULT NULL COMMENT '更新者(userId)',
    18. `modifyDate` datetime DEFAULT NULL COMMENT '更新时间',
    19. PRIMARY KEY (`id`)
    20. ) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    21. -- ----------------------------
    22. -- Records of smbms_user
    23. -- ----------------------------
    24. INSERT INTO `smbms_user` VALUES ('1', 'wen', '系统管理员', '123', '1', '1997-01-01', '15200981234', '湖南省衡阳市蒸湘区南华大学', '1', '1', '2019-04-07 10:15:55', null, null);
    25. INSERT INTO `smbms_user` VALUES ('5', 'hanlubiao', '韩路彪', '0000000', '2', '1984-06-05', '18567542321', '北京市朝阳区北辰中心12号', '2', '1', '2014-12-31 19:52:09', null, null);
    26. INSERT INTO `smbms_user` VALUES ('6', 'zhanghua', '张华', '0000000', '1', '1983-06-15', '13544561111', '北京市海淀区学院路61号', '3', '1', '2013-02-11 10:51:17', null, null);
    27. INSERT INTO `smbms_user` VALUES ('7', 'wangyang', '王洋', '0000000', '2', '1982-12-31', '13444561124', '北京市海淀区西二旗辉煌国际16层', '3', '1', '2014-06-11 19:09:07', null, null);
    28. INSERT INTO `smbms_user` VALUES ('8', 'zhaoyan', '赵燕', '0000000', '1', '1986-03-07', '18098764545', '北京市海淀区回龙观小区10号楼', '3', '1', '2016-04-21 13:54:07', null, null);
    29. INSERT INTO `smbms_user` VALUES ('10', 'sunlei', '孙磊', '0000000', '2', '1981-01-04', '13387676765', '北京市朝阳区管庄新月小区12楼', '3', '1', '2015-05-06 10:52:07', null, null);
    30. INSERT INTO `smbms_user` VALUES ('11', 'sunxing', '孙兴', '0000000', '2', '1978-03-12', '13367890900', '北京市朝阳区建国门南大街10号', '3', '1', '2016-11-09 16:51:17', null, null);
    31. INSERT INTO `smbms_user` VALUES ('12', 'zhangchen', '张晨', '0000000', '1', '1986-03-28', '18098765434', '朝阳区管庄路口北柏林爱乐三期13号楼', '3', '1', '2016-08-09 05:52:37', '1', '2016-04-14 14:15:36');
    32. INSERT INTO `smbms_user` VALUES ('13', 'dengchao', '邓超', '0000000', '2', '1981-11-04', '13689674534', '北京市海淀区北航家属院10号楼', '3', '1', '2016-07-11 08:02:47', null, null);
    33. INSERT INTO `smbms_user` VALUES ('14', 'yangguo', '杨过', '0000000', '2', '1980-01-01', '13388886623', '北京市朝阳区北苑家园茉莉园20号楼', '3', '1', '2015-02-01 03:52:07', null, null);
    34. INSERT INTO `smbms_user` VALUES ('15', 'test', 'test', '111', '1', '2019-04-16', '123456789', '南华大学', '1', '1', '2019-04-16 19:52:37', null, null);

    我们成功的建立了表之后,我们下来思考项目如何搭建:

    考虑使用不使用Maven?使用Maven我们要去找依赖,不使用Maven要去导jar包。

    项目搭建:

    1.搭建一个maven web 项目

    2.配置tomcat 

    3.测试项目是否能够跑起来

    4.导入项目中会遇到的jar包(在pom.xml里面进行导包)

    1. <dependency>
    2. <groupId>javax.servletgroupId>
    3. <artifactId>javax.servlet-apiartifactId>
    4. <version>4.0.1version>
    5. dependency>
    6. <dependency>
    7. <groupId>javax.servlet.jspgroupId>
    8. <artifactId>javax.servlet.jsp-apiartifactId>
    9. <version>2.3.3version>
    10. dependency>
    11. <dependency>
    12. <groupId>mysqlgroupId>
    13. <artifactId>mysql-connector-javaartifactId>
    14. <version>8.0.27version>
    15. dependency>
    16. <dependency>
    17. <groupId>javax.servlet.jsp.jstlgroupId>
    18. <artifactId>jstlartifactId>
    19. <version>1.2version>
    20. dependency>
    21. <dependency>
    22. <groupId>taglibsgroupId>
    23. <artifactId>standardartifactId>
    24. <version>1.1.2version>
    25. dependency>

    5.创建项目包结构:

     里面的实体类为pojo包,dao层为操作数据库的,service为一些业务的,过滤器filter,工具类为util。

    我们进行连接数据库:

    我们之后先进行创建实体类:

    User类:

    1. package com.rgf.pojo;
    2. import java.util.Date;
    3. public class User {
    4. private Integer id; //id
    5. private String userCode; //用户编码
    6. private String userName; //用户名称
    7. private String userPassword; //用户密码
    8. private Integer gender;//性别
    9. private Date birthday; //出生日期
    10. private String phone; //电话
    11. private String address; //地址
    12. private Integer userRole; //用户角色
    13. private Integer createdBy; //创建者
    14. private Date creationDate; //创建时间
    15. private Integer modifyBy; //更新者
    16. private Date modifyDate; //更新时间
    17. private Integer age; //年龄
    18. private String userRoleName; //用户角色名称
    19. public Integer getAge(){
    20. Date date=new Date();
    21. Integer age=date.getYear()-birthday.getYear();
    22. return age;
    23. }
    24. public String getUserRoleName() {
    25. return userRoleName;
    26. }
    27. public void setUserRoleName(String userRoleName) {
    28. this.userRoleName = userRoleName;
    29. }
    30. public Integer getId() {
    31. return id;
    32. }
    33. public void setId(Integer id) {
    34. this.id = id;
    35. }
    36. public String getUserCode() {
    37. return userCode;
    38. }
    39. public void setUserCode(String userCode) {
    40. this.userCode = userCode;
    41. }
    42. public String getUserName() {
    43. return userName;
    44. }
    45. public void setUserName(String userName) {
    46. this.userName = userName;
    47. }
    48. public String getUserPassword() {
    49. return userPassword;
    50. }
    51. public void setUserPassword(String userPassword) {
    52. this.userPassword = userPassword;
    53. }
    54. public Integer getGender() {
    55. return gender;
    56. }
    57. public void setGender(Integer gender) {
    58. this.gender = gender;
    59. }
    60. public Date getBirthday() {
    61. return birthday;
    62. }
    63. public void setBirthday(Date birthday) {
    64. this.birthday = birthday;
    65. }
    66. public String getPhone() {
    67. return phone;
    68. }
    69. public void setPhone(String phone) {
    70. this.phone = phone;
    71. }
    72. public String getAddress() {
    73. return address;
    74. }
    75. public void setAddress(String address) {
    76. this.address = address;
    77. }
    78. public Integer getUserRole() {
    79. return userRole;
    80. }
    81. public void setUserRole(Integer userRole) {
    82. this.userRole = userRole;
    83. }
    84. public Integer getCreatedBy() {
    85. return createdBy;
    86. }
    87. public void setCreatedBy(Integer createdBy) {
    88. this.createdBy = createdBy;
    89. }
    90. public Date getCreationDate() {
    91. return creationDate;
    92. }
    93. public void setCreationDate(Date creationDate) {
    94. this.creationDate = creationDate;
    95. }
    96. public Integer getModifyBy() {
    97. return modifyBy;
    98. }
    99. public void setModifyBy(Integer modifyBy) {
    100. this.modifyBy = modifyBy;
    101. }
    102. public Date getModifyDate() {
    103. return modifyDate;
    104. }
    105. public void setModifyDate(Date modifyDate) {
    106. this.modifyDate = modifyDate;
    107. }
    108. }

    Role类:

    1. package com.rgf.pojo;
    2. public class Role {
    3. private Integer id; //id
    4. private String roleCode; //角色编码
    5. private String roleName; //角色名称
    6. private Integer createdBy; //创建者
    7. private java.sql.Timestamp creationDate; //创建时间
    8. private Integer modifyBy; //更新者
    9. private java.sql.Timestamp modifyDate; //更新时间
    10. //创建这些变量的get和set方法。
    11. public Integer getId() {
    12. return id;
    13. }
    14. public void setId(Integer id) {
    15. this.id = id;
    16. }
    17. public String getRoleCode() {
    18. return roleCode;
    19. }
    20. public void setRoleCode(String roleCode) {
    21. this.roleCode = roleCode;
    22. }
    23. public String getRoleName() {
    24. return roleName;
    25. }
    26. public void setRoleName(String roleName) {
    27. this.roleName = roleName;
    28. }
    29. public Integer getCreatedBy() {
    30. return createdBy;
    31. }
    32. public void setCreatedBy(Integer createdBy) {
    33. this.createdBy = createdBy;
    34. }
    35. public java.sql.Timestamp getCreationDate() {
    36. return creationDate;
    37. }
    38. public void setCreationDate(java.sql.Timestamp creationDate) {
    39. this.creationDate = creationDate;
    40. }
    41. public Integer getModifyBy() {
    42. return modifyBy;
    43. }
    44. public void setModifyBy(Integer modifyBy) {
    45. this.modifyBy = modifyBy;
    46. }
    47. public java.sql.Timestamp getModifyDate() {
    48. return modifyDate;
    49. }
    50. public void setModifyDate(java.sql.Timestamp modifyDate) {
    51. this.modifyDate = modifyDate;
    52. }
    53. }

    Productor类:

    1. package com.rgf.pojo;
    2. import java.util.Date;
    3. public class Pro {
    4. private Integer id; //id
    5. private String proCode; //供应商编码
    6. private String proName; //供应商名称
    7. private String proDesc; //供应商描述
    8. private String proContact; //供应商联系人
    9. private String proPhone; //供应商电话
    10. private String proAddress; //供应商地址
    11. private String proFax; //供应商传真
    12. private Integer createdBy; //创建者
    13. private Date creationDate; //创建时间
    14. private Integer modifyBy; //更新者
    15. private Date modifyDate;//更新时间
    16. public Integer getId() {
    17. return id;
    18. }
    19. public void setId(Integer id) {
    20. this.id = id;
    21. }
    22. public String getProCode() {
    23. return proCode;
    24. }
    25. public void setProCode(String proCode) {
    26. this.proCode = proCode;
    27. }
    28. public String getProName() {
    29. return proName;
    30. }
    31. public void setProName(String proName) {
    32. this.proName = proName;
    33. }
    34. public String getProDesc() {
    35. return proDesc;
    36. }
    37. public void setProDesc(String proDesc) {
    38. this.proDesc = proDesc;
    39. }
    40. public String getProContact() {
    41. return proContact;
    42. }
    43. public void setProContact(String proContact) {
    44. this.proContact = proContact;
    45. }
    46. public String getProPhone() {
    47. return proPhone;
    48. }
    49. public void setProPhone(String proPhone) {
    50. this.proPhone = proPhone;
    51. }
    52. public String getProAddress() {
    53. return proAddress;
    54. }
    55. public void setProAddress(String proAddress) {
    56. this.proAddress = proAddress;
    57. }
    58. public String getProFax() {
    59. return proFax;
    60. }
    61. public void setProFax(String proFax) {
    62. this.proFax = proFax;
    63. }
    64. public Integer getCreatedBy() {
    65. return createdBy;
    66. }
    67. public void setCreatedBy(Integer createdBy) {
    68. this.createdBy = createdBy;
    69. }
    70. public Date getCreationDate() {
    71. return creationDate;
    72. }
    73. public void setCreationDate(Date creationDate) {
    74. this.creationDate = creationDate;
    75. }
    76. public Integer getModifyBy() {
    77. return modifyBy;
    78. }
    79. public void setModifyBy(Integer modifyBy) {
    80. this.modifyBy = modifyBy;
    81. }
    82. public Date getModifyDate() {
    83. return modifyDate;
    84. }
    85. public void setModifyDate(Date modifyDate) {
    86. this.modifyDate = modifyDate;
    87. }
    88. }

    Bill类:
     

    1. package com.rgf.pojo;
    2. import java.math.BigDecimal;
    3. import java.util.Date;
    4. public class Bill {
    5. private Integer id; //id
    6. private String billCode; //账单编码
    7. private String productName; //商品名称
    8. private String productDesc; //商品描述
    9. private String productUnit; //商品单位
    10. private BigDecimal productCount; //商品数量
    11. private BigDecimal totalPrice; //总金额
    12. private Integer isPayment; //是否支付
    13. private Integer providerId; //供应商ID
    14. private Integer createdBy; //创建者
    15. private Date creationDate; //创建时间
    16. private Integer modifyBy; //更新者
    17. private Date modifyDate;//更新时间
    18. private String providerName;//供应商名称
    19. public String getProviderName() {
    20. return providerName;
    21. }
    22. public void setProviderName(String providerName) {
    23. this.providerName = providerName;
    24. }
    25. public Integer getId() {
    26. return id;
    27. }
    28. public void setId(Integer id) {
    29. this.id = id;
    30. }
    31. public String getBillCode() {
    32. return billCode;
    33. }
    34. public void setBillCode(String billCode) {
    35. this.billCode = billCode;
    36. }
    37. public String getProductName() {
    38. return productName;
    39. }
    40. public void setProductName(String productName) {
    41. this.productName = productName;
    42. }
    43. public String getProductDesc() {
    44. return productDesc;
    45. }
    46. public void setProductDesc(String productDesc) {
    47. this.productDesc = productDesc;
    48. }
    49. public String getProductUnit() {
    50. return productUnit;
    51. }
    52. public void setProductUnit(String productUnit) {
    53. this.productUnit = productUnit;
    54. }
    55. public BigDecimal getProductCount() {
    56. return productCount;
    57. }
    58. public void setProductCount(BigDecimal productCount) {
    59. this.productCount = productCount;
    60. }
    61. public BigDecimal getTotalPrice() {
    62. return totalPrice;
    63. }
    64. public void setTotalPrice(BigDecimal totalPrice) {
    65. this.totalPrice = totalPrice;
    66. }
    67. public Integer getIsPayment() {
    68. return isPayment;
    69. }
    70. public void setIsPayment(Integer isPayment) {
    71. this.isPayment = isPayment;
    72. }
    73. public Integer getProviderId() {
    74. return providerId;
    75. }
    76. public void setProviderId(Integer providerId) {
    77. this.providerId = providerId;
    78. }
    79. public Integer getCreatedBy() {
    80. return createdBy;
    81. }
    82. public void setCreatedBy(Integer createdBy) {
    83. this.createdBy = createdBy;
    84. }
    85. public Date getCreationDate() {
    86. return creationDate;
    87. }
    88. public void setCreationDate(Date creationDate) {
    89. this.creationDate = creationDate;
    90. }
    91. public Integer getModifyBy() {
    92. return modifyBy;
    93. }
    94. public void setModifyBy(Integer modifyBy) {
    95. this.modifyBy = modifyBy;
    96. }
    97. public Date getModifyDate() {
    98. return modifyDate;
    99. }
    100. public void setModifyDate(Date modifyDate) {
    101. this.modifyDate = modifyDate;
    102. }
    103. }

    我们把数据库和实体类进行一一对应的过程和关系叫做ORM映射:数据库中的字段,表和类映射。

    7.编写基础公共类:
    (1)数据库配置文件

    配置如下文件:

    1. driver=com.mysql.jdbc.Driver
    2. url=jdbc:mysql://localhost:3306?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
    3. username=root
    4. password=123456

     (2)编写数据库的公共类:

    1. package com.rgf.dao;
    2. import java.io.IOException;
    3. import java.io.InputStream;
    4. import java.sql.*;
    5. import java.util.Properties;
    6. //操作数据库的公共类
    7. public class BaseDao {
    8. private static String driver;
    9. private static String url;
    10. private static String username;
    11. private static String password;
    12. //静态代码块,类加载的时候就初始化了
    13. static {
    14. Properties properties = new Properties();
    15. //通过类加载器读取对应的资源
    16. InputStream is = BaseDao.class.getClassLoader().getResourceAsStream("db.properties");
    17. // properties读取文件内容,加载流
    18. try {
    19. properties.load(is);
    20. } catch (IOException e) {
    21. e.printStackTrace();
    22. }
    23. //获取资源
    24. driver = properties.getProperty("driver");
    25. url = properties.getProperty("url");
    26. username = properties.getProperty("username");
    27. password = properties.getProperty("password");
    28. }
    29. //获取数据库的连接
    30. //返回对象是一个Connection,如何进行返回为通过getConnection
    31. public static Connection getConnection(){
    32. Connection connection = null;
    33. try {
    34. //得到数据库的连接对象
    35. Class.forName(driver);
    36. //获取connection对象,由于在try-catch里面的作用域,需要拿到外面去。
    37. connection = DriverManager.getConnection(url, username, password);
    38. } catch (Exception e) {
    39. e.printStackTrace();
    40. }
    41. return connection;
    42. }
    43. //编写查询公共方法
    44. public static ResultSet execute(Connection connection,String sql,PreparedStatement preparedStatement,Object[] params,ResultSet resultSet) throws SQLException {
    45. //预编译的sql在后面直接执行即可
    46. preparedStatement = connection.prepareStatement(sql);
    47. //预编译一个SQL
    48. //我们不清楚SQL有多少个参数,我们可以通过一个变量params来代替他,代替之后会进行遍历执行
    49. for (int i = 0; i < params.length; i++) {
    50. //setObject 占位符从1开始 而数字从0开始
    51. preparedStatement.setObject(i+1,params[i]);
    52. //执行sql
    53. }
    54. resultSet = preparedStatement.executeQuery();
    55. return resultSet;
    56. }
    57. //编写增删改查公共方法
    58. public static int execute(Connection conn,String sql,PreparedStatement preparedStatement,Object[] params) throws SQLException {
    59. //预编译的sql在后面直接执行即可
    60. int updateRow;
    61. preparedStatement = conn.prepareStatement(sql);
    62. //预编译一个SQL
    63. //我们不清楚SQL有多少个参数,我们可以通过一个变量params来代替他,代替之后会进行遍历执行
    64. for (int i = 0; i < params.length; i++) {
    65. //setObject 占位符从1开始 而数字从0开始
    66. preparedStatement.setObject(i+1,params[i]);
    67. //执行sql
    68. }
    69. updateRow = preparedStatement.executeUpdate();
    70. return updateRow;
    71. }
    72. //释放资源
    73. public static boolean closeResource(Connection conn,PreparedStatement preparedStatement,ResultSet resultSet){
    74. boolean flag = true;
    75. if(conn!=null){
    76. try {
    77. conn.close();
    78. //如果在关闭完之后还存在的话我们通过垃圾回收器进行回收。
    79. //GC垃圾回收,如果对象为null,垃圾回收站就会将垃圾进行清理掉。
    80. conn = null;
    81. } catch (SQLException e) {
    82. e.printStackTrace();
    83. //如果在关闭过程中出现了错误
    84. flag = false;
    85. }
    86. }
    87. if(preparedStatement!=null){
    88. try {
    89. preparedStatement.close();
    90. //如果在关闭完之后还存在的话我们通过垃圾回收器进行回收。
    91. //GC垃圾回收,如果对象为null,垃圾回收站就会将垃圾进行清理掉。
    92. preparedStatement = null;
    93. } catch (SQLException e) {
    94. e.printStackTrace();
    95. //如果在关闭过程中出现了错误
    96. flag = false;
    97. }
    98. }
    99. if(resultSet!=null){
    100. try {
    101. resultSet.close();
    102. //如果在关闭完之后还存在的话我们通过垃圾回收器进行回收。
    103. //GC垃圾回收,如果对象为null,垃圾回收站就会将垃圾进行清理掉。
    104. resultSet = null;
    105. } catch (SQLException e) {
    106. e.printStackTrace();
    107. //如果在关闭过程中出现了错误
    108. flag = false;
    109. }
    110. }
    111. return flag;
    112. }
    113. }

    (3)编写字符编码过滤器

    1. package com.rgf.filter;
    2. import javax.servlet.*;
    3. import java.io.IOException;
    4. import javax.servlet.ServletException;
    5. public class CharacterEncodingFilter implements Filter {
    6. @Override
    7. public void init(FilterConfig filterConfig) throws ServletException {
    8. }
    9. @Override
    10. public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
    11. request.setCharacterEncoding("utf-8");
    12. response.setCharacterEncoding("utf-8");
    13. //过滤器继续往下放行
    14. chain.doFilter(request,response);
    15. }
    16. @Override
    17. public void destroy() {
    18. }
    19. }

    之后我们在web.xml里面进行注册:

    1. "1.0" encoding="UTF-8"?>
    2. "http://xmlns.jcp.org/xml/ns/javaee"
    3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    4. xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
    5. http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
    6. version="3.1"
    7. metadata-complete="true">
    8. CharacterEncodingFilter
    9. com.rgf.filter.CharacterEncodingFilter
    10. CharacterEncodingFilter
    11. /*

    8.导入静态资源

  • 相关阅读:
    Linux 配置Tomcat
    海思3559万能平台搭建:RTSP实时播放的优化
    linux下profile、bashrc区别和PATH、LIBRARY_PATH、LD_LIBRARY_PATH区别
    设备二维码金属铭牌铝牌定制
    软件测试所有测试方法
    mysql忘记密码怎么办(附免密登录和修改密码)
    msf后渗透之文件交互指令、上传下载文件、屏幕截图、键盘记录、创建账户、音频录像和提权(上)
    数据挖掘与知识发现 导论
    【特纳斯电子】智能台灯-实物设计
    制药企业计算机化系统验证(CSV)的重要性
  • 原文地址:https://blog.csdn.net/weixin_59448049/article/details/126933712