⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 logonservlet.java

📁 基于Servlet的用户注册与登录,后台利用Oracle数据库实现。
💻 JAVA
字号:
package dcfs;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.Date;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class for Servlet: LogonServlet
 * 
 */
public class LogonServlet extends javax.servlet.http.HttpServlet implements
		javax.servlet.Servlet {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	public LogonServlet() {
		super();
	}

	public void destroy() {
		super.destroy();
	}

	protected void doGet(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {
		doPost(request, response);
	}

protected void doPost(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {

		// 获得注册用户的信息
		String id = request.getParameter("id");
		String password = request.getParameter("password");
		String password_db = null;

		// 设置页面属性
		response.setContentType("text/html");
		response.setCharacterEncoding("GBK");

		PrintWriter out = response.getWriter();
		out.print("<html>");
		out.print("<head>");
		out.println("<title>登录成功</title>");
		out.println("</head>");
		out.println("<body>");
		
		// 获取当前时间
		Date currentTime = new Date();
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		

		// 声明数据库连接的相关对象
		Connection con;
		Statement sql;
		Statement sql_update_count;
		Statement sql_update_time;
		ResultSet rs;

		// 定义对上次登录时间更新的SQL语句
		String stmt_update_time = "update user_info set 上次登录时间 = sysdate where ID号='" + id + "'";
		// 定义对登录次数更新的SQL语句
		String stmt_update_count = "update user_info set 登录次数=登录次数 + 1 where ID号='" + id + "'";
		// 定义相关的SQL语句:select
		String stmt_select = "select * from user_info where ID号='" + id + "'";
		
		
		
		

		try {
			Class.forName("oracle.jdbc.driver.OracleDriver");
		} catch (ClassNotFoundException e) {
			System.out.println("ClassNotFound");
		}

		try {
			con = DriverManager.getConnection(
					"jdbc:oracle:thin:@localhost:1521:orcl", "hongshuai",
					"hongshuai");
			System.out.println("数据库连接成功");
			sql = con.createStatement();
			sql_update_count = con.createStatement();
			sql_update_time = con.createStatement();

			// 执行SQL语句
			rs = sql.executeQuery(stmt_select);

			if (rs.next()) {
				// 获得注册用户的密码
				password_db = rs.getString("密码");
				if((password.trim()).equals(password_db)) {
					id = rs.getString("ID号");
					out.print("-----------登录成功-----------<br>");
					out.print("姓名为:" + rs.getString("姓名") + "<br>");
					out.print("性别为:" + rs.getString("性别") + "<br>");
					out.print("学校为:" + rs.getString("学校") + "<br>");
					out.print("专业为:" + rs.getString("专业") + "<br>");
					out.print("电话为:" + rs.getString("电话") + "<br>");
					out.print("邮箱为:" + rs.getString("邮箱") + "<br>");
					out.print("兴趣为:" + rs.getString("兴趣") + "<br>");
					out.print("住址为:" + rs.getString("住址") + "<br><br>");
					
					out.print("您这是第" + (rs.getInt("登录次数")+1) + "次登录本站" + "<br><br>");
					sql_update_count.execute(stmt_update_count);
					
					out.print("上次登录时间为:" + rs.getString("上次登录时间") + "<br><br>");
					sql_update_time.execute(stmt_update_time);
					
					out.print("  当前的时间为:" + sdf.format(currentTime));
					out.print("<br><br>");
					
					out.print("<form action='UpdateServlet' method='post' name='form_update'>"+
							"<input type='hidden' name='id' value="+id+">" +
							"<input type='submit' value='修改个人信息'>");
					
					out.println("</body>");
					out.println("</html>");
					out.flush();
					out.close();
				} 
				else {
					out.println("用户名密码错误!请重新输入密码!!");
					out.println("</body>");
					out.println("</html>");
					out.flush();
					out.close();
				}
				// out.print("ID号为:" + rs.getString("ID号") + "<br>");
				// out.print("密码为:" + rs.getString("密码") + "<br>");

			} 
			else {
				out.print("用户名不存在!请重新登录!~~~~~~");
				out.println("</body>");
				out.println("</html>");
				out.flush();
				out.close();
			}

			// 关闭数据连接
			con.close();
			System.out.println("数据库已经关闭!~~~");
		} catch (SQLException ex) {
			System.out.println("SQL,Logon出错!!");
		}

	}	public void init() throws ServletException {
		super.init();
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -