永发信息网

java怎样将数据库的查询结果保存到数组中 ?

答案:4  悬赏:0  手机版
解决时间 2021-11-30 03:37
java怎样将数据库的查询结果保存到数组中 ?
最佳答案
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程[1]。
全部回答
ResultSet rs= query(sql) ;sql语句比如select name,password from usertable;怎样将查询结果存到两个数组name,password 中,不同的sql语句可能字段数和行数也不同,怎么编程实现对其他sql语句也适用?求具体例子!!
首先要取到结果集的大小。也就是一共多少记录。如果没有直接的方法得到结果集的长度,那么只能通过两个集合来记录长度。这样就按这个大小去new两个数组。对rs进行迭代,取出每行的name,password,分别赋值给两个数组。
简要代码
while(rs.next){
list1.add(rs.getString(name的列号(从0开始)));
list2.add(rs.getString(password的列号(从0开始)));
}
这样两个集合里面分别存放的是name,password,再把它们倒到数组里就行了。追问怎么把rsmd.getColumnName(i)获得的字段名作为数组的名称?也就是根据结果自动创建数组?追答这要用到一个方法。叫getRow()这个方法是取到结果集的列数。
//客户信息列表
public List CustomerInformationList(Object o, int start ,int end){
List list = new ArrayList();
String cust[]= new String[5];
CRMCustomerForm ccform =(CRMCustomerForm) o;
cust[1] = ccform.getCustomno();
cust[2] = ccform.getCustomname();
cust[3] = String.valueOf(start);
cust[4] = String.valueOf(end);
DBConnection db=new DBConnection(jdbcTemplate);
ResultSet rs=db.getRsFromSp("PCK_CRM_CUSTOMER.P_QUERYCustomer", cust);
try {
while(rs.next()){
CRMCustomerForm cform = new CRMCustomerForm();
cform.setCustomno(rs.getString("CUSTOMER_NO"));
cform.setCustomname(rs.getString("CUSTOMER_NAME"));
cform.setSex(rs.getString("SEX"));
cform.setIdCard(rs.getString("ID_CARD"));
cform.setCallName(rs.getString("CALL_NAME"));
cform.setDuty(rs.getString("DUTY"));
cform.setPhonework(rs.getString("PHONE_WORK"));
cform.setWorkunit(rs.getString("WORK_UNIT"));
cform.setPhonehome(rs.getString("PHONE_HOME"));
cform.setAddresshome(rs.getString("ADDRESS_HOME"));
cform.setMoble(rs.getString("MOBILE"));
cform.setEmail(rs.getString("EMAIL"));
cform.setZipcode(rs.getString("ZIPCODE"));
cform.setBirthDay(rs.getString("BIRTH_DATE"));
cform.setMarriage(rs.getString("MARRIAGE"));
cform.setBloodtype(rs.getString("BLOOD_TYPE"));
cform.setBirthplace(rs.getString("BIRTH_PALCE"));
cform.setNation(rs.getString("NATION"));
cform.setEducation(rs.getString("EDUCATION"));
cform.setCustomtype(rs.getString("CUSTOMER_TYPE"));
cform.setTeamcode(rs.getString("TEAM_CODE"));
cform.setIsvaid(rs.getString("ISVALID"));
cform.setRecorddate(rs.getString("RECORD_DATE"));
cform.setSyssno(rs.getString("SYSSNO"));
cform.setSpellsearch(rs.getString("SPELLSEARCH"));
cform.setWubisearch(rs.getString("WUBISEARCH"));
cform.setRemaks(rs.getString("REMARKS"));
list.add(cform);
}
} catch (SQLException e) {
System.out.println("您所以调用的查询方法有问题。");
e.printStackTrace();
}
return list;
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
刀塔传奇冰女好吗冰女怎么样后期如何
贷款5万,这样条件可以吗
CAD用起来卡卡的
7x减3.6等于2.35解方程
1/1+(2/1-1/2)+(3/1-2
gmod各种模式怎么玩
普通装修多少钱一平方米
我的G6现在变砖了,怎么办
我在腾讯now直播吃鸡,怎么弄才能让他们看不
由四舍五入得到的近似数0.01023精确到了_____
买一个魔方和四辆小汽车用了102元买一个魔方
TTL是数字电路而CMOS是模拟电路吗
示波器测量频率有什么优缺点?
4500日元折人民币多少钱?2016年7月
郑州有哪些小贷公司最好
推荐资讯
固色水彩买什么牌子好,软色粉买什么牌子好,
元胡种植施什么肥料?请教专家
PS直接获得当前图层选区的快捷键?
2015年化肥厂车间环保工作总结怎么写???
K436列车的起点站和终点站
假如中国也做到了像沙特这样,会怎样
核仁中的DNA只能转录成rRNA,tRNA,mRNA 只在
鼻子酸怎么办
斑块按其起源可分为哪些类型
做定点突变PCR时,如果模板加多了,会怎么样?
邢昭林接了哪部新剧?
柑橘一年植株,不想让其挂果,有什么方法打掉
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?