1. 程式人生 > >Spring中jdbcTemplate的用戶實例

Spring中jdbcTemplate的用戶實例

ica led .class context service ont ram address 用戶

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的用戶實例