$(document).ready(function() {
$.ajax({
url: "......",
type: "GET",
dataType: "json",
success: function(json) {
if (......) {
$("#username").val(json.data.username);
......
} else {
......
}
},
error:function(xhr) {
......
}
});
});
这里的目的是打开特定页面后,自动将用户登录后 session 中保存的 username 取出并将值赋给标签。
但是在测试的时候,打开该页面控制台就出现报错。报错意思大概就是你需要的这个 “username” 属性的值本来就是空的,所以无法获取到它的值。
原因有很多:
但我的问题不在上述原因中。
我想既然显示 username 中的值为 null 就说明 session 大概率没有保存用户登录后的信息,既然没有信息那么大概率与控制层有关。而控制层无非包含接口及实现类,且最终将问题锁定在实现类。这里也算是一个小坑:
当编写完接口中的方法,实现类中进行实现的时候,个人往往喜欢通过快捷方式重写实现接口中的方法,而这时加载出的方法默认会返回 null 。在编写方法体完成后没有注意 return 的修改,导致没有返回 User 对象。
这次出错的原因与上次一致,此后还是应该多注意这类错误。
https://blog.csdn.net/m0_56426418/article/details/129895408
@Override
public User ......(......) {
// TODO Auto-generated method stub
User user = new User();
......
// return null;
return user;
}
如果本篇内容对你有帮助,可否点支持一下呢!