servlet自己

网页--->controller层------>service层--------->数据库

controller层:用于用户从网页传输,在controller层接受
service层:验证用户信息,并且操作数据库(多用于数据验证)

//设置请求和响应的编码方式,解决中文乱码问题
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=UTF-8");

获取网页中传过来的内容

getParameter();

String username=request.getParameter("username");

获取上下文路径(现在的网页地址)##

request.getContextPath()

重定向,不能携带任何信息

response.sendRedirect

response.sendRedirect(request.getContextPath()+"/user/index.html");

转发,可以携带信息

request.getRequestDispatcher("/login.html").forward()

request.getRequestDispatcher("/login.html").forward(request, response);

例子

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //设置请求和响应的编码方式,解决中文乱码问题
        request.setCharacterEncoding("utf-8");
        response.setCharacterEncoding("utf-8");
        response.setContentType("text/html;charset=UTF-8");
        
        String username=request.getParameter("username");
        String password=request.getParameter("password");
        
    IUserDao dao=new UserDaoImpl();
        List<TabUser> userList=dao.getUserByName(username);
        String msg ="";//用于存放错误信息
        if(userList!=null&&userList.size()>0){
            //有密码
            TabUser passuser=dao.getUserByNameAndPwd(username,password);
            if(passuser!=null){
//              msg="登录成功";
                //判断是普通用户还是管理员用户,跳转到新页,
                //重定向,不能携带任何信息
                if("0".equals(passuser.getRole())){
                    response.sendRedirect(request.getContextPath()+"/user/index.html");
                }else{
                    response.sendRedirect(request.getContextPath()+"/admin/index.html");
                }
                
                
            }else{
                msg="密码错误";
                //返回到登录页,并携带错误信息
                //转发,可以携带信息
                request.getRequestDispatcher("/login.html").forward(request, response);
                
            }
        }else{
            msg= "用户名错误";
            //返回到登录页,并携带错误信息
            //转发,可以携带信息
            request.getRequestDispatcher("/login.html").forward(request, response);
        }
        
//      response.getWriter().append(msg);
        
    }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容