如何控制Java代码向数据库中插入数据

 我来答
Mexico卡卡
2017-11-15 · TA获得超过1万个赞
知道大有可为答主
回答量:1.3万
采纳率:98%
帮助的人:1777万
展开全部

Java程序向数据库中插入数据,代码如下:

//首先创建数据库,(access,oracle,mysql,sqlsever)其中之一,其中access,sqlsever需要配置数据源(odbc);
//然后再eclipse中创建类(ConnDb,Test,TestBean)ConnDb功能为连接数据库,查询,插入,删除,修改数据的类,Test为含有main方法的测试类,TestBean为数据表中的字段属性及set,get方法
//以下是ConnDb代码:
package db;
import java.sql.Connection;
import java.sql.DriverManager;
import 
java.sql.ResultSet;
import java.sql.SQLException;
import 
java.sql.Statement;
import java.util.ArrayList;
public class ConnDb {
public Connection startConn(Connection conn){
  try {
   Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
   conn = DriverManager.getConnection("jdbc:odbc:数据库","用户名", "密码");
  } catch (Exception e) {
   System.out.println("连接数据库时出现错误");
  }
  return conn;
 }
  
public ArrayList executeQuery(String sql){
  Connection conn = null;
  Statement stmt = null;
  ResultSet rs = null;
  ArrayList list = new ArrayList();
  try {
   conn = startConn(conn);
   stmt = conn.createStatement();
   rs = stmt.executeQuery(sql);//sql为<a href="https://www.baidu.com/s?wd=sql%E8%AF%AD%E5%8F%A5&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1YLuARzuAw9mW-BuW0snHF-0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EPHTzPHbkPWf3" target="_blank" class="baidu-highlight">sql语句</a>例如"select * from 
表名",从main方法中传进来,这里用的是ArrayList 类将查询结果存储起来
   while(rs.next()){
    TestBean tb = new TestBean();
    tb.setTid(rs.getString("tid"));
    tb.setTname(rs.getString("tname"));
    tb.setTinfo(rs.getString("tinfo"));
    list.add(tb);
   }
  } 
catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }finally{
   closeConn(rs,stmt,conn);
  }
  return list;
 } 
 public void executeUpdate(String sql){
  Connection conn = null;
  Statement stmt = null;
  try {
   conn = 
startConn(conn);
   stmt = conn.createStatement();
   stmt.executeUpdate(sql);
  } 
catch (SQLException e) {
   System.out.println("修改,插入或者删除数据库数据时发生错误!");
  }finally{
   closeConn(stmt,conn);
  }
 }
 public void closeConn(ResultSet rs,Statement stmt,Connection conn){
  try {
   if(rs != 
null){
    rs.close();
   }
   if(stmt != null){
    stmt.close();
   }
   if(conn != null){
    conn.close();
   }
  } 
catch (SQLException e) {
   // TODO Auto-generated catch 
block
   System.out.println("关闭数据库的时候发生错误!");
  }
 }
 public void closeConn(Statement stmt,Connection conn){
  try {
   if(stmt != null){
    stmt.close();
   }
   if(conn != null){
    conn.close();
   }
  } 
catch (SQLException e) {
   // TODO Auto-generated catch block
   System.out.println("关闭数据库的时候发生错误!");
  }
 }
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式