commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From William Speirs <wspe...@apache.org>
Subject Re: [dbutils]
Date Sun, 10 Mar 2013 16:25:00 GMT
In your other e-mail you said that the "value orderCount is correct" so the
toBean method must be getting called, or else it wouldn't be set...
correct? Are you saying that the toBean method is never called?

Not sure how to help without more details...

Bill-


On Sun, Mar 10, 2013 at 12:20 PM, Betty User <usrbetty@gmail.com> wrote:

> Hello Bill,
>
> I don't thinkh there is a problem with getter/setter method - when I
> simulate this by hand it works correctly. I think that main point of my
> problem is in its implementayion of BeanProcessor. When I log activity of
> my toBean() method in MonthOrderCountHandler class there is no record about
> its invokation. I am not sure if the way how I call my implementation of
> toBean() method is correct, rather I am sure there is some problem in
> calling it but I don't know where.
>
> B.
>
> 2013/3/10 William Speirs <wspeirs@apache.org>
>
> > You're missing something as you're creating a new Month() and then
> calling
> > result.setMonth(m); however, I don't see the code for setMonth.
> >
> > I think this is an issue with a getter/setting rather than an issue with
> > DBUtils.
> >
> > Can you add debug statements and see what the calls to rs.
> > getString("monthAbbreviation"), rs.getString("monthName"), and
> > rs.getInt("monthNo")
> > return?
> >
> > Bill-
> >
> >
> > On Sun, Mar 10, 2013 at 11:32 AM, Betty User <usrbetty@gmail.com> wrote:
> >
> > > Hello,
> > >
> > > I am creating MVC web application in Spring.
> > >
> > > With this Java code I'm trying to convert resultset int JavaBeans.
> > >
> > > List<MonthOrderCount> retList = new LinkedList<>();
> > > BasicRowProcessor brp = new BasicRowProcessor(new
> > > MonthOrderCountHandler());
> > > BeanListHandler<MonthOrderCount> m = new
> > > BeanListHandler<>(MonthOrderCount.class, brp);
> > > retList.addAll(queryRunner.query(sql, m,
> > Util.utilDateToSqlDate(dateFrom),
> > > Util.utilDateToSqlDate(dateTo)));
> > >
> > > But it doesn't work for me - List is filled with objects
> > (MonthOrderCount),
> > > value orderCount is correct but month variable is null.
> > >
> > > My implementation of MonthOrderCountHandler class:
> > >
> > > public class MonthOrderCountHandler extends BeanProcessor {
> > >
> > >     @Override
> > >     public Object toBean(ResultSet rs, Class type) throws SQLException
> {
> > >
> > >         // Year
> > >         Year year = new Year();
> > >         year.setYearNo(rs.getInt("yearNo"));
> > >         year.setYear4(rs.getString("year4"));
> > >         year.setYear2(rs.getString("year2"));
> > >
> > >         // Quarter
> > >         Quarter quarter = new Quarter();
> > >         quarter.setQuarterNo(rs.getInt("quarterNo"));
> > >
> > >         // Month
> > >         Month m = new Month();
> > >         m.setYear(year);
> > >         m.setQuarter(quarter);
> > >         m.setMonthAbbreviation(rs.getString("monthAbbreviation"));
> > >         m.setMonthName(rs.getString("monthName"));
> > >         m.setMonthNo(rs.getInt("monthNo"));
> > >
> > >         // Final bean
> > >         MonthOrderCount result = new MonthOrderCount();
> > >         result.setMonth(m);
> > >         result.setOrderCount(rs.getInt("orderCount"));
> > >
> > >         return result;
> > >
> > >     }
> > > }
> > >
> > > Structure of my domain objects is:
> > >
> > > MonthOrderCount class:
> > >
> > > public class MonthOrderCount {
> > >     private Month month;
> > >     private int orderCount;
> > > }
> > > Month class:
> > >
> > > public class Month {
> > >     private Quarter quarter;
> > >     private Year year;
> > >     private int monthNo;
> > >     private String monthName;
> > >     private String monthAbbreviation;
> > > }
> > >
> > > Quarter class:
> > >
> > > public class Quarter {
> > >     private int quarter;
> > >     private String abbreviation;
> > > }
> > >
> > > Year class:
> > >
> > > public class Year {
> > >     private int yearNo;
> > >     private String year2;
> > >     private String year4;
> > > }
> > >
> > > I cannot use standard method:
> > >
> > > ResultSetHandler<List<MonthOrderCount>> listUrlHandler = new
> > > BeanListHandler<>(MonthOrderCount.class);
> > >
> > > beacuse instances of MonthOrderCount class contains another objects
> > created
> > > from values from a row and I need to create them.
> > >
> > > What am I doing wrong with MonthOrderCountHandler class?
> > >
> > > Thanks.
> > >
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message