gpt4 book ai didi

java - 您可以使用 JDBI、@BindBean、@SqlQuery 注释调用对象上的方法吗?

转载 作者:行者123 更新时间:2023-12-02 11:36:31 25 4
gpt4 key购买 nike

我正在尝试调用 JDBI 中对象的包装方法。包装方法并不对应对象的任何字段,而是对其进行规范化(格式化),然后返回一个字符串。以下是我的类(class) -

Class Car {
String make;
String model;
//...
//getters for make and model

//wrapper method
public String getCarDescription(){
return "Make: " + make + " Model: " + model;
}
}

我的问题是 - 我可以在 JDBI @SqlQuery() 中调用 getCarType() 吗?像这样-->

@SqlQuery("select * from car where car_description = :car.carDescription")
public abstract Car getCarDescription(@BindBean("car") Car car);

我尝试这样做,但 JDBI 没有返回正确的结果。更令人沮丧的是,JDBI 不会抛出任何错误,也不会说明是否可以(或不可以)以这种方式调用对象上的方法。

最佳答案

是的,JDBI 可以绑定(bind)到具有 getter 格式的对象上的方法。我刚刚创建了一个简单的 project我已经复制了这个场景。我在提供的代码中注意到的一件事是绑定(bind)注释 @BeanBind 的名称不正确,而应该是 @BindBean,如下所示:

@SqlQuery("select * from car where car_description = :car.carDescription")
Car getCarDescription(@BindBean("car") Car car);

关于java - 您可以使用 JDBI、@BindBean、@SqlQuery 注释调用对象上的方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48894145/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com