HotCoffee进度管理

1. 完成HTML/CSS  大体的画面和layout做好,实现基本功能的显示

2. 连接上数据库,把静态HTML页面转为.jsp动态页面;

(1)设计类,设计数据库,导入少量试验数据

(2)连接上数据库,把静态HTML页面转为.jsp动态页面

(3)写servlet,跑通基本功能(关键的usecase)

a. login和logout功能     √6.1

b. 首页店铺商品信息表示出来   √6.2    √6.3做数据库

c. 点击某个店铺,出现那个店铺的商品信息  √6.4   

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

posted @ 2015-06-15 13:38  my01space  阅读(109)  评论(0编辑  收藏  举报