JDBC增删改查和查唯一的完整代码解析

发布时间 - 2026-01-10 22:05:59    点击率:

第一部分代码(实体类)

package com.wf.entity;
public class Hehe{
private int hehe_id;
private String hehe_name;
private String hehe_gender;
public int getHehe_id(){
return hehe_id;
}
public void setHehe_id(int heheId){
hehe_id=heheId;
}
public String getHehe_name() {
return hehe_name;
}
public void setHehe_name(String heheName) {
hehe_name = heheName;
}
public String getHehe_gender() {
return hehe_gender;
}
public void setHehe_gender(String heheGender) {
hehe_gender = heheGender;
}
}

第二部分 BaseDao(增删改查和查唯一)

package com.wf.dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class BaseDao{
protected static final String DRIVER="com.mysql.jdbc.Driver";
protected static final String URL="mysql://localhost:3306/mysql";
protected static final String USER="root";
protected static final String PASSWORD="******";
protected Connection connection=null;
protected PreparedStatement preparedStatement=null;
protected ResultSet resultSet =null;
protected void getconnection() throws ClassNotFoundException, SQLException{
  Class.forName(DRIVER);
  this.connection =DriverManager.getconnection (URL,USER,PASSWORD);
}
/**
* 通用的增删改方法
* @param sql SQL语句
* @param params 参数数组
* @return 受影响的行数
*/
protected int executeUpdate(String sql ,String[]params){
int result=-1;
try {
this.getconnection();
this.preparedStatement=this.connection.prepareStatement(sql);
if(null!=params){
for (int i = 0; i < params.length; i++) {
this.preparedStatement.setString(i+1, params[i]);
} 
}
result= this.preparedStatement.executeUpdate();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}finally{
this.close();
}
return result;
}
/**
* 查询结果集的方法
* @param sql
* @param params
*/
protected void executeQuery(String sql,String[]params){
try {
this.getconnection();
this.preparedStatement=this.connection.prepareStatement(sql);
if(null!=params){
for (int i = 0; i < params.length; i++) {
this.preparedStatement.setString(i+1, params[i]);
} 
}
this.resultSet=this.preparedStatement.executeQuery();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
/**
* 查询唯一的结果
* @return Object
*/
protected Object executeQueryUnique(String sql,String[]params){
Object object=null;
try {
this.getconnection();
this.preparedStatement=this.connection.prepareStatement(sql);
if(null!=params){
for (int i = 0; i < params.length; i++) {
this.preparedStatement.setString(i+1, params[i]);
} 
} 
this.resultSet=this.preparedStatement.executeQuery();
if(this.resultSet.next())
object=this.resultSet.getObject(1);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
return object;
}
protected void close(){
try {
if(null!=this.resultSet)
this.resultSet.close();
if(null!=this.preparedStatement)
this.preparedStatement.close();
if(null!=this.connection)
this.connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}

第三部分 HeheDao

package com.wf.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import com.wf.entity.Hehe;
public class HeheDao extends BaseDao{
public boolean insert(Hehe hehe){
String sql="insert into hehe(hehe_name,hehe_gender) values(?,?)" ;
String []params=new String[]{hehe.getHehe_name(),hehe.getHehe_gender()};
return this.executeUpdate(sql, params)>0? true:false;
}

第四部分 测试Test_BaseDao_Insert

package com.wf.test;
import com.wf.dao.HeheDao;
import com.wf.entity.Hehe;
public class Test_BaseDao_Insert {
public static void main(String[] args) {
Hehe hehe=new Hehe();
hehe.setHehe_name("个");
hehe.setHehe_gender("b");
HeheDao _hd=new HeheDao();
if(_hd.insert(hehe))
System.out.println("成功!");
else
System.out.println("失败!");
}
}


# jdbc增删改查  # java jdbc连接mysql数据库实现增删改查操作  # Java使用JDBC连接数据库的实现方法  # Java开发Oracle数据库连接JDBC Thin Driver 的三种方法  # JSP使用JDBC连接MYSQL数据库的方法  # java使用jdbc连接数据库工具类和jdbc连接mysql数据示例  # jdbc连接sqlserver数据库示例  # JDBC 连接MySQL实例详解  # jsp+servlet+jdbc实现对数据库的增删改查  # jdbc实现连接和增删改查功能  # 查询结果  # 第一部分  # 第二部分  # 第四部分  # 行数  # 实体类  # sql  # import  # Connection  # DriverManager  # dao  # heheGender  # setHehe_gender  # BaseDao  # java  # 查唯一  # PreparedStatement  # Driver  # jdbc  # mysql 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 高性能网站服务器部署指南:稳定运行与安全配置优化方案  Edge浏览器怎么启用睡眠标签页_节省电脑内存占用优化技巧  微信推文制作网站有哪些,怎么做微信推文,急?  谷歌Google入口永久地址_Google搜索引擎官网首页永久入口  网站制作软件免费下载安装,有哪些免费下载的软件网站?  谷歌浏览器如何更改浏览器主题 Google Chrome主题设置教程  Laravel Artisan命令怎么自定义_创建自己的Laravel命令行工具完全指南  如何在 Pandas 中基于一列条件计算另一列的分组均值  Win11怎么关闭专注助手 Win11关闭免打扰模式设置【操作】  logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?  桂林网站制作公司有哪些,桂林马拉松怎么报名?  免费网站制作appp,免费制作app哪个平台好?  Laravel怎么创建控制器Controller_Laravel路由绑定与控制器逻辑编写【指南】  Laravel Debugbar怎么安装_Laravel调试工具栏配置指南  教你用AI将一段旋律扩展成一首完整的曲子  JS中对数组元素进行增删改移的方法总结  实现点击下箭头变上箭头来回切换的两种方法【推荐】  iOS UIView常见属性方法小结  如何自定义建站之星模板颜色并下载新样式?  Win11搜索不到蓝牙耳机怎么办 Win11蓝牙驱动更新修复【详解】  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  如何在阿里云高效完成企业建站全流程?  高端智能建站公司优选:品牌定制与SEO优化一站式服务  厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?  如何彻底删除建站之星生成的Banner?  Laravel怎么实现验证码功能_Laravel集成验证码库防止机器人注册  Laravel如何与Pusher实现实时通信?(WebSocket示例)  laravel怎么配置Redis作为缓存驱动_laravel Redis缓存配置教程  JavaScript中如何操作剪贴板_ClipboardAPI怎么用  如何快速搭建个人网站并优化SEO?  什么是javascript作用域_全局和局部作用域有什么区别?  深圳防火门网站制作公司,深圳中天明防火门怎么编码?  Swift开发中switch语句值绑定模式  Laravel中的Facade(门面)到底是什么原理  Linux系统命令中tree命令详解  javascript基于原型链的继承及call和apply函数用法分析  ai格式如何转html_将AI设计稿转换为HTML页面流程【页面】  香港服务器租用每月最低只需15元?  如何使用 jQuery 正确渲染 Instagram 风格的标签列表  Laravel Session怎么存储_Laravel Session驱动配置详解  深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?  如何用腾讯建站主机快速创建免费网站?  Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧  Laravel如何优化应用性能?(缓存和优化命令)  Laravel定时任务怎么设置_Laravel Crontab调度器配置  BootStrap整体框架之基础布局组件  b2c电商网站制作流程,b2c水平综合的电商平台?  Laravel如何使用软删除(Soft Deletes)功能_Eloquent软删除与数据恢复方法  HTML5打空格有哪些误区_新手常犯的空格使用错误【技巧】  php后缀怎么变mp4格式错误_修改扩展名提示格式不对怎么办【技巧】