data.properties文件 prop.driver=com.mysql.cj.jdbc.Driver prop.url=jdbc:mysql://localhost:3306/springtest?useUnicode=true&characterEncoding=utf8 prop.username=sys prop.password=sys
DataSourceConfiguration文件 import com.alibaba.druid.pool.DruidDataSource; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.PropertySource; import org.springframework.jdbc.core.JdbcTemplate; import javax.sql.DataSource; @PropertySource("classpath:data.properties") public class DataSourceConfiguration { @Value("${prop.driver}") private String driver; @Value("${prop.url}") private String url; @Value("${prop.username}") private String username; @Value("${prop.password}") private String password; @Bean public DataSource dataSource(){ DruidDataSource druidDataSource = new DruidDataSource(); druidDataSource.setDriverClassName(driver); druidDataSource.setUrl(url); druidDataSource.setUsername(username); druidDataSource.setPassword(password); return druidDataSource; } @Bean public JdbcTemplate JdbcTemplate(DataSource dataSource){ return new JdbcTemplate(dataSource); } }
BeanConfig文件 import org.springframework.context.annotation.*; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Component; @Configuration @Import({DataSourceConfiguration.class}) public class BeanConfig { }
BookDaoImpl文件 import com.ericsson.annotation.dao.BookDao; import com.ericsson.entity.Book; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jdbc.core.BeanPropertyRowMapper; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Repository; import java.util.List; @Repository("bookDao") public class BookDaoImpl implements BookDao { @Autowired JdbcTemplate jdbcTemplate; @Override public void addBook(Book book) { String sql="insert into book(id,name,status) values(?,?,?)"; Object [] args = {book.getId(),book.getName(),book.getStatus()}; System.out.println(jdbcTemplate.update(sql,args)); }
test.java文件 ApplicationContext context = new AnnotationConfigApplicationContext(BeanConfig.class); BookDao bookDao = context.getBean("bookDao", BookDao.class); bookDao.addBook(new Book(3,"c到C##","买完了"));