net.sf.json.JSONObject,将MySQL数据库的数据读出转化为json数据
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数据的更多相关文章
- JSON文件存入MySQL数据库
目标:将不同格式的JSON文件存入MySQL数据库 涉及的点有: 1. java处理JSON对象,直接见源码. 2. java.sql.SQLException: Incorrect string v ...
- 一张自增表里面总共有 7 条数据,删除了最后 2 条数据,重启 MySQL 数据库,又插入了一条数据,此时 id 是几?如何获取当前数据库版本?
一张自增表里面总共有 7 条数据,删除了最后 2 条数据,重启 MySQL 数据库,又插入了一条数据,此时 id 是几? 一般情况下,我们创建的表的类型是InnoDB,如果新增一条记录(不重启mysq ...
- Statement和PreparedStatement的特点 MySQL数据库分页 存取大对象 批处理 获取数据库主键值
1 Statement和PreparedStatement的特点 a)对于创建和删除表或数据库,我们可以使用executeUpdate(),该方法返回0,表示未影向表中任何记录 b)对于创建和 ...
- mysql数据库(一):建表与新增数据
一. 学习目标 理解什么是数据库,什么是表 怎样创建数据库和表(create) 怎样往表里插入数据(insert) 怎样修改表里的数据(update) 怎样删除数据库,表以及数据(delete) 二. ...
- MySQL 数据库中如何把A表的数据插入到B表?
web开发中,我们经常需要将一个表的数据插入到另外一个表,有时还需要指定导入字段,设置只需要导入目标表中不存在的记录,虽然这些都可以在程序中拆分成简单sql来实现,但是用一个sql的话,会节省大量代码 ...
- python连接mysql数据库,并进行添加、查找数据
1.删除MySQL数据表中的记录 DELETE FROM table_name WHERE condition; python操作mysql1数据库 import pymysql # 连接mysql数 ...
- Mysql数据库基础第四章DDL(数据定义语言):库表的管理、数据类型与约束条件
Mysql数据库基础系列 软件下载地址 提取码:7v7u 数据下载地址 提取码:e6p9 mysql数据库基础第一章:(一)数据库基本概念 mysql数据库基础第一章:(二)mysql环境搭建 mys ...
- python访问mysql将返回的表转化为json
## Licensed to the Apache Software Foundation (ASF) under one or more# contributor license agreement ...
- 获取一个表单字段中多条数据并转化为json格式
如图需要获取下面两个li标签里面的数据,然后传给后台:而后台接收的数据格式是json的,所以需要把两个li里面的信息转化为以下格式的. {recieverName:小红,recieverPhone:1 ...
- MySQL 数据库恢复一张表中的数据
如果使用 mysqldump -uroot -p123 user > test.sql备份了user数据库中的所有数据,但是当前只想要恢复该数据库的某张表数据,该怎么处理呢? 已知恢复整个数据库 ...
随机推荐
- spring boot整合poi实现excel文件导入导出实战
今天科比离去,今天肺炎病毒持续肆虐... 意识到生命的脆弱,今天我继续前行,比以往更加坚定和紧迫,这辈子不活好自己就算白来一趟. 1.项目介绍 最近帮朋友做了一个小工具,就是实现:上传一个excel文 ...
- win32 - 检查权限
检查当前句柄是否有指定的权限. #include <iostream> #include <windows.h> #include <tchar.h> //#pra ...
- go语言编程常见问题
在Goland中运行单元测试报错Error: Cannot find package 如下图,在Goland中运行单元测试时报错:"Error: Cannot find package&qu ...
- Qt实用技巧:Qt从QtCreator更换为VS开发Qt所需要注意的坑
前言 基本都是使用QtCreator开发,使用vs进行一下开发,记录从QtCreator换成VS所遇到的注意的坑. VS装对应的Qt版本助手配置Qt版本 VS装番茄助手 这里 ...
- context讲解
context包 context包介绍 在go语言中,每个独立调用一般都会被单独的协程处理.但在处理一个请求时,往往可能需要在多个协程之间进行信息传递,甚至包括一层层地递进顺序传递,而且这种信息往 ...
- python模块imghdr-----推测图像类型
官方文档 https://docs.python.org/zh-cn/3/library/imghdr.html#module-imghdr 用处 模块推测文件或字节流中的图像的类型 imghdr.w ...
- Centos下配置python环境
https://blog.csdn.net/longzhoufeng/article/details/109879818
- springboot-@Async默认线程池导致OOM问题
目录 内存溢出的三种类型: 初步分析: 代码分析: 最终解决办法: 内存溢出的三种类型: 第一种OutOfMemoryError: PermGen space,发生这种问题的原意是程序中使用了大量的j ...
- DataGear 制作支持表单交互和多图表联动的数据可视化看板
对于数据可视化,有时需要根据用户输入的查询条件展示限定范围的数据图表,DataGear的看板表单功能可以快速方便地实现此类需求. 下面的看板示例,包含一个柱状图.一个饼图和一个地图,用户可以通过看板表 ...
- 【Azure 环境】各种语言版本或命令,发送HTTP/HTTPS的请求合集
问题描述 写代码的过程中,时常遇见要通过代码请求其他HTTP,HTTPS的情况,以下是收集各种语言的请求发送,需要使用的代码或命令 一:PowerShell Invoke-WebRequest htt ...