category==null我觉得很多余?
来源:8-3 后台获取商品详情功能开发及PropertiesUtil配置工具,DateTimeUtil时间处理工具开发
慕容0166988
2018-03-10
//这里是根据上面的对象获取,而categoryid是每个插入进来的数据都有的,怎么会有null这种情况呢,而这个条件就不成立
Category category = categoryMapper.selectByPrimaryKey(product.getCategoryId());
if(category == null){
//这里当然也就不需要设置什么0?
productDetailVo.setParentCategoryId(0);//默认根节点
}else{
productDetailVo.setParentCategoryId(category.getParentId());
}
2回答
-
你好,同学,是这样的。
category==null
主要是提高一个健壮性,因为在实际的外网网站中,会有不怀好意的一些攻击,例如试探性的注入等,这里如果传入一个DB中不存在的分类,那么就有可能是null,这样后台还会出现NPE的一个异常。
然后看了你的理解,非常正确,赞同学的思考~
022018-03-13 -
慕容0166988
提问者
2018-03-10
//根据id查找,有则代表是
Category category = categoryMapper.selectByPrimaryKey(product.getCategoryId());
//这个用户在选择的时候可能没有选择分类,直接相当于是默认,默认的话这里传入的就是别的数字例如-0就从数据库查找不出来
if(category == null){//这里就可能是等于null
//直接设置默认是父节点就好,
productDetailVo.setParentCategoryId(0);//默认根节点
}else{
productDetailVo.setParentCategoryId(category.getParentId());
}
请问各位老师理解的对吗
00
相似问题