1. 完成HTML/CSS 大致的画面和layout作好,实现基本功能的显示html
2. 链接上数据库,把静态HTML页面转为.jsp动态页面;java
(1)设计类,设计数据库,导入少许试验数据sql
(2)链接上数据库,把静态HTML页面转为.jsp动态页面数据库
(3)写servlet,跑通基本功能(关键的usecase)session
a. login和logout功能 √6.1架构
b. 首页店铺商品信息表示出来 √6.2 √6.3作数据库eclipse
c. 点击某个店铺,出现那个店铺的商品信息 √6.4 jsp
d1. 单击某个商品,出现下单页面 √6.5工具
d2.生成订单号,并将填写好的订单信息验证后放入数据库 √ 6.8/6.9网站
e. 查阅商品的delivery状态 √6.9
f. 修改delivery状态 √6.10/6.11/6.12
g. 注册功能 √6.13
(4)完善
1.主要在dao里写英语注释,修正缩进√
2.login时密码变成隐形√
3.店铺用户login直接进入自家店铺的管理页面√
4.修改首页成动态图片×
5.店铺把状态更新后,用户的配送状态浏览页面有bug!四个大分类顺序无误,但小分类如成功完了内部未正确排序,疑似reverse方法未成功。 ★
6.在适当的位置加上login的入口√
7.写帮助/网站使用说明的页面×
8.店铺地址信息营业时间咖啡说明等等,写入buy.jsp中details的红框下面√
9.加入公园地图API×
10.把jsp中script用别的文档写,而后引入。√
11.修改文档并统一,文档&网站统一化 √
12.修改店铺的状态更新页面图片,四个图片上加上箭头指引 ★
13.修改补充数据库
14.1增长error page,例外处理(Servlet中和dao相关处,仿Yasui)√
14.2 validation,security √
15.logout时候删除session √
16.总结Best Practice和经验收获 ★
17.加filter ×
18.添加商家电话信息,添加customer电话信息 √
19.本身作动态页面,或者删除动态页面那个插件 √
20.二维码凭证 √
21.正确性验证,用户名邮箱是否已注册过,未在registerServlet中进行验证 √
22.login按钮要修改 √
备注:作数据,能够插入更多的item信息到数据库,而后作不一样咖啡厅的“中圆角”咖啡图片,并最好能反映出是不一样店铺的咖啡。准备好发表的中文逻辑和日语google翻译版。了解一下forward和热direction的差异&MVC架构。 登录那部分也须要修改dao到servlet中。
出bug状况:
1.数据库插入新数据后忘记commit
2.JSP中HTML中传password到Servlet,可是获取不到password。缘由是HTML那段代码,空格是全角而不是半角的。
Best Practice:
1.注释可用JavaDoc格式,在类和method前一行输入 /** 而后回车。
2.按照sequence图来一个一个usecase实现,思路比较顺。
3. //MVC架构中,Dao在servlet中使用,Jsp中不用dao(也最好不要script),只是表现层
//此处把该shopId相对应的属于该店铺的order放入orderList,而后在update页面表现出来
//此段代码放在StatusCheckServlet中
OrderDao dao = new OrderDao();
ArrayList<Order> orderList = null;
ArrayList<Order> newOrderList = null;
try {
dao.getConnection();
orderList = dao.selectAllOrderByUser(user.getUserName());
newOrderList = dao.getNewOrderList(orderList);
dao.closeConnection();
} catch (Exception e) {
e.printStackTrace();
}
session.setAttribute("orderList", newOrderList);
4.
eclipse中文件那一行工具栏 ソース インデントの订正 ,能够ctrl+A全选后,点击修改缩进,使得代码更易读懂
5. dao的地方和数据库交互因此须要事务处理,好比rollback,好比commit
try{ System.out.print("new userId is :" + user.getUserId()); con.setAutoCommit(false);
String sql4 = "INSERT INTO HotCoffee_user VALUES(?,?,?,?,?,?)"; pstmt4 = con.prepareStatement(sql4); pstmt4.setString(1,user.getUserId()); pstmt4.setString(2,user.getUserName()); pstmt4.setString(3,user.getPassword()); pstmt4.setString(4,user.getMail()); pstmt4.setString(5,user.getRole()); pstmt4.setString(6,user.getShopId()); insertUserResult = pstmt4.executeUpdate();
con.commit();
pstmt4.close();
}catch(SQLException e){
con.rollback();
throw new SQLException(e);
}finally{ if(pstmt4!=null) pstmt4.close(); } return insertUserResult;
6.改善点
作ORM映射,在dao中sql语句获取数据库对象数据时。
作响应式网站,responsive,不管什么尺寸均可以看。
工做方法:
1. 随时汇报随时相谈很重要,人事人际也许比效率更重要。不要再带着效率至上的观点了。相谈也是工做的一部分。和上司和周围人多聊聊也是有帮助的。
2. 本身有错误就真诚地道歉,须要对方什么指导和帮助也提出来。
3. 个人观点效率至上,有时候便会自做主张作些决定。可是在日本,不要本身作决定,有问题有麻烦就向相关者反馈。
PS:
jsp=html+java代码jsp是JavaWEB展示给访问者的页面jsp本质上是servlet