maven依赖:

1     <dependency>
2 <groupId>net.sf.json-lib</groupId>
3 <artifactId>json-lib</artifactId>
4 <version>2.2.3</version>
5 <classifier>jdk13</classifier>
6 </dependency>

源代码:

 1 package com.reliable.service;
2 import net.sf.json.JSONArray;
3 import net.sf.json.JSONObject;
4 import com.reliable.dao.ReadDB;
5 import com.reliable.util.JDBCUtil;
6 import java.sql.Connection;
7 import java.sql.PreparedStatement;
8 import java.sql.ResultSet;
9 import java.sql.SQLException;
10 import java.util.*;
11
12 public class ReadDBImpl implements ReadDB {
13 private PreparedStatement preparedStatement=null;
14 private Connection conn =null;
15 private ResultSet resultSet=null;
16 @Override
17 public void getAllDbData() throws SQLException {
18 HashMap<String, String> map = new HashMap<>();
19 ArrayList<String> list = new ArrayList<String>();
20 conn= JDBCUtil.getConnection();
21 if(conn!=null)
22 {
23 System.out.println("数据库连接成功!");
24 }
25 preparedStatement=conn.prepareStatement("select * from hello;");
26 resultSet = preparedStatement.executeQuery();
27 while(resultSet.next()) {
28 String name= resultSet.getString(1);
29 String sex =resultSet.getString(2);
30 String age= resultSet.getString(3);
31 list.add(name+","+sex+" "+age);
32 }
33 for (int i=0;i<list.size();i++)
34 {
35 map.put(String.valueOf(i),list.get(i));
36 }
37 JSONObject jo = JSONObject.fromObject(map);
38 // System.out.println(jo);
39
40 //遍历 01
41 Set<String> keys = map.keySet(); //map.keySet()返回key的集合
42 for(String key:keys) {
43 System.out.println(key+":"+map.get(key)); //map.get(key)返回key所对应的value值
44 }
45 System.out.println("--------------------------");
46 //遍历 02
47 Iterator<String> it02 = keys.iterator();
48 String key;
49 while (it02.hasNext()) {
50 key = it02.next();
51 System.out.println(key+":"+map.get(key));
52 }
53 System.out.println("--------------------------");
54 //遍历 03
55 Set<Map.Entry<String,String>> entrySet = map.entrySet(); //map.entrySet()返回<key,value>键值对的集合
56 for (Map.Entry<String,String> entry:entrySet) {
57 System.out.println(entry.getKey()+":"+entry.getValue()); //entry.getKey()返回key,entry.getValue()返回value
58 }
59 //遍历 04
60 System.out.println("--------------------------");
61 Iterator<Map.Entry<String,String>> it04 = entrySet.iterator();
62 Map.Entry<String,String> entry;
63 while (it04.hasNext()) {
64 entry = it04.next();
65 System.out.println(entry.getKey()+":"+entry.getValue());
66 }
67 JDBCUtil.release(conn,preparedStatement);
68 }
69 }

运行结果:

net.sf.json.JSONObject,将MySQL数据库的数据读出转化为json数据的更多相关文章

  1. JSON文件存入MySQL数据库

    目标:将不同格式的JSON文件存入MySQL数据库 涉及的点有: 1. java处理JSON对象,直接见源码. 2. java.sql.SQLException: Incorrect string v ...

  2. 一张自增表里面总共有 7 条数据,删除了最后 2 条数据,重启 MySQL 数据库,又插入了一条数据,此时 id 是几?如何获取当前数据库版本?

    一张自增表里面总共有 7 条数据,删除了最后 2 条数据,重启 MySQL 数据库,又插入了一条数据,此时 id 是几? 一般情况下,我们创建的表的类型是InnoDB,如果新增一条记录(不重启mysq ...

  3. Statement和PreparedStatement的特点 MySQL数据库分页 存取大对象 批处理 获取数据库主键值

    1 Statement和PreparedStatement的特点   a)对于创建和删除表或数据库,我们可以使用executeUpdate(),该方法返回0,表示未影向表中任何记录   b)对于创建和 ...

  4. mysql数据库(一):建表与新增数据

    一. 学习目标 理解什么是数据库,什么是表 怎样创建数据库和表(create) 怎样往表里插入数据(insert) 怎样修改表里的数据(update) 怎样删除数据库,表以及数据(delete) 二. ...

  5. MySQL 数据库中如何把A表的数据插入到B表?

    web开发中,我们经常需要将一个表的数据插入到另外一个表,有时还需要指定导入字段,设置只需要导入目标表中不存在的记录,虽然这些都可以在程序中拆分成简单sql来实现,但是用一个sql的话,会节省大量代码 ...

  6. python连接mysql数据库,并进行添加、查找数据

    1.删除MySQL数据表中的记录 DELETE FROM table_name WHERE condition; python操作mysql1数据库 import pymysql # 连接mysql数 ...

  7. Mysql数据库基础第四章DDL(数据定义语言):库表的管理、数据类型与约束条件

    Mysql数据库基础系列 软件下载地址 提取码:7v7u 数据下载地址 提取码:e6p9 mysql数据库基础第一章:(一)数据库基本概念 mysql数据库基础第一章:(二)mysql环境搭建 mys ...

  8. python访问mysql将返回的表转化为json

    ## Licensed to the Apache Software Foundation (ASF) under one or more# contributor license agreement ...

  9. 获取一个表单字段中多条数据并转化为json格式

    如图需要获取下面两个li标签里面的数据,然后传给后台:而后台接收的数据格式是json的,所以需要把两个li里面的信息转化为以下格式的. {recieverName:小红,recieverPhone:1 ...

  10. MySQL 数据库恢复一张表中的数据

    如果使用 mysqldump -uroot -p123 user > test.sql备份了user数据库中的所有数据,但是当前只想要恢复该数据库的某张表数据,该怎么处理呢? 已知恢复整个数据库 ...

随机推荐

  1. spring boot整合poi实现excel文件导入导出实战

    今天科比离去,今天肺炎病毒持续肆虐... 意识到生命的脆弱,今天我继续前行,比以往更加坚定和紧迫,这辈子不活好自己就算白来一趟. 1.项目介绍 最近帮朋友做了一个小工具,就是实现:上传一个excel文 ...

  2. win32 - 检查权限

    检查当前句柄是否有指定的权限. #include <iostream> #include <windows.h> #include <tchar.h> //#pra ...

  3. go语言编程常见问题

    在Goland中运行单元测试报错Error: Cannot find package 如下图,在Goland中运行单元测试时报错:"Error: Cannot find package&qu ...

  4. Qt实用技巧:Qt从QtCreator更换为VS开发Qt所需要注意的坑

    前言   基本都是使用QtCreator开发,使用vs进行一下开发,记录从QtCreator换成VS所遇到的注意的坑.   VS装对应的Qt版本助手配置Qt版本        VS装番茄助手   这里 ...

  5. context讲解

    context包 context包介绍 ​ 在go语言中,每个独立调用一般都会被单独的协程处理.但在处理一个请求时,往往可能需要在多个协程之间进行信息传递,甚至包括一层层地递进顺序传递,而且这种信息往 ...

  6. python模块imghdr-----推测图像类型

    官方文档 https://docs.python.org/zh-cn/3/library/imghdr.html#module-imghdr 用处 模块推测文件或字节流中的图像的类型 imghdr.w ...

  7. Centos下配置python环境

    https://blog.csdn.net/longzhoufeng/article/details/109879818

  8. springboot-@Async默认线程池导致OOM问题

    目录 内存溢出的三种类型: 初步分析: 代码分析: 最终解决办法: 内存溢出的三种类型: 第一种OutOfMemoryError: PermGen space,发生这种问题的原意是程序中使用了大量的j ...

  9. DataGear 制作支持表单交互和多图表联动的数据可视化看板

    对于数据可视化,有时需要根据用户输入的查询条件展示限定范围的数据图表,DataGear的看板表单功能可以快速方便地实现此类需求. 下面的看板示例,包含一个柱状图.一个饼图和一个地图,用户可以通过看板表 ...

  10. 【Azure 环境】各种语言版本或命令,发送HTTP/HTTPS的请求合集

    问题描述 写代码的过程中,时常遇见要通过代码请求其他HTTP,HTTPS的情况,以下是收集各种语言的请求发送,需要使用的代码或命令 一:PowerShell Invoke-WebRequest htt ...