在java中如何将数组里的数据存入数据库呢?

在java中如何将数组里的数据存入数据库呢?,第1张

保存字节数组数据库分两步:

第一、利用FileInputStream.read(byte[])方法把内容读取到byte[]数组中,比如图片是由二进制数组成的,就可以定义为一个字节数组。

第二、在数据库中对应记录字段应该设置为blob类型,这样就能够顺利保存了

事例代码如下:

PreparedStatement stmt = connection.generatePreparedStatement("INSERT INTO ... ")

stmt.setBytes(1, yourByteArray)

其中,yourByteArray是你读出来的字符数组。

mysql数据库

SELECT id FROM good WHERE id<10

id

1

2

3

4

5

6

7

8

9

SELECT GROUP_CONCAT(id) FROM good WHERE id<10

1,2,3,4,5,6,7,8,9

进行了行转列

利用java的split对逗号进行分割,输出的就是数组。

方法二

查询出来存入list中,然后循环list,给数组赋值就行

一个表里的某条数据还是一个表里某个字段下所有的数据?

看看是不是你要的效果。

public class TestColumnToArray {

public static void main(String[] args) {

TestColumnToArray instance = new TestColumnToArray()

instance.connDB()

List<Map<String, Object>>list = instance.findColumn()

Object[] data = instance.getData(list, "。。。")//。。。换成要查得字段

for (Object object : data) {

System.out.println(object)

}

}

private Object[] getData(List<Map<String, Object>>list, String column) {

Object[] data = new Object[list.size()]

for (int i = 0i <list.size()i++) {

data[i] = list.get(i).get(column)

}

return data

}

private void connDB() {

try {

Class.forName("com.mysql.jdbc.Driver")

} catch (ClassNotFoundException e) {

System.err.println("驱动加载失败!")

}

}

private List<Map<String, Object>>findColumn() {

List<Map<String, Object>>list = new ArrayList<Map<String,Object>>()

Connection conn = null

Statement stmt = null

ResultSet rs = null

String sql = "select * from 。。。"//。。。换成表名

try {

conn = DriverManager.getConnection("。", "。。", "。。。")//。换成url。。换成数据库账户。。。换成数据库密码

stmt = conn.createStatement()

rs = stmt.executeQuery(sql)

while (rs.next()) {

Map<String, Object>map = new HashMap<String, Object>()

map.put("。。。", rs.getInt(1))//。。。换成列名

map.put("。。。", rs.getInt(2))

map.put("。。。", rs.getInt(3))

list.add(map)

}

} catch (SQLException e) {

System.err.println("数据库读取失败!")

} finally {

try {

if (rs != null) rs.close()

if (stmt != null) stmt.close()

if (conn != null) conn.close()

} catch (SQLException e) {}

}

return list

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9697607.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存