很多疑问暂时自己无法及时解决在此记录,理解或找到原因后会回来更新!
疑问一、当用户登录后,我从session中取值,极少数值无法获取?
某些情况下可能是sql或者hql的查询语句问题导致,实际只查询了部分字段,致使返回来的数据部分未查询字段取了默认值,这样我们在页面和controller层就会出现“取不到值”的情况。
疑问二、printMessageWin在跳转时会自动添加
映射上一级目录(即截图中的member目录),固在调用此方法的时候,映射地址应该为单级目录形式?
方法的实现:
protected void printMessageWin(String operationName, String url, Boolean flag,HttpServletResponse response) {
PrintWriter writer = null;
response.setContentType("text/html;charset=UTF-8");
try {
operationName+=(flag?"成功":"失败");
writer = response.getWriter();
writer.write("<script language=javascript>alert('"+operationName+"');</script>");
if(url == ""){
//修改密码弹出框调用homepage首页prompt()
writer.write("<script language=javascript>window.parent.prompt();</script>");
}else{
writer.write("<script language=javascript>this.location.href='"+url+"';</script>");
}
writer.close();
} catch (IOException e) {
LOG.errorf(e,"");
}
}
方法的调用:
疑问三、已经在service层的update方法中使用了setAttribute方法,在controller层调用时如何对应才可以无需再重复执行setAttribute方法?
目前觉得更新的详细应放在controller层这样会更灵活方便,即需要更新某一部分就在controller里面传入,而并非每次都需全部字段更新一次。