当前位置: 代码迷 >> Eclipse >> 求eclipse连接sql查询数据,写数据,改数据代码解决办法
  详细解决方案

求eclipse连接sql查询数据,写数据,改数据代码解决办法

热度:7   发布时间:2016-04-23 00:40:37.0
求eclipse连接sql查询数据,写数据,改数据代码
跪求跪求啊,各种关于sql2008代码全要,什么该数据,什么数据对接之类的
------解决方案--------------------
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
/**
 * 
 * Copyright (C), 2006-2014,  info. Co., Ltd.
 * FileName: DButil.java
 * 类的详细说明
 *  用于链接数据库的工具类
 * @author
 * @Date     2014-5-7 上午9:23:08
 * @version 1.0.0.0
 */
public class DButil {
/**
 * 获取数据库链接
 * @return 返回一个数据库链接
 */
public static Connection getConnection(){
Connection con=null;
try {
Class.forName("com.mysql.jdbc.Driver");
con =DriverManager.getConnection("jdbc:mysql://localhost:3306/lovo", "root", "lovo");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}catch (SQLException e) {
e.printStackTrace();
}
return con;

}
/**
 *  关闭链接
 * @param con 需要关闭的链接对象
 * @param st 需要关闭的sql编译对象
 * @param rs 需要关闭的结果集对象
 */
public static void close(Connection con,Statement st,ResultSet rs){
if(rs!=null){
try {
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(st!=null){
try {
st.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(con!=null){
try {
con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}

写的连接数据库的工具类
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;


import com.lovo.jg17.game.bean.Player;
import com.lovo.jg17.game.util.DButil;
/**
 * 
 * Copyright (C), 2006-2014,  Co., Ltd.
 * FileName: PlayerDB.java
 * 类的详细说明
 *  玩家数据库管理
 * @author 
 * @Date     2014-5-7 上午9:27:25
 * @version 1.0.0.0
 */
public class PlayerDB {
/**
 * 添加玩家对象到数据库
 * @param p 需要添加的玩家对象
 * @return 对数据库影响了几条数据
 */
public int addPlayer(Player p){
Connection con=DButil.getConnection();
PreparedStatement st=null;
int a=0;
String sql="INSERT INTO t_game (c_name,c_gold,c_date) VALUES (?,?,?)";
try {
st=con.prepareStatement(sql);
st.setString(1, p.getName());
st.setInt(2, p.getGold());
st.setString(3, p.getDate());
a =st.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}finally{
DButil.close(con, st, null);
}
return a;
}
/**
 * 查看前三名玩家数据 以分数高低排序
 * @return 数据库中前三名玩家的集合
 */
public List<Player> QueryAll() {
Connection con=DButil.getConnection();
List<Player> pList=new ArrayList<Player>();
String sql="SELECT * FROM t_game ORDER BY c_gold DESC LIMIT 0, 3";
PreparedStatement ps=null;
ResultSet rs=null;
try {
ps=con.prepareStatement(sql);
rs=ps.executeQuery();
while(rs.next()){
Player p=new Player();
p.setId(rs.getInt("pk_id"));
p.setGold(rs.getInt("c_gold"));
p.setName(rs.getString("c_name"));
p.setDate(rs.getString("c_date"));
pList.add(p);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
DButil.close(con, ps, rs);
}
return pList;
}
}

这是操作这个工具类的例子,数据就是从这个类中传入数据库

 * 
 * Copyright (C), 2006-2014. Co., Ltd.
 * FileName: Player.java
 * 类的详细说明
 *  玩家对象类
 * @author 
 * @Date     2014-5-7 上午10:06:15
 * @version 1.0.0.0
 */
public class Player {
/**
 * 玩家ID
 */
private int id;
/**
 * 玩家名字
 */
private String name;
/**
 * 玩家分数
 */
private int gold;
/**
 * 创造日期
 */
private String date;
/**
 * @return the id
 */
  相关解决方案