从java bean准备查询字符串

时间:2013-08-30 18:03:43

标签: java

我很想知道有没有更好的方法来准备查询字符串而不检查Java Bean中的空值。

我在java bean下面有属性

    public class Employee{

    private String name;

    private String address;

    //setters and getters i am not mention here

    }

假设将name作为值并且地址没有值意味着null。我想准备如下的查询字符串:

    update table test where name='value from property' where xxx=?

此致

2 个答案:

答案 0 :(得分:1)

使用构建器模式构造SQL。没有魔法:你必须编写每个构建器类来构造插入,更新,选择等等。但是,最后你有一个很好的逻辑封装。这是你如何使用它,

String sql = new EmployeeUpdateBuilder()
    .whereName("Jeff")
    .valueAddress("123 Main Street")
    .build();

要实现的代码很简单,实际上有点繁忙的工作,但结果很好。如果你打算为不同的对象类型创建一堆这些,你可以考虑各种SQL命令类型(插入,选择等)的基类。

另一个选择是概括构建器。你最终会得到这样的用法,

String sql = new UpdateBuilder()
    .table("employees")
    .where("name", "Jeff")
    .value("address", "123 Main Street")
    .build();

答案 1 :(得分:0)

有一种动态触发查询的方法。您可以先检查空值,然后根据该值选择要在db上触发的查询。