📄 logonservlet.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 + -