入门案例"/>
网页注册_Servlet入门案例
案例来自www.51doit.com多易教育–行哥的小案例练习
需求:在注册中心注册,实现客户端和服务端的交互.
注册中心html
//路径 和 请求方式
<form action="/day12/Register" method="post">
new 一个类Regiser继承HttpServlet,重写service方法
protected void service(HttpServletRequest request, HttpServletResponse response){try {//指定编码,解决乱码问题request.setCharacterEncoding("utf8");String name = request.getParameter("name");String password = request.getParameter("password");String gender = request.getParameter("gender");String address = request.getParameter("address");String phoneNum = request.getParameter("phoneNum");// 封装User beanUser user = new User(0, name, password, gender, address, phoneNum);// 调用Service层方法注册UserService userService = new UserServiceImpl();boolean res = userService.register(user);if(res) {request.setAttribute("user", user);//注册成功跳转主页面request.getRequestDispatcher("/page/index.jsp").forward(request, response);}else {//注册失败留在注册页面request.getRequestDispatcher("/page/register.html").forward(request, response);}} catch (Exception e) {e.printStackTrace();}}
UserServiceImpl中register方法—>完成判断和注册任务
public boolean register(User user) throws Exception {UserDao userDao = new UserDaoImpl();String name = user.getName();//先判断数据库中有没有用户名User result = userDao.isSameName(name);if(result==null) {//注册,添加数据userDao.insertUserInfo(user);return true;}//已经注册过同名的return false;}
UserDaoImpl中两个方法
- isSameName : 按照客户输入的名字在数据库中查找并返回user,如果有相同的名字,返回user中包含了数据库信息;否则user是null
- insertUserInfo : 将包含用户信息的user,添加到数据库中
static ComboPooledDataSource dataSource;static QueryRunner runner;static {dataSource = new ComboPooledDataSource();runner = new QueryRunner(dataSource);}
@Override//向数据库中添加信息public void insertUserInfo(User user) throws Exception {String sql = "insert into user values(null,?,?,?,?,?)";runner.update(sql,user.getName(),user.getPassword(),user.getGerder(),user.getAddress(),user.getPhoneNum());}@Override//根据名字查找用户信息public User isSameName(String name) throws Exception {String sql = "select *,phone_num phoneNum from user where name=?";User user = runner.query(sql, new BeanHandler<>(User.class),name);return user;}
更多推荐
网页注册_Servlet入门案例
发布评论