MVC:Model View Controller
1)controller:控制层(Servlet是运行服务器端,处理请求响应java语言编写技术)
2)service:业务层(事务,异常)
3)dao:持久层(CRUD)
Spring :IOC 和 DI
准备工作
在java文件夹的com.xja下创建
Dao包:
StudentDao.java
StudentDaoImpl.java
Service包:
StudentService.java
StudentServiceImpl.java
Controller包:
StudentController.java
StudentControllerImpl.java
在Spring的配置文件中添加相应实体类的注入
自动装配(autowire):
1.按名称;byName
只要对象对应属性名与xml中实例化对象id一致可以实现自动装配
2.按照类型;byType
只要对象对应属性类型与xml中实例化对象类型一致可以实现自动装配
3.constructor
默认不会自动装配
<bean id="studentController" class="com.xja.controller.StudentController" autowire="byName">
// 等价于 <property name="studentService" ref="studnetService"/>
</bean>
<bean id="studentService" class="com.xja.service.impl.StudentServiceImpl" autowire="constructor">// 等价于 <constructor-arg name="studentDao" ref="studnetDao"/>
</bean>
<bean id="studentDao" class="com.xja.dao.impl.StudentDaoImpl" />
全局设置autowire:
注意:byType方式自动装配:
要装配的实现类实现接口,还有别的实现类也实现了接口,
这时只能使用byName的方式实现装配。