① 编写jdbc的工程代码用于分析程序的耦合

2019-08-16  本文已影响0人  吃伏冒有礼貌

通过编写JDBC的工程代码来分析程序的耦合
首先创建Maven工程,加入mysql的依赖,编写JDBC程序.


①创建一个maven工程
②创建一个maven工程
③在Pom.xml添加mysql的依赖

④创建一张简单的表

create table account(
id int primary key auto_increment,
name varchar(40),
money float
)character set utf8 collate utf8_general_ci;
insert into account(name,money) values('aaa',1000);
insert into account(name,money) values('bbb',1000);
insert into account(name,money) values('ccc',1000);

⑤编写JDBC程序

public class JdbcDemo1 {
    public static void main(String[] args) throws SQLException {
        //注册驱动
        DriverManager.registerDriver(new com.mysql.jdbc.Driver());
        //获取连接
        Connection Connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/eesy","root","3264421");
        //获取操作数据库的预处理对象
        PreparedStatement pstm = Connection.prepareStatement("select * from account");
        //执行sql语句 得到结果集
        ResultSet rs = pstm.executeQuery();
        //遍历,封装结果集
        while(rs.next()){
            System.out.println(rs.getString("name"));
        }
        //释放资源
        rs.close();
        pstm.close();
        Connection.close();
    }

编译期的依赖

如果我们现在在pom.xml中注释掉了mysql的依赖,那么在编译期间,程序就会报错.

   <dependencies>
        <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
       <!-- <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.16</version>
        </dependency>-->
    </dependencies>
image.png
         //注册驱动
        //DriverManager.registerDriver(new com.mysql.jdbc.Driver());
        Class.forName("com.mysql.jdbc.Driver");

↑ 如果我们用以上方式来注册驱动,那么在编译期间就不会报错了.它只是一段字符串,我们不再依赖于某个驱动类.但是不要妄想它能运行,因为类还是不存在的,如果运行,会抛出异常.如果再把注释掉的代码再放开,就能正常运行了.

但以上方式还是会有缺点,这个字符串已经写死了,如果要换数据库,这个驱动还是需要更改的.如果想要解决这个问题,可以通过配置文件

程序的耦合和解耦思路分析

程序的耦合
耦合:程序间的依赖关系
包括:
- 类之间的依赖
- 方法间的依赖
解耦:降低程序类的依赖关系
实际开发中:
应该做到:编译期不依赖,运行时才依赖
解耦思路:

上一篇 下一篇

猜你喜欢

热点阅读