动力节点旗下在线教育品牌  |  咨询热线:400-8080-105 学Java全栈,上蛙课网
首页 > 文章

javaweb实现登录注册功能实例

06-11 16:25 833浏览
举报 T字号
  • 大字
  • 中字
  • 小字

前期呢,我们学习了javaweb项目用JDBC连接数据库,还有数据库的建表功能,今天,我们来看一下javaweb实现登录注册功能实例javaweb项目使用的工具是eclipse,最后把项目部署在了Tomcat中,连接数据库使用的是Mysql数据库。

我们先来看一下web.xml的配置文件:


	System01
	
		login.jsp
	
	
		form
		com.demo..FormServlet
	
	
		form
		/form
	

web.xml是前端的jsp页面和后台的Servlet类交互的一个配置文件,我们可以设置启动页面,还有与页面对应的类Servlet。

然后就是jsp页面login.jsp:

<%@ page language="java" contentType="text/html; charset=utf-8"
	pageEncoding="utf-8"%>

网络交友

 
网络交友
 
 
 
 
  记住密码
 
登  录

login页面进行输入用户名和密码进行登录,同时也有一个注册的按钮,点击即可进行注册,注册的页面,即ZhuCe.jsp的模样和login.jsp差不多,是通过用户名和密码进行注册的,还有登录成功loginSuccess.jsp、注册成功index.jsp的页面,可以在页面上写上登录成功、注册成功四个字,代表我们的登录和注册已经成功了。

最后就是Servlet类FromServlet.class:

package com.demo;
import java.io.IOException;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;
import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;
public class FormServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
	public static Connection conn = null;

	/**
	 * 重写service方法 处理前台传过来的数据和处理成功后跳转页面
	 */
	@Override
	protected void service(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {
		// 设置客户端的格式
		request.setCharacterEncoding("utf-8");
		// 获取Login.Jsp中控件输入的值
		String name = request.getParameter("username");
		String pwd = request.getParameter("password");
		System.out.println("姓名:" + name);
		System.out.println("密码:" + pwd);
		// 驱动程序名
		String driver = "com.mysql.jdbc.Driver";
		// URL指向要访问的数据库名study
		String url = "jdbc:mysql://127.0.0.1:3306/study";
		String user = "root"; 			// MySQL配置时的用户名
		String password = "123456"; 	// MySQL配置时的密码
		try {
			// 加载驱动程序
			Class.forName(driver);
			// 连接数据库
			Connection conn = DriverManager.getConnection(url, user, password);
			if (!conn.isClosed())
				System.out.println("Succeeded connecting to the Database!");
			// statement用来执行sql语句
			Statement statement = conn.createStatement();
			// 写sql一定要注意
			String sql = "select * from user where username = " + "'" + name + "'";
			System.out.println(sql);
			// sql执行的结果集
			ResultSet rs = statement.executeQuery(sql);
			if (rs.next()) {
				String pwdStr = null;
				// 选择pwd这列数据
				pwdStr = rs.getString("pwd");
				System.out.println(pwdStr);
				if (rs.getString("pwd").equals(pwd)) {
					// 登录成功跳转的页面
					response.sendRedirect("./loginSucess.jsp");
				}
			} else {
				String sqlStr = "insert into user(username,pwd) values('" + name + "','" + pwd + "')";
				Statement MyStatement;
				try {
					MyStatement = conn.createStatement();
					MyStatement.executeUpdate(sqlStr);
					System.out.println("添加成功");
					// 注册成功后跳转的页面
				response.sendRedirect("./index.jsp");
				} catch (Exception e) {
					System.out.println("添加失败");
				}
			}
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}}

FromServlet类中,我们可以通过用户名、密码和数据库名进行连接Mysql数据库,同时也可以连接其他数据库,比如Oracle等,还有登录、注册成功跳转的页面。

通过以上的描述,大家学会javaweb实现登录注册功能了吗,如果学会了,就赶紧行动起来吧!

0人推荐
共同学习,写下你的评论
0条评论
敲代码的小码农
程序员敲代码的小码农

6篇文章贡献31491字

作者相关文章更多>

推荐相关文章更多>

Java数据结构

HelloWorld10-31 08:24

浅谈MySQL中SQL优化的常用方法

军哥08-12 23:29

五分钟读懂UML类图

江湖人称小李白12-10 10:41

MyBatis开发框架的四大核心

IT逐梦者08-17 21:43

一次搞定continue,break和return

HelloWorld11-06 11:19

发评论

举报

0/150

取消