DefaultTableModel defaultModel=new DefaultTableModel();
jtblSearch=new JTable(defaultModel);
//defaultModel.removeRow(rowcount);//移除行
ResultSet rest=stm.executeQuery(SQL);
while(rest.next()) //将查询出的记录显示在表格中
{
defaultModel.addRow(rest.getString(i));
}
jtblSearch=new JTable(defaultModel);
//defaultModel.removeRow(rowcount);//移除行
ResultSet rest=stm.executeQuery(SQL);
while(rest.next()) //将查询出的记录显示在表格中
{
defaultModel.addRow(rest.getString(i));
}
解决方案 »
- 各位大虾,请问IE关闭时弹出“确认离开该页面”的信息,如何取消掉?
- java 时间触发器. 求各位指教。
- 两表有包含关系,hibernate如何做映射?
- ant javac编译顺序问题
- 问个关于流量统计的技术问题 ??
- SSH获取radio单选框值 问题??????各位大虾帮忙看下!!
- java保存所有方法和参数日志,怎么弄???
- WEBLOGIC8 + ORACLE9 + HIBERNAET3 JNDI连接的问题
- Spring配置问题,新手请指导!
- socket问题,真大侠请进
- 如何读取weblogic中的WEB-INF下/classes/中的config.properties配置文件
- jbuilder9+weblogic8.1出现的错误,在线等待
import java.sql.*;/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2004</p>
* <p>Company: </p>
* @author not attributable
* @version 1.0
*/public abstract class ResultSetTableModel extends DefaultTableModel {
/**
Constructs the table model.
@param aResultSet the result set to display.
*/
public ResultSetTableModel(ResultSet aResultSet)
{
rs = aResultSet;
try
{
rsmd = rs.getMetaData();
}
catch(SQLException e)
{
e.printStackTrace();
}
} public String getColumnName(int c)
{
try
{
return rsmd.getColumnName(c + 1);
}
catch(SQLException e)
{
e.printStackTrace();
return "";
}
} public int getColumnCount()
{
try
{
return rsmd.getColumnCount();
}
catch(SQLException e)
{
e.printStackTrace();
return 0;
}
} /**
Gets the result set that this model exposes.
@return the result set
*/
protected ResultSet getResultSet()
{
return rs;
} protected void setRS(ResultSet rs)
{
this.rs=rs;
} private ResultSet rs;
private ResultSetMetaData rsmd;}import javax.swing.table.*;
import javax.swing.event.TableModelListener;
import javax.swing.event.TableModelEvent;
import java.sql.*;/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2004</p>
* <p>Company: </p>
* @author not attributable
* @version 1.0
*/public class ScrollingResultSetTableModel extends ResultSetTableModel {
/**
Constructs the table model.
@param aResultSet the result set to display.
*/
int pageRows=10;
int page=1;
int rows=0;
public ScrollingResultSetTableModel(ResultSet aResultSet)
{
super(aResultSet);
rows=this.getAllRows();
} public Object getValueAt(int r, int c)
{
try
{
ResultSet rs = getResultSet();
rs.absolute((page-1)*pageRows + r + 1);
return rs.getObject(c + 1);
}
catch(SQLException e)
{
return "";
}
} public int getRowCount()
{
return pageRows;
} public void setNextPage()
{
this.page++; } public void setPrevPage()
{
this.page--;
if(page<0) page=0;
} public void setPageRows(int pageRows)
{
this.pageRows=pageRows;
} public boolean isLast()
{
return (page*pageRows>rows||page*pageRows==rows); } public boolean isFirst()
{
return page==1;
} public int getAllRows()
{
try
{
ResultSet rs = getResultSet();
rs.last();
rows=rs.getRow();
rs.beforeFirst();
return rows;
}
catch(SQLException e)
{
e.printStackTrace();
return 0;
}
} public int getRows()
{
return rows;
} public void setResultSet(ResultSet rs)
{
super.setRS(rs);
page=1;
}}者是构造方法!
import java.sql.*;/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2004</p>
* <p>Company: </p>
* @author not attributable
* @version 1.0
*/public class JdbTable extends JTable {
ScrollingResultSetTableModel model;
public JdbTable(ResultSet rs)
{
model=new ScrollingResultSetTableModel(rs); this.setModel(model);
}
public JdbTable(ResultSet rs,int count)
{
model=new ScrollingResultSetTableModel(rs);
model.setPageRows(count);
this.setModel(model);
}
public ScrollingResultSetTableModel getModelImp()
{
return model;
}
}实现方法:
JScrollPane sp=new JScrollPane(new JdbTable(ResultSet rs,每次显示多少条记录))
用ScrollingResultSetTableModel.setNextPage(),ScrollingResultSetTableModel.setPrevPage(),来定位还可以改变ResultSet
小妹已经将数据添加到table中去了,只是我的JDBC不支持来回滚动(JDBC1.0版本),只能实现(resultSet rs ) rs.next(),不能实现rs.previous().
小妹想用Vector将rs中所有的纪录先保存到Vector中,然后对Vector进行操作,遇到以下问题:(rs中有10条记录,每条纪录有4个字段:商品代码 商品名 商品类型 进货价格)
我只能实现将每条记录的每个子段添加到Vector,此时的Vector相当于一个一维数组,这个数组有元素,即(data[40]).
怎样将一条记录添加到Vector中去,使Vector相当于一个二维数组,这个数组10行4列,即(data[10][4]).
注:我不想用数组代替Vector来实现上面的问题,因为rs中的字段类型不全一样,而数组的类型唯一,太麻烦。 小妹刚刚开始做java,求老蒋大哥帮忙,不胜感激!
{
Connection c=null;
try
{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
}
catch(Exception e)
{
e.printStackTrace();
}
c=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;databasename=hotel",
"sa","123456");
return c;
}
public Statement getStat() throws SQLException
{
Statement stat=null;
stat=getConn().createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
return stat;
}
public ResultSet getResultSet() throws SQLException
{
if(sql.equals(""))
return null;
rs=getStat().executeQuery(sql);
return rs;
}
昨天去逛了一下午书店,买了基本J2SE,基本的问题都解决了
嘿嘿,刚刚涉步JAVA,真难啊!我以前用过VB VC Delphi
这是第一次用JAVA谢谢啦!