spring——Spring Bean属性注入——短命名空间注入——c 命名空间注入(转载)

Oracle 11g RAC 节点通信故障排查与修复指南 本文详细介绍了Oracle 11g RAC集群发生节点通信故障时的系统性排查与修复方法。当出现节点异常重启时,核心问题往往源于心跳网络中断。文章提供了从快速诊断、日志分析到六层深度检查的完整指南,并给出了针对网络配置、内核参数及Oracle已知Bug等常见根因的实战解决方案,帮助DBA快速恢复集群稳定。 阅读详情
c 命名空间注入

c 命名空间是构造函数注入的一种快捷实现方式。通过它,我们能够以 <bean> 属性的形式实现构造函数方式的属性注入,而不再使用嵌套的 <constructor-arg> 元素,以实现简化 Spring 的 XML 配置的目的。

首先我们需要在配置文件的 <beans> 元素中导入以下 XML 约束。

  1. xmlns:c="http://www.springframework.org/schema/c"


在导入 XML 约束后,我们就能通过以下形式实现属性注入。

  1. <bean id="Bean 唯一标志符" class="包名+类名" c:普通属性="普通属性值" c:对象属性-ref="对象的引用">


使用 c 命名空间注入依赖时,必须注意以下 2 点:

  • Java 类中必须包含对应的带参构造器;
  • 在使用 c 命名空间实现属性注入前,XML 配置的 <beans> 元素内必须先导入 c 命名空间的 XML 约束。
 
 
 
示例

下面我们通过一个简单的实例,演示下如何通过 c 命名空间实现属性注入。
1. 修改 Dept 中的代码,添加一个有参构造函数。

package net.biancheng.c;

public class Dept {
    //部门编号
    private String deptNo;
    //部门名称
    private String deptName;

    public Dept(String deptNo, String deptName) {
        this.deptNo = deptNo;
        this.deptName = deptName;
    }

    @Override
    public String toString() {
        return "Dept{" +
                "deptNo='" + deptNo + '\'' +
                ", deptName='" + deptName + '\'' +
                '}';
    }
}

2. 修改 Employee 中的代码,添加一个有参构造函数。

package net.biancheng.c;

public class Employee {
    //员工编号
    private String empNo;
    //员工姓名
    private String empName;
    //部门信息
    private Dept dept;

    public Employee(String empNo, String empName, Dept dept) {
        this.empNo = empNo;
        this.empName = empName;
        this.dept = dept;
    }

    @Override
    public String toString() {
        return "Employee{" +
                "empNo='" + empNo + '\'' +
                ", empName='" + empName + '\'' +
                ", dept=" + dept +
                '}';
    }
}

3. 修改 Beans.xml 中的配置,使用 c 命名空间实现属性注入。

4. 重新执行 MainApp 中的 main() 方法,控制台输出如下。

Spring 6【p命名空间和c命名空间()-全面详解(学习总结---从入门到深化) 阅读详情

相关推荐

多 Agent 之间如何通信和协调?OpenClaw 的 Gateway 在其中扮演什么角色?

多 Agent 之间如何通信和协调?OpenClaw 的 Gateway 在其中扮演什么角色?

我哎GIS博客 1589

spring之基于p命c命名空间注入

P命名空间注入:目的:简化set方法注入XML头部信息中添加p命名空间的配置信息:xmlns:p=“http://www.springframeworl.org/schema/p”p命名空间注入是基于setter方法的,所以需要对应的属性提供set方法c命名空间注入:目的:简化构造方法在XML头部信息中添加p命名空间的配置信息:xmlns:c=“http://www.springframeworl.org/schema/c”c命名空间注入是基于构造方法的,所以需要提供构造方法。

qq_42338744的博客 1072

spring各种命名空间实例

spring各种命名空间实例。以及命名空间下的各元素简介

Java --- Spring6之p空间注入与c空间注入

第二步使用p:属性 = 赋予属性的值。第一步添加p命名空间

qq_46093575的博客 477

Spring namespace(命名空间

Spring namespace(命名空间

weixin_53184944的博客 803

spring中的c命名空间和p命名空间是什么?

p命名空间 spring中的p命名空间就是为了更加方便的使用set方法注入属性内容 举例说明: User实体类 public class User { private String name; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; }

技术积累,技术分享 2384

狂神说Spring03:依赖注入(DI)

狂神说Spring系列连载课程,通俗易懂,基于Spring最新版本,欢迎各位狂粉转发关注学习。禁止随意转载转载记住贴出B站视频链接及公众号链接!Dependency Injection...

狂神说 9049

spring学习笔记-bean属性注入转载

springbean属性注入方式

awentangtang9的博客 694

转载狂神说java-依赖注入

依赖注入1.构造器注入2.Set方式注入2.1 Address类2.2 Student类2.3 beans.xml2.4 测试类2.5 其他类型的注入2.6 其他类型测试结果3.拓展方式注入 1.构造器注入 2.Set方式注入 2.1 Address类 Address为引用对象 2.2 Student类 get,set,toString方法要添加,此处省略。 2.3 beans.xml 2.4 测试类 2.5 其他类型的注入 修改为student.toString,Address.toS

chasemanrose的博客 781

spring-p命名空间 c命名空间

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34150830的博客 131

Spring如何为bean注入null值

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34290352的博客 125

Spring-依赖注入DI()

依赖注入 DI (Dependency Injection) 依赖:指bean对象的创建依赖于Spring容器。bean对象依赖的资源 注入:指Bean对象所依赖的资源,由容器来设置和装配。 构造器注入 有参 无参 setter注入 要求被注入属性,必须有set方法。set方法的字需要规范 set+属性属性字母大写); 实体类 设置对应的get ,...

weixin_30432179的博客 119

Spring中抽象bean的使用

转载自http://langgufu.iteye.com/blog/1911615 我们在应用Spring时,在一般的设计时,肯定要用的抽象类。那在Spring中怎么样配置这些抽象Bean呢。请看下面: 如果两个bean 之间的配置信息非常相似,可利用继承来减少重复配置工作。 继承是指子bean 定义可从父bean 定义继承部分配置信息,也可覆盖特定的配置信 息,或者添

月光轩辕的专栏 6331

SpringBean对象的创建

1.bean对象创建 Spring默认是单例(singleton) 可以指定scope属性设置为多例 <beanid="User"class="demo1.User"scope="prototype"/> 注意: scope="singleton"在启动(...

chichuowei5964的博客 161

Spring - 基于c命名空间注入

和p命名空间注入一样,不过针对的是对构造函数参数的配置。

killer_Li_yy的博客 279

(三)Spring IOC - xml配置初级使用

bean的使用 基于setter方法依赖注入 基于构造方法依赖注入 复杂数据类型注入 P命名空间 C命名空间

dhe_lone的博客 409

Spring命名空间注入

p命名空间注入 需要有set方法 需要添加约束 xmlns:p=&quot;http://www.springframework.org/schema/p&quot; xml配置文件 &amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&amp;gt; &amp;lt;beans xmlns=&quot;http://w

qq_40392686的博客 684

Spring——依赖注入之p命名空间和c命名空间

只不过p命名空间写法更简洁 p可以理解为 property标签的首字母p。

qq_43980232的博客 512

spring专题笔记(五):依赖注入--p命名空间注入、c命名空间注入、util命名空间

本篇文章主要是介绍spring的依赖注入:p命名空间注入、c命名空间注入、util命名空间。详细介绍了具体的配置、实现方式以及注意事项。

rainingCSDN的博客 2210

VMWare (specified virtual disk needs repair...)修复

电脑意外蓝屏或者死机等原因造成VMWare不正常关闭,载入虚拟系统时提示:。。。specified virtual disk needs repair。附修复工具和使用方法。分数不够的可以到VM官方下载修复工具,如果找不到就贡献1分下载我上传的吧:)=======================================================================================================================================1,记住VM错误对话框中提示的那个无法载入的.vmdk文件路径和称,比如D:\VMXP\Windows XP Professional.vmdk,也就是你的虚拟操作系统存放的位置;2,关闭虚拟机;3,将vmware-vdiskmanager.exe拷贝到你的VMware安装目录,比如C:\Program Files\VMware\VMware Workstation,覆盖原来的文件;4,重新启动系统5,打开命令行窗口:运行--输入cmd--然后cd到C:\Program Files\VMware\VMware Workstation6,输入vmware-vdiskmanager -R "D:\VMXP\Windows XP Professional.vmdk"7,回车8,修复完成,正常情况可以正常启动XP了

上一篇: spring——Spring Bean属性注入——短命名空间注入——p 命名空间注入(转载)
下一篇: spring——Spring 注入内部Bean——setter 方式注入内部 Bean(转载)
小白龙白龙马
博客等级 码龄5年 557粉丝 2023原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值