问题描述
刚入门Java,刚接触struts1.2,就要做一个web项目。郁闷。一点一点的啃,但是由于我是菜鸟,书本也没有仔细看。很多东西不会。现在基本上能搞懂一些简单问题,但是,目前最迷惑我的问题就是数据库的显示问题。现在求助各位大仙们了!!!我的目前要做的是:通过一个页面表单传一个值,然后到数据库查询表里的某条对应记录,然后把这条记录(只显示一条记录)显示到jsp页面(客户端)。不会的地方就是查询到这条记录,然后显示呢?我大概知道用request.setAttribute,但是具体到页面怎么写?希望大家能给我详细的提示.谢谢!!!!!!!!!!!!!!!!!!!!!!下面是连接数据库类:publicclassConnDB{publicConnectionconn=null;publicStatementstmt=null;publicResultSetrs=null;publicConnDB(){}/*数据库连接**/publicConnectiongetConnection(){try{Class.forName("com.mysql.jdbc.Driver");}catch(ClassNotFoundExceptione){e.printStackTrace();}try{conn=DriverManager.getConnection("jdbc:mysql://localhost/test?user=root&password=123456");System.out.println("ok");}catch(SQLExceptione){e.printStackTrace();}returnconn;}/**查询*/publicResultSetexcuteQuery(Stringsql){try{conn=getConnection();stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);rs=stmt.executeQuery(sql);}catch(SQLExceptionex){System.err.println(ex.getMessage());}returnrs;}
解决方案
解决方案二:
stmt=conn.createStatement(sql);rs=stmt.executeUqery();这里最后进行操作封装到list---------------然后这里在action里面调用。比如list里面有个name的东西,request.setAttriatue("传到客户端的键",list("name属性的索引值"));----------------------------客户端那里就直接用request.getAttribute("键值");
解决方案三:
因为你只查一条记录,查询到值后,用request.setAttriatue("name",bean);//其中name为传到客户端的键,用于调用。bean为你传到的值的实体类。然后,在jsp页面用EL表达示显示结果:${name.id};//name为上面解释过的键.id为你查找到的bean里的属性。
解决方案四:
packagedb;importjava.sql.*;publicclassDBClass{privateStringdriver;privateStringurl;privateStringname;privateStringpassword;privateConnectionconn;privateStatementstate;privateStringmessage;publicDBClass(){driver="com.microsoft.jdbc.sqlserver.SQLServerDriver";url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=jpkc";name="sa";password="sa";conn=null;state=null;message="";}publicDBClass(Stringdriver,Stringurl,Stringname,Stringpassword,Connectionconn,Statementstate,Stringmessage){super();this.driver=driver;this.url=url;this.name=name;this.password=password;this.conn=conn;this.state=state;this.message=message;}publicvoidconnect(){try{Class.forName(driver);if(conn==null){conn=DriverManager.getConnection(url,name,password);}if(state==null){state=conn.createStatement();}}catch(ClassNotFoundExceptioncnfe){message=""+cnfe;}catch(SQLExceptionsqle){message=""+sqle;}}publicResultSetexecuteQuery(Stringquery)//查询{ResultSetrs=null;try{rs=state.executeQuery(query);}catch(SQLExceptionsqle){message=""+sqle;}returnrs;}
解决方案五:
大家可否给个具体的代码呢?