Example usage for java.sql Timestamp getYear

List of usage examples for java.sql Timestamp getYear

Introduction

In this page you can find the example usage for java.sql Timestamp getYear.

Prototype

@Deprecated
public int getYear() 

Source Link

Document

Returns a value that is the result of subtracting 1900 from the year that contains or begins with the instant in time represented by this Date object, as interpreted in the local time zone.

Usage

From source file:com.google.visualization.datasource.util.SqlDataSourceHelper.java

/**
 * Creates a table cell from the value in the current row of the given result
 * set and the given column index. The type of the value is determined by the
 * given value type.//from   w  w  w .  j a v a  2s. c  o  m
 *
 * @param rs The result set holding the data from the sql table. The result
 *     points to the current row.
 * @param valueType The value type of the column that the cell belongs to.
 * @param column The column index. Indexes are 0-based.
 *
 * @return The table cell.
 *
 * @throws SQLException Thrown when the connection to the database failed.
 */
private static TableCell buildTableCell(ResultSet rs, ValueType valueType, int column) throws SQLException {
    Value value = null;

    // SQL indexes are 1- based.
    column = column + 1;

    switch (valueType) {
    case BOOLEAN:
        value = BooleanValue.getInstance(rs.getBoolean(column));
        break;
    case NUMBER:
        value = new NumberValue(rs.getDouble(column));
        break;
    case DATE:
        Date date = rs.getDate(column);
        // If date is null it is handled later.
        if (date != null) {
            GregorianCalendar gc = new GregorianCalendar(TimeZone.getTimeZone("GMT"));
            // Set the year, month and date in the gregorian calendar.
            // Use the 'set' method with those parameters, and not the 'setTime'
            // method with the date parameter, since the Date object contains the
            // current time zone and it's impossible to change it to 'GMT'.
            gc.set(date.getYear() + 1900, date.getMonth(), date.getDate());
            value = new DateValue(gc);
        }
        break;
    case DATETIME:
        Timestamp timestamp = rs.getTimestamp(column);
        // If timestamp is null it is handled later.
        if (timestamp != null) {
            GregorianCalendar gc = new GregorianCalendar(TimeZone.getTimeZone("GMT"));
            // Set the year, month, date, hours, minutes and seconds in the
            // gregorian calendar. Use the 'set' method with those parameters,
            // and not the 'setTime' method with the timestamp parameter, since
            // the Timestamp object contains the current time zone and it's
            // impossible to change it to 'GMT'.
            gc.set(timestamp.getYear() + 1900, timestamp.getMonth(), timestamp.getDate(), timestamp.getHours(),
                    timestamp.getMinutes(), timestamp.getSeconds());
            // Set the milliseconds explicitly, as they are not saved in the
            // underlying date.
            gc.set(Calendar.MILLISECOND, timestamp.getNanos() / 1000000);
            value = new DateTimeValue(gc);
        }
        break;
    case TIMEOFDAY:
        Time time = rs.getTime(column);
        // If time is null it is handled later.
        if (time != null) {
            GregorianCalendar gc = new GregorianCalendar(TimeZone.getTimeZone("GMT"));
            // Set the hours, minutes and seconds of the time in the gregorian
            // calendar. Set the year, month and date to be January 1 1970 like
            // in the Time object.
            // Use the 'set' method with those parameters,
            // and not the 'setTime' method with the time parameter, since
            // the Time object contains the current time zone and it's
            // impossible to change it to 'GMT'.
            gc.set(1970, Calendar.JANUARY, 1, time.getHours(), time.getMinutes(), time.getSeconds());
            // Set the milliseconds explicitly, otherwise the milliseconds from
            // the time the gc was initialized are used.
            gc.set(GregorianCalendar.MILLISECOND, 0);
            value = new TimeOfDayValue(gc);
        }
        break;
    default:
        String colValue = rs.getString(column);
        if (colValue == null) {
            value = TextValue.getNullValue();
        } else {
            value = new TextValue(rs.getString(column));
        }
        break;
    }
    // Handle null values.
    if (rs.wasNull()) {
        return new TableCell(Value.getNullValueFromValueType(valueType));
    } else {
        return new TableCell(value);
    }
}

From source file:business.security.control.OwmClient.java

@Schedule(second = "0", minute = "0", hour = "*", persistent = false)
public void checkWeather() {

    System.out.println("Inizio check");

    List<Place> listPlaceInDb;
    List<Forecast> listForecastInDb = new ArrayList<Forecast>();

    listPlaceInDb = placeManager.getAllPlaces();

    List<Forecast> tmp = new ArrayList<Forecast>();

    for (Place p : listPlaceInDb) {
        tmp = forecastManager.getForecastInPlace(p);
        for (Forecast f : tmp) {
            listForecastInDb.add(f);/* w  w  w . j a  v a2 s  .  c om*/
        }
    }

    //Adesso ho nella mia lista tutti i forecast del mio db
    //Devo pulire quelli con la data vecchia
    Timestamp now = new Timestamp(new java.util.Date().getTime());

    for (Forecast f : listForecastInDb) {
        if ((f.getDate().getYear() < now.getYear()) || (f.getDate().getMonth() < now.getMonth())
                || (f.getDate().getDate() < now.getDate())) {
            System.out
                    .println("Sto rimuovendo il forecast: " + f.getPlace().getCity() + " " + f.getDate() + now);
            entityManager.remove(entityManager.find(Forecast.class, f.getId()));
        }
    }

    listForecastInDb = new ArrayList<Forecast>();

    for (Place p : listPlaceInDb) {
        for (Forecast f : forecastManager.getForecastInPlace(p)) {
            listForecastInDb.add(f);
        }
    }

    //Qui nel mio database dovrei avere solo forecast aggiornati
    for (Place p : listPlaceInDb) {
        try {
            WeatherForecastResponse risposta;
            risposta = this.tenForecastWeatherAtCity(p.getCity());
            List<ForecastWeatherData> list = risposta.getForecasts();
            for (ForecastWeatherData fwd : list) {
                if (!alreadyIn(fwd, p.getCity())) {
                    Timestamp t = new Timestamp(fwd.getCalcDateTime());
                    System.out.println("Sto aggiungendo/aggiornando il forecast : " + p.getCity() + " " + t);
                    Forecast f = new Forecast();
                    //Recupero nel database la main condition associata
                    MainCondition mc = new MainCondition();
                    mc.setCondition(fwd.getWeatherConditions().get(0).getMain());
                    entityManager.merge(mc);

                    //Ho preparato tutti i parametri necessari
                    f.setPlace(p);
                    f.setMainCondition(mc);
                    f.setDate(new Timestamp(fwd.getCalcDateTime()));

                    entityManager.persist(f);
                }

            }
        } catch (JSONException ex) {
            Logger.getLogger(EventBean.class.getName()).log(Level.WARNING, null,
                    "Too much requests to the ForecastServer");
        } catch (IOException ex) {
            Logger.getLogger(EventBean.class.getName()).log(Level.SEVERE, null, ex);
        }

    }
    System.out.println("Check Weather Completed!");

}

From source file:business.security.control.OwmClient.java

private boolean alreadyIn(ForecastWeatherData fwd, String city) {

    ArrayList<Forecast> listForecastInDb = new ArrayList<Forecast>();
    Iterable<Place> listPlaceInDb;

    Timestamp date = new Timestamp(fwd.getCalcDateTime());

    listPlaceInDb = placeManager.getAllPlaces();

    for (Place p : listPlaceInDb) {

        for (Forecast f : forecastManager.getForecastInPlace(p)) {
            listForecastInDb.add(f);// w  ww  .  j a  va  2 s.c  o m
        }
    }

    for (Forecast f : listForecastInDb) {
        if (f.getPlace().getCity().equals(city) && f.getDate().getYear() == date.getYear()
                && f.getDate().getMonth() == date.getMonth() && f.getDate().getDate() == date.getDate()) {
            if (!(f.getMainCondition().getCondition().equals(fwd.getWeatherConditions().get(0).getMain()))) {
                entityManager.remove(entityManager.find(Forecast.class, f.getId()));
                return false;
            }

            return true;
        }
    }

    return false;

}

From source file:org.apache.openjpa.persistence.kernel.TestProxies2.java

public void testTimestamp() {
    OpenJPAEntityManager pm = getPM(true, true);
    startTx(pm);//  w  w w. ja  va 2 s . com
    ProxiesPC pc = pm.find(ProxiesPC.class, _oid);
    java.sql.Timestamp tstamp = pc.getTimestamp();
    assertNotNull(tstamp);

    // dates can lose precision, but make sure same day
    assertEquals(_timestamp.getYear(), tstamp.getYear());
    assertEquals(_timestamp.getMonth(), tstamp.getMonth());
    assertEquals(_timestamp.getDate(), tstamp.getDate());

    // make sure proxied
    assertTrue(!pm.isDirty(pc));
    tstamp.setNanos(100);
    assertTrue(pm.isDirty(pc));

    endTx(pm);
    assertEquals(tstamp, pc.getTimestamp());
    endEm(pm);
}