我正在尝试建立一个用户可以登录或注册的社交网站。用正确的凭据登录后,用户可以搜索朋友列表并邀请他/她成为朋友。
到目前为止,我制作了2个jsp文件 - 1 index.jsp [2] UserRegistration.jsp [2] mySQl具有带有UserInfo和userRegistration表的SocialNetwork Schema。
[3]并在src文件夹中,我的RegistrationServlet是这样的:
// ********************************************************************
// JDBC driver name and database URL
final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
final String DB_URL = "jdbc:mysql://localhost:3306/SocialNetwork";
// ***********************************************************************
// Database credentials
final String USER = "root";
final String PASS = "root";
Connection conn = null;
Statement stmt = null;
try {
// Register JDBC driver
Class.forName(JDBC_DRIVER);
// connection to mySQL server and Open a connection
System.out.println("Connecting to a selected database...");
conn = DriverManager.getConnection(DB_URL, USER, PASS);
System.out.println("Connected database successfully...");
// create a Statement object ()
System.out.println("Inserting records into the table...");
stmt = conn.createStatement();
// Execute a query
String sql = "INSERT INTO SocialNetwork.userInfo"
+ "(userName, userPW)" + "VALUES('" + nUser + "','" + nPW
+ "')";
int i = stmt.executeUpdate(sql);
out.println("Connection successfull.." + i);
//Update the Db
stmt.executeUpdate(sql);
// executeQuery () method and save it on ResultSet
sql = "SELECT * FROM SocialNetwork.userInfo";
ResultSet rs = stmt.executeQuery(sql);
// check inserted rows in the Db table
while (rs.next()) {
String Db_Name = rs.getString("userName");
String passwordFromDb = rs.getString("userPW");
// rs.getString(newPassW)
out.println("<br>DbName **" + Db_Name);
out.println("->DbPass **" + passwordFromDb);
}
} catch (Exception e) {
e.printStackTrace();
}
如何将UserLogin servlet连接到UserInfo表,以便在DB中找到并匹配用户的名称和密码时,他可以看到他/她的朋友列表。
如果在UserInfo中找不到该用户名和密码,则应显示一条消息,表明用户必须先注册。
用户登录后,应该会看到所有用户名和年龄的列表。 之后,用户可以从该列表中选择用户并邀请该用户成为他/她的朋友。