javabean封装数据库问题
我将数据库封装在javabean里 再从jsp输出 但是什么都显示不出来 jsp:
<%@page contentType="text/html;charset=gb2312"%>
<%@page pageEncoding="gb2312"%>
<%request.setCharacterEncoding("gb2312");%>
<%@page import="my02.*"%>
<%@page import="java.util.*"%>
<jsp:useBean id="mydb" scope="session" class="my02.MyDbGet"/>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>my02</title>
</head>
<body>
<center>test</center>
<%
ArrayList array=mydb.talk();
for(int i=0;i<array.size();i++)
{
Speak speak=(Speak)array.get(i);%>
<%=speak.getName()%>
<%=speak.getTalk()%>
<%=speak.getTime()%>
<%}%>
</body>
</html>
db封装:
package my02;
import java.sql.*;
import java.io.*;
import java.util.*;
public final class MyDB
{
private static String durl="jdbc:mysql://localhost:3306/mytalk?user=root&password=iloveyy" +
"&useUnicode=true&charcterEncoding=gb2312";
private static Connection conn=null;
private ArrayList array;
public MyDB()
{
try
{
Class.forName("com.mysql.jdbc.Driver");
}
catch(ClassNotFoundException e)
{
System.out.println(e);
}
try
{
conn=DriverManager.getConnection(durl);
}
catch(SQLException e)
{
System.out.println(e);
}
}
public void remove()
{
try
{
conn.close();
}
catch(SQLException e)
{
System.out.println(e);
}
}
public ArrayList talk()
{
array=new ArrayList();
try
{
String str="select name,talk,time"+"from my02";
PreparedStatement prepStmt=conn.prepareStatement(str);
ResultSet rs=prepStmt.executeQuery();
while(rs.next())
{
String str1=rs.getString(1);
String str2=rs.getString(2);
String str3=rs.getString(3);
Speak speak=new Speak(str1,str2,str3);
array.add(speak);
}
prepStmt.close();
}
catch(Exception e)
{
System.out.println(e);
}
return array;
}
}
package my02;
/**
*
* @author root
*/
public class Speak
{
private String name;
private String talk;
private String time;
public Speak(String name,String talk,String time)
{
this.name=name;
this.talk=talk;
this.time=time;
}
public String getName()
{
return this.name;
}
public String getTalk()
{
return this.talk;
}
public String getTime()
{
return this.talk;
}
}
package my02;
import java.util.*;
public class MyDbGet
{
private MyDB mydb=null;
public MyDbGet()
{
try
{
this.mydb=new MyDB();
}
catch(Exception e)
{
System.out.println(e);
}
}
public ArrayList talk() throws Exception
{
return mydb.talk();
}
}
搜索更多相关主题的帖子:
数据库 javabean 封装
----------------解决方案--------------------------------------------------------
关注中~
看贴回帖好习惯~
----------------解决方案--------------------------------------------------------
就不能帮我看看?
----------------解决方案--------------------------------------------------------
看不懂。。。一年没弄java了~
你说我还能说什么
----------------解决方案--------------------------------------------------------
你把Speak类的构造函数改为空,再设置set方法,设置属性的时候用set进行设置,在取数据的时候使用String str1=rs.getString("");里面填数据库表的字段名。改了之后再试试看
----------------解决方案--------------------------------------------------------
改过了 没有效果
String str1=rs.getString("name");
String str2=rs.getString("talk");
String str3=rs.getString("time");
Speak speak=new Speak();
speak.setName(str1);
speak.setTalk(str2);
speak.setTime(str3);
package my02;
/**
*
* @author root
*/
public class Speak
{
private String name;
private String talk;
private String time;
public Speak()
{
}
public void setName(String name)
{
this.name=name;
}
public void setTalk(String talk)
{
this.talk=talk;
}
public void setTime(String time)
{
this.time=time;
}
public String getName()
{
return this.name;
}
public String getTalk()
{
return this.talk;
}
public String getTime()
{
return this.talk;
}
}
----------------解决方案--------------------------------------------------------
CN也关注一下,刚刚学JSP,呵呵,向大虾学习.
----------------解决方案--------------------------------------------------------
伤心欲绝,伤心欲绝,伤心欲绝,伤心欲绝....
----------------解决方案--------------------------------------------------------
楼上的,你怎么到哪都是这两句?
----------------解决方案--------------------------------------------------------
你看看页面上的
ArrayList array=mydb.talk();
里面有没有东西
----------------解决方案--------------------------------------------------------