这是一个根据UDP协议编的服务端 等待接受数据 受到数据后存入数据库
import java.net.*;
public class PacketReceiver{
public static void main(String[] args) throws Exception{
int count=0;
//定义一个字节数组来接收传送过来的数据
byte[ ] datas = new byte[1024];
//定义套接字对象
DatagramSocket ds = new DatagramSocket(5401);
//定义一个用来接收传送过来数据的数据报
DatagramPacket data = new DatagramPacket(datas,datas.length);
//接收数据报包
System.out.println("正在等待接收数据......");
while(true){
count++;
datas = new byte[1024];
data.setData(datas);
ds.receive(data); //接收数据报包
String dad = new String(datas).trim();//将字节数组转换为字符串
System.out.println(dad);
String[] result=dad.split("\\,");//将字符串转换成字符串数组
String result0=""+result[0];
String result1=""+result[1];
TestDB db =new TestDB();
String insertsql="insert into wendu values('"+count+"','"+result1+"','"+result0+"')";
db.add(insertsql);
System.out.println("运行到添加sever");
String sql="SELECT * FROM wendu";
db.query(sql);
db.query(dad);
System.out.println(result[0]);
System.out.println(result[1]);
}
}
}这是数据库连接和数据库操作 数据库可以连接成功 但是操作不了 求教!!!
public class TestDB { private Connection con = null; // 数据库的连接
private Statement st = null; // 执行sql语句的对象 // 执行预编译的sql语句的对象
private ResultSet rs = null; // 结果集对象 public TestDB() {
//桥连接
try {
String driver="sun.jdbc.odbc.JdbcOdbcDriver"; // 声明桥驱动程序
String ds = "jdbc:odbc:student"; //student就是数据源的名字
String user = "";
String login = "";
Class.forName(driver); //加载数据库的驱动程序
con = DriverManager.getConnection(ds, user,login);
if (con != null) {
System.out.println("数据库连接成功!");
}
} catch(Exception e) {
System.out.println("数据库连接失败!"+e.toString());
} } // 普通查询
public void query(String sql) {
try {
st = con.createStatement();
rs = st.executeQuery(sql); // 执行sql语句,返回结果集
while (rs != null && rs.next()) {
System.out.println("运行到这");
int stu_num=rs.getInt(1);
String name = rs.getString("wendu");
String shijian=rs.getString("shijian");
System.out.println(stu_num+name);
System.out.println("查询成功!");
}
} catch (Exception e) {
System.out.println("查询数据时出错" + e.toString());
}
} // 添加、删除、更新
public void add(String insertsql){
try{
Statement pst = con.prepareStatement(insertsql);System.out.println("运行到添加");
int x=pst.executeUpdate(insertsql);
System.out.println(x);
System.out.println("运行到添加语句后");
}catch(Exception ex){
System.out.println("预编译不成功"+ex.toString());
}
}
}
我是新手 谢谢大家了
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货