Jsp java.lang.NumberFormatException:对于输入字符串:";“阿维德”;
我在SpringMVC中使用的webapp出现了这个错误 它不是一个整数,而是一个字符串 这是我的模型Jsp java.lang.NumberFormatException:对于输入字符串:";“阿维德”;,java,jsp,spring-mvc,Java,Jsp,Spring Mvc,我在SpringMVC中使用的webapp出现了这个错误 它不是一个整数,而是一个字符串 这是我的模型 @Entity @Table(name = "atividades", schema = "spring") public class Atividades implements Serializable { private static final long serialVersionUID = 1L; private int idAtividades; privat
@Entity
@Table(name = "atividades", schema = "spring")
public class Atividades implements Serializable {
private static final long serialVersionUID = 1L;
private int idAtividades;
private int idUtilizador;
private Integer idCargo;
private String atividade;
private String local;
private String descricao;
private String objetivos;
private String periodo;
private String previsaoMes;
private Date dataPrevista;
private Time hora;
private String orcamento;
private String destinatarios;
private String observacoes;
private int idAno;
private Timestamp registado;
private byte plano;
private String realizado;
private String motivo;
private String file;
private AppUser appUserByIdUtilizador;
private Cargos cargosByIdCargo;
private AnoEscolar anoEscolarByIdAno;
private Collection<AvaliacaoAtividades> avaliacaoAtividadesByIdAtividades;
public Atividades() {
}
@Id
@Column(name = "id_atividades")
@GeneratedValue(strategy = GenerationType.AUTO)
public int getIdAtividades() {
return idAtividades;
}
public void setIdAtividades(int idAtividades) {
this.idAtividades = idAtividades;
}
@Basic
@Column(name = "id_utilizador")
public int getIdUtilizador() {
return idUtilizador;
}
public void setIdUtilizador(int idUtilizador) {
this.idUtilizador = idUtilizador;
}
@Basic
@Column(name = "id_cargo")
public Integer getIdCargo() {
return idCargo;
}
public void setIdCargo(Integer idCargo) {
this.idCargo = idCargo;
}
@Basic
@Column(name = "atividade")
public String getAtividade() {
return atividade;
}
public void setAtividade(String atividade) {
this.atividade = atividade;
}
@Basic
@Column(name = "local")
public String getLocal() {
return local;
}
public void setLocal(String local) {
this.local = local;
}
@Basic
@Column(name = "descricao")
public String getDescricao() {
return descricao;
}
public void setDescricao(String descricao) {
this.descricao = descricao;
}
@Basic
@Column(name = "objetivos")
public String getObjetivos() {
return objetivos;
}
public void setObjetivos(String objetivos) {
this.objetivos = objetivos;
}
@Basic
@Column(name = "periodo")
public String getPeriodo() {
return periodo;
}
public void setPeriodo(String periodo) {
this.periodo = periodo;
}
@Basic
@Column(name = "previsao_mes")
public String getPrevisaoMes() {
return previsaoMes;
}
public void setPrevisaoMes(String previsaoMes) {
this.previsaoMes = previsaoMes;
}
@Basic
@Column(name = "data_prevista")
public Date getDataPrevista() {
return dataPrevista;
}
public void setDataPrevista(Date dataPrevista) {
this.dataPrevista = dataPrevista;
}
@Basic
@Column(name = "hora")
public Time getHora() {
return hora;
}
public void setHora(Time hora) {
this.hora = hora;
}
@Basic
@Column(name = "orcamento")
public String getOrcamento() {
return orcamento;
}
public void setOrcamento(String orcamento) {
this.orcamento = orcamento;
}
@Basic
@Column(name = "destinatarios")
public String getDestinatarios() {
return destinatarios;
}
public void setDestinatarios(String destinatarios) {
this.destinatarios = destinatarios;
}
@Basic
@Column(name = "observacoes")
public String getObservacoes() {
return observacoes;
}
public void setObservacoes(String observacoes) {
this.observacoes = observacoes;
}
@Basic
@Column(name = "id_ano")
public int getIdAno() {
return idAno;
}
public void setIdAno(int idAno) {
this.idAno = idAno;
}
@Basic
@Column(name = "registado")
public Timestamp getRegistado() {
return registado;
}
public void setRegistado(Timestamp registado) {
this.registado = registado;
}
@Basic
@Column(name = "plano")
public byte getPlano() {
return plano;
}
public void setPlano(byte plano) {
this.plano = plano;
}
@Basic
@Column(name = "realizado")
public String getRealizado() {
return realizado;
}
public void setRealizado(String realizado) {
this.realizado = realizado;
}
@Basic
@Column(name = "motivo")
public String getMotivo() {
return motivo;
}
public void setMotivo(String motivo) {
this.motivo = motivo;
}
@Basic
@Column(name = "file")
public String getFile() {
return file;
}
public void setFile(String file) {
this.file = file;
}
@ManyToOne
@JoinColumn(name = "id_utilizador", referencedColumnName = "id", insertable = false, updatable = false, nullable = false)
public AppUser getAppUserByIdUtilizador() {
return appUserByIdUtilizador;
}
public void setAppUserByIdUtilizador(AppUser appUserByIdUtilizador) {
this.appUserByIdUtilizador = appUserByIdUtilizador;
}
@ManyToOne
@JoinColumn(name = "id_cargo", referencedColumnName = "id_cargo", insertable = false, updatable = false)
public Cargos getCargosByIdCargo() {
return cargosByIdCargo;
}
public void setCargosByIdCargo(Cargos cargosByIdCargo) {
this.cargosByIdCargo = cargosByIdCargo;
}
@ManyToOne
@JoinColumn(name = "id_ano", referencedColumnName = "id_ano", insertable = false, updatable = false, nullable = false)
public AnoEscolar getAnoEscolarByIdAno() {
return anoEscolarByIdAno;
}
public void setAnoEscolarByIdAno(AnoEscolar anoEscolarByIdAno) {
this.anoEscolarByIdAno = anoEscolarByIdAno;
}
@OneToMany(mappedBy = "atividadesByIdAtividades")
public Collection<AvaliacaoAtividades> getAvaliacaoAtividadesByIdAtividades() {
return avaliacaoAtividadesByIdAtividades;
}
public void setAvaliacaoAtividadesByIdAtividades(Collection<AvaliacaoAtividades> avaliacaoAtividadesByIdAtividades) {
this.avaliacaoAtividadesByIdAtividades = avaliacaoAtividadesByIdAtividades;
}
@Override
public String toString() {
return "Atividades{" +
"idAtividades=" + idAtividades +
", idUtilizador=" + idUtilizador +
", idCargo=" + idCargo +
", atividade='" + atividade + '\'' +
", local='" + local + '\'' +
", descricao='" + descricao + '\'' +
", objetivos='" + objetivos + '\'' +
", periodo='" + periodo + '\'' +
", previsaoMes='" + previsaoMes + '\'' +
", dataPrevista=" + dataPrevista +
", hora=" + hora +
", orcamento='" + orcamento + '\'' +
", destinatarios='" + destinatarios + '\'' +
", observacoes='" + observacoes + '\'' +
", idAno=" + idAno +
", registado=" + registado +
", plano=" + plano +
", realizado='" + realizado + '\'' +
", motivo='" + motivo + '\'' +
", file='" + file + '\'' +
", appUserByIdUtilizador=" + appUserByIdUtilizador +
", cargosByIdCargo=" + cargosByIdCargo +
", anoEscolarByIdAno=" + anoEscolarByIdAno +
", avaliacaoAtividadesByIdAtividades=" + avaliacaoAtividadesByIdAtividades +
'}';
}
}
有人帮我解决这个问题吗
更新
在我的服务器uotput中更新查询后,我得到了以下响应
Hibernate:
SELECT
*
FROM
ATIVIDADES
WHERE
DATA_PREVISTA BETWEEN NOW() AND DATE_ADD(NOW(), INTERVAL 7 DAY)
[[Ljava.lang.Object;@2a6e2a42]
所以我看到的是一个对象这行:List-atividades=as.listalatividades()
可能无法满足您的需要。当您在SQL查询中选择单个字段时,您会得到列表
,而不是列表
。虽然您得到的是一个列表
,但这很奇怪。无论如何,请尝试在查询中获取整个实体。类似于选择*FROM
或选择FROM W这里..
if HQL.现在让我看看它是否有效
免责声明:我可能错了,因为您可以返回
列表这一事实对我来说有点奇怪。createSQLQuery.List()
将始终返回List
(如果指定了多个列)。但是,您可以在更新后获得列表。您是否也收到了相同的错误?是的,我知道,同样的,列表的内容一定有问题。这就是我所能想到的。您能给我们一些altividade字段的示例吗?您也能验证DB中的数据是否包含所有数字数据吗?非常感谢所有人谢谢你的帮助
@Override
public List<Atividades> listAllAtividades() {
session.openSession();
return session.getCurrentSession().createSQLQuery("SELECT ATIVIDADE, LOCAL, DATA_PREVISTA, TIME_FORMAT(HORA, '%H:%i') AS HORA FROM ATIVIDADES WHERE DATA_PREVISTA BETWEEN NOW() AND DATE_ADD(NOW(), INTERVAL 7 DAY)").list();
}
@RequestMapping(value = { "/"}, method = RequestMethod.GET)
public String homePage(ModelMap model) {
//Lista as atividades da semana
List<Atividades> atividades = as.listAllAtividades();
model.addAttribute("atividades", atividades);
System.out.println(atividades);
//noinspection SpringMVCViewInspection
return "index";
}
<c:forEach items="${atividades}" var="ati">
<tr>
<td>${ati.atividade}</td>
<td>${ati.local}</td>
<td>${ati.dataPrevista}</td>
<td>${ati.hora}</td>
<td>${ati.destinatarios}</td>
</tr>
</c:forEach>
org.apache.jasper.JasperException: An exception occurred processing JSP page /WEB-INF/views/index.jsp at line 48
45: <tbody>
46: <c:forEach items="${atividades}" var="ati">
47: <tr>
48: <td>${ati.atividade}</td>
49: <td>${ati.local}</td>
50: <td>${ati.dataPrevista}</td>
51: <td>${ati.hora}</td>
java.lang.NumberFormatException: For input string: "atividade"
Hibernate:
SELECT
*
FROM
ATIVIDADES
WHERE
DATA_PREVISTA BETWEEN NOW() AND DATE_ADD(NOW(), INTERVAL 7 DAY)
@Override
public List<Atividades> listAllAtividades() {
session.openSession();
return session.getCurrentSession()
.createSQLQuery("SELECT * FROM ATIVIDADES WHERE DATA_PREVISTA BETWEEN NOW() AND DATE_ADD(NOW(), INTERVAL 7 DAY)")
.addEntity(Atividades.class)
.list();
}