本文章在参考前人作品的基础上完成。
首先是数据库连接类ConnectDB:
package util;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class ConnectDB {
private static String driveClassName = "com.mysql.jdbc.Driver";
private static String url = "jdbc:mysql://192.168.44.132:3306/test";
private static String user = "imgsearch";
private static String password = "123456";
private static Connection conn = null;
public Connection getConnection() {
// load driver
try {
Class.forName(driveClassName);
} catch (ClassNotFoundException e) {
System.out.println("load driver failed!");
e.printStackTrace();
}
// connect db
try {
conn = DriverManager.getConnection(url, user, password);
} catch (SQLException e) {
System.out.println("connect failed!");
e.printStackTrace();
}
return conn;
}
public void closeConnection() {
try {
if (conn != null && !conn.isClosed())
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
实体操作类Dao:
package dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import util.ConnectDB;
import bean.PocDic;
public class PocDicDao {
ConnectDB connectDB = new ConnectDB();
public void insert(ArrayList<PocDic> arrOfPocDics) throws SQLException {
Connection connection = connectDB.getConnection(); // 获取数据库连接
String sql = "insert into poc_dic(chn_char,chn_spell) values(?,?)";
PreparedStatement preparedStatement = connection.prepareStatement(sql);
int count = 0;
for (int i = 0;i<arrOfPocDics.size();i++) {
PocDic pocDic = arrOfPocDics.get(i);
preparedStatement.setString(1, pocDic.getChn_char());
preparedStatement.setString(2, pocDic.getChn_spell());
preparedStatement.addBatch();
count += 1;
// 每100条记录提交一次批处理;或者当前对象已是数组中最后一个数据
if (count == 100 || (i-1) >= arrOfPocDics.size()) {
count = 0;
preparedStatement.executeBatch();
}
}
connectDB.closeConnection();
}
public String queryCharByChar(String chn_char) throws SQLException {
String result = null;
Connection connection = connectDB.getConnection(); // 建立连接
String sql = "select chn_spell from poc_dic where chn_char =?";
PreparedStatement preparedStatement = connection.prepareStatement(sql);
preparedStatement.setString(1, chn_char);
ResultSet rs = preparedStatement.executeQuery();
if (rs.next()) {
result = rs.getString(1);
}
connectDB.closeConnection();
return result;
}
}
OK,到这里就封装好了,你需要调用时将所要存储的数据的数组传进去即可。