java - 在运行时向 Spring bean 添加属性值

标签 java xml spring

这可能是一个非常简单的问题;但由于我是 Spring 的初学者,我无法理解如何在运行时为 Spring bean 赋值。

我遵循了一些学习 Spring 的教程,现在我知道如何开始使用 Spring。我可以理解声明 bean 定义的 Spring beans.xml,我可以理解一些可以用来代替 xml 配置的注释。但我无法理解如何进行以下配置。

假设我有一个名为 Student 的类(class)。每个学生对象都有一个姓名和年龄。

public class Student {
    private String name;
    private int age;

    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.address = address;
    }

}

这就是我在 Beans.xml 文件中编写 bean 配置条目的方式

<bean id="student" class="Student">
    <property name="name" value="Joe"></property>
    <property name="address" value="12"></property>
</bean>

我完全同意这个 setter 注入(inject)。只要我可以使用 xml 文件更改属性值,我就可以更改学生的属性。

但是我们认为我们需要一个应用程序来注册学生。使用应用程序的前端表单,我们输入姓名和年龄。我的问题是我们如何将这些姓名和年龄值注入(inject)到 Student bean 中。现在我们正在处理一个正在运行的应用程序。

我不明白我们应该如何更改 xml 以接受用户输入(如果是这样做的话)。在我遵循的所有初学者教程中,我没有找到处理此类情况的方法。他们教的内容是我已经知道的。

我想我在这方面错过了一些教训。请指导我解决我的问题。如果可能的话,一些示例代码将对我的理解很有帮助。

谢谢你..!

最佳答案

您找不到任何针对您问题的教程,因为您的用例不适合 spring。在实践中,我们不使用 spring 来实现您想要做的事情。 Spring 最适合具有单例行为的类的依赖注入(inject),例如您通常需要在应用程序中使用单个实例的服务类。

通常我们使用像 Hibernate 这样的 ORM 来处理您所引用的用例。

关于java - 在运行时向 Spring bean 添加属性值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40056799/

相关文章:

java - Spring LDAP 和 MemberOf

java - 查找其他哪些项目使用此项目作为 Maven 依赖项?

java - CountdownTimer 未在 Runnable 中运行

javascript - 如何停止我的 xml 文件在刷新时复制但改为更新?

java - 将@TestExecutionListeners 添加到测试套件时,@Sql 脚本不会为@test 运行

java - 私有(private)方法上的@Transactional 传播

java - 如何在一个简单的java程序中替换spring属性占位符

java - JGit CheckoutCommand 不起作用

java - 如何在请求正文中通过 RestTemplate POST xml 数据?

.net - WCF - 自定义客户端请求/响应 XML