数据源配置

在使用leap-orm之前,我们需要先进行一些简单的配置,配置数据库的连接和数据源对象.数据源对象的配置有两种方式,一种是配置bean对象,另一种是通过配置默认属性名生成数据源的对象.

配置bean对象

首先我们需要一个配置bean对象的配置文件,在conf目录下创建一个beans.xml配置文件,如下:

src/main/resources
     └ conf
          ├ config.xml
          └ beans.xml

beans.xml的内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.leapframework.org/schema/beans">

</beans>

在本示例中我们使用mysql数据库,因此先在pom.xml中添加mysql的驱动依赖:

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.26</version>
</dependency>

现在我们需要配置数据库的连接,一般来说,数据库的连接属性在不用的环境部署会有些许不同,通常我们会将经常变化的配置放在config.xml中,其他不常变化的配置按模块划分到不同的配置中去,因此这里我们建议将数据库的配置放在config.xml中.
目前config.xml里只有一个base-package的配置,我们需要配置其他属性,在配置中添加一个properties节点:

<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://www.leapframework.org/schema/config">
    <base-package>demo</base-package>
    <properties>

    </properties>
</config>

以后我们需要添加的自定义配置都可以在properties节点下添加,这里我们先添加jdbc的相应配置:

<property name="jdbcDriver">com.mysql.jdbc.Driver</property>
<property name="jdbcUrl">jdbc:mysql://127.0.0.1:3306/leap</property>
<property name="jdbcUsername">root</property>
<property name="jdbcPassword">root</property>

注意: properties并不是唯一节点,在同一个config节点下可以有多个properties节点将不同的配置属性分组.

现在我们配置好数据库的连接配置了,回到beans.xml,添加如下配置:

<bean name="default" type="javax.sql.DataSource" class="leap.db.cp.PooledDataSource" primary="true">
    <property name="driverClassName" value="${jdbcDriver}"></property>
    <property name="jdbcUrl" value="${jdbcUrl}"></property>
    <property name="username" value="${jdbcUsername}"></property>
    <property name="password" value="${jdbcPassword}"></property>
    <property name="maxWait" value="30000"></property>
    <property name="maxActive" value="50"></property>
</bean>

这里使用的数据源对象是leap提供的连接池数据源对象,当然在实际应用中我们可以使用任何我们想要使用的数据源对象。

leap内部实现了数据源的连接池,这个连接池能支持绝大部分的数据库连接参数和调优参数,并且不需要外部依赖,是leap推荐使用的数据源对象。

到这里数据源配置就完成了.

默认数据源配置

除了在beans.xml中显示的配置数据源对象之外,leap也提供了默认数据源配置的方式,可以不需要配置beans.xml,只需要在config.xml的配置中,将jdbc的属性配置修改为如下即可:

<property name="db.driverClassName">com.mysql.jdbc.Driver</property>
<property name="db.jdbcUrl">jdbc:mysql://127.0.0.1:3306/leap</property>
<property name="db.username">root</property>
<property name="db.password">root</property>

这里需要注意,在属性前加上db.前缀表示这是数据库的配置。

注意:

  • 这里的配置使用的是leap的默认实现。
  • db.前缀表示这是数据库的配置,但是实际的属性名必须是leap.db.cp.PooledDataSource所包含的属性,否则该配置是不能生效的。

results matching ""

    No results matching ""