spring学习3-获取bean对象

接着上一节的课程继续学习

 

MesasageService 类

    package hello;
     
    import org.springframework.stereotype.Component;
    //注解的加入
    @Component
    public class MesasageService {
        public MesasageService() {
            super();
            System.out.println("MessageService...");
        }
     
        /**
         * 执行打印功能
         * @return 返回要打印的字符串
         */
        public String getMessage(){
            return "Hello World";
        }
    }

MessagePrinter类

    package hello;
     
    import org.springframework.stereotype.Component;
    //注解的加入
    @Component
    public class MessagePrinter {
        //无参构造方法的加入
        public MessagePrinter() {
            super();
            System.out.println("MessagePrinter...");
        }
     
        private MesasageService service;
        /*
        * 简历和MessageService的关系
        * */
        //设置service的值
        public void setService(MesasageService service){
            this.service =service;
        }
        public void printMessage(){
            System.out.println(this.service.getMessage());
        }
    }

ApplicationSpring类

    package hello;
     
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.annotation.AnnotationConfigApplicationContext;
    import org.springframework.context.annotation.ComponentScan;
     
    //加入扫描
    @ComponentScan
    public class ApplicationSpring {
        public static void main(String[] args){
            System.out.println("appliaction....");
            //初始化spring
            ApplicationContext context =new AnnotationConfigApplicationContext(ApplicationSpring.class);
            //获取messagePrinter对象
            MessagePrinter printer=context.getBean(MessagePrinter.class);
            //获取messafeService对象
            MesasageService service=context.getBean(MesasageService.class);
            System.out.println(printer);
            System.out.println(service);
            printer.setService(service);
            //打印消息
            printer.printMessage();
        }
    }

运行结果

    appliaction....
    10月 27, 2019 6:30:54 下午 org.springframework.context.annotation.AnnotationConfigApplicationContext prepareRefresh
    信息: Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@3d012ddd: startup date [Sun Oct 27 18:30:54 CST 2019]; root of context hierarchy
    MessageService...
    MessagePrinter...
    hello.MessagePrinter@10e92f8f
    hello.MesasageService@7ce3cb8e
    Hello World
 

posted @   前端导师歌谣  阅读(125)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示