java 将数据库中的每一条数据取出放入数组或者List中
1、如何将数据库中数据按照行(即一整条数据)取出来,存入到数组当中?
public static String str = null; // 将StringBuffer转化成字符串
public static StringBuffer sb = new StringBuffer(); // StringBuffer便于字符串的增删改查操作 public static void main(String[] args) { String className = "net.sourceforge.jtds.jdbc.Driver";
String url = "jdbc:jtds:sqlserver://localhost:3306/test";
String dbusername = "shujuku"; // 数据库的名字
String password = "mima"; // 密码
// 加载驱动
try {
Class.forName(className);
// 建立连接
Connection conn;
try {
conn = DriverManager.getConnection(url, dbusername, password);
Statement stat = conn.createStatement();
String sql = "select * from test"; // 将数据从数据库中读取出来
ResultSet rs = stat.executeQuery(sql); // 从ResultSet中将数据取出(假如数据库中每条数据有7列数据)
while (rs.next()) {
sb.append(rs.getString(1)); // 读出每一列的数据
sb.append("*"); // 在每列数据后面做标记,将来便于做拆分
sb.append(rs.getString(2));
sb.append("*");
sb.append(rs.getString(3));
sb.append("*");
sb.append(rs.getString(4));
sb.append("*");
sb.append(rs.getString(5));
sb.append("*");
sb.append(rs.getString(6));
sb.append("*");
sb.append(rs.getString(7));
sb.append("%"); // 在每条数据后面做标记,便于拆分
}
str = sb.toString(); // 将数据由StringBuffer类型转化成String类型
String datas;
// 将总数据以指定字符分割成数组,每条数据为数组的一项
String[] params = StringUtils.split(str, "%");
//将每条数据再拆分,则param数据保存的是一条数据的每一项数据
for (int i = 0; i < params.length; i++) {
String[] param = StringUtils.split(this.rawData, "*");
//将数据进行你希望的操作,我进行的操作是对每条数据处理,然后再存入数据库另一张表中
}
2、如何存到List里面?
while(rs.next()){
Map<String ,Object> map=new HashMap<String, Object>();
map.put("id",rs.getString(1));
map.put("itemName",rs.getString(2));
map.put("version",rs.getString(3));
map.put("contents",rs.getString(4));
map.put("account",rs.getString(5));
map.put("psw",rs.getString(6));
map.put("tyTime",rs.getString(7));
listDatas.add(map);
}
那么问题又来了:
问:假如我将ResultSet中的数据存到了List<Map<>>中,请问,如何将List里面的数据取出来?
答:可以先for循环,取出来List中的每条数据(Map<>形式的),放到一个Map中,再把Map中的数据取出来存到String数组当中
例如:
for(int i=0;i<list.size();i++){
Map dqMap = (Map)list.get(i);
String jqh = dqMap.get('jqh');
String khh = dqMap.get('khh');
}
好了,我只能帮到这里了,注意下,这个是我手改了一下之前做的项目里面的代码,把隐私的数据去掉了,但是没运行代码,应该没错,这是我根据项目要求自己琢磨的对ResultSet的处理方式,至于好不好就不知道了,仅供参考了。
java 将数据库中的每一条数据取出放入数组或者List中的更多相关文章
- java 将MySql数据库中的数据(某一列)取出放入数组中 转
转:http://blog.csdn.net/ewili/article/details/8605638 假设mysql中test数据库中有个表式score,有数据,我只取第一列的数据出来: publ ...
- laravel如何从mysql数据库中随机抽取n条数据
laravel如何从mysql数据库中随机抽取n条数据 一.总结 一句话总结: inRandomOrder():$userQuestions=UserQuestion::where($map)-> ...
- SELECT INTO和INSERT INTO SELECT的区别 类似aaa?a=1&b=2&c=3&d=4,如何将问号以后的数据变为键值对 C# 获取一定区间的随即数 0、1两个值除随机数以外的取值方法(0、1两个值被取值的概率相等) C# MD5 加密,解密 C#中DataTable删除多条数据
SELECT INTO和INSERT INTO SELECT的区别 数据库中的数据复制备份 SELECT INTO: 形式: SELECT value1,value2,value3 INTO Ta ...
- mysql中造3千条数据(3种方法)
方法一:存储过程 1.存储过程如下: delimiter $$ DROP PROCEDURE IF EXISTS data CREATE PROCEDURE data(in i int) BEGIN ...
- mysql-利润set变量模拟分组查询每组中的第N条数据
查询思路: 很多时候想在使用group by时想查询group by的每一组中的第N条数据,而取这些数据时往往按如下方式去执行则很慢 ; 按如上方式,对于数据10000左右的表就已经很吃不消. 或已拼 ...
- 转: 从Mysql某一表中随机读取n条数据的SQL查询语句
若要在i ≤ R ≤ j 这个范围得到一个随机整数R ,需要用到表达式 FLOOR(i + RAND() * (j – i + 1)).例如, 若要在7 到 12 的范围(包括7和12)内得到一个随机 ...
- sql 查询某个条件多条数据中最新的一条数据或最老的一条数据
sql 查询某个条件下多条数据中最新的一条数据或最老的一条数据 test_user表结构如下: 需求:查询李四.王五.李二创建的最初时间或者最新时间 1:查询最初的创建时间: SELECT * FRO ...
- 键盘录入一个文件夹路径,统计该文件夹(包含子文件夹)中每种类型的文件及个数,注意:用文件类型(后缀名,不包含.(点),如:"java","txt")作为key, 用个数作为value,放入到map集合中,遍历map集合
package cn.it.zuoye5; import java.io.File;import java.util.HashMap;import java.util.Iterator;import ...
- 从Mysql某一表中随机读取n条数据的SQL查询语句
若要在i ≤ R ≤ j 这个范围得到一个随机整数R ,需要用到表达式 FLOOR(i + RAND() * (j – i + 1)).例如, 若要在7 到 12 的范围(包括7和12)内得到一个随机 ...
随机推荐
- linux(centos7.0以上)下对mysql数据库的导入导出
1:查看mysql安装路径: 指令 ps -ef|grep mysql 得出结果 root 968 1 0 18:25 ? 00:00:00 /bin/sh /usr/local/mysql/bin/ ...
- C语言如何操作内存
1.用变量名来访问内存(c语言对内存地址的封装.数据类型.函数名)--直接访问内存(使用地址) 如 int a; 编译器将申请32bit的内存(4个内存单元),同时将内存地址和变量名a绑定,操作a时, ...
- How to increase timeout for your ASP.NET Application ?
How to increase timeout for your ASP.NET Application ? 原文链接:https://www.techcartnow.com/increase-tim ...
- APP性能
一.APP性能维度分析 APP类型众多,根据具体类型划分,性能指标的维度和优先级各不相同.视频类APP归属于娱乐游戏型的APP,因此性能测试维度优先级排序为:流畅度.crash.内存.流量.响应时长 ...
- ios UIWebView加载HTMLStr图文,关于图片宽高设置,webView内容实际高度的踩坑问题
一.关于UIWebView 与 WKWebView 选取问题 从发布时间看: 2008年7月11日,在新一代iPhone3G正式发售当天,iPhone OS 2.0(iOS 2.0)推出,这时候就有U ...
- C++ CMake 入门实战[转载]
C++ CMake 入门实战 2016-11-05 CMake用于跨平台的编译系统,对于通常的c/c++工程,都是通过make来进行编译的,CMake可以通过指令生成Makefile文件来指导整个项目 ...
- nginx中break和last的区别
一.环境准备 资源文件创建 mkdir -p /opt/tmp/wqy/test/aaa mkdir -p /opt/tmp/wqy/test/bbb echo "aaa" > ...
- Email常用缩写
Abbreviations Used in email Abbreviation Meanings ATM at the moment AFAIK as far as I know BTW by th ...
- HTML表单(来自MDN的总结)
表单介绍 HTML表单是用户和web站点或应用程序之间交互的主要内容之一.它们允许用户将数据发送到web站点.大多数情况下,数据被发送到web服务器,但是web页面也可以拦截它自己并使用它. HTML ...
- opencv 环境配置-windowsx64 +VS2017
opencv版本为4.1.1官方最新版本, https://sourceforge.net/projects/opencvlibrary/ 先配置本地工程环境: 右键我的电脑-属性 将bin的路径添加 ...