gpt4 book ai didi

java - 使用 Spring 使用数据库中的多列数据填充下拉框不起作用

转载 作者:行者123 更新时间:2023-12-01 09:42:51 25 4
gpt4 key购买 nike

我知道有很多与此相关的帖子,但没有一个对我有用。

我不知道我想做的事情是否容易。我对 Spring 的工作非常陌生。

应用程序已经在运行,我必须做一些修改,所以我想用从数据库请求的数据填充下拉框。

这是我的观点:

<form:form action="${urlcallBankAddAction}" method="POST" onsubmit="return validar(this)" modelAttribute="banco"> 
<form:select path="descripcion" items="${resultList.descripcion}" />
</form:form>

这是我的 Controller :

@RequestMapping(value = {"/details", "/details?status={status}"}, method = RequestMethod.GET)
public String verBancos(WebRequest request,
ModelMap model,
HttpSession session){

try{
String valorSesion = (String) session.getAttribute("acceso");//Se valida el inicio de sesion
if(valorSesion.equals("1")){//Se valida el inicio de sesion
List<Banco> result = new ArrayList<Banco>();
List<String> banksResults = new ArrayList<String>();

result = bancoService.obtenerTodosLosBancos();

model.addAttribute("currentComponent", "banks.title");
model.addAttribute("status", request.getParameter("status"));
model.addAttribute("resultList", result);
model.addAttribute("banco", new Banco());
model.addAttribute("cantidadRegistros", result.size());
return "details";
} else{
//MANDAR A PAGINA DE ERROR
return "redirect:/unauthorized";
}
} catch(NullPointerException n){//Se valida el inicio de sesion
//MANDAR A PAGINA DE ERROR
return "redirect:/unauthorized";
}
}

这是模型,集合和获取都在那里,但我在这里省略了:

@Id
@Column(name = "id")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int id;

@Column(name = "cod_visa")
private int codigoVisa;

@Column(name = "CodSud")
private String codigoSudeban;

@Column(name = "descripcion"

对这一切感到好奇的是,我已经拥有了如下图所示的数据,但我只想在我的框中显示这些客户的描述,箭头表示我想要放置描述的位置。

在当前 View 中,我遇到了这个异常:

Caused by: java.lang.NumberFormatException: For input string: "descripcion"

我还尝试用 c:forEach items="${resultList.description} 填充框,但没有结果,我只使用了“resultList”,然后我得到了从数据库获取的整个对象。

enter image description here

请帮我解决这个问题,我不知道我错过了什么或我做错了什么。我遇到过很多这方面的问题。

最佳答案

如果您想在 resultList 上显示每个 banco 的描述,请使用 itemLabelitemValue,请看看Spring documentations :

  <form:select path="descripcion" items="${resultLis}" itemValue="id" itemLabel="description"/>

也可以通过 options 标签来完成:

 <form:select path="descripcion">
<form:options items="${resultLis}" itemValue="id" itemLabel="description"/>
</form:select>

使用 JSTL:

   <form:select path="descripcion">
<c:forEach items="${resultList }" var="banco">
<form:option value="${banco.id }" label="${banco.description }"/>
</c:forEach>
</form:select>

关于java - 使用 Spring 使用数据库中的多列数据填充下拉框不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38332125/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com