<Java EE 进阶> 3.Spring简单的读和取

目录

1.存储Bean对象

(1)准备工作:配置扫描路径

(2)添加注解存储Bean对象

① 类注解

② 方法注解@Bean


在String中更简单的存储和读取对象的核心是使用注解

1.存储Bean对象

(1)准备工作:配置扫描路径

需要先在spring-config中添加一行bean注册内容

<Java EE 进阶> 3.Spring简单的读和取_第1张图片

 其中标红一行为注册扫描的包,只有此包下的类对象才能被存储到String中

(2)添加注解存储Bean对象

将对象存储到String中,有两类注解可以实现:

1.类注解:@Controller、@Service、@Repository、@Component、@Configuration。

2.方法注解:@Bean。

① 类注解

这五个类注解的用法一样

package com;

import org.springframework.stereotype.Controller;


@Controller
public class UserController {
    public void sayHi() {
        System.out.println("Hi Hi Hi");
    }
}

 读取bean代码:

public class App {
    public static void main(String[] args) {

        //1. 得到上下文
        ApplicationContext context = new ClassPathXmlApplicationContext("spring-config.xml");
        //2.得到bean
        UserController userController = (UserController) context.getBean("userController");
        //3.调用bean方法
        userController.sayHi();
    }
}

问题:既然功能一样为什么还要这么多类注解呢?

那是因为用途不同,不同注释可以将程序的工程分层

@Controller:表示的是业务逻辑层

@Service:服务层

@Repository:持久层

@Configuration:配置层

@Component:标注一个类为String容器的Bean

补充:Bean 命名规则

<Java EE 进阶> 3.Spring简单的读和取_第2张图片

 正常情况命名为Bean类名字的首字母小写

若Bean类的第一个第二个字母都大写,此时就用原类名命名。

② 方法注解@Bean

类注解是添加到某个类上的,而方法注解是放到某个方法上的

<Java EE 进阶> 3.Spring简单的读和取_第3张图片

在Spring框架中,方法注解@Bean要配合类注解才能将对象存储到Spring容器中

补充:重命名 Bean 

<Java EE 进阶> 3.Spring简单的读和取_第4张图片

<Java EE 进阶> 3.Spring简单的读和取_第5张图片

 未完待续...

你可能感兴趣的:(Java,EE,进阶,spring,java,后端)