使用request实现网站中的注册功能

1、需求分析

在网站上完成一个注册的功能:
这里写图片描述

2、分析

2.1 技术分析

请求对象—request对象

request:请求
 作用:获取浏览器发送过来的数据
 组成部分:
   请求行 请求头 请求体
 操作请求行
   格式:
     请求方式 请求资源 协议/版本
   常用方法:HttpServletRequest
     String getMethod():获取请求方式
     String getRemoteAddr():获取ip地址
     String getContextPath() :在java中获取项目名称
 操作请求头
   格式:key/value(value可以是多个值)
   常用方法:String getHeader(String key):通过key获取指定的value (一个)
 操作请求参数
   username=tom&password=123&hobby=drink&hobby=sleep
   常用方法:
     String getParameter(String key):获取一个值
     String[] getParameterValues(String key):通过一个key获取多个值
     Map

2.2 步骤分析

1.数据库和表(day09)
2.页面(表单)
  给每个字段添加name属性
  还需修改表单提交的路径 method=post
3.表单提交到一个servlet(RegistServlet)
4.RegistServlet:
  操作:
    接受数据,封装成一个user
    调用UserSerivce完成保存操作 int regist(User user)
    判断结果是否符合我们预期
      若int=1; 插入成功
      若int!=1; 插入失败
    相应的提示信息在

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
首先,我们需要创建一个 Java Web 项目,然后在项目创建一个注册页面。页面可以使用 HTML、CSS 和 JavaScript 来实现,这里就不再赘述了。 接下来,我们需要创建一个 Java Servlet,用于处理用户提交的注册信息。具体实现如下: 1. 创建一个 RegisterServlet 类,继承 HttpServlet 类。 ``` public class RegisterServlet extends HttpServlet { } ``` 2. 在 RegisterServlet 类重写 doPost 方法,处理用户提交的注册信息。 ``` @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 获取用户提交的注册信息 String username = request.getParameter("username"); String password = request.getParameter("password"); String email = request.getParameter("email"); // TODO: 验证用户输入的注册信息 // 将用户注册信息保存到数据库 // 跳转到注册页面 } ``` 3. 验证用户输入的注册信息是否合法。可以使用正则表达式或其他方式来验证用户名、密码和邮箱是否符合要求。 ``` // 验证用户名是否符合要求 if (!username.matches("^[a-zA-Z]\\w{5,17}$")) { // 用户名不符合要求,返回错误提示信息 request.setAttribute("errorMsg", "用户名不符合要求!"); request.getRequestDispatcher("/register.jsp").forward(request, response); return; } // 验证密码是否符合要求 if (!password.matches("^[a-zA-Z]\\w{5,17}$")) { // 密码不符合要求,返回错误提示信息 request.setAttribute("errorMsg", "密码不符合要求!"); request.getRequestDispatcher("/register.jsp").forward(request, response); return; } // 验证邮箱是否符合要求 if (!email.matches("^\\w+@[a-zA-Z_]+?\\.[a-zA-Z]{2,3}$")) { // 邮箱不符合要求,返回错误提示信息 request.setAttribute("errorMsg", "邮箱不符合要求!"); request.getRequestDispatcher("/register.jsp").forward(request, response); return; } ``` 4. 将用户注册信息保存到数据库。这里我使用了 MySQL 数据库和 JDBC 驱动,具体实现如下: ``` // 加载 JDBC 驱动 Class.forName("com.mysql.jdbc.Driver"); // 获取数据库连接 Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "123456"); // 创建 PreparedStatement 对象 PreparedStatement ps = conn.prepareStatement("insert into user(username, password, email) values (?, ?, ?)"); // 设置参数 ps.setString(1, username); ps.setString(2, password); ps.setString(3, email); // 执行 SQL 语句 ps.executeUpdate(); // 关闭资源 ps.close(); conn.close(); ``` 5. 最后,我们需要跳转到注册页面,告诉用户注册了。 ``` // 注册,跳转到成页面 request.getRequestDispatcher("/success.jsp").forward(request, response); ``` 以上就是使用 IDEA 实现注册功能的全部步骤。需要注意的是,这里只是一个简单的示例,实际开发还需要考虑很多其他因素,比如防止 SQL 注入、防止重复注册等。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值