关于jsp和servlet的问题,紧急求答案,非常感谢!!!

来源:百度知道 编辑:UC知道 时间:2024/06/23 02:22:54
request.setCharacterEncoding("gb2312");
response.setContentType("text/html;charset = gb2312");
//获取登录信息
int id = Integer.parseInt(request.getParameter("userId"));
String username = request.getParameter("userName");
String userpwd = request.getParameter("userPass");
String quanxian = request.getParameter("quanxian");
//封装获取信息
Userinfo user = new Userinfo();//这个类是封装信息的getset方法类
user.setU_id(id);
user.setU_name(username);
user.setU_password(userpwd);
user.setU_possie(quanxian);

//调用执行登录的方法
Collection col = new ArrayList();
col = LoginDao.loginDao(user);//这个调用工具类返回查询的集合
Iterator iter = col.iterator();
while(iter.hasNext()){
user = (Userinfo)iter.next();
}
//定义变量

request.getSession().setAttribute("userid", new Integer(user.getU_id()));
request.getS

这句System.out.println(user.getU_possie());打印出来的是普通员工吗?没有空格或者是其他什么字符?不执行肯定是因为不相等造成的嘛

if(user.getU_possie.equals("普通员工")){
System.out.println(user.getU_possie());
response.sendRedirect("/oaproject/Mainframe1.html");
}

试试,
或者 String groupName = "普通员工";
if(groupName.equals(user.getU_possie())){
System.out.println(user.getU_possie());
response.sendRedirect("/oaproject/Mainframe1.html");
}

System.out.println(user.getU_possie());
这句打印出来的是什么,是“普通员工”吗?

如果不是,这个条件为假,当然不执行了

应该是你的编码问题
String s=user.getU_possie().toString();
String s1=new String(s.getBytes("ISO-8859-1"),"gb2312");
"普通员工".equals(s1)

这个条件没能执行
System.out.println(user.getU_possie());//打印出的是什么?
你的form表单所在的文件名是什么?