SPRING框架2
注解开发定义bean
使用@Component定义bean
@Component("bookDao")
public class BookDaoImpl implements BookDao {
@Override
public void find() {
System.out.println("BookDaoImpl...");
}
}
核心配置文件中通过组件扫描加载bean
<context:component-scan base-package="com.itcast"></context:component-scan>
spring提供@Component注解的三个衍生注解
- @Controller:用于表现层bean定义
- @Service:用于业务层bean定义
- @Repository:用于数据层bean定义
@Repository("bookDao")
public class BookDaoImpl implements BookDao {}
@Service
public class BookServiceImpl implements BookService {}
纯注解开发

![]()

bean的生命周期
![]()
@Repository
@Scope("singleton")
public class BookDaoImpl implements BookDao {}
![]()
@Repository("bookDao")
@Scope("singleton")
public class BookDaoImpl implements BookDao {
@Override
public void save() {
System.out.println("book dao save...");
}
@PostConstruct
public void init() {
System.out.println("初始化。。");
}
@PreDestroy
public void destroy() {
System.out.println("销毁。。。");
}
}
//关闭容器
ctx.close
依赖注入

@Service
public class BookServiceImpl implements BookService {
@Autowired
private BookDao bookDao;
//可省略setter方法
// public void setBookDao(BookDao bookDao) {
this.bookDao = bookDao;
}
public void save() {
System.out.println("book service save ...");
bookDao.save();
}
}


@Service
public class BookServiceImpl implements BookService {
@Autowired
@Qualifier("bookDao")
private BookDao bookDao;
}
![]()

@Repository("bookDao")
public class BookDaoImpl implements BookDao {
@Value("itheima")
private String name;
}
![]()
@Configuration
@ComponentScan("com.itheima")
@PropertySource("classpath:jdbc.properties")
public class SpringConfig {}
![]()
第三方bean管理





XML配置比对注解配置


浙公网安备 33010602011771号