在JAVA中获取来自SQL查询的所有行的JSON,可以通过以下步骤实现:
以下是一个示例代码:
import java.sql.*;
import org.json.*;
public class Main {
public static void main(String[] args) {
// 数据库连接信息
String url = "jdbc:mysql://localhost:3306/mydatabase";
String username = "root";
String password = "password";
try {
// 建立数据库连接
Connection connection = DriverManager.getConnection(url, username, password);
// 执行SQL查询语句
String sql = "SELECT * FROM mytable";
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery(sql);
// 创建JSONArray对象
JSONArray jsonArray = new JSONArray();
// 遍历结果集
while (resultSet.next()) {
// 创建JSONObject对象
JSONObject jsonObject = new JSONObject();
// 获取每一列的值,并添加到JSONObject中
int id = resultSet.getInt("id");
String name = resultSet.getString("name");
int age = resultSet.getInt("age");
jsonObject.put("id", id);
jsonObject.put("name", name);
jsonObject.put("age", age);
// 将JSONObject添加到JSONArray中
jsonArray.put(jsonObject);
}
// 将JSONArray转换为JSON字符串
String jsonString = jsonArray.toString();
System.out.println(jsonString);
// 关闭连接
resultSet.close();
statement.close();
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
上述代码中,假设数据库连接信息为localhost:3306/mydatabase,用户名为root,密码为password。查询的表名为mytable,包含id、name和age三列数据。代码中使用了JSON库的JSONArray和JSONObject来处理JSON数据。
推荐的腾讯云相关产品:腾讯云数据库MySQL、腾讯云云服务器(CVM)。
腾讯云数据库MySQL产品介绍链接地址:https://cloud.tencent.com/product/cdb
腾讯云云服务器(CVM)产品介绍链接地址:https://cloud.tencent.com/product/cvm
云+社区沙龙online [国产数据库]
Elastic 中国开发者大会
云原生正发声
DBTalk
DB TALK 技术分享会
Elastic 实战工作坊
Elastic 实战工作坊
Elastic 中国开发者大会
云+社区技术沙龙 [第30期]
领取专属 10元无门槛券
手把手带您无忧上云