jdbc-db连接和业务调用方发分离

Posted 黑夜之鹰

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jdbc-db连接和业务调用方发分离相关的知识,希望对你有一定的参考价值。

总共分为两块:db连接基础方法+业务调用方使用
1、db连接基础方法
public class DemoForWrite {
static String URL = "jdbc:mysql://127.0.0.1:3306/user";
static String USER_NAME = "root";
static String PASSWORD = "123456";

public static int modify(String sql, List<Object> params) {
try (Connection connection = DriverManager.getConnection(URL, USER_NAME, PASSWORD);

PreparedStatement statement = connection.prepareStatement(sql)) {
for (int i = 0; i < params.size(); i++) {
statement.setObject(i + 1, params.get(i));
}

return statement.executeUpdate();
} catch (SQLException e) {
throw new RuntimeException(e);
}
}
}
sql也可以分离出来 
/**
String sql = "update tb_user set name=?,age=? where id=?";
List<Object> params = Lists.newArrayList();
params.add("hehehehe");
params.add(67);
params.add(5);
*/
            
2、业务调用方
public class DemoForWriteApp {
public static void main(String[] args) {
// testInsert();
// testUpdate();
testDelete();
}

private static void testDelete() {
String sql = "delete from tb_user where id=?";
List<Object> params = Lists.newArrayList();
params.add(7);

int rows = DemoForWrite.modify(sql, params);
System.out.println("rows = " + rows);
}

private static void testUpdate() {
String sql = "update tb_user set name=?,age=? where id=?";
List<Object> params = Lists.newArrayList();
params.add("hehehehe");
params.add(67);
params.add(5);

int rows = DemoForWrite.modify(sql, params);
System.out.println("rows = " + rows);
}

private static void testInsert() {
String sql = "insert into tb_user(name,age) values(?,?)";
List<Object> params = Lists.newArrayList();
params.add("xixihaha");
params.add(34);
int rows = DemoForWrite.modify(sql, params);
System.out.println("rows = " + rows);
}
}

以上是关于jdbc-db连接和业务调用方发分离的主要内容,如果未能解决你的问题,请参考以下文章

浅谈针对DELPHI的界面和业务的分离开发模式和MVC模式

架构设计:系统存储(13)——MySQL横向拆分与业务透明化

数据库读写分离的初步理解

服务读写分离(读服务,写服务),是否可行?

开发步骤

Spring AOP概述