当前位置:首页 > 学习笔记 > 正文内容

优化jdbc的代码 面向对象思想

廖万里3年前 (2022-09-09)学习笔记41217

封装父类  BaseDao

3.1 三个属性

//属性

protected Connection conn;

protected PreparedStatement pstm;

protected ResultSet rs;

3.2 四个方法

//方法

public void openDB(){

//1 开库

try {

Class.forName("com.mysql.jdbc.Driver");

 conn=DriverManager.

getConnection("jdbc:mysql://localhost:3306/my105","root","123456");

catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

System.out.println("开错误");

}


}

public void closeDB(){


try {

if(rs!=null){

rs.close();

}

if(pstm!=null){

pstm.close();

}

if(conn!=null){

conn.close();

}


catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

System.out.println("关错误");

}


}


//增删 改     INSERT INTO student( sname,age) VALUES(?,?)

//可变参数  object[]

public int myUpdate(String sql,

Object... os){

int n=0;

try {

//1 开库

openDB();

//2

pstm=conn.prepareStatement(sql);


if(os!=null){//sql有? 

for(int i=0;i<os.length;i++){

pstm.setObject(i+1, os[i]);

}

}

//3 执行

 n=pstm.executeUpdate();


catch (Exception e) {

// TODO: handle exception

e.printStackTrace();//一定有异常打印

}finally{

//4 必须关闭数据库

closeDB();

}


return n;

}



public ResultSet mySelect(String sql,Object... os){


try {

//1

openDB();

//2

pstm=conn.prepareStatement(sql);

if(os!=null){//sql有? 

for(int i=0;i<os.length;i++){

pstm.setObject(i+1, os[i]);

}

}

//3 

rs=pstm.executeQuery();


catch (Exception e) {

// TODO: handle exception

e.printStackTrace();

}finally{

//2

//closeDB();

}


return rs;


}

 4 实体类 

Jdbc  操作  

实体类   数据表相同的

类名=表名

类的属性和表的列要一模一样 名称 和类型一样 

类的所有属性private  .封装get/set   shift+alt+s  

 

 

作用

查询的时候,把查询的结果 封装到 实体类的集合中

 5 表的子类


本文链接:https://www.kkkliao.cn/?id=10 转载需授权!

分享到:

版权声明:本文由廖万里的博客发布,如需转载请注明出处。


“优化jdbc的代码 面向对象思想 ” 的相关文章

网站一直被篡改首页文件index以及indax怎么办

网站一直被篡改首页文件index以及indax怎么办

近期发现公司网站首页文件经常被篡改为indax.php或indax.html,导致网站的功能无法正常使用,百度搜索关键词,在显示结果中点击公司网站,打开后跳转到别的网站上去了,尤其我们在百度做的推广,导致客户无法访问到我们公司网站上,给公司带来很大的影响,领导让尽快解决这个问题。这样的问题已经连续出...

【新手建站教学】如何使用成本更低的虚拟主机实现快速建站?手把手教你搭建一个属于自己的网站。

【新手建站教学】如何使用成本更低的虚拟主机实现快速建站?手把手教你搭建一个属于自己的网站。

本篇文章教大家如何使用成本更低的虚拟主机去搭建一个网站。虚拟主机价格远低于服务器,所以选择虚拟主机建站是个非常不错的选择。虚拟主机就是一台服务器分出来的小空间,一台虚拟机只能建一个网站,一台服务器理论上可以无限搭建网站。需要准备:1.一台虚拟主机       ...

python如何连接mysql数据库

python链接mysql数据库要用到pymysql模块中的connect ,connect函数是pymysql模块中 用于连接MySQL数据库的一个函数。 所以连接mysql之前需要先导入pymysql模块 location.href="ht...

如何在程序中实现多进程,多进程概述

如何在程序中实现多进程,多进程概述

 多进程:在一个程序中实现多任务处理,可以使用多线程和多进程两种方式。多进程创建:使用Process、类,每次实例化这个类的时候,就创建一个进程对象。编辑 多进程:一个程序运行中,产生了多个进程。N个正在运行的程序----至少N个程序1个程序------可能只有一个进程/也可能有...

Python如何实现多线程,多线程概述

Python如何实现多线程,多线程概述

 线程:线程是CPU调度的基本单位,是进程中具体的执行单元。进程包含线程,一个进程中至少包含一个线程;如果一个进程中包含了多个线程,称为多线程。多线程的实现:编辑 1,引入threading模块。import threading import time2,编...

一款安卓/鸿蒙设备也能够轻松连接homepod的插件,跨平台音乐推流工具airmusic分享

一款安卓/鸿蒙设备也能够轻松连接homepod的插件,跨平台音乐推流工具airmusic分享

编辑点评:支持多种音频传输的方案,最为重要的就是支持AirPlay设备支持多种上音频传输方式的一款神器,AirMusic安卓免费版,是个解锁了高级功能的版本,软件需要root权限,可以将音频内容以满足自己需求的方式来推送到你所需要的音响当中,让你的安卓设备也能够轻松的享受到各种不同的音响的内容。操作...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。