当前位置: 代码迷 >> Java相关 >> 怎样把数据库里面的数据读到集合里面去
  详细解决方案

怎样把数据库里面的数据读到集合里面去

热度:300   发布时间:2005-08-28 12:28:00.0
怎样把数据库里面的数据读到集合里面去

import java.sql.*; import java.io.*; import java.awt.*; import java.awt.event.*; import java.util.*; import javax.swing.border.*;

public class EmployeepreparedStatement extends Frame implements Serializable { /*JTable table; Panel p; Object l[][],lieming[]={"货物ID号","货物名称","货物颜色","货物体积","货物价格","货物产地"}; public EmployeepreparedStatement() { p=new Panel(); LinkedList goodlist=(LinkedList)rs.readObject();//在集合当中怎样把数据库里面的数据读到集合中去 int length=goodlist.size(); l=new Object[length][6]; table=new JTable(l,lieming); p.removeAll(); p.add(new JScrollPane(table)); p.validate(); Iterator iter=goodlist.iterator(); int i=0; while(iter.hasNext()) { EmployeepreparedStatement gds=(EmployeepreparedStatement)iter.next(); l[1][0]=EmployeepreparedStatement. setSize(500,300); setVisible(true); */ public static void main(String args[]) { int id; String name; String color; int higth; int price; String address; try { Statement smt; Connection con; System.out.println("正在追被连接"); Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); con=DriverManager.getConnection("jdbc:odbc:MyServer"); Statement sm=con.createStatement(); ResultSet rs=sm.executeQuery("select itemId,itemName,itemColor,itemHight,itemPrice,itemAddress from itemtable" ); while(rs.next()) { id=rs.getInt("itemId"); name=rs.getString("itemName"); color=rs.getString("itemColor"); higth=rs.getInt("itemHight"); price=rs.getInt("itemPrice"); address=rs.getString("itemAddress"); System.out.println(id+"\t"+name+"\t"+color+"\t"+higth+"\t"+address+"\t"+price); } sm.close(); con.close(); } catch(Exception e) { System.out.println(e.toString()); } EmployeepreparedStatementd(); JTable table; Panel p; Object l[][],lieming[]={"货物ID号","货物名称","货物颜色","货物体积","货物价格","货物产地"}; public void EmployeepreparedStatementd() { try { p=new Panel(); LinkedList goodlist=(LinkedList)rs.readObject();//在集合当中怎样把数据库里面的数据读到集合中去 int length=goodlist.size(); l=new Object[length][6]; table=new JTable(l,lieming); p.removeAll(); p.add(new JScrollPane(table)); p.validate(); Iterator iter=goodlist.iterator(); int i=0; while(iter.hasNext()) { EmployeepreparedStatement gds=(EmployeepreparedStatement)iter.next(); l[i][0]=id; l[i][1]=name; l[i][2]=color; l[i][3]=higth; l[i][4]=price; l[i][5]=address; i++; } table.repaint(); } catch(Exception ee) { System.out.println(ee.toString()); } setSize(500,300); setVisible(true); } } }

搜索更多相关的解决方案: 数据库  import  java  货物  

----------------解决方案--------------------------------------------------------
错了一塌糊涂,我都不知道怎么改好了。
----------------解决方案--------------------------------------------------------
你能帮我写一个吗?谢谢
----------------解决方案--------------------------------------------------------
能帮我阐述一下JSP 和XML 和J2EE之间联合一起做一个项目。
里面的具体机制能帮我阐述一下吗?
我理解不太清楚。
----------------解决方案--------------------------------------------------------
我还想问你一个问题,关于模式的
怎样理解模式呢?
----------------解决方案--------------------------------------------------------
关于Java 程序对数据库的操作的问题,这个话题很大,我可以给你一段DemoCode,但是这样的断章取义的代码意义不大,我也不知你是否能理解。
下面是一段JDBC的查询实例的代码:

// 申明一个方法和一些变量
public void ListStudents() throws SQLException
{
  int i, NoOfColumns;
String StNo, StFName, StLName;
// 初始化并加载JDBC-ODBC 驱动程序
  Class.forName("jdbc.odbc.JdbcOdbcDriver");
  // 创建连接对象
  Connection Ex1Con = DriverManager.getConnection("jdbc.odbc:StudentDB"; uid = "admin"; pw = "sa");
// 创建一个简单的 Statement 对象
  Statement Ex1Stmt = Ex1Con.createStatement();
  // 创建 SQL 串, 传送到 DBMS 并执行SQL语句
  ResultSet Ex1rs = Ex1Stmt.executeQuery("SELECT StudentNumber, FirstName, LastName FROM Students");
  // 处理每一个数据行直到不再有数据行
  // 在控制台显示结果
  System.out.println("Student Number    First Name    Last Name");
  while(Ex1rs.next())
  {
    //将列值保存到Java变量中
    StNo = Ex1rs.getString(1);
    StFName = Ex1rs.getString(2);
    StLName = Ex1rs.getString(3);
    System.out.println(StNo, StFName, StLName);
  }
}
JDBC 涉及的方方面面很多,不是一两段代码可以跟你解释地清楚的。如果要详细说,那就要写本书出来了。
以上这一段代码对于理解你觉得意义大吗?我看是不大,如果你真的想学JDBC,那么下面这个连接对你有用
http://java.sun.com/docs/books/tutorial/jdbc/index

另外对于小型的程序根本不需要什么数据库,你完全可以构造一个所谓的数据库,也就是说用class来构造一个数据模型,然后在程序中创建你的数据并存入你所建立的那个数据结构中,在程序运行期间,你也可以将数据存入一个文件中,并以访问文件的形式访问你的数据,这样可以降低对内存的开销,如果数据块不是很大,在程序运行期间就不必存入文件,而是直接access,这样程序的运行速度可加快。但最终那些数据是一定要存为文件,以便下次access. 这是我对你提的建议,这也是我通常的做法。

当然学学JDBC 也很好。

对于模式这个问题,也是一个很大的话题,有专门的书介绍这个话题,书名好像叫DesignPattern。
这本书我没看过。所以我使用我自己的设计模式,那就是消息机制模式。也就是说,Object 与 Object 之间以消息机制来互相联系,其实我光这么说,你肯定不能理解。以后你在碰到这样的问题时,具体提出来,我们可以一起来设计一个适合于具体问题的设计模式。
----------------解决方案--------------------------------------------------------
上面的程序编译都不会通过的吧……少了try块

借宝地问个问题,怎么写代码能够实现点右上角的关闭按钮而弹出对话框询问是否真的要关闭程序……点是退出,点否返回,很多程序都是这样的吧……
----------------解决方案--------------------------------------------------------
上面的代码只是示意性代码, 通过与否是与 try 无关的, 你应该注意到那个紧跟函数名后的那个 throws, 也就是说,那个调用此函数的函数块中将使用 try ... catch...
对于上面的解释不知道我是否说清楚了? 如果没有理解下篇帖子中可以给你举个例子.

回答你的第二个问题,
你应该在 public class 中加上下面的代码:
protected void processWindowEvent(WindowEvent e)
{
  if (e.getID() == WindowEvent.WINDOW_CLOSING)
  {
     // your code here
  }
}
----------------解决方案--------------------------------------------------------
kai上面的代码是无法起到实际作用的,估计kai你自己没有写过这样的程序吧?还要配合把JFrame的默认关闭操作改为DO_NOTHING。方法是setDefaultCloseOperation(int operation)。否则光用上面的方法你是无法阻止窗体关闭的。kai你可以试着问一下自己,即使在//your code here部分添加了对话框代码,如果用户选择否的话你怎么阻止窗体的关闭呢?
----------------解决方案--------------------------------------------------------
那要怎么写代码啊…… 发现setDefaultCloseOperation(int)里写0相对于是JFrame.DO_NOTHING_ON_CLOSE 3是EXIT_ON_CLOSE 但要怎么控制呢……
----------------解决方案--------------------------------------------------------
  相关解决方案