Mysql 使用JDBC通过servlet插入数据
我正在尝试创建一个用户可以登录或注册的社交网站。使用正确的凭据登录后,用户可以搜索好友列表并邀请他/她成为好友 到目前为止,我已经制作了2个jsp文件- index.jsp[2]UserRegistration.jsp [2] mySQl具有带有UserInfo和userRegistration表的SocialNetwork模式 [3] 在src文件夹中,我的RegistrationServlet如下所示:Mysql 使用JDBC通过servlet插入数据,mysql,jdbc,Mysql,Jdbc,我正在尝试创建一个用户可以登录或注册的社交网站。使用正确的凭据登录后,用户可以搜索好友列表并邀请他/她成为好友 到目前为止,我已经制作了2个jsp文件- index.jsp[2]UserRegistration.jsp [2] mySQl具有带有UserInfo和userRegistration表的SocialNetwork模式 [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();
}
/*********************************************************************************************
//JDBC驱动程序名称和数据库URL
最后一个字符串JDBC_DRIVER=“com.mysql.JDBC.DRIVER”;
最终字符串DB_URL=“jdbc:mysql://localhost:3306/SocialNetwork";
// ***********************************************************************
//数据库凭据
最终字符串USER=“root”;
最终字符串传递=“根”;
连接conn=null;
语句stmt=null;
试试{
//注册JDBC驱动程序
类forName(JDBC_驱动程序);
//连接到mySQL服务器并打开连接
System.out.println(“连接到选定的数据库…”);
conn=DriverManager.getConnection(DB_URL,USER,PASS);
System.out.println(“已成功连接数据库…”);
//创建语句对象()
System.out.println(“将记录插入表…”);
stmt=conn.createStatement();
//执行查询
String sql=“插入SocialNetwork.userInfo”
+“(userName,userPW)“+”值(“+user+”,“+nPW
+ "')";
int i=stmt.executeUpdate(sql);
out.println(“连接成功…”+i);
//更新数据库
stmt.executeUpdate(sql);
//executeQuery()方法并将其保存在ResultSet上
sql=“从SocialNetwork.userInfo中选择*”;
结果集rs=stmt.executeQuery(sql);
//检查Db表中插入的行
while(rs.next()){
String Db_Name=rs.getString(“用户名”);
字符串passwordFromDb=rs.getString(“userPW”);
//rs.getString(newPassW)
out.println(“
DbName**”+Db_Name);
out.println(“->DbPass**”+passwordFromDb);
}
}捕获(例外e){
e、 printStackTrace();
}
我如何将UserLogin servlet连接到UserInfo表,以便在DB中找到并匹配用户的姓名和密码时,他可以看到他/她的朋友列表
如果在UserInfo中找不到该用户名和密码,则应显示一条消息,说明用户必须先注册
一旦用户登录,他应该会看到所有用户名和年龄的列表。
稍后,用户可以从该列表中选择一个用户,并邀请该用户成为他/她的朋友 您试图在屏幕上打印密码吗?嗯…你的具体问题是什么?执行servlet时会发生什么?