2023-06-19 10:29

SpringMVC和Spring整合

少尉

JavaEE

(310)

(0)

收藏

一、 首先,在SpringMVC的配置文件中添加dao包的扫描路径

image.png 

二、 新建dao接口和实现类

UserDAO接口:

image.png 

UserDAOImpl类:

添加注解@Repository 是指数据访问层

image.png 

还有其他几个注解可以起到同样的作用:

控制器层用@Controller

业务逻辑层用@Service

如果不确定是哪一层,可以用@Component

只要加上这几个注解 

然后在配置文件中配置扫描的包

就会在扫描的包下面找有没有加这几个注解的类

 

三、 在控制器类HelloServlet中注入UserDAO

image.png 

注意:Resource注解要添加一个依赖才能使用

image.png 

也可以用另外一个注解@ Autowired

image.png 

注:@Resource和@Autowired的区别

1、@Resource注解是Java自身的注解,@Autowired注解是Spring的注解

2、@Resource既可以根据名字(byName)进行注入,也可以根据类型(byType)进行注入,而@Autowired只能根据类型(byType)进行注入

3、@Resource默认根据名字(byName)进行注入,@Autowired默认根据类型(byType)进行注入

例如:添加两个HelloDAO接口

的实现类

image.png 

1、使用@Autowired注解

此时,用@Autowired注解会报错

image.png 

需要配合Qualifier注解一起使用

image.png 

2、使用@Resource注解

如果用@Resource注解也会报错

因为找到了两个实现类,Spring不知道要匹配哪一个

image.png 

可以在@Resource注解中直接指定name,不需要其他注解

image.png 

也可以根据类型注入

image.png 

0条评论

点击登录参与评论