jdbc数据库连接知识

来源:互联网 发布:centos怎么看版本 编辑:程序博客网 时间:2024/06/17 21:49

spring JdbcTemplate 查询,使用BeanPropertyRowMapper

使用springJdbcTemplate查询数据库,获取List结果列表,数据库表字段和实体类自动对应,可以使用BeanPropertyRowMapper

private BeanPropertyRowMapper<File> terminalMapper = new BeanPropertyRowMapper<File>(File.class);/** * 获取所有附件信息列表 * @return */public List<File> getList(){try {StringBuffer sql = new StringBuffer();sql.append("select * from file");return getJdbcTemplate().query(sql.toString(), terminalMapper);} catch (Exception e) {return null;}}


JdbcDaoSupport类(一般的dao层的类都会继承这个类)

JdbcDaoSupport是JDBC数据访问对象的超类。它与特定的数据源相关联。这个类最重要的功能就是使子类可以使用JdbcTemplate对象。 


Jdbc配置

使用spring通过jdbc连接数据库(这里以mysql为例),需要在xml文件中进行配置,包括数据库的url,数据库名,账号名密码等等。

<!-- 数据源配置,使用应用内的DBCP数据库连接池 -->    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"        destroy-method="close">        <!-- Connection Info -->        <property name="driverClassName" value="${jdbc.driver}" />        <property name="url" value="${jdbc.url}" />        <property name="username" value="${jdbc.username}" />        <property name="password" value="${jdbc.password}" />    </bean>

其中的id名传进JdbcDaoSupport的实现类中,这样就可以连接数据库成功

dbcp :数据库连接池

@Repositorypublic class BaseDao extends JdbcDaoSupport {@Resource(name = "dataSource")//这里设置数据源,指定数据库连接的相关配置public void setJdbcTemplate(DataSource dataSource) {super.setDataSource(dataSource);}}
因为数据库名和密码有时候可能会发生改变(多人开发时本地数据库的密码不同),所以一些容易变的变量经常放在properties文件中,所以需要在xml文件中添加bean

<bean        class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">        <property name="locations">            <list>                <!-- 标准配置 -->                <value>classpath:config.properties</value>            </list>        </property>    </bean>
properties文件中的内容为:

debug = falserecomArticleMaxCount = 5jdbc.driver=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/users?userUnicode=true&characterEncoding=utf-8jdbc.username=rootjdbc.password= 123456





0 0