Spring注解

Spring注解,第1张

     @Component(当一个类无法确定分类,但需要存入ioc容器可以使用这个注解

        @ Controller(表现层) 、@ Service(业务层) 、@ Repository(持久层)。

             作用:用于把当前类对象存入spring容器中

            属性: value :用于指定bean的id。当我们不写时,它的默认值是当前类名,且首字母改小写。

    @ Autowire:自动按类型注入。 出现位置:可以在变量上、也可以是方法上。

         细节:在使用注解注入时,set方法就不是必须的了

    @ Qualifier:按照类中注入的基础之上再按照名称注入。

    @ Resource : 直接按照bean的id注入。它可以独立使用

    @ Value:用于注入基本类型和String类型的数据

   ( 作用就和在bean标签中使用scope属性实现的功能是一样的 )

    @ Scope: 常用取值: singleton 、prototype

    ( 作用就和在bean标签中使用init-method和destroy-method的作用是一样的 )

     @ PostConstruct:用于指定初始化方法。 在类中方法上指定

    @ PreDestroy:用于指定销毁方法。 在类中方法上指定(最好是单例对象,因为多例对象有java回收垃圾机制回收)

    @ Configuration: 指定当前类是一个配置类

    @ ComponentScan: 指定创建容器时要扫描的包。和本文开头加入的内容作用是一致的

    @ PropertySource ("classpath:jdbc.properties"):加载配置文件

    @ Import: 用于引入其他的类,将其他配置类导入总配置类

@Repository注解:

1 package imooc_spring.test.anotation.myrepository

2

3 import org.springframework.stereotype.Repository

4

5 /**

6  * 指定id,默认为dAO,即类名首字母小写,如果指定了名称那么只能ctx.getBean(指定名称)来获取bean

7  * 这个例子里就只能通过ctx.getBean("wyldao)来获取DAO 的实例了

8  *

9  * @author Wei

10  */

11 @Repository("wyldao")

12 public class DAO {

13     /**

14      * 返回x和y的乘积

15      *

16      * @param x

17      * @param y

18      * @return x*y

19      */

20     public int multi(int x, int y) {

21         return x * y

22     }

23 }

复制代码

@Component 注解:

复制代码

1 package imooc_spring.test.anotation

2

3 import org.springframework.stereotype.Component

4 /**

5  * Component 注解

6  * @author Wei

7  *

8  */

9 @Component

10 public class TestObj {

11     public void SayHi(){

12         System.out.println("\nHi this is TestObj.SayHi()...")

13     }

14 }

复制代码

@Controller注解:

复制代码

1 package imooc_spring.test.anotation

2

3 import org.springframework.stereotype.Controller

4

5 @Controller

6 public class UserController {

7     public void execute(){

8         System.out.println("\nUserController.execute()...")

9     }

10 }

复制代码

@Repository注解:

复制代码

1 package imooc_spring.test.anotation

2

3 import org.springframework.stereotype.Repository

4

5 //@Repository

6 @Repository("wyl_repo")

7 public class UserRepositoryImpl implements IUserRepository {

8 //模拟持久化层

9     @Override

10     public void save() {

11         // TODO Auto-generated method stub

12         System.out.println("\nUserRepositoryImpl.save()...")

13     }

14

15 }

复制代码

@Service注解:

复制代码

1 package imooc_spring.test.anotation

2

3 import org.springframework.stereotype.Service

4

5 @Service

6 public class UserService {

7     public void add(){

8         System.out.println("\nUserService.add()...")

9     }

10 }


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11656362.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存