java用fileReader可以把.conf文件中的内容按行读取出来,然后要怎样把读取出的数据保存在数据库表中去?
文件每行的内容都是类似这样的:Product.Serial=010Beep.EnableLevel=1等号前后就是对应数据库表中的两列,可以说相当于等号前是id,等号后面...
文件每行的内容都是类似这样的:
Product.Serial=010
Beep.EnableLevel=1
等号前后就是对应数据库表中的两列,可以说相当于等号前是id,等号后面的是content。。我是java新手,对于怎么保存没什么思路。求大神指点下思路和小方法!!
说错了,等号前是数据库表中的一列name,等号后相当于表中的一列content。 展开
Product.Serial=010
Beep.EnableLevel=1
等号前后就是对应数据库表中的两列,可以说相当于等号前是id,等号后面的是content。。我是java新手,对于怎么保存没什么思路。求大神指点下思路和小方法!!
说错了,等号前是数据库表中的一列name,等号后相当于表中的一列content。 展开
1个回答
展开全部
我的思路是这样地:
mysql数据库中的表结构是这样地:
Product.Serial varchar(20)
Beep.EnableLevel varchar(20)
数据库名称是db_mydb
表名称是tb_mytable
从每行读出的内容提取出来:
String str1 = "010";
String str2 = "1";
使用阿帕奇出品的commons包中的QueryRunner 对象来操作存入数据库(采用了c3p0连接池)
QueryRunner qr = new QueryRunner();
String sql = "insert into tb_mytable values(?,?)"; //sql模板
qr.update(sql, str1, str2);
====================================
如果不采用第三方工具包的话也可以完全依靠javaee的库来搞,那代码就麻烦多了:
获得数据库连接(手敲四大连接参数)
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/db_mydb","root","123");
PreparedStatement pre= conn.prepareStatement();
String sql = "insert into tb_mytable values(?,?)";
pre.setString(1,str1);
pre.setString(2,str2);
pre.executeUpdate();
pre.close();
conn.close();
=====================
上面都是只处理一行读取的数据,可以用循环来搞地。
追问
你弄错我意思了,数据库名称是quest,表名是rgMessage,表中有两项key和value,这些都是数据库已经定好了的,现在只要把从.conf文件中读取出来的数据一一对应保存进去,等号前面的就是key,等号后面的就是value。。。 现在的问题是我用Reader读出来的数据是临时保存在String[ ]中,要怎样把这里面的数据放到数据库表中~~麻烦指点迷津~!!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询