学了这么久了,感觉自己敲代码时最纠结的就是controller层和service层,主体的逻辑倒是很清晰明了,但是对于判断哪些值为null,什么时候该抛出异常,什么时候打印错误信息,这些东西感觉十分混乱啊,自己写的时候很不知所措,请问这些东西有固定的规范吗?该如何学习这些东西?
以非空判断为例,这种是不是很随意啊,我实在没摸索出规律来,明明逻辑相似的代码,有时就加有时就不加,比如下面这两段代码:
一、获取店铺列表
@Override
public ShopExecution getShopList(Shop shopCondition, int pageIndex, int pageSize) {
//将页码转换成行码
int rowIndex = PageCalculator.calculateRowIndex(pageIndex, pageSize);
//依据查询条件,调用dao层返回相关的店铺列表
List shopList = shopDao.queryShopList(shopCondition, rowIndex, pageSize);
//依据相同的查询条件,返回店铺总数
int count = shopDao.queryShopCount(shopCondition);
ShopExecution se = new ShopExecution();
if (shopList != null) {
se.setShopList(shopList);
se.setCount(count);
} else {
se.setState(ShopStateEnum.INNER_ERROR.getState());
}
return se;
}
二、获取商品列表
@Override
public ProductExecution getProductList(Product productCondition, int pageIndex, int pageSize) {
// 页码转换成数据库的行码,并调用dao层取回指定页码的商品列表
int rowIndex = PageCalculator.calculateRowIndex(pageIndex, pageSize);
List productList = productDao.queryProductList(productCondition, rowIndex, pageSize);
// 基于同样的查询条件返回该查询条件下的商品总数
int count = productDao.queryProductCount(productCondition);
ProductExecution pe = new ProductExecution();
pe.setProductList(productList);
pe.setCount(count);
return pe;
}
这种判断感觉controller层和service层都有,感觉整个代码都看着很混乱,请问老师有没有好的解决办法呢