java 的 getListBySQL
时间: 2024-03-24 16:39:49 浏览: 18
在 Java 中,getListBySQL 可以使用 JDBC API 来实现。JDBC 是 Java 数据库连接的标准 API,可用于连接多种关系型数据库。
以下是一个简单的 getListBySQL 实现示例:
```java
public List<Map<String, Object>> getListBySQL(String sql) throws SQLException {
List<Map<String, Object>> resultList = new ArrayList<>();
// 连接数据库
Connection conn = DriverManager.getConnection(url, username, password);
// 创建 Statement 对象
Statement stmt = conn.createStatement();
// 执行查询语句
ResultSet rs = stmt.executeQuery(sql);
// 处理结果集
ResultSetMetaData meta = rs.getMetaData();
int colCount = meta.getColumnCount();
while (rs.next()) {
Map<String, Object> row = new HashMap<>();
for (int i = 1; i <= colCount; i++) {
String colName = meta.getColumnLabel(i);
Object colValue = rs.getObject(i);
row.put(colName, colValue);
}
resultList.add(row);
}
// 关闭连接
rs.close();
stmt.close();
conn.close();
return resultList;
}
```
这个方法会返回一个 List,其中每个元素都是一个 Map,表示一行数据。Map 的 key 是列名,value 是对应的数据值。需要注意的是,这个实现中没有对 SQL 注入进行防护,因此在实际应用中需要做好安全措施。