Java 您可以使用JDBI、@BindBean、@SqlQuery注释对对象调用方法吗?

Java 您可以使用JDBI、@BindBean、@SqlQuery注释对对象调用方法吗?,java,javabeans,jdbi,Java,Javabeans,Jdbi,我试图为JDBI中的对象调用包装器方法。包装器方法不对应于对象的任何字段,而是对其进行规范化(格式化),然后返回一个字符串。以下是我的班级- Class Car { String make; String model; //... //getters for make and model //wrapper method public String getCarDescription(){ return "Make: " + make + " M

我试图为JDBI中的对象调用包装器方法。包装器方法不对应于对象的任何字段,而是对其进行规范化(格式化),然后返回一个字符串。以下是我的班级-

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

   //wrapper method
   public String getCarDescription(){
      return "Make: " + make + " Model: " + model;
   }
}
我的问题是-我可以在JDBI
@SqlQuery()中调用getCarType()
?像这样-->


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

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

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

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

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