做网站 多少钱做微商加入什么移动电商网站
2026/4/15 14:56:03 网站建设 项目流程
做网站 多少钱,做微商加入什么移动电商网站,网站建设的工作职责,在哪个网站上做实验仪器比较好项目工程完整地址#xff1a;https://github.com/YiyiCoding/Spring7Guides Bean的单例说明多例Bean#xff08; Scope(“prototype”) #xff09;每次都由IOC容器New一个新对象#xff0c;此处之外跟容器没有太多的联系性单例才具有生命周期的概念单例有懒加载的概念https://github.com/YiyiCoding/Spring7GuidesBean的单例说明多例Bean Scope(“prototype”) 每次都由IOC容器New一个新对象此处之外跟容器没有太多的联系性单例才具有生命周期的概念单例有懒加载的概念需要时才由IOC容器创建Bean只要在类上面或Bean 上注解Lazy即可Bean的生命周期实例化Instantiation→属性填充Populate→前置初始化BeanPostProcessor.postProcessBeforeInitialization→初始化Initialization→后置初始化BeanPostProcessor.postProcessAfterInitialization→就绪Ready【在容器中可用】 →销毁前处理DestructionAwareBeanPostProcessor→销毁Destruction【今天Spring7包含的知识点】LazyBean的生命周期构造函数注入publicUserService2(OrderServiceorderService){this.orderServiceorderService;}需适配 Jakarta EE 9implementation(jakarta.annotation:jakarta.annotation-api:3.0.0)PostConstructPreDestroyInitializingBeanDisposableBean代码开始新增依赖Spring7 要求 Jakarta EE 9implementation(jakarta.annotation:jakarta.annotation-api:3.0.0)UserService2采用构造函数注入ServicepublicclassUserService2{privatefinalOrderServiceorderService;publicUserService2(OrderServiceorderService){this.orderServiceorderService;}publicvoidtest(){System.out.println(orderService.demo());}}Bean的生命周期代码LifecycleBeanpackagecom.yiyi.coding.spring.ioc.bean;importjakarta.annotation.PostConstruct;importjakarta.annotation.PreDestroy;importorg.springframework.beans.factory.DisposableBean;importorg.springframework.beans.factory.InitializingBean;importorg.springframework.stereotype.Component;ComponentpublicclassLifecycleBeanimplementsInitializingBean,DisposableBean{// 步骤1实例化无代码容器自动执行publicLifecycleBean(){System.out.println(【1. 实例化】创建Bean实例);}// 步骤2属性填充模拟注入实际可通过配置注入privateStringname;publicvoidsetName(Stringname){this.namename;System.out.println(【2. 属性填充】设置属性namename);}// 步骤3BeanPostProcessor前置处理需自定义实现// 步骤4初始化PostConstructpublicvoidpostConstruct(){System.out.println(【4.1 初始化】PostConstruct);}OverridepublicvoidafterPropertiesSet()throwsException{System.out.println(【4.2 初始化】InitializingBean#afterPropertiesSet);}publicvoidinitMethod(){System.out.println(【4.3 初始化】自定义init-method);}// 步骤5BeanPostProcessor后置处理需自定义实现// 步骤6就绪可用publicvoiddoBusiness(){System.out.println(【6. 就绪】Bean执行业务逻辑);}// 步骤7销毁前处理需自定义DestructionAwareBeanPostProcessor// 步骤8销毁PreDestroypublicvoidpreDestroy(){System.out.println(【8.1 销毁】PreDestroy);}Overridepublicvoiddestroy(){System.out.println(【8.2 销毁】DisposableBean#destroy);}publicvoiddestroyMethod(){System.out.println(【8.3 销毁】自定义destroy-method);}publicStringgetName(){returnname;}}运行main函数的测试情况LifecycleBean 中的某些方法未完全执行有些需进行配置如initMethod()等本次略过。packagecom.yiyi.coding.spring.ioc;// 测试类importcom.yiyi.coding.spring.ioc.bean.LifecycleBean;importorg.springframework.context.annotation.AnnotationConfigApplicationContext;importorg.springframework.context.annotation.ComponentScan;ComponentScan(com.yiyi.coding.spring.ioc)publicclassLifecycleTest{staticvoidmain(){// 启动容器AnnotationConfigApplicationContextcontextnewAnnotationConfigApplicationContext(LifecycleTest.class);LifecycleBeanbeancontext.getBean(LifecycleBean.class);bean.setName(test);// 手动触发属性填充模拟容器注入bean.doBusiness();// 关闭容器触发销毁context.close();}}以下生命周期的钩子已经足够使用。【1. 实例化】创建Bean实例 【4.1 初始化】PostConstruct 【4.2 初始化】InitializingBean#afterPropertiesSet 【2. 属性填充】设置属性nametest 【6. 就绪】Bean执行业务逻辑 【8.1 销毁】PreDestroy 【8.2 销毁】DisposableBean#destroys

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询