首页 > 编程语言 >JDBC编程

JDBC编程

时间:2023-01-12 22:36:27浏览次数:60  
标签:dao 逻辑 JDBC service 数据库 编程 Model 主键

 

 

准备一个表:

1. 建立表结构,表名bank_account

列名

类型

约束

备注

id

int

主键,自增

主键

num

varchar(32)

非空,唯一

银行账号,自然主键

balance

double(8,2)

 

余额

create_date

timestamp

默认当前时间

时间戳

界面操作:

 

代码操作:

 

 

 

 

 

2. 对该表的CRUD操作

 

Eclipse测试MySQL连接

https://blog.csdn.net/tbicf/article/details/79285559

 

 

 

 

JDBC编程

1. 创建一个Java项目

2. 导包 mysql-connector-java-5.1.35.jar

3. 创建一个main类,套路代码

类加载驱动

准备参数

建立数据库连接

准备sql

预装载sql

执行sql

收集参数

关闭流

 

 

 

 

测试修改SQL

 

PreparedStatement 用到两个方法

1.executeUpdate int

2.executeQuery

两个方法的不同之处: CRUD

executeUpdate  : 执行 增加(insert) 修改(update)删除(delete)

 返回值类型是int

executeQuery   :  执行  查询 (select)

 返回值类型是ResultSet

 

完成JDBCDao 的其它CRUD 需求

1. 写查询方法 JDBCSelect ,查询无需关闭流

2. 写增加方法 JDBCInsert

3. 写修改方法 JDBCUpdate

.4. 写删除方法 JDBCDelete

 

引入工具类

    

 

 

 

 

 

MVC分层的设计模式 先思想 后实现

  MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。

将复杂的业务逻辑,分层处理,每层有每层的含义,层与层之间相互独立。每层只需要关注该层的功能逻辑,将业务解耦合。

1. 切分业务逻辑,结构清晰

2. 业务独立,功能专一,各司其职

3. 代码复用

4. 解耦合

MVC实现

entity层 实体类 Model

dao层  数据接口层,方法层  Model 基础方法区

service层 具体业务逻辑层 Model和Controller 的连接层

controller层 与界面交互层 Controller test

视图层   View

util 其它层  Model

 

 

 

 

创建service层,完成CRUD功能

1. Service层调用Dao层对象

2. Dao层不再关闭流,在Service层关闭

3. 完成一个业务逻辑 新增+删除 功能

 

 

 

service划分接口和实现类

将service分开接口和实现类

1. 解耦合,满足多人开发

2. 面向接口开发

3. 一种规范

 

 

 

 

 

 

 

项目步骤:

1. 建立表结构,表名bank_account

列名

类型

约束

备注

ba_id

number

序列自增

主键

ba_num

varchar2(32)

非空,唯一

银行账号,自然主键

ba_balance

number(10,3)

 

账户余额

ba_create_date

date

默认时间

时间戳

 

2. 建立dao,service,main,util层

3. 准备dao层方法 转账 A 200 – B 200

3.1 判断转出人余额是否足够

3.2 判断收款人编号是否存在

3.3 转账流程(A扣款,B增款)

  4. 完成service转账逻辑

   service就是为了完成具体需求逻辑,而dao层是准备的基本方法区。通常一个逻辑多次调用dao层方法。

 

5. main层调用service方法,测试

6. 事务处理 一个事务对应一个逻辑需求(service),ACID

//关闭自动提交

connect.setAutoCommit(false);

//事务回滚

connect.rollback();

//事务提交

connect.commit();

 

 

数据库连接池 DBCP  第三方软件

在服务器启动时,数据库池提前创建好一定数量的连接通道(数据库与数据库池之间的连接通道)。当有连接请求访问数据库时,会与数据库池建立通道,间接的访问数据库;当访问完毕,仅关闭请求与数据库池之间的通道;数据库池与数据库继续保持连接。

Druid  阿里产品,外带web界面监控功能

 

标签:dao,逻辑,JDBC,service,数据库,编程,Model,主键
From: https://www.cnblogs.com/Lovew2/p/17048112.html

相关文章