spring的几个重要类和接口(详解)

时间:2022-12-02 12:20:24

1、 datasource接口是javax.sql包下的接口,不是spring,是javax.sql下的

datasource接口有个重要的方法getConnection()方法

?
1
2
Connection getConnection(String username, String password)
throws SQLException;

那些spring支持的数据库连接池,都是实现了Datasource接口

比如下面是阿里的DruidDatasource数据库连接池源码,它就是实现了datasource的getConnection()方法

只要是实现了这个方法的,就都可以当spring的datasource

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@Override
  public DruidPooledConnection getConnection() throws SQLException {
    return getConnection(maxWait);
  }
 
  public DruidPooledConnection getConnection(long maxWaitMillis) throws SQLException {
    init();
 
    if (filters.size() > 0) {
      FilterChainImpl filterChain = new FilterChainImpl(this);
      return filterChain.dataSource_connect(this, maxWaitMillis);
    } else {
      return getConnectionDirect(maxWaitMillis);
    }
  }

2、 jdbcTemplate才是spring的利器,在springframework.jdbc包下

3、 所以spring如果想的话,也可以自己去连接数据库,自己去执行sql语句,不用mybatis或者hibernate。

就用spring自己的jdbcTemplate就行啊,只不过没有了orm匹配而已啊

4、 如果要用mybatis、hibernate它们去连接数据库的话,就要用它们的类似jdbcTemplate了啊,比如mybatis的sqlsessionTemplate。

5、 所以spring中,去操控数据库的话就分为三步骤:1.连数据库,datasource 2.找个利器去操控sql语言,jdbcTemplate或者sqlsessionfactory 3.将利器注入到spring ioc容器中

6、1.spring整合mybatis 的核心是 SqlSessionFactoryBean、MapperFactoryBean(单一接口)

7、1.spring整合mybatis 的核心是 SqlSessionFactoryBean、MapperFactoryBean(单一接口)

8、1.spring整合mybatis 的核心是 SqlSessionFactoryBean、MapperFactoryBean(单一接口)

以上这篇spring的几个重要类和接口(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。