当前位置:网站首页 > Java基础 > 正文

javaspringmvc(JAVAspringmvc下载文件到一半显示正在恢复)



在 Spring 容器中,我们广泛使用的是一个一个的 Bean,那在中,我们可以如何去定义一个Bean?

  • 标签
  • @Bean注解
  • @Component(@Service、@Controller)

还有就是可以通过这个类。

比如,我们可以通过定义一个对象来表示定义了一个Bean:

首先项目中添加 spring-context 依赖,如下:

然后在创建User 类

我们还可以通过设置一个的其他属性

总之,我们通过,,等方式所定义的Bean,最终都会被解析为对象。要理解 ,我们从 的继承关系开始看起:

springmvc 修改时判断修改的数据是否已存在_spring

可以看到 是一个接口,继承自 和 接口。

  • AttributeAccessor:定义用于附加和访问元数据的通用协定的接口,可以是任意对象。具体的实现则是 ,采用 进行存储。
  • BeanMetadataElement:该接口只有一个方法 getSource,该方法返回 Bean 的来源。

这是 所继承的两个接口。接下来我们来看下 本身:

是一个接口,它有多个实现类,这些实现类分别描述不同类型的 Bean。大致分为两种:

  • 抽象实现:
  • 子接口:

springmvc 修改时判断修改的数据是否已存在_java_02

springmvc 修改时判断修改的数据是否已存在_User_03

是一个抽象类, 中只是定义了一系列的 get/set 方法,并没有提供对应的属性,在 中将所有的属性定义出来了。该抽象类下有个三个子类:、、。我们先来看 本身的一些方法与属性。

RootBeanDefinition

这是一个最常用的实现类,Spirng 去创建 Bean 时是基于去创建的!继承了,在的基础上扩展了一些之外的功能,并且是没有的。

实践

复用开篇就用到的 类,不过在其中添加方法。

ChildBeanDefinition

该类继承自 。其相当于一个子类,不可以单独存在,必须依赖一个,构造 时,通过构造方法传入 的名称或通过 设置父名称。它可以从父类继承方法参数、属性值,并可以重写父类的方法,同时也可以增加新的属性或者方法。

从 Spring 2.5 开始,以编程方式注册 Bean 定义的首选方法是 GenericBeanDefinition,GenericBeanDefinition 可以有效替代 ChildBeanDefinition 的绝大分部使用场合。

实践

新建一个 类, 类在 类的基础上增加一个 属性。

启动

GenericBeanDefinition

是从 Spring2.5 以后新加入的 bean 文件配置属性定义类,是一站式服务类。 可以动态设置父 Bean,同时兼具 和 的功能。

实践

该接口可以返回两个元数据的类:

  • AnnotationMetadata:主要对 Bean 的注解信息进行操作,如:获取当前 Bean 标注的所有注解、判断是否包含指定注解。
  • MethodMetadata:方法的元数据类。提供获取方法名称、此方法所属类的全类名、是否是抽象方法、判断是否是静态方法、判断是否是final方法等。

该接口下有三大子类: 、、

实现了 也继承了 。这个 用来描述标注等注解标记的类会解析为。

它的源码很简单,就是多了一个属性: 用来存储扫描进来的的一些注解信息。

验证

等注解标记的类是否会解析为

新建 类

然后再创建 类

启动

springmvc 修改时判断修改的数据是否已存在_java_04

该类继承自 ,并实现了 接口。这个 用来描述标注使用了 注解标记配置类会解析为 。

验证

新建 类

启动

springmvc 修改时判断修改的数据是否已存在_XML_05

如果使用 作为扫描包, 的实际类型是 ,当然这个与启动有关,后面的博文再说。

springmvc 修改时判断修改的数据是否已存在_自动装配_06

它是的一个私有的静态内部类:这个类负责将注解的方法转换为对应的 类,源码就不过多解释了,和之前几个差不多。

其功能特点如下:

  • 1、如果 注解没有指定 Bean 的名字,默认会用方法的名字作为Bean的名称。
  • 2、标注 注解的类会成为一个工厂类,而标注 注解的方法会成为工厂方法,通过工厂方法实例化 Bean。

验证

在 类中新增方法:

启动

springmvc 修改时判断修改的数据是否已存在_spring_07

到此这篇javaspringmvc(JAVAspringmvc下载文件到一半显示正在恢复)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • java爬虫视频教程(java爬虫步骤)2025-03-13 10:54:07
  • java 网络爬虫 框架(java的爬虫框架)2025-03-13 10:54:07
  • 天气预报接口 json(天气预报接口java)2025-03-13 10:54:07
  • 学java看什么网课好(java课程哪个好)2025-03-13 10:54:07
  • Java字符串转时间(java字符串转时间类型)2025-03-13 10:54:07
  • java基础教程网站(java基础教程完整版)2025-03-13 10:54:07
  • java面试题简书(java面试 题)2025-03-13 10:54:07
  • 爬虫和java哪个简单(爬虫和java哪个简单些)2025-03-13 10:54:07
  • java爬虫与python爬虫(爬虫 java python)2025-03-13 10:54:07
  • java 面试 八股文(java面试八股文汇总)2025-03-13 10:54:07
  • 全屏图片