基于属性注入,修改为构造注入,新建constructor包以及bean-di-constructor.xml配置文件,修改配置文件内容为构造注入,新增Budget实体类的无参及全参构造

main
吴睿诗 2 days ago
parent 6a0902452f
commit 47d346da29

@ -0,0 +1,17 @@
<?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">
<!-- 预算管理模块Budget实体Bean配置 -->
<bean id="budget" class="com.ssm.di.constructor.Budget">
<constructor-arg name="budgetId" value="0001"/>
<constructor-arg name="category" value="餐饮预算"/>
<constructor-arg name="amount" value="5000.00"/>
<constructor-arg name="period" value="月度"/>
<constructor-arg name="startDate" value="2025-04-13"/>
<constructor-arg name="remark" value="无"/>
</bean>
</beans>

@ -0,0 +1,87 @@
package com.ssm.di.constructor;
import java.math.BigDecimal;
public class Budget {
//预算编号
private Integer budgetId;
//预算分类
private String category;
//预算金额
private BigDecimal amount;
//预算周期
private String period;
//预算生效日期
private String startDate;
//预算备注
private String remark;
public Budget(){}
public Budget(Integer budgetId, String category, BigDecimal amount, String period, String startDate, String remark) {
this.budgetId = budgetId;
this.category = category;
this.amount = amount;
this.period = period;
this.startDate = startDate;
this.remark = remark;
}
public Integer getBudgetId() {
return budgetId;
}
public void setBudgetId(Integer budgetId) {
this.budgetId = budgetId;
}
public String getCategory() {
return category;
}
public void setCategory(String category) {
this.category = category;
}
public BigDecimal getAmount() {
return amount;
}
public void setAmount(BigDecimal amount) {
this.amount = amount;
}
public String getPeriod() {
return period;
}
public void setPeriod(String period) {
this.period = period;
}
public String getStartDate() {
return startDate;
}
public void setStartDate(String startDate) {
this.startDate = startDate;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
//自定义方法
public String toString(){
return "预算编号:" + budgetId + "\n"
+ "预算分类:" + category +"\n"
+ "预算金额:" + amount + "\n"
+ "预算周期:" + period + "\n"
+ "生效日期:" + startDate + "\n"
+ "备注:" + remark;
}
}

@ -0,0 +1,18 @@
package com.ssm.di.constructor;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class TestDI {
public static void main(String[] args) {
//1.初始化Spring容器加载配置文件
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("bean-di-constructor.xml");
//获得Budget对象
Budget budget = (Budget) applicationContext.getBean("budget");
//输出Budget实例的信息
System.out.println(budget.toString());
}
}

@ -0,0 +1,20 @@
package com.ssm.di.constructor;
import java.math.BigDecimal;
public class TestNew {
public static void main(String[] args) {
//通过new的方式实例化Budget对象
Budget budget = new Budget();
budget.setBudgetId(0001);
budget.setCategory("餐饮预算");
budget.setAmount(new BigDecimal("5000.00"));
budget.setPeriod("月度");
budget.setStartDate("2025-04-13");
budget.setRemark("无");
System.out.println(budget);
}
}
Loading…
Cancel
Save