package com.test.action;
import java.util.List;
import com.test.dao.ILoginDao;
public class LoginAction {
private ILoginDao loginDao;
private String username;
private String password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public ILoginDao getLoginDao() {
return loginDao;
}
public void setLoginDao(ILoginDao loginDao) {
this.loginDao = loginDao;
}
public String toString() {
return "LoginAction [loginDao=" + loginDao + ", password="
+ password + ", username=" + username + "]";
}
public String execute(){
String userName = getUsername();
String password = getPassword();
System.out.println("userName:"+userName+"\n"+"password:"+password);
List list = loginDao.getUser(userName);
----------- System.out.println(list.get(0)); --------------这一句
if(list.size()>0){
return "success";
}else{
return "error";
}
}
}
横线部分在myeclipse 里输入的结果是 779b3e ,而且每次执行结果都不一样,再执行就变成14a0fe1,是从数据库里取的值,请问这是怎么回事, 是编码问题,还是数据库字符的问题,怎么解决,高手能说下原因吗! 怎么解决。
------解决思路----------------------
list.get(i)得到的是一个对象吧!按照你这么写打印出来的应该是对象在内存中的地址,不是乱码~~~
------解决思路----------------------
list.get(0)获取的是一个实体对象...这整个对象是无法直接print出来的。你这样写list.get(0).getUserName;就行了撒。