0
问题是在从数据库中取出先前的值并覆盖它们之后,重新绘制新值,我想将新值保存在我的beans“变量”中,然后也显示de DB在这个组件中的值,但是如果我把“Usuario.nombre”,它不显示来自DB的值,并且如果我把“datos.nombres”显示来自DB的值,请帮助从InputText中捕获具有以前数据的新值从DataBase JSF + PrimeFaces 3.5
这里是我的XHTML文件
<p:dataTable style="width:450px" value="#{DAOUsuario.Listar()}" var="datos">
<p:column headerText="Datos Personales" style="background:#19708F ; color: white">
<p:outputLabel value="Nombre"/>
<h:inputText value="#{datos.nombre}"/>
<br/>
<p:outputLabel value="Clave" />
<h:inputText value="#{datos.clave}"/>
<br/>
<h:commandButton value="Modificar" action="#{DAOUsuario.Modificar()}">
</h:commandButton>
</p:column>
</p:dataTable>
</h:form>
</body>
这里是我的类有方法来连接到克拉到DB
public void Modificar() throws Exception {
FacesContext context = FacesContext.getCurrentInstance();
Usuario us = (Usuario) context.getApplication().evaluateExpressionGet(context, "#{Usuario}", Usuario.class);
String sql = "UPDATE usuario SET nombre = '" + us.getNombre() + "', clave = '" + us.getClave() + "' "
+ "WHERE codigousuario = 2";
try {
this.Insert(sql);
} catch (Exception ex) {
throw ex;
}
}
,这里是我的豆Usuario:
public class Usuario {
private int codigo;
private String nombre;
private String clave;
public int getCodigo() {
return codigo;
}
public void setCodigo(int codigo) {
this.codigo = codigo;
}
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public String getClave() {
return clave;
}
public void setClave(String clave) {
this.clave = clave;
}
}
我们的秘鲁,我希望我们能够做到这一点,我们可以为您提供更好的服务,我们可以为您提供最优质的服务。 existe variable“us”... y otra pregunta podrias explicarme nuevamente de las capas logicas y porque no deberia usar el dato para manejar mis beans ... gracias – MitoCode 2013-02-25 17:21:59
@JA SO中的主要语言是英语,请记住世界上其他人可以阅读Q/A和评论。回到你的问题,你可以发送'Usuario us'参数,而不是使用'Usuario us'局部变量,检查我发布的'Modificar'函数(我评论过'Usuario us'并发布参数调用'us'以保持与已经使用'us'的当前代码的兼容性),当然,您可以更改参数的名称,但这是Java基本编程。 – 2013-02-25 17:30:08
@ J.A。关于使用逻辑层,请参阅[这里](http://stackoverflow.com/a/13012973/1065197)以获得更好的理解。 – 2013-02-25 17:37:12