JdbcTemplate

本文详细介绍Spring框架下使用JDBC进行数据库操作的环境搭建过程,包括依赖引入、数据源配置(DBCP与C3P0)、Javabean定义、DAO层实现,以及通过JdbcTemplate和JdbcDaoSupport进行数据库查询的示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

环境搭建

spring 提供用于操作JDBC工具类,类似:DBUtils。
依赖 连接池DataSource (数据源)

导入jar包

jar包

javabean

public class User {
	private Integer id;
	private String username;
	private String password;
}

dao层

public class UserDao {
    JdbcTemplate jdbcTemplate;

    public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
        this.jdbcTemplate = jdbcTemplate;
    }

    public List<Map<String, Object>> SelectAll(){
        List<Map<String, Object>> maps = jdbcTemplate.queryForList("select * from user ");
        return maps;
    }
}

JdbcTemplate的替代品UserDao  extends JdbcDaoSupport 不用每次都生成jdbcTemplate对象
public class UserDao extends JdbcDaoSupport {
//    JdbcTemplate jdbcTemplate;
//
//    public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
//        this.jdbcTemplate = jdbcTemplate;
//    }

    public List<Map<String, Object>> SelectAll(){
        List<Map<String, Object>> maps = this.getJdbcTemplate().queryForList("select * from user ");
        return maps;
    }
}

两种连接池 spring配置

DBCP
<!--创建数据源-->
	<bean id="dataSourceId" class="org.apache.commons.dbcp.BasicDataSource">
		<property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
		<property name="url" value="jdbc:mysql://localhost:3306/nais"></property>
		<property name="username" value="root"></property>
		<property name="password" value="passw0rd"></property>
	</bean>
	<!--创建模板,注入数据源-->
	<bean id="jdbcTemplateId" class="org.springframework.jdbc.core.JdbcTemplate">
		<property name="dataSource" ref="dataSourceId"></property>
	</bean>
	<!--配置dao层-->
	<bean id="UserDaoId" class="jdbc.a_domain.c_dbcp.UserDao">
		<property name="jdbcTemplate" ref="jdbcTemplateId"></property>
	</bean>
JdbcDaoSupport的写法
<!-- 配置dao
		* dao 继承 JdbcDaoSupport,之后只需要注入数据源,底层将自动创建模板
	-->
<bean id="userDaoId" class="jdbc.a_domain.c_dbcp.UserDao">
		<property name="dataSource" ref="dataSourceId"></property>
</bean>
C3P0
<!-- 创建数据源 c3p0-->
	<bean id="dataSourceId" class="com.mchange.v2.c3p0.ComboPooledDataSource">
		<property name="driverClass" value="com.mysql.jdbc.Driver"></property>
		<property name="jdbcUrl" value="jdbc:mysql://localhost:3306/nais"></property>
		<property name="user" value="root"></property>
		<property name="password" value="1234"></property>
	</bean>

Test

  public void demo01(){
        //创建dao
        String xmlPath="jdbc/a_domain/c_dbcp/beans.xml";
        ApplicationContext applicationContext=new ClassPathXmlApplicationContext(xmlPath);
        UserDao userDao = (UserDao) applicationContext.getBean("UserDaoId");
        List<Map<String, Object>> maps = userDao.SelectAll();
        for (Map<String, Object> map : maps) {
            System.out.println(map);
        }
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值