@Override public Number handle(ResultSet rs) throws SQLException { return rs.next() ? rs.getBigDecimal(1) : null; } }
private static Serializable extractIdentifier(ResultSet rs, String identifier, Type type, Class clazz) throws SQLException { if ( clazz == Long.class ) { return rs.getLong( identifier ); } else if ( clazz == Integer.class ) { return rs.getInt( identifier ); } else if ( clazz == Short.class ) { return rs.getShort( identifier ); } else if ( clazz == String.class ) { return rs.getString( identifier ); } else if ( clazz == BigInteger.class ) { return rs.getBigDecimal( identifier ).setScale( 0, BigDecimal.ROUND_UNNECESSARY ).toBigInteger(); } else if ( clazz == BigDecimal.class ) { return rs.getBigDecimal( identifier ).setScale( 0, BigDecimal.ROUND_UNNECESSARY ); } else { throw new IdentifierGenerationException( "unrecognized id type : " + type.getName() + " -> " + clazz.getName() ); } }
while (rs.next()) { out.print(rs.getString(columnIndex)); } else if (type == Types.DATE) { Date date = rs.getDate(columnIndex); int value = rs.getInt(columnIndex); if (rs.wasNull()) { out.print("null"); out.print(String.valueOf(rs.getTimestamp(columnIndex))); } else if (type == Types.DECIMAL) { out.print(String.valueOf(rs.getBigDecimal(columnIndex))); } else if (type == Types.CLOB) { out.print(String.valueOf(rs.getString(columnIndex))); } else if (type == Types.JAVA_OBJECT) { Object object = rs.getObject(columnIndex); Object object = rs.getString(columnIndex);
@Test public void testQueryForObjectWithBigDecimal() throws Exception { String sql = "SELECT AGE FROM CUSTMR WHERE ID = 3"; given(this.resultSet.next()).willReturn(true, false); given(this.resultSet.getBigDecimal(1)).willReturn(new BigDecimal("22.5")); assertEquals(new BigDecimal("22.5"), this.template.queryForObject(sql, BigDecimal.class)); verify(this.resultSet).close(); verify(this.statement).close(); }
public static void validateRowKeyColumns(ResultSet rs, int i) throws SQLException { assertTrue(rs.next()); assertEquals(rs.getString(1), "varchar" + String.valueOf(i)); assertEquals(rs.getString(2), "char" + String.valueOf(i)); assertEquals(rs.getInt(3), i); assertEquals(rs.getInt(4), i); assertEquals(rs.getBigDecimal(5), new BigDecimal(i*0.5d)); Date date = new Date(DateUtil.parseDate("2015-01-01 00:00:00").getTime() + (i - 1) * MILLIS_IN_DAY); assertEquals(rs.getDate(6), date); }
@Test public void test_getBigDecimal_handles_FLOAT() throws SQLException { assertThat( testDataRow.getBigDecimal( "C_FLOAT_7.7" ), equalTo( new BigDecimal( 7.7f ) ) ); }
/** * @throws Exception If failed. */ @Test public void testBigDecimal() throws Exception { ResultSet rs = stmt.executeQuery(SQL); int cnt = 0; while (rs.next()) { if (cnt == 0) { assert rs.getBigDecimal("bigVal").intValue() == 1; assert rs.getBigDecimal(9).intValue() == 1; } cnt++; } assert cnt == 1; }
@Override public void processRow(ResultSet rs) throws SQLException { assertEquals("testCustomer", rs.getString("CUSTOMER")); assertEquals(new BigDecimal(Double.toString(99.69)), rs.getBigDecimal("PRICE")); assertEquals(5,rs.getLong("QUANTITY")); } });
@Test(timeout=2000) public void testBigDecimalSplitter() throws Exception{ BigDecimalSplitter splitter = new BigDecimalSplitter(); ResultSet result = mock(ResultSet.class); List<InputSplit> splits = splitter.split(configuration, result, "column"); assertSplits(new String[] {".*column IS NULL"}, splits); when(result.getString(1)).thenReturn("result1"); when(result.getString(2)).thenReturn("result2"); when(result.getBigDecimal(1)).thenReturn(new BigDecimal(10)); when(result.getBigDecimal(2)).thenReturn(new BigDecimal(12)); splits = splitter.split(configuration, result, "column1"); assertSplits(new String[] {"column1 >= 10 column1 < 11", "column1 >= 11 column1 <= 12"}, splits); }
@Override public void processRow(ResultSet rs) throws SQLException { Trade trade = trades.get(activeRow++); assertTrue(trade.getIsin().equals(rs.getString(1))); assertTrue(trade.getQuantity() == rs.getLong(2)); assertTrue(trade.getPrice().equals(rs.getBigDecimal(3))); assertTrue(trade.getCustomer().equals(rs.getString(4))); } });
ResultSet resultSet = statement.executeQuery(); ) { while (resultSet.next()) { Product product = new Product(); product.setId(resultSet.getLong("id")); product.setName(resultSet.getString("name")); product.setDescription(resultSet.getString("description")); product.setPrice(resultSet.getBigDecimal("price")); products.add(product);
@Override public CustomerDebit mapRow(ResultSet rs, int ignoredRowNumber) throws SQLException { CustomerDebit customerDebit = new CustomerDebit(); customerDebit.setName(rs.getString(CUSTOMER_COLUMN)); customerDebit.setDebit(rs.getBigDecimal(PRICE_COLUMN)); return customerDebit; } }
protected Payment apply(ResultSet resultSet, int offset) throws SQLException { return createEntity() .setPaymentId( resultSet.getInt(1 + offset)) .setCustomerId( resultSet.getInt(2 + offset)) .setStaffId( resultSet.getShort(3 + offset)) .setRentalId( getInt(resultSet, 4 + offset)) .setAmount( resultSet.getBigDecimal(5 + offset)) .setPaymentDate( resultSet.getTimestamp(6 + offset)) .setLastUpdate( resultSet.getTimestamp(7 + offset)) ; }
@Test public void testCeilDecimal() throws Exception { Connection conn = DriverManager.getConnection(getUrl()); ResultSet rs = conn.createStatement().executeQuery("SELECT CEIL(dec), CEIL(dec, 1), CEIL(dec, 2), CEIL(dec, 3) FROM ROUND_DATE_TIME_TS_DECIMAL"); assertTrue(rs.next()); BigDecimal expectedBd = BigDecimal.valueOf(2); assertEquals(expectedBd, rs.getBigDecimal(1)); expectedBd = BigDecimal.valueOf(1.3); assertEquals(expectedBd, rs.getBigDecimal(2)); expectedBd = BigDecimal.valueOf(1.27); assertEquals(expectedBd, rs.getBigDecimal(3)); expectedBd = BigDecimal.valueOf(1.264); assertEquals(expectedBd, rs.getBigDecimal(4)); }
rs = ps.executeQuery(); if (rs.next()) { SimplePropertiesTriggerProperties properties = new SimplePropertiesTriggerProperties(); properties.setString1(rs.getString(COL_STR_PROP_1)); properties.setString2(rs.getString(COL_STR_PROP_2)); properties.setString3(rs.getString(COL_STR_PROP_3)); properties.setInt1(rs.getInt(COL_INT_PROP_1)); properties.setInt2(rs.getInt(COL_INT_PROP_2)); properties.setLong1(rs.getInt(COL_LONG_PROP_1)); properties.setLong2(rs.getInt(COL_LONG_PROP_2)); properties.setDecimal1(rs.getBigDecimal(COL_DEC_PROP_1)); properties.setDecimal2(rs.getBigDecimal(COL_DEC_PROP_2)); properties.setBoolean1(rs.getBoolean(COL_BOOL_PROP_1)); properties.setBoolean2(rs.getBoolean(COL_BOOL_PROP_2));
private void runOneRowQueryTest(String oneRowQuery, boolean isIntegerColumn, Integer expectedIntValue, BigDecimal expectedDecimalValue) throws Exception { try (Connection conn = DriverManager.getConnection(url)) { PreparedStatement statement = conn.prepareStatement(oneRowQuery); ResultSet rs = statement.executeQuery(); assertTrue(rs.next()); if (isIntegerColumn) assertEquals(expectedIntValue.intValue(), rs.getInt(1)); else assertTrue( expectedDecimalValue == rs.getBigDecimal(1) || (expectedDecimalValue != null && expectedDecimalValue.compareTo(rs.getBigDecimal(1)) == 0)); assertFalse(rs.next()); } } }
@Test public void test_getBigDecimal_handles_DECIMAL_1() throws SQLException { assertThat( testDataRow.getBigDecimal( "C_DECIMAL_10.5" ), equalTo( new BigDecimal( "10.5") ) ); }
@Override public void processRow(ResultSet rs) throws SQLException { Trade trade = trades.get(activeRow++); assertEquals(trade.getIsin(), rs.getString(1)); assertEquals(trade.getQuantity(), rs.getLong(2)); assertEquals(trade.getPrice(), rs.getBigDecimal(3)); assertEquals(trade.getCustomer(), rs.getString(4)); } });
return rs.getString(index); value = rs.getInt(index); return rs.getBigDecimal(index); return rs.getString(index);
@SuppressWarnings("unchecked") public Mock(MockType type) throws Exception { connection = mock(Connection.class); statement = mock(Statement.class); resultSet = mock(ResultSet.class); resultSetMetaData = mock(ResultSetMetaData.class); given(connection.createStatement()).willReturn(statement); given(statement.executeQuery(anyString())).willReturn(resultSet); given(resultSet.getMetaData()).willReturn(resultSetMetaData); given(resultSet.next()).willReturn(true, false); given(resultSet.getString(1)).willReturn("Bubba"); given(resultSet.getLong(2)).willReturn(22L); given(resultSet.getTimestamp(3)).willReturn(new Timestamp(1221222L)); given(resultSet.getObject(anyInt(), any(Class.class))).willThrow(new SQLFeatureNotSupportedException()); given(resultSet.getDate(3)).willReturn(new java.sql.Date(1221222L)); given(resultSet.getBigDecimal(4)).willReturn(new BigDecimal("1234.56")); given(resultSet.wasNull()).willReturn(type == MockType.TWO); given(resultSetMetaData.getColumnCount()).willReturn(4); given(resultSetMetaData.getColumnLabel(1)).willReturn( type == MockType.THREE ? "Last Name" : "name"); given(resultSetMetaData.getColumnLabel(2)).willReturn("age"); given(resultSetMetaData.getColumnLabel(3)).willReturn("birth_date"); given(resultSetMetaData.getColumnLabel(4)).willReturn("balance"); jdbcTemplate = new JdbcTemplate(); jdbcTemplate.setDataSource(new SingleConnectionDataSource(connection, false)); jdbcTemplate.setExceptionTranslator(new SQLStateSQLExceptionTranslator()); jdbcTemplate.afterPropertiesSet(); }