【Java Web开发学习】Spring构造器和属性注入
测试类
public class Construct { private String address; private long phone; public Construct(String name, int age) { System.out.println("> " + name + ", " + age); } public String getAddress() { return address; } public void setAddress(String address) { System.out.println("> " + address); this.address = address; } public long getPhone() { return phone; } public void setPhone(long phone) { System.out.println("> " + phone); this.phone = phone; } }
<!-- 使用name --> <bean id="construct_c1" class="cn.ycx.bean.Construct"> <constructor-arg name="age" value="1" type="int"></constructor-arg> <!-- type可以省略 --> <constructor-arg name="name" value="Tom_1"></constructor-arg> <!-- 属性配置 --> <property name="address" value="xi'an"></property> <property name="phone" value="18000"></property> </bean> <!-- 使用index --> <bean id="construct_c2" class="cn.ycx.bean.Construct"> <constructor-arg index="1" value="2" type="int"></constructor-arg> <!-- type可以省略 --> <constructor-arg index="0" value="Tom_2"></constructor-arg> </bean> <!-- 省略name和index,值顺序必须和方法定义保持一致 --> <bean id="construct_c3" class="cn.ycx.bean.Construct"> <constructor-arg value="Tom_3" type="String"></constructor-arg> <constructor-arg value="3" type="int"></constructor-arg> </bean> <!-- c命名空间name --> <bean id="construct_c4" class="cn.ycx.bean.Construct" c:name="Tom_4" c:age="4" p:address="beijing" p:phone="136000"></bean> <!-- c命名空间index --> <bean id="construct_c5" class="cn.ycx.bean.Construct" c:_0="Tom_5" c:_1="5"></bean>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端