📄 server_techlogin.java
字号:
package tserver;
/*
* 作者:褚廷军
* 项目名称:学生考试系统;
* 项目要求:毕业设计;
* 模块名称:服务器端验证教师登录模块
* 模块功能:接收教师的登陆请求,并验证用户信息, 如果正确则登陆成功,如果错误重新登陆
*/
import java.io.*;
import java.net.*;
import java.sql.*;
import java.util.StringTokenizer;
import tools.ConnectBean;
public class Server_techLogin extends Thread {
String str1 = null;// 用户输入的考号
String str2 = null;// 用户输入的密码
String dbn = ""; // 数据库中的用户名
String dbp = ""; // 数据库中存的密码
Socket socket;
PreparedStatement pstmt = null;
Statement stmt=null;
ResultSet rs;
DataOutputStream out = null;
DataInputStream in = null;
String s = null;
public Server_techLogin(Socket socket) {
this.socket = socket;
try { // 创建网络连接
in = new DataInputStream(socket.getInputStream());
out = new DataOutputStream(socket.getOutputStream());
} catch (IOException e) {
e.printStackTrace();
}
}
public void run() {
String s = null;
String sql;
try {
s = in.readUTF(); // 接收考试号和密码,然后分别取出
StringTokenizer st = new StringTokenizer(s, ",");
if (st.hasMoreTokens()) {
str1 = st.nextToken();
str2 = st.nextToken();
System.out.println("username :" + str1);
System.out.println("password :" + str2);
}
} catch (IOException e) {
e.printStackTrace();
}
// 读取数据库里的用户信息 并进行验证
try {
ConnectBean cb = new ConnectBean();
if (!cb.openConnection()) {
System.out.println("连接数据失败");
System.exit(1);
return;
}
sql = "select tname,tpass from tinfo where tid='" + str1 + "'";
cb.createPreparedStatement(sql, false);
ResultSet rs = cb.executeQuery();
while (rs.next()) {
dbn = rs.getString("tname");
dbp = rs.getString("tpass");
System.out.println("用户: " + str1 + " 你的用户名为:" + dbn
+ ", 你的密码为:" + dbp);
}
cb.close();
// 验证用户密码
if (str2.equals(dbp.trim())) {
out.writeUTF("教师 " + dbn + " 登陆成功");
System.out.println("用户 " + dbn + " 登陆成功");
out.flush();
out.close();
} else {
out.writeUTF("密码错误");
System.out.println("登陆密码错误");
out.close();
}
} catch (IOException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -