@Component("userDao")
public class UserDaoImpl implements UserDao {
@Override
public void save() {
System.out.println("lovelive");
}
}
// <bean id="userService" class="com.ruan.test.ruan.servire.impl.UserServiceImpl" >
@Component("userService")
public class UserServiceImpl implements UserService {
// <property name="userDao" ref="userDao"></property>
@Autowired
@Qualifier("userDao")
private UserDao userDao;
public void setUserDao(UserDao userDao) {
this.userDao = userDao;
}
@Override
public void save() {
userDao.save();
}
}
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:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
">
<!--配置主键扫描-->
<context:component-scan base-package="com.ruan"/>
</beans>
测试
public class UserController {
public static void main(String[] args) {
ApplicationContext app=new ClassPathXmlApplicationContext("applicationContext.xml");
UserService userService = app.getBean(UserService.class);
userService.save();
}
}
@Resource(name=“userDao”)//ResResource相当@Autowired加@Qualifier(“userDao”)
//标志Spring配置类
@Configuration
@ComponentScan("com.ruan")
@Import(DataSource.class)
public class ConfigurationText {
}
@PropertySource("jdbc.properties")
public class DataSource {
@Value("${jdbc.driver}")
private String driver;
@Value("${jdbc.url}")
private String url;
@Value("${jdbc.username}")
private String username;
@Value("${jdbc.password}")
private String password;
@Bean("dataSource")
public javax.sql.DataSource getDataSource() throws PropertyVetoException {
ComboPooledDataSource dataSource=new ComboPooledDataSource();
dataSource.setDriverClass(driver);
dataSource.setJdbcUrl(url);
dataSource.setUser(username);
dataSource.setPassword(password);
return dataSource;
}
}
//测试Spring容器产生数据源对象
public void test4() throws PropertyVetoException, SQLException {
ApplicationContext app=new AnnotationConfigApplicationContext(ConfigurationText.class);
DataSource dataSource = (DataSource) app.getBean("dataSource");
Connection connection = dataSource.getConnection();
System.out.println(connection);
connection.close();
}