我有登錄表單index.jsp
和login servlet
。如果用戶名和密碼正確,則取決於權限打開三個.jsp頁面中的一個(admin.jsp, user1.jsp, user2.jsp
)。在用戶打開的.jsp頁面用戶名顯示爲(${User.username})
。我也有bean「用戶」,它存儲用戶數據。如何從jsp獲取值到servlet並進行mysql查詢
登錄的servlet
public class Login extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
String username = request.getParameter("username");
String password = request.getParameter("password");
User user = new User();
user.setUsername(username);
user.setPassword(password);
try {
HttpSession session = request.getSession(true);
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/database","root","");
Statement stm = conn.createStatement();
if(!(username.equals("")) && !(password.equals(""))){
String query = "SELECT * FROM users WHERE username='"+username+"' AND password='"+password+"'";
ResultSet res = stm.executeQuery(upit);
if(res.next()){
String username = res.getString(2);
int privileges = res.getInt(9);
int active = res.getInt(10);
user.setUsername(username);
user.setPrivileges(privileges);
user.setActive(active);
sesija.setAttribute("user", user);
if(privileges==1 && active==1){
RequestDispatcher r = request.getRequestDispatcher("/admin.jsp");
r.forward(request, response);
}
......rest of the code
}catch(Exception e){
out.println(e);}
}
在admin.jsp我行:
<div id="topMenu>${user.username} | <a href="Logout">Logout</a></div>
豆 「用戶」
public class User {
private String username;
private int privileges;
private int active;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public int getPrivileges() {
return privileges;
}
public void setPrivileges(int privileges) {
this.privileges = privileges;
}
public int getActive() {
return active;
}
public void setActive(int active) {
this.active = active;
}
}
用戶具有搜索產品的可能性一世n按照他的特權數據庫。在他點擊搜索按鈕後,我想檢索他的用戶名並用於在新的servlet中進行數據庫查詢。當我手動將用戶的用戶名用servlet代碼(在sql查詢語句中)用於代碼檢查時,一切工作正常並生成結果,但當用戶點擊搜索按鈕時,我有問題自動獲取值。
在此先感謝