3

私のコードでは、テーブル「register」の4番目の属性である「password」をResultSetからの変数に格納し、それをセッションに保持して別のページで使用したいと思います。

<%@ page import="java.sql.*" %>
<%
try
{
String eml =  request.getParameter("email");
session.setAttribute("to",eml);
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection  con=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","system","1234"     
Statement st=con.createStatement();
ResultSet rs= st.executeQuery(" select * from register where email='"+eml+"' ");
while(rs.next())
**String psw = rs.getString(4);**
}
**session.setAttribute("pswd",psw);**
response.sendRedirect("sendProcess.jsp");
rs.close();
st.close();
con.close();
}
catch(Exception e){}
%>
4

1 に答える 1

2

JSPページで接続オブジェクトを作成することは悪い習慣です。一般的に、JSPページは情報を表示すると見なされますを参照してください。サーブレットにリクエストを送信し、サーブレット内でビジネスロジックコード(JSPページ内に挿入したもの)を含む別のクラスを呼び出してみてください。次に、ビジネスロジックから取得した応答に従って、結果をセッション属性に格納し、サーブレットから目的のページにリダイレクトします。String pswそして、ループの外側で宣言してみてください。

String psw=null;
while(rs.next())
{ 
psw = rs.getString(4);
}
session.setAttribute("pswd",psw);
于 2013-03-20T08:30:33.233 に答える