有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

mysql查询在java上不提供小数,但在数据库上提供小数

我有一个查询,当我在数据库上执行它时,它会给我小数,但当我在我的应用程序上执行相同的查询时,它会给我没有小数的数字

我将变量设置为“double”,并且它们正确地“链接”到数据库,我将代码放在下面

下面是我调用该方法的地方:

        List<DatosEstadistica> listaDatosEstadistica = facade.obtenerDatosIngresos(filtro);

正面:

 public List<DatosEstadistica> obtenerDatosIngresos(FiltroInformes filtro)
            throws ServiceException {
        return this.modeloService.obtenerDatosIngresos(filtro);
    }

该服务将实现:

 public List<DatosEstadistica> obtenerDatosIngresos(FiltroInformes filtro)
        throws ServiceException {

    try {

        return this.getDao().obtenerDatosIngresos(filtro);

    } catch (HibernateException he) {

        throw new ServiceException(he);
    }

}

以及查询说明:

 public List<DatosEstadistica> obtenerDatosIngresos(FiltroInformes filtro) {

    try {
        StringBuffer query = new StringBuffer();
        query.append("sum( decode ( a.indingdev,'R',0, "
                + "nvl(a.impingdev,0) + "
                + "nvl(a.imprecargo_ing,0) "
                + ")       "
                + ") as total_recaudado, "                   
                + "from tableM m, table_f f, table_a a "
                + "where m.reg = f.reg");
               
            
        SQLQuery querySQL = getHibernateTemplate().getSessionFactory().getCurrentSession()
                .createSQLQuery(query.toString());

        querySQL.setResultTransformer(Transformers.aliasToBean(DatosEstadistica.class));

        return querySQL.list();
    } catch (HibernateException qe) {
        throw qe;
    }
}

和datosEstadistica。类别:

public class DatosEstadistica implements Serializable {

/** The Constant serialVersionUID. */
private static final long serialVersionUID = 88592689034562323954L;


private double TOTAL_RECAUDADO;


/**
 * Instantiates a new datos estadistica.
 */
public DatosEstadistica() {
    
}

public double getTOTAL_RECAUDADO() {
    return TOTAL_RECAUDADO;
}

public void setTOTAL_RECAUDADO(double tOTAL_RECAUDADO) {
    TOTAL_RECAUDADO = tOTAL_RECAUDADO;
}

}

但我不知道为什么它不给我小数,就像在数据库上执行的同一个查询一样。有人能帮我吗

编辑:

这里是我打印结果的地方,但它不打印小数,因为查询列表“ListDatoSeStatistica”返回没有小数的数字:

   celdaDatos.setCellValue((listaDatosEstadistica.get(i).getTOTAL_RECAUDADO()));

共 (0) 个答案