简体   繁体   English

从jsp页面在浏览器中获取空值?

[英]Getting null values in the browser from jsp page?

JSP page JSP页面

<%@ page import="Student.*"%>

<html>


<body>


      <%


   String id =request.getParameter("ID1");

     StudentDAO std=new StudentDAO();
    Student st=std.searchinfo("id");


   %>

        <h1> <%=st.showStudent()%> </h1>


 </body>

</html>

Student.java 学生.java

import java.io.*;

public class Student implements Serializable  {

String name;

    String id1,phone,clas;

   public Student()
    {

    }

    public String showStudent()

    {

       return  "Name: "+name+" Address: "+clas+" Phone: "+phone+" ID: "+id1;
    }
   public void Student1(String  id,String n,String c,String ph)

    {

         name=n;
         id1=id;
         phone=ph;
        clas=c;
    }

}

StudentDAO.java StudentDAO.java

import java.sql.*; 

    import java.io.*;

     public class StudentDAO implements Serializable
    {

          static  String i,id,nam,clas,ph;

         Student studentinfo=new Student();

        public Student searchinfo(String id2)
        {
            id=id2;


        try{

        String url="jdbc:ucanaccess://C:\\Users\\Asim Iqbal\\Documents\\IT.accdb";

       Connection conn = DriverManager.getConnection(url);

        String sql= "SELECT * FROM Student WHERE ID=?";

                  PreparedStatement  stmt = conn.prepareStatement(sql);
                    stmt.setString(1,id);
                   ResultSet rs=stmt.executeQuery();
                    if (rs.next())
                    {
                        i=rs.getString("ID");

                      nam=rs.getString("Name"); 


                       clas=rs.getString("Class");
                        ph=rs.getString("Phone");
                       studentinfo.Student1(i, nam, clas, ph);
                    }
                } catch (SQLException e) {
                }
            return studentinfo;
       } 
    }

This is the error.. But StudentDAO.java connect DB properly and give output as individually.. But in the browser it give null values as follows.. 这是错误。.但是StudentDAO.java正确连接DB并单独提供输出。.但是在浏览器中,它给出了空值,如下所示。

Name: null Address: null Phone: null ID: null 名称:null地址:null电话:null ID:null

<html>
<body>
      <%
   String id =request.getParameter("ID1");
     StudentDAO std=new StudentDAO();

Student st=std.searchinfo(id); 学生st = std.searchinfo(id);

   %>
        <h1> <%=st.showStudent()%> </h1>
 </body>
</html>

Change you jsp page code as above, you should pass the id value as an argument to a DAO method, What your passing now is a string "id". 如上更改您的jsp页面代码,您应该将id值作为参数传递给DAO方法,现在传递的是字符串“ id”。

Remember writing a java code inside a jsp is a bad practise 记住在jsp内编写Java代码是一种不好的做法

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM