2016-03-26 20 views
0

私はjavaを使用して求人検索Webアプリケーションを作成しています。私は各ジョブにジョブIDを割り当てて、データベースからのブートストラップテーブルにジョブのリストを表示しています。各ボタンの上に私はjobs.Myコードに対応したデータベースへの応募者名を追加していJSPページにこのジョブIDを転送する必要がありますをクリックします:ボタンをクリックしてセッションを使用して、あるJSPページから別のJSPページに動的値を渡します。

<%@page contentType="text/html" pageEncoding="UTF-8"%> 
<%@page import="com.dbutil.CrudOperation"%> 
<%@ page import="java.util.*,java.sql.*" %> 
<%@ page import="javax.servlet.http.HttpSession" %> 


<html> 
<head> 
     <title>Job List</title> 
    <meta charset="utf-8"> 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
    <link rel="stylesheet" href="css/bootstrap.min.css"> 
    <link rel="stylesheet" href="css/jobs.css"> 
    <script src="jquery.js"></script> 
    <script src="bootstrap.min.js"></script> 

</head> 

<body data-spy="scroll" data-target=".navbar" data-offset="50"> 

<% Connection con = null; 

      ResultSet rs = null,rs1=null; 
      PreparedStatement ps = null; 
      HttpSession hs = null; 
      hs=request.getSession(); 
      con = CrudOperation.createConnection(); 



       %> 

<div class="container"> 



    <%String strsql = "select * from postjob1 where sr>0"; 
        try { 
         ps = con.prepareStatement(strsql); 

         rs = ps.executeQuery(); %> 








<div class="table-responsive"> 
    <table class="table table-bordered"> 
    <thead> 
     <tr> 
      <th>Job Id</th><th>Job Category</th><th>Available Posts</th><th>Required Qualifications</th><th>Salary Details</th><th>Location</th><th>Last date of application</th><th></th> 
     </tr> 
    </thead> 
    <% while (rs.next()) { 

       %> 
    <tbody> 

     <tr><td><%=rs.getString("id")%></td><td><%=rs.getString("jobcategory")%></td><td><%=rs.getString("available")%></td><td><%=rs.getString("requiredqualification")%></td><td><%=rs.getString("salarydetails")%></td><td><%=rs.getString("location")%></td><td><%=rs.getString("lastdate")%></td><td><a href="jobDetails.jsp"><button type="button" class="btn btn-primary" onclick="<% hs.setAttribute("ID",rs.getString("id")); %>" >View Details </button></a></td></tr> 

    </tbody> 
    <%} 
          } catch (SQLException se) { 
           System.out.println(se); 
       }%> 
    </table> 

</div 
</div> 

</body> 
</html> 

私はretreivingていたときに私が困難に直面しています私がコードを実行するのを手伝ってください。私はどのボタンにも関係なく、テーブルの最後の行のIDを取得しています。

答えて

0

あなたは、セッション属性のIDをオーバーライドしています。 whileループを実行した後、最後の値だけが格納されます。

考えられる解決策は、呼び出されたURLのidを次のページに渡すことです。

<a href="jobDetails.jsp?idJob=<%=rs.getString("id")%>"> 
    <button type="button" class="btn btn-primary">View Details</button> 

あなたは

request.getParameter("idJob") 

注意を使用してjobDetails.jspにパラメータを回復することができます:私は、JSPに少し錆びです。たぶん私はいくつかの見積もりや何かを忘れていたかもしれませんが、それは考えです。

+0

おかげでたくさんの..私はlong..finallyこのコードは、働いていたためにこれをしようとしています..! –

+0

@AkankshaSethようこそ。答えを受け入れるのはとても親切である。 :-) – RubioRic

0

リクエストのパラメータと同様にジョブIDを渡すことができます。

たとえば、あなたはそのようなあなたのJSPページを呼び出すことができます。JOB_IDはパラメータ名で、3はその値である

<a href="jobDetails.jsp?job_id=3" /> 

を。その後

あなたは次の方法であなたのjobDetails.jspでパラメータの値を読むことができます:

<%=request.getParameter("job_id")%>