我是靠谱客的博主 风中小蝴蝶,最近开发中收集的这篇文章主要介绍求助各位大神,我使用List存储数据库的所有数据,但是最后遍历出来的,只有最后的那一条数据,求助求助!**,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

求助各位大神,我使用List存储数据库的所有数据,但是最后遍历出来的,只有最后的那一条数据,求助求助!

public class InformationList {//------------------首先是我建立的一个pojo
//首先定义了6个变量,int类型的id,double类型的money,和String类型的date(时间)、name(名字)、type(记录类型)、other(备注)
private int id;
private double money;
private String date,name,type,other;

public int getId() {
	return id;
}

public void setId(int id) {
	this.id = id;
}


public double getMoney() {
	return money;
}

public void setMoney(double money) {
	this.money = money;
}


public String getDate() {
	return date;
}

public void setDate(String date) {
	this.date = date;
}


public String getName() {
	return name;
}

public void setName(String name) {
	this.name = name;
}


public String getOther() {
	return other;
}

public void setOther(String other) {
	this.other = other;
}

public String getType() {
	return type;
}

public void setType(String type) {
	this.type = type;
}

}

然后就是我在JFrame画的一个界面图

初始界面

接着就是我的自己构建的数据库操作方法之一

public List<InformationList> getList(String Table)//Tbale是数据表的名字
{
	List<InformationList> list = new ArrayList<InformationList>();//-----------------创建一个存储对象
	con = UseSQL.getConnection();//---------------------连接数据库
	String sql = "select * from " + Table; //---------操作数据库的语句
	try {
		stm = con.createStatement();
		rs = stm.executeQuery(sql); //----------提交SQL语句,并且获取数据

		while(rs.next())  //循环---输出数据
		{
			InformationList info = new InformationList(); //这是我的pojo类进行输出 PS:网上好多网友都是说这一句话没有
														  //没有放进 while 循环里面,但是我的已经放进去了呀,可还是只读
														  //取出最后一行数据
			info.setId(rs.getInt(1));
			info.setDate(rs.getString(2));
			info.setName(rs.getString(3));
			info.setMoney(rs.getDouble(4));
			info.setType(rs.getString(5));
			info.setOther(rs.getString(6));
			
			list.add(info); //记录到我的存储对象中
		}
		
	} catch (SQLException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
	return list;
}

那么是时候放出我在JFrame中的 Button 添加的事件了。

	JScrollPane scrollPane = new JScrollPane(); //--------------------滚动面板
	scrollPane.setBounds(10, 63, 398, 188);
	contentPane.add(scrollPane);
	
	String head[] = {"id","date","name","money","type","other"};//------table中出现的初始信息
	String a[][] = new String[10][head.length];
	
	table_1 = new JTable(); //-----------------------在面板中出现的Table
	scrollPane.setViewportView(table_1);
	
	JButton btnNewButton = new JButton("New button");
	btnNewButton.setBounds(146, 10, 93, 23);
	contentPane.add(btnNewButton);
	btnNewButton.addActionListener(new ActionListener() {
		
		@Override
		public void actionPerformed(ActionEvent e) {
			
			UseSQL uss = new UseSQL(); //-----------UseSQL是我操作数据库所建立的类的名字
			List<InformationList> list =  uss.getList("1_1");//-----1_1是我的数据表的名字
			
			String head[] = {"id","date","name","money","type","other"};//------表头
			String a[][] = new String[10][head.length];
			
			for(int i = 0;i < list.size(); i++)//----------获取List里面有多少行数据
			{
				for(InformationList j : list)//-----用我的pojo新建对象 j 来遍历list
				{
					int id = j.getId();                         /*这两行是我用来转换id数据类型的
					String str = String.valueOf(id);            */
					a[i][0] = str;//--------输出id数值
					a[i][1] = j.getDate();//----输出日期
					a[i][2] = j.getName();//-----输出名字
					Double dd = j.getMoney();//-----转换 money的类型
					String ad = String.valueOf(dd);//-----转换 money的类型
					a[i][3] = ad;//-----------------------输出money
					a[i][4] = j.getType();//-----输出记录类型
					a[i][5] = j.getOther();//-----输出备注
				}
			}
			
			table_1 = new JTable(a,head); //在这里面新建一个Table然后覆盖原本的Table做到更新数据的表象
			scrollPane.setViewportView(table_1);//在滚动面板输出Table
		}
	});
}

结果就是这个样子:

在这里插入图片描述

各位大神请指点一个我这个菜鸟,或者加我QQ帮助一下我,谢谢。(QQ请留言或者私聊我)。

最后

以上就是风中小蝴蝶为你收集整理的求助各位大神,我使用List存储数据库的所有数据,但是最后遍历出来的,只有最后的那一条数据,求助求助!**的全部内容,希望文章能够帮你解决求助各位大神,我使用List存储数据库的所有数据,但是最后遍历出来的,只有最后的那一条数据,求助求助!**所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部