含义
- @Service 用于标注业务层组件
- @Controller 用于标注控制层组件
- @Repository 用于标注数据访问组件,即DAO组件
- @Component 泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注
区别
举例子
/**
* Dao层接口
*/
public interface UserDao{
public void save();
}
/**
* Dao层实现类
*/
@Repository
public class UserDaoImpl implements UserDao{
@Override
public void save(){
System.out.println("保存测试!");
}
}
/**
* Service 接口
*/
public interface UserService{
public void UserSave();
}
/**
* Service 实现类
* 业务代码实现
*/
@Service
public class UserServiceImpl implements UserService{
@AutoWired //自动注入
private UserDao userdao;
public void UserSave(){
System.out.println("Service 执行");
userdao.save();
}
}
/**
* 中间类
*/
@Component
public class DtoClass(){
public void say(){
System.out.println("Dto 执行");
}
}
/**
* 控制层类
*/
@Controller
public class UserController{
@AtuoWired
private UserService userService;
@AutoWired
private DtoClass dtoClass;
public void save()
{
System.out.println("Controller 执行");
userService.Usersave();
dtoClass.say();
}
}