SSH项目总结

之前写了一些程序,写来写去发现自己的代码水平并没有很大的提高,总是在写同一水平的代码。渐渐地,我发现自己许多的不足,比如太注重与细节,总是希望搞清楚每一个的缘由,这样很累,而且意义不大。再比如,命名不规范,总是在写一些重复性的代码,而且代码的耦合度比较高,需求一旦发生变化,代码修改起来非常的繁琐。

于是,我试图做出一些改变

  1. 在一定程度上忽略细节
  2. 每个代码尽量写JUnit单元测试(这一点很早就开始做了)
  3. 减少代码的耦合度

在Dao层:

  1. 建立BaseDao<T>接口,完成基本的增加、删除、更新、查找(一个或者多个)
  2. 建立抽象类BaseDaoImpl<T>实现BaseDao接口,实现所有类,专门用于继承
  3. 建立各个基本的Dao的实现(如UserDaoImp等)

在service层:

  1. 建立BaseService<T>接口,完成基本的单体业务的增加、删除、更新、查找等
  2. 建立抽象类BaseServiceImpl<T>实现BaseDao接口,实现所有类,专门用于继承
  3. 针对业务逻辑建立Service的实现,并不是一个Dao对应一个service,往往很多情况是一个service对应多个Dao

在Action层:

  1. 将struts2与servlet解耦,采用其他方式获取Session、Request
  2. 注意ModelDriven和Prepare方法的使用,能够将action与model层的耦合度降低

Hibernate出现实体无法映射的问题

  1. 实体包是否被扫描
  2. 注解Entity对应实体在hibernate中的逻辑mingcheng
  3. 注解Table对应实体对应数据库中表的名称

其他

  1. 最好能将自己所犯错误及解决方案记录下来,以免以后再次出现
  2. 重复性很多的代码封装成类

知识不足之处

  1. 泛型反射那边还是有点迷糊
  2. Struts2的标签什么的
  3. hibernate一对多,多对一...映射关系

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值