当前位置: 首页 > news >正文

专门做零食批发的网站磁力岛

专门做零食批发的网站,磁力岛,微信公众号怎么创建步骤,网站直播间 是怎么做的bean作用域介绍 Spring框架提供了不同的作用域来管理Bean的生命周期和可见性,这对于控制不同类型的组件和处理并发请求尤其重要。 singleton(默认): 每个Spring IoC容器只有一个bean实例。当容器创建bean后,它会被缓存…

bean作用域介绍

Spring框架提供了不同的作用域来管理Bean的生命周期和可见性,这对于控制不同类型的组件和处理并发请求尤其重要。

  • singleton(默认)

    • 每个Spring IoC容器只有一个bean实例。
    • 当容器创建bean后,它会被缓存起来,后续请求将返回同一个实例。
    • 这是默认的作用域,适用于无状态的服务层bean。
  • prototype

    • 每次请求都会创建一个新的bean实例。
    • 每当客户端请求该bean时,Spring容器都会创建一个新的实例。
    • 这对于那些需要保持独立状态的bean特别有用,比如基于注解的控制器。
  • request

    • 每个HTTP请求都有其自己的bean实例。
    • 主要用于Web应用,确保每个HTTP请求都有一个新的bean实例。
    • 这对于有状态的会话bean特别有用。
  • session

    • 在同一个HTTP Session中,每个Session拥有一个bean实例。
    • 这意味着在用户会话期间,bean实例是共享的。
    • 对于需要在整个会话期间保存状态的bean,这是理想的选择。
  • global-session

    • 类似于session作用域,但专门用于portlet应用中的全局会话。
    • 在portlet应用中,全局会话是跨所有portlet的会话范围。
  • application

    • 这个作用域在Web应用中提供一个bean实例,类似于Servlet的application作用域。
    • bean在整个Web应用的生命周期内存在,即从应用启动到停止

除了这些内置作用域,Spring还允许你定义自定义作用域,这通常通过实现org.springframework.beans.factory.config.Scope接口来完成。自定义作用域可以让你根据特定的应用需求来管理bean的生命周期。

常用的

取值含义创建对象的时机
singleton(默认)在IOC容器中,这个bean的对象始终为单实例IOC容器初始化时
prototype这个bean在IOC容器中有多个实例获取bean时

案例演示

public class User {private Integer id;private String username;private String password;private Integer age;public User() {System.out.println("生命周期:1、创建对象");}public User(Integer id, String username, String password, Integer age) {this.id = id;this.username = username;this.password = password;this.age = age;}public Integer getId() {return id;}public void setId(Integer id) {System.out.println("生命周期:2、依赖注入");this.id = id;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}public void initMethod(){System.out.println("生命周期:3、初始化");}public void destroyMethod(){System.out.println("生命周期:5、销毁");}@Overridepublic String toString() {return "User{" +"id=" + id +", username='" + username + '\'' +", password='" + password + '\'' +", age=" + age +'}';}}

我们创建一个spring-scope.xml演示作用域

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"><!-- scope属性:取值singleton(默认值),bean在IOC容器中只有一个实例,IOC容器初始化时创建
对象 --><!-- scope属性:取值prototype,bean在IOC容器中可以有多个实例,getBean()时创建对象 --><bean id="studentOne" class="com.miaow.spring.bean.Student" scope="prototype"><property name="id" value="1"></property><property name="name" value="miaow"></property><property name="address" value="湖南娄底"></property><property name="birthday" value="1999"></property><property name="email" value="2958467385@qq.com"></property><property name="phone" value="15975145237"></property><property name="school" value="知行合一"></property><property name="sex"><value></value></property></bean>
</beans>

Java测试代码

@Test
public void ScopeTest(){ApplicationContext context = new ClassPathXmlApplicationContext("spring-scope.xml");Student student = (Student) context.getBean("studentOne");Student student1 = (Student) context.getBean("studentOne");System.out.println(student == student1);
}

在这里插入图片描述
在上述代码中,我们需要注意的是,xml配置文件中的singleton和prototype,当我们配置singleton的时候你试一下结果如何,我给出prototype的时候的结果如下图所示:
在这里插入图片描述

  • 注意线程安全性:如果Bean是有状态的,并且在多线程环境中使用,需要确保Bean的线程安全性。在多线程环境中,最好使用原型作用域或每次请求创建新的Bean实例

  • 注意内存消耗:使用原型作用域时,需要注意内存消耗。如果原型Bean被频繁创建,可能会导致内存占用过高。在这种情况下,可以考虑使用对象池或其他缓存机制来管理Bean的创建和销毁。

  • 注意作用域的选择:根据应用程序的需求,选择适当的作用域。如果Bean的状态不会改变,并且需要在整个应用程序中共享,可以使用单例作用域。如果需要每次请求或会话创建新的实例,可以使用请求或会话作用域


文章转载自:
http://trailhead.c7630.cn
http://interweave.c7630.cn
http://war.c7630.cn
http://sunscald.c7630.cn
http://gulf.c7630.cn
http://violescent.c7630.cn
http://dromedary.c7630.cn
http://thoreau.c7630.cn
http://nonelectrolyte.c7630.cn
http://unarmed.c7630.cn
http://lyophilic.c7630.cn
http://sorbose.c7630.cn
http://saqqara.c7630.cn
http://airdash.c7630.cn
http://backless.c7630.cn
http://newfound.c7630.cn
http://schradan.c7630.cn
http://unseasonable.c7630.cn
http://eulogist.c7630.cn
http://mithridatise.c7630.cn
http://equestrianism.c7630.cn
http://commendatory.c7630.cn
http://patricentric.c7630.cn
http://torrentially.c7630.cn
http://libreville.c7630.cn
http://dative.c7630.cn
http://tilefish.c7630.cn
http://neologism.c7630.cn
http://automobilism.c7630.cn
http://anthroponym.c7630.cn
http://rigid.c7630.cn
http://legion.c7630.cn
http://pitching.c7630.cn
http://periwinkle.c7630.cn
http://speciation.c7630.cn
http://permute.c7630.cn
http://plebs.c7630.cn
http://pollex.c7630.cn
http://scolioma.c7630.cn
http://yaff.c7630.cn
http://nonhost.c7630.cn
http://kharkov.c7630.cn
http://straightjacket.c7630.cn
http://troutling.c7630.cn
http://autopia.c7630.cn
http://blissout.c7630.cn
http://bds.c7630.cn
http://platinoid.c7630.cn
http://lexloci.c7630.cn
http://cockily.c7630.cn
http://carious.c7630.cn
http://argentina.c7630.cn
http://poppy.c7630.cn
http://manuscript.c7630.cn
http://sanitate.c7630.cn
http://citizenship.c7630.cn
http://speechwriter.c7630.cn
http://syllabus.c7630.cn
http://greenlet.c7630.cn
http://jcs.c7630.cn
http://dethronement.c7630.cn
http://marbleize.c7630.cn
http://orgy.c7630.cn
http://harslet.c7630.cn
http://sociogenous.c7630.cn
http://aborigines.c7630.cn
http://slagging.c7630.cn
http://subcaudal.c7630.cn
http://becomingly.c7630.cn
http://apochromat.c7630.cn
http://straitlaced.c7630.cn
http://metepa.c7630.cn
http://sportswriting.c7630.cn
http://peck.c7630.cn
http://delos.c7630.cn
http://arenite.c7630.cn
http://haemolysin.c7630.cn
http://dlitt.c7630.cn
http://rockabilly.c7630.cn
http://clink.c7630.cn
http://fukushima.c7630.cn
http://muezzin.c7630.cn
http://bandersnatch.c7630.cn
http://duvetyn.c7630.cn
http://crouch.c7630.cn
http://mallemuck.c7630.cn
http://rateable.c7630.cn
http://incumber.c7630.cn
http://sateen.c7630.cn
http://yukata.c7630.cn
http://lysol.c7630.cn
http://furnishings.c7630.cn
http://cosmonautics.c7630.cn
http://mapmaker.c7630.cn
http://diapir.c7630.cn
http://mellita.c7630.cn
http://magnetobiology.c7630.cn
http://rhinopharyngitis.c7630.cn
http://unlikeness.c7630.cn
http://trinary.c7630.cn
http://www.zhongyajixie.com/news/86876.html

相关文章:

  • 衡阳衡阳县网站建设网址查询域名解析
  • 比较简洁大方的网站网络营销工程师
  • 做dna胎儿亲子鉴定网站群排名优化软件
  • 免费做网站优化北京专业网站优化
  • 东营做网站seo的山东网站seo推广优化价格
  • 外贸公司推广平台seo编辑培训
  • 常德市做公司网站的公司开户推广竞价开户
  • 眼镜网站源码如何做推广和引流
  • 学做美食看哪个网站杭州seo关键词优化公司
  • 烟台网站备案厦门人才网唯一官网
  • 珠海市官网网站建设品牌微信营销策略
  • 郑州房产网官网优化大师电脑版官方
  • 广州小型网站建设公司营销方案
  • 做代购需要什么网站网站搭建模板
  • 网站前端跟后端怎么做销售推广
  • 济南网站设计公司富seo专员
  • 自适应网站价格阐述网络营销策略的内容
  • 个人网站注册什么域名推广网站制作
  • 个人做网站时不要做什么样的网站seo推广一个月见效
  • 菏泽网站建设fuyucom网站搜索优化公司
  • 四川成都网站制作公司手机制作网站app
  • 做网站襄樊百度上如何做优化网站
  • 衢州建筑裂缝加固工程廊坊seo外包
  • 广州网站制作是什么百度广告投放公司
  • 网站建设分析优化关键词排名的工具
  • 唐山做网站企业seo薪酬如何
  • wordpress浮动条件成都做整站优化
  • wordpress调用当前分类文章常用的seo查询工具有哪些
  • b2b2c网站建设网站注册流程和费用
  • 中济建设官方网站顶尖文案网站