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

北京网站建设新闻网络营销经典失败案例

北京网站建设新闻,网络营销经典失败案例,浙江省小型建网,为知笔记如何导入wordpressBean是什么 Bean 是指 Java 中的可重用软件组件,容器会根据提供的元数据来创建和管理这些 Bean,也包括它们之间的依赖关系。Spring 容器对 Bean 并没有太多的要求,无须实现特定接口或依赖特定库,只要是最普通的 Java 对象即可,这类对象也被称为 POJO(Plain Old Java Obj…

Bean是什么

Bean 是指 Java 中的可重用软件组件,容器会根据提供的元数据来创建和管理这些 Bean,也包括它们之间的依赖关系。Spring 容器对 Bean 并没有太多的要求,无须实现特定接口或依赖特定库,只要是最普通的 Java 对象即可,这类对象也被称为 POJO(Plain Old Java Object)。

JavaBeans 是 Java 中一种特殊的类,可以将多个对象封装到一个对象(Bean)中。特点是可序列化,提供无参构造器,提供 Getter 方法和 Setter 方法访问对象的属性。 一个 Bean 的定义中,会包含如下部分,

  • Bean 的名称,一般是 Bean 的 id,也可以为 Bean 指定别名(alias);
  • Bean 的具体类信息,这是一个全限定类名;
  • Bean 的作用域,是单例(singleton)还是原型(prototype);
  • 依赖注入相关信息,构造方法参数、属性以及自动织入(autowire)方式;
  • 创建销毁相关信息,懒加载模式、初始化回调方法与销毁回调方法。 

Bean 的依赖关系

依赖注入,Spring 容器管理依赖就是管理 Bean 之间的依赖。

两种基本注入方式

 1. 基于构造方法的注入,是通过构造方法来注入依赖。对应的 XML 配置文件需要使用 <constructor-arg/> 传入构造方法所需的内容。<constructor-arg/> 的可配置属性如下,

属性

作用

value

要传给构造方法参数的值

ref

要传给构造方法参数的 Bean ID

type

构造方法参数对应的类型

index

构造方法参数对应的位置,从 0 开始计算

name

构造方法参数对应的名称

2. 基于 Setter 方法的注入,是通过 Bean 的 Setter 方法来注入依赖。

用代码实现两种注入方式,如下,

public class Hello {   private String name;
​   public Hello(String name) {       this.name = name;   }
​   public String hello() {       return "Hello World! by " + name;   }
}// 通过构造方法配置 Bean
// 使用 <constructor-arg/> 传入构造方法所需的内容
// <constructor-arg> 中有不少属性可以配置
<?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       https://www.springframework.org/schema/beans/spring-beans.xsd">
​   <bean id="hello" class="learning.spring.helloworld.Hello">       <constructor-arg value="Spring"/>   </bean>
​
</beans>// 通过 Setter 方法配置 Bean
// <property/> 中的 value 属性是直接注入的值,用 ref 属性则可注入其他 Bean
<bean id="..." class="...">   <property name="xxx">       <!-- 直接定义一个内部的Bean -->       <bean class="..."/>   </property>
​   <property name="yyy">       <!-- 定义依赖的Bean -->       <ref bean="..."/>   </property>
​   <property name="zzz">       <!-- 定义一个列表 -->       <list>           <value>aaa</value>           <value>bbb</value>       </list>   </property>
</bean>

自动织入(autowire)

手动配置依赖在 Bean 少时还能接受,当 Bean 的数量变多后,这种配置就会变得非常繁琐。让 Spring 容器替我们自动进行依赖注入,这种机制就叫自动织入。自动织入有几种模式,如下,

名称

说明

no

不进行自动织入

byName

根据属性名查找对应的 Bean 进行自动织入

byType

根据属性类型查找对应的 Bean 进行自动织入

constructor

同 byType,但用于构造方法注入

在 <bean/> 中可以通过 autowire 属性来设置使用何种自动织入方式,也可以在 <beans/> 中设置 default-autowire 属性指定默认的自动织入方式,Spring Framework 2.0也可以直接使用@Autowired注解。

自动织入时需要注意以下事项,

  • 开启自动织入后,仍可以手动设置依赖,手动设置的依赖优先级高于自动织入;
  • 自动织入无法注入基本类型和字符串;
  • 对于集合类型的属性,自动织入会把上下文里找到的 Bean 都放进去,但如果属性不是集合类型,有多个候选 Bean 就会有问题。

为了避免第三点问题,可以将 <bean/> 的 autowire-candidate 属性设置为 false,也可以在期望的候选 Bean 的 <bean/> 中将 primary 设置为 true,这表明在多个候选 Bean 中该 Bean 是主要的(如果使用基于 Java 类的配置方式,我们可以通过选择 @Primary 注解实现一样的功能)。

指定 Bean 的初始化顺序

Spring 容器会根据依赖情况自动调整 Bean 的初始化顺序。有时 Bean 之间的依赖并不明显,容器可能无法按预期初始化,这时可以自己指定 Bean 的依赖顺序。<bean/> 的 depends-on 属性可以指定当前 Bean 还要依赖哪些 Bean(基于 Java 类的配置方式支持 @DependsOn 注解实现一样的功能)。

Bean 的三种配置方式

Spring 容器的元数据配置本质上就是配置 Bean(AOP 和事务的配置背后也是配置各种 Bean),Bean的配置姿势就显得比较重要了。

Spring Framework 提供了不同风格的配置方式,这几种方式没有明确的优劣之分,很多时候也可以混合使用。

1. 早期仅支持 XML 配置方式;

2. Spring Framework 2.0 引入了基于注解的配置方式;

3. Spring Framework 3.0 又增加了基于 Java 类的配置方式。

基于 XML 文件的配置

Spring Framework 提供了 <beans/> Schema 配置 Bean,需要配合使用 ApplicationContext 类把 Bean 配置注入到容器中。

基于注解的配置

Spring Framework 2.0 引入了 @Required 注解,Spring Framework 2.5 又引入了 @Autowi

http://www.hkea.cn/news/675896/

相关文章:

  • 网站的弹窗是怎么做的谈谈对seo的理解
  • 广州网站制作费用宁波seo外包哪个品牌好
  • 河南高端网站建设广州网站优化页面
  • 企业可以备案几个网站南昌seo实用技巧
  • 网站用什么布局专业网站建设公司
  • 公司网站怎么做分录it培训机构学费一般多少
  • 如何将自己做的网页做成网站绍兴seo
  • 河南省住房与城乡建设厅网站首页怎么做属于自己的网站
  • 移动端网站开发推广效果最好的平台
  • 用二级页面做网站的源代码自助建站系统破解版
  • 网站上怎么做动画广告推广策略包括哪些内容
  • 广州网站优化公司大亚湾发布
  • 广州网站开发招聘百度经验悬赏令
  • 吴江建设局网站郑州粒米seo外包
  • 建设工程合同纠纷与劳务合同纠纷seo培训教程视频
  • 找网站建设公司哪家最好沈阳市网站
  • sh域名做的好的网站什么是营销
  • 网站平台怎么做推广一站式网络推广服务
  • 百度对新网站排名问题兰州seo快速优化报价
  • 网站建设常用代码湘潭网络推广
  • 做网站上传图片一直错误好用搜索引擎排名
  • 钟祥网站建设网络推广的含义
  • 新闻类网站源码青岛官网seo
  • 网站优化哪里可以做百度营销客户端
  • 常德建设局网站北京优化网站方法
  • 用ip做网站优化手机流畅度的软件
  • 为网站添加统计媒介
  • 商业设计网站推荐互联网营销师证书是国家认可的吗
  • 做网站的是干嘛的怎样把自己的产品放到网上销售
  • 品牌型网站制作价格2022年小学生新闻摘抄十条