博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
说好的不熬夜呢???!!!! -- 超市项目
阅读量:6891 次
发布时间:2019-06-27

本文共 4312 字,大约阅读时间需要 14 分钟。

本来觉得还差一点点,结果15个小时了还没有弄完,说好的不熬夜的呢???!!!

一个破超市的项目,废了我这么长时间,搞什么飞机啊?!!!

喝了6罐 ’乐虎‘ 了,这是我的常态吗?想做一个不熬夜的程序员,真的这么难吗?

每一个模块都是那么的墨迹,到处报错,我觉得吧,我不是前台弱,是前台和中间那块就是servlet比较弱,jQuery好一点了,el表达式ajax,json,好难过的。

java到数据库这边是我最熟练的,而且也比较好写,主要是分层开发嘛,从下往上写呗,sql现在也不是那么的难了。主要就是servlet,我的痛!!!

小豆腐年前就让我写的,本打算看完视频再写,可是年后回来,又搞了框架,一拖再拖,现在是该还旧账的时候了,没办法,自己欠下的。上周身体确实不适,感觉没有那么多精力,总是累,我觉得我保养的还行啊,就是睡眠少了点。

 

还差两个模块呢,sl会员商城还没写呢,娜女士都写的差不多了吧,好气人啊!!!

 

==========================系统功能============================登录 退出用户管理    修改密码    添加用户    修改用户    删除用户    查看用户供应商管理    添加供应商    修改供应商    删除供应商    查看供应商账单管理    添加账单    修改账单    删除账单    查看账单==========================数据库设计============================用户表:    主键ID    用户账号(用户编码)    用户密码    用户名    性别(1 男 2 女)    出生日期    用户电话    用户地址    用户类型(1 系统管理员 2 经理 3 普通员工)    创建时间    创建者(userId)    更新时间    更新者(userId)    供应商表:    主键ID    供应商编码    供应商名称    供应商描述    供应商联系人    联系电话    地址    传真    创建时间    创建者(userId)    更新时间    更新者(userId)    账单表:    主键ID    账单编码    商品名称    商品描述    商品单位    商品数量    总金额    供应商(providerID)    是否付款(1 未支付 2 已支付)    创建时间    创建者(userId)    更新时间    更新者(userId)        decimal(20,2)        12.668 12.67    12.248 12.24        BigDecimal 12.248 12.24 12.66    ==========================系统框架搭建============================(java开发环境/运行时环境)bildpath 要高于或者等于 Compliler(编译时环境)修改字符集MVC:jspservletjdbcmysql事务:3张表 1 insert 2 update 3 detele------------------------src-------------------------pojo:数据实体(完成与数据库表的映射)dao:数据访问接口(与数据库操作)service:业务逻辑层(处理业务逻辑,调用dao接口)--- 事务控制是跟业务相关,只有复杂的业务才有事务控制servlet:控制层 (control)------------------------webroot-------------------------jsp:数据展示(view)js images css (静态资源文件)======单例======:运行期间有且仅有一个实例关键点:1、一个类只有一个实例---最基本的---(只提供私有的构造器)2、它必须自行创建这个实例---(定义了静态的该类的私有对象)3、它必须自行向整个系统提供这个实例 -----(提供一个静态的公有的方法,返回创建或者获取本身的静态私有对象)lazy loading 延迟加载 以时间换空间懒汉模式:(线程不安全--1、同步 2、双重校验锁)比较懒,在类加载的时候,不创建实例,运行调用的时候创建。类加载快,在运行时获取对象速度慢 以空间换时间饿汉模式:(线程安全)类加载的时候,就完成了初始化。所以类加载慢,但是在运行时获取对象静态内部类(保证了lazy loading的特性)方法的重载体现了面向对象多态的思想=================JDBC=================1、service (try catch)connection.setAutoCommit(false);dao.add()...update()...delete()connection.commit();connection.rollback();close(connection、null、null);2、dao(throws Exception)executeUpdate()......close(null、prepareStatement、resultSet)3、BaseDao(操作数据库的基类)静态类获取连接(connection)throws Exception查询操作(sql、params、connection、prepareStatement、resultSet)更新操作(sql、params、connection、prepareStatement)关闭资源(connection、prepareStatement、resultSet)====页面结构csshtmljs===登录、注销、查询=======用户管理----增加用户======修改,查看,删除修改,查看====根据ID 获取ID 获取user信息(getUserInfoById)保存修改信息dao service=====修改密码=====1、验证旧密码是否正确(输入的旧密码和当前用户的密码)--ajax2、保存新密码(数据库)--form====供应商管理=====dao================================//1 增加供应商boolean add(Connection connection, Provider provider)throws Exception//2 修改供应商boolean modify(Connection connection, Provider provider)throws Exception;//3 删除供应商boolean deleteProviderById(Connection connection, String delId)throws Exception;delete from smbms_provider where id=?扩展:如果根据供应商类型进行批量删除的话boolean deleteProviderByProType(Connection connection, String proType)throws Exception;delete from smbms_provider where proType=?//封装的删除方法deleteProvider (Connection connection, Provider provider)sql语句要进行拼接StringBuffer sql= new StringBuffer();sql.append("delete from smbms_provider");if(!StringUtils.isNULLorEmpty(provider.getId())){    sql.append(" where id=?");}else if(!StringUtils.isNULLorEmpty(provider.getProType())){    sql.append(" where proType=?");}如果并存的情况if(!StringUtils.isNULLorEmpty(provider.getId())){    sql.append(" where id=?");}if(!StringUtils.isNULLorEmpty(provider.getProType())){    sql.append(" where proType=?");}。。。。。。。userService.deleteProvider(Provider provider);//根据ID删除provider.setId("2")//根据供应商类别删除provider.setProType("3")//4 获取供应商列表List
getProviderList(Connection connection,String proName)throws Exception;select * from smbms_provider where proName= like?List
getProviderList(Connection connection,Provider provider)throws Exception;select * from smbms_provider where proName= like? and...and...原则:凡是需要用户输入的查询都是模糊查询,凡是需要用户选择的查询都是精确查询(传到后台的是id)//5 根据ID获取供应商详细信息Provider getProviderById(Connection connection, String id)throws Exception;====订单管理======//增加订单boolean add(Connection connection, Bill bill) throws Exception;//修改订单
项目笔记

 

一定要搞完!!!!

转载于:https://www.cnblogs.com/xtdxs/p/6687274.html

你可能感兴趣的文章
Android事件分发机制
查看>>
Android listview局部刷新和模拟应用下载(zhu)
查看>>
fiddler Android下https抓包全攻略
查看>>
[工具] Snipaste
查看>>
iOS:crash崩溃日志分析
查看>>
Java程序员的日常—— IOUtils总结
查看>>
java List<Map> 排序问题
查看>>
[Angular2 Animation] Use Keyframes for Fine-Tuned Angular 2 Animations
查看>>
教你如何在word中像LaTex那样打出漂亮的数学公式
查看>>
java中类名,方法,变量,包名等大小写命名规范
查看>>
【转】在Ubuntu中安装HBase
查看>>
Nginx内置变量以及日志格式变量参数详解
查看>>
python基础-RE正则表达式
查看>>
系统管理员资源大全
查看>>
094实战 关于js SDK的程序,java SDK的程序
查看>>
Linux下查看Nginx安装目录、版本号信息?
查看>>
MVC ---- 标准查询运算符
查看>>
巧用“搜索”解决自学编程遇到的难题
查看>>
移动端布局解决方案+神器
查看>>
pom.xml详解
查看>>