spring_150805_datasource

实体类:

package com.spring.model;

public class DogPet {
    
    private int id;
    private String name;
    private int age;
    private String kind;
    private String sex;
    private String health;
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public String getKind() {
        return kind;
    }
    public void setKind(String kind) {
        this.kind = kind;
    }
    public String getSex() {
        return sex;
    }
    public void setSex(String sex) {
        this.sex = sex;
    }
    public String getHealth() {
        return health;
    }
    public void setHealth(String health) {
        this.health = health;
    }
    
    public String toString()
    {
        return id+"--"+name+"--"+kind+"--"+age+"--"+health;
    }
}

接口Service:

package com.spring.service;

public interface DogPetService {
    public void queryAllDogPets();
    public void saveDogPet();
}

实现类ServiceImpl:

package com.spring.service.impl;

import java.util.List;

import javax.annotation.Resource;

import org.springframework.stereotype.Controller;

import com.spring.service.DogPetService;
import com.spring.dao.DogPetDAO;
import com.spring.model.DogPet;

@Controller(value="DogPetService")
public class DogPetServiceImpl implements DogPetService{
    private DogPetDAO dogPetDAO;

    public DogPetDAO getDogPetDAO() {
        return dogPetDAO;
    }
    
    @Resource(name="dogPetDAO2")
    public void setDogPetDAO(DogPetDAO dogPetDAO) {
        this.dogPetDAO = dogPetDAO;
    }

    @Override
    public void queryAllDogPets() {
        List<DogPet> list = dogPetDAO.queryAllDogPets();
        if(list != null)
        {
            for(DogPet d:list)
            {
                System.out.println(d.toString());
            }
        }
    }
    
    public void saveDogPet()
    {
        DogPet d1 = new DogPet();
        d1.setId(3333333);
        d1.setName("dog1");
        d1.setAge(4);
        d1.setKind("buladuo");
        d1.setSex("B");
        d1.setHealth("good");
        dogPetDAO.saveDogPet(d1);
    }
    
    
}

Service调用的DAO:

package com.spring.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import javax.annotation.Resource;
import javax.sql.DataSource;

import org.springframework.stereotype.Service;

import com.spring.model.DogPet;

@Service(value="dogPetDAO2")
public class DogPetDAO {
    
    private DataSource dataSource;
    
    public List<DogPet> queryAllDogPets()
    {
        List<DogPet> list = new ArrayList<DogPet>();
        
        DogPet d1 = new DogPet();
        d1.setId(1111);
        d1.setName("dog1");
        d1.setAge(4);
        d1.setKind("buladuo");
        d1.setSex("B");
        d1.setHealth("good");
        DogPet d2 = new DogPet();
        d2.setId(2222);
        d2.setName("dog2");
        d2.setAge(3);
        d2.setKind("buladuo");
        d2.setSex("G");
        d2.setHealth("good");
        
        list.add(d1);
        list.add(d2);
        
        return list;
    }
    
    public void saveDogPet(DogPet dog)
    {
        Connection connection = null;
        try 
        {
            connection = dataSource.getConnection() ;
            PreparedStatement pstmt = connection.prepareStatement("insert into t_dog values(?,?,?,?,?,?)");
            pstmt.setInt(1, dog.getId());
            pstmt.setString(2, dog.getName());
            pstmt.setInt(3, dog.getAge());
            pstmt.setString(4, dog.getKind());
            pstmt.setString(5, dog.getSex());
            pstmt.setString(6, dog.getHealth());
            pstmt.execute();
        } 
        catch (SQLException e)
        {
            e.printStackTrace();
        }
        finally
        {
            try 
            {
                connection.close();
            } 
            catch (SQLException e) 
            {
                e.printStackTrace();
            }
        }
    }

    public DataSource getDataSource() {
        return dataSource;
    }

    @Resource
    public void setDataSource(DataSource dataSource) {
        this.dataSource = dataSource;
    }
    
}

配置文件beans.xml:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context"
        xmlns:jee="http://www.springframework.org/schema/jee" xmlns:tx="http://www.springframework.org/schema/tx"
        xsi:schemaLocation="
            http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
            http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd
            http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-2.5.xsd
            http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
    <context:annotation-config/>
    
    <context:component-scan base-package="com.spring"></context:component-scan>
    
</beans>            

配置文件dao.xml:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:jee="http://www.springframework.org/schema/jee" xmlns:tx="http://www.springframework.org/schema/tx"
    xmlns:aop="http://www.springframework.org/schema/aop"
    xsi:schemaLocation="
            http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
            http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd
            http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-2.5.xsd
            http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
            http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd">
    <bean
        class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="locations">
            <value>classpath:jdbc.properties</value>
        </property>
    </bean>

    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
        destroy-method="close">
        <property name="driverClassName" value="${driver}" />
        <property name="url" value="${url}" />
        <property name="username" value="${user}" />
        <property name="password" value="${password}" />
    </bean>

</beans>            

jdbc.properties:

driver=oracle.jdbc.driver.OracleDriver
url=jdbc:oracle:thin:@10.32.145.254:1521:cspperf
user=icdwf
password=icdwf

test类:

package com.spring.test;

import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import com.spring.service.DogPetService;

public class ServiceTest {
    
    @Test
    public void saveDogPet()
    {
        ApplicationContext ctx = new ClassPathXmlApplicationContext(new String[]{"beans.xml","dao.xml"});
        DogPetService dogPetService = (DogPetService)ctx.getBean("DogPetService");
        dogPetService.saveDogPet();
    }

}
原文地址:https://www.cnblogs.com/yanff/p/4791892.html