Spring中jdbcTemplate的用户实例

Posted 周娟娟

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring中jdbcTemplate的用户实例相关的知识,希望对你有一定的参考价值。

1、首先配置JdbcTemplate

在 Spring 的 IOC 容器中配置一个 JdbcTemplate 的 bean,将 DataSource(使用第三方数据源c3p0) 注入进来,然后再把JdbcTemplate 注入到自定义DAO 中。

<bean id="ds" class="com.mchange.v2.c3p0.ComboPooledDataSource">
    <property name="user" value="root" />
    <property name="password" value="root" />
    <property name="jdbcUrl" value="jdbc:mysql:///db_test" />
    <property name="driverClass" value="com.mysql.jdbc.Driver" />
</bean>

<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
    <property name="dataSource" ref="ds" />
</bean>

 

2、在自定义Dao类中配置如下,为private JdbcTemplate temp;添加注解,让框架自动注入该对象。dao层类使用@Repository注解

@Repository
public class UserDaoImpl implements UserDao {

    @Autowired
    private JdbcTemplate temp;

    @Override
    public boolean add(User user) {
        String sql = "insert into user values(?, ?, ?, ?)";
        int update = temp.update(sql, user.getId(), user.getName(), user.getAge(),
                user.getAddress());
        return update > 0 ? true : false;
    }

    @Override
    public boolean update(User user) {
        String sql = "update user set name=?, age=?, address=? where id=?";
        int update = temp.update(sql, user.getName(), user.getAge(),
                user.getAddress(), user.getId());
        return update > 0 ? true : false;
    }
}

 

3、测试

public class JdbcTest {
    
    private UserService service;

    @Before
    public void before() {
        ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");
        service = ctx.getBean(UserServiceImpl.class);
    }

    @Test
    public void add() {
        User user = new User();
        user.setName("郭靖");
        user.setAge(23);
        user.setAddress("北京");
        service.add(user);
    }
    
    @Test
    public void update() {
        User user = new User();
        user.setId(1);
        user.setName("黄蓉");
        user.setAge(25);
        user.setAddress("南昌");
        service.update(user);
    }
}

 





以上是关于Spring中jdbcTemplate的用户实例的主要内容,如果未能解决你的问题,请参考以下文章

Spring中jdbcTemplate的用法实例

ref:Spring JdbcTemplate+JdbcDaoSupport实例

Spring JdbcTemplate batchUpdate() 实例

Spring JdbcTemplate查询实例

Spring JdbcTemplate实例

Spring JdbcTemplate,如何在 Spring config XML 文件中动态设置用户名和密码?