java mysql 预编译_Java通过JDBC实现对数据库的增删查改(预编译方式)

本次试验用的是SQLserver2012,其他数据库只需要更改连接部分,模板仅供参考

加载jdbc驱动,实现数据库连接

package database;

/***

* 数据库工具类

*/

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

public class DBUtils {

// 获取数据库连接

public static Connection getConnection() {

Connection con = null;

//定义连接相关属性

final String DRIVER = "com.microsoft.sqlserver.jdbc.SQLServerDriver";

final String URL = "jdbc:sqlserver://localhost:1433;databaseName=mina";

final String USER = "sa";

final String PWD = "154451";

try {

Class.forName(DRIVER);

con = DriverManager.getConnection(URL, USER,PWD);

} catch (ClassNotFoundException e) {

e.printStackTrace();

} catch (SQLException e) {

e.printStackTrace();

}

return con;

}

}

实现与数据库中表字段相同的类

package database;

/***

* 在线设备信息

* @author liaot

*

*/

public class OnlineDevice {

private String imei;

private String state;

public OnlineDevice(String imei, String state) {

super();

this.imei = imei;

this.state = state;

}

public String getImei() {

return imei;

}

public void setImei(String imei) {

this.imei = imei;

}

public String getState() {

return state;

}

public void setState(String state) {

this.state = state;

}

}

实现对应数据库操作类

package database;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.util.ArrayList;

import java.util.List;

/***

* 数据库操作类

*

* @author liaot

*

*/

public class OnlineDeviceDAO {

// 数据插入

public void insert(OnlineDevice od) {

String sql = "insert into t_online values(?,?);";

Connection con = DBUtils.getConnection();

try {

// 预编译

PreparedStatement ps = con.prepareStatement(sql);

ps.setString(1, od.getImei());

ps.setString(2, od.getState());

// 执行

ps.execute();

} catch (SQLException e) {

e.printStackTrace();

}

}

// 根据IEMI查询

public List selectByIemi(String imei) {

List ls = new ArrayList<>();

String sql = "select * from t_online where imei = ?;";

Connection con = DBUtils.getConnection();

try {

// 预编译

PreparedStatement ps = con.prepareStatement(sql);

ps.setString(1, imei);

// 执行

ResultSet rs = ps.executeQuery();

// 遍历将结果集 加到list中

while (rs.next()) {

OnlineDevice od = new OnlineDevice(rs.getString(1), rs.getString(2));

ls.add(od);

}

} catch (SQLException e) {

e.printStackTrace();

}

return ls;

}

// 查询所以数据

public List selectAll() {

List ls = new ArrayList<>();

String sql = "select * from t_online";

Connection con = DBUtils.getConnection();

try {

// 预编译

PreparedStatement ps = con.prepareStatement(sql);

// 执行

ResultSet rs = ps.executeQuery();

// 遍历将结果集 加到list中

while (rs.next()) {

OnlineDevice od = new OnlineDevice(rs.getString(1), rs.getString(2));

ls.add(od);

}

} catch (SQLException e) {

e.printStackTrace();

}

return ls;

}

// 数据修改

public void update(OnlineDevice od) {

String sql = "update t_online set state=? where imei = ?;";

Connection con = DBUtils.getConnection();

try {

// 预编译

PreparedStatement ps = con.prepareStatement(sql);

ps.setString(1, od.getState());

ps.setString(2, od.getImei());

// 执行

ps.executeUpdate();

} catch (SQLException e) {

e.printStackTrace();

}

}

// 数据删除

public void delete(OnlineDevice od) {

String sql = "delete from t_online where imei = ?;";

Connection con = DBUtils.getConnection();

try {

// 预编译

PreparedStatement ps = con.prepareStatement(sql);

ps.setString(1, od.getImei());

// 执行

ps.executeUpdate();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

数据库表结构:

4ebcb018bc1c?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值