java 怎么把数据库中符合条件的数据一条条的添加到list里面

yff1029 2013-03-24 04:03:21
java 怎么把数据库中符合条件的数据一条条的添加到list里面
...全文
1814 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
student-ai 2013-03-26
  • 打赏
  • 举报
回复
引用 10 楼 yff1029 的回复:
引用 8 楼 dcxy0 的回复:直接上代码,自己整合一下把. Java code ? 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 public java.util.Li……
你加我QQ 877470746 发你完整的。
student-ai 2013-03-26
  • 打赏
  • 举报
回复
引用 10 楼 yff1029 的回复:
引用 8 楼 dcxy0 的回复:直接上代码,自己整合一下把. Java code ? 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 public java.util.Li……
没看到你用list啊.
  • 打赏
  • 举报
回复
引用 9 楼 gw790183650 的回复:
用ibatis框架,有一个访问数据库的接口直接返回一个List,很方便,不用自己封装
正解 <resultMap class="behhomevis" id="behhomevis"> <result property="id" column="id" javaType="java.lang.String" jdbcType="VARCHAR" /> <result property="staffId" column="staff_id" javaType="java.lang.String" jdbcType="VARCHAR" /> <result property="sysRecTime" column="sys_rec_time" javaType="java.util.Date" jdbcType="DATE" /> <result property="recRefTime" column="rec_ref_time" javaType="java.util.Date" jdbcType="DATE" /> <result property="visWay" column="vis_way" javaType="java.lang.String" jdbcType="VARCHAR" /> <result property="perNam" column="per_nam" javaType="java.lang.String" jdbcType="VARCHAR" /> <result property="visPer" column="vis_per" javaType="java.lang.String" jdbcType="VARCHAR" /> <result property="visDat" column="vis_dat" javaType="java.util.Date" jdbcType="DATE" /> <result property="visSta" column="vis_sta" javaType="java.lang.String" jdbcType="VARCHAR" /> <result property="attachment" column="attachment" javaType="java.lang.String" jdbcType="VARCHAR" /> </resultMap> <select id="PlantixStudioGenerated_findBehhomevisByKey" parameterClass="behhomevis" resultMap="behhomevis"> select id, staff_id, sys_rec_time, rec_ref_time, vis_way, per_nam, vis_per, vis_dat, vis_sta,attachment from BEH_HOME_VIS where id=#id:VARCHAR# </select>
yff1029 2013-03-25
  • 打赏
  • 举报
回复
引用 8 楼 dcxy0 的回复:
直接上代码,自己整合一下把. Java code ? 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 public java.util.List<String> query(String sql) t……
java.sql.Statement stmt7=dbConn.createStatement(); ResultSet rs7=stmt7.executeQuery("SELECT cdid,cdname,lenddate FROM lend_info where readerid='"+y+"'"); java.sql.Statement stmt8=dbConn.createStatement(); ResultSet rs8=stmt8.executeQuery("SELECT count(*) FROM lend_info where readerid='"+y+"'"); rs8.next(); int x7=rs8.getInt(1); z[7]=String.valueOf(x7); ResultSetMetaData rsm = rs7.getMetaData(); int count = rsm.getColumnCount(); while( rs7.next()){ for (int j=9;j<9+x7;j++){ z[j]=" "; for(int i=1;i<=count;i++){ z[j] +=rs7.getString(i)+" ";} } } return z; 这个的结果是重复出现最后一条信息 而不是把所有的都出现 为什么呢
给力熊猫伟 2013-03-24
  • 打赏
  • 举报
回复
用ibatis框架,有一个访问数据库的接口直接返回一个List,很方便,不用自己封装
student-ai 2013-03-24
  • 打赏
  • 举报
回复
直接上代码,自己整合一下把.


public java.util.List<String> query(String sql) throws SQLException {
		java.util.List<String> list = new java.util.ArrayList<String>();
		Statement st = conn.createStatement();
		ResultSet rs = st.executeQuery(sql);
		//String[] COLNAMES = dealSQL(sql, rs);
		list = getResultSet(rs);
		ExConnections.close(conn);
		return list;
	}


//读取ResultSet里面的内容.

private java.util.List<String> getResultSet(ResultSet rs) throws SQLException {
		java.util.List<String> list = new java.util.ArrayList<String>();
		String reads = "";
		String COLTitle = "";
		boolean addTitle = false;
		ResultSetMetaData rsm = rs.getMetaData();
		int count = rsm.getColumnCount();
		while (rs.next()) {
			for (int i = 1; i <= count; i++) {
					reads += rs.getString(i) + "\t\t";//
				COLTitle += rsm.getColumnName(i) +"\t\t";
				if (i == count) {// When you arrive at the last column,
											// the data added to the list.
					if (addTitle == false) {
						list.add(COLTitle);
						list.add("-------------------------------------------------------------------\n");
						addTitle = true;
					}

					// System.out.println(COLname);
					list.add(reads);
					reads = "";
				}
			}
		}
		ExConnections.close(rs);
		return list;
	}















yff1029 2013-03-24
  • 打赏
  • 举报
回复
引用 6 楼 w284826009 的回复:
函数中带个形参不就好了
传什么值过去呢 是生成的段(那怎么控制循环次数) ???
w284826009 2013-03-24
  • 打赏
  • 举报
回复
函数中带个形参不就好了
SUPERFISH 2013-03-24
  • 打赏
  • 举报
回复
rs=ps.executeQuery(); ResultSetMetaData rmd=null; while(rs.next()){ rmd=rs.getMetaData(); Map<String,Object> map=new HashMap<String,Object>(); for(int i=1;i<=rmd.getColumnCount();i++){ map.put(rmd.getColumnName(i),rs.getObject(i)); } result.add(map); }
yff1029 2013-03-24
  • 打赏
  • 举报
回复
引用 1 楼 w284826009 的回复:
你应该会连数据库 取到ResultSet结果集吧!如果不会就别往下看了 拿到结果集后 ResultSet rs=(将sql取到的集赋值到rs吧) List li=new List(); Bean(你自己写的Bean) b=new Bewn() while(rs.next()) { li.add(b.setxxxx(rs.getxxxx("要去列的字段名"))); }
恩 我是数据库操作写在一个函数中,界面写在另个函数中 怎么传值呢
Candylibin 2013-03-24
  • 打赏
  • 举报
回复
遍历你从数据库中查到的数据,判断条件,符合add()
w284826009 2013-03-24
  • 打赏
  • 举报
回复
补充: 符合 条件的数据就是sql 语句 多个where条件 而已!
w284826009 2013-03-24
  • 打赏
  • 举报
回复
你应该会连数据库 取到ResultSet结果集吧!如果不会就别往下看了 拿到结果集后 ResultSet rs=(将sql取到的集赋值到rs吧) List li=new List(); Bean(你自己写的Bean) b=new Bewn() while(rs.next()) { li.add(b.setxxxx(rs.getxxxx("要去列的字段名"))); }

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧