会员可以在此提问,百战程序员老师有问必答
对大家有帮助的问答会被标记为“推荐”
看完课程过来浏览一下别人提的问题,会帮你学得更全面
截止目前,同学们一共提了 132358个问题
JAVA 全系列/第五阶段:JavaWeb开发/Servlet技术详解(旧) 1262楼
JAVA 全系列/第五阶段:JavaWeb开发/Servlet技术详解(旧) 1264楼

老师,我登陆页面的时候  输什么都是用户名和密码错误 代码看了和文档是一样的

public class UserLoginDaoImpl implements UserLoginDao {
    //用户数据库登陆查询
    public Users selectUsersByUsernameAndUserpwd(String username, String userpwd) {
        Users users = null ;
        Connection conn=null;
        try {
            conn = JdbcUtils.getConnection();
            PreparedStatement ps = conn.prepareStatement("select * from users where username=? and userpwd=?");
            ps.setString(1,username);   //绑定参数
            ps.setString(2,userpwd);
            ResultSet resultSet = ps.executeQuery();
            while (resultSet.next()){
                users = new Users();
                users.setUsersex(resultSet.getString("usersex"));
                users.setUserpwd(resultSet.getString("userpwd"));
                users.setUsername(resultSet.getString("username"));
                users.setUesrid(resultSet.getInt("userid"));
                users.setPhonenumber(resultSet.getString("phonenumber"));
                users.setQqnumber(resultSet.getNString("qqnumber"));
            }
        }catch (Exception e){
            e.printStackTrace();
        }finally {

        }

        return users;
    }
}
public class UserLoginServiceimpl implements UserLoginService {
    //用户登陆业务
    public Users userLogin(String username, String userpwd) {
        //实例化持久业务层
        UserLoginDao userLoginDao = new UserLoginDaoImpl();
        Users users = userLoginDao.selectUsersByUsernameAndUserpwd(username,userpwd);
        if(users == null){
            throw new UserNotFoundException("用户名或密码有误");   //自定义异常
        }
        return users;
    }
}
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    String username = req.getParameter("username");
    String userpwd = req.getParameter("userpwd");

    try {
        UserLoginService userLoginService = new UserLoginServiceimpl();
        Users users = userLoginService.userLogin(username,userpwd); //登陆成功返回一个user对象
        //建立客户端与服务端的会话状态
        HttpSession session = req.getSession();
        session.setAttribute(Constans.USR_SESSION_KEY,users);
        //跳转首页 ( 重定向方式 )
        resp.sendRedirect("main.jsp");
    }catch (UserNotFoundException e){
        req.setAttribute("msg",e.getMessage());
        req.getRequestDispatcher("login.jsp").forward(req,resp);
    }catch (Exception e){
        resp.sendRedirect("error.jsp");
    }
}


JAVA 全系列/第五阶段:JavaWeb开发/Web实战案例 1265楼
JAVA 全系列/第五阶段:JavaWeb开发/Servlet技术详解(旧) 1267楼
JAVA 全系列/第五阶段:JavaWeb开发/Servlet技术详解(旧) 1269楼

ajaxdemo.zip

就是这个 麻烦老师看一下。

JAVA 全系列/第五阶段:JavaWeb开发/Ajax技术详解(旧) 1271楼
JAVA 全系列/第五阶段:JavaWeb开发/Servlet技术详解(旧) 1273楼

package com.bjsxt.servlet;

import com.bjsxt.commons.JsonUtils;
import com.bjsxt.pojo.User;

import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/*
* 用户管理Servlet
* */
@WebServlet("/user.do")
public class UserServlet extends HttpServlet {
    //生成模拟数据的初始化
    public void init() throws ServletException {
        User user=new User();
        user.setUserid(1);
        user.setUsername("Oldlu");
        user.setUsersex("male");
        user.setUserbirth(new Date());
        User user2=new User();
        user2.setUserid(2);
        user2.setUsername("suyue");
        user2.setUsersex("famale");
        user2.setUserbirth(new Date());
        List<User> list=new ArrayList<>();
        list.add(user);
        list.add(user2);
        ServletContext servletContext=this.getServletContext();
        servletContext.setAttribute("list",list);

    }

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        this.doPost(req,resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        String flag=req.getParameter("flag");
        if("getData".equals(flag)){
            this.getData(req,resp);
        }else if("addUser".equals(flag)){
            this.addUser(req,resp);

        }
    }
    private void getData(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException{
        //获取页面初始化数据
        List<User> list=(List<User>) this.getServletContext().getAttribute("list");
        String s= JsonUtils.objectToJson(list);
        resp.setContentType("application/json");
        PrintWriter pw=resp.getWriter();
        pw.print(s);
        pw.flush();
        pw.close();
    }
    //处理添加用户请求
    private void addUser(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException{
        User user=this.creatUser(req);
        ServletContext servletContext=this.getServletContext();
        List<User> list=(List<User>) servletContext.getAttribute("list");
        list.add(user);
        resp.setContentType("text/plain;charset=utf-8");
        PrintWriter pw=resp.getWriter();
        pw.print("添加成功");
        pw.flush();
        pw.close();
    }
    //获取请求数据
    private User creatUser(HttpServletRequest req){
        String userid=req.getParameter("userid");
        String username=req.getParameter("username");
        String usersex=req.getParameter("usersex");
        String userbirth=req.getParameter("userbirth");
        User user=new User();
        user.setUserid(Integer.parseInt(userid));
        user.setUsername(username);
        user.setUsersex(usersex);
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        try {
            Date parse = sdf.parse(userbirth);
            user.setUserbirth(parse);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        return user;
    }
}

老师可不可以帮我看一下,我这个代码哪个

try {
            Date parse = sdf.parse(userbirth);
            user.setUserbirth(parse);
        } catch (ParseException e) {
            e.printStackTrace();
        }

这里面出错,我每次加上这个try catch,我的代码就运行不过去,但是它也不报错。就卡在哪里。把它注释了代码就能正常运行但是哪个日期就显示null。不注释的话就直接卡在哪里面了。

image.png

JAVA 全系列/第五阶段:JavaWeb开发/Ajax技术详解(旧) 1275楼

课程分类

百战程序员微信公众号

百战程序员微信小程序

©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园
网站维护:百战汇智(北京)科技有限公司
京公网安备 11011402011233号    京ICP备18060230号-3    营业执照    经营许可证:京B2-20212637