Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Cómo recibe el controlador en Spring MVC los datos enviados por el formulario de la página?

¿Cómo recibe el controlador en Spring MVC los datos enviados por el formulario de la página?

1. Escriba los parámetros del formulario directamente en los parámetros formales del método correspondiente del controlador.

@ mapeo de solicitud("/add user 1 ")

Cadena pública addUser1(String nombre de usuario, String contraseña){

System.out .println(" El nombre de usuario es:" nombre de usuario);

System.out.println("La contraseña es:" contraseña);

return "/user/success";

}

2. Recibir a través de HttpServletRequest.

@RequestMapping("/addUser2 ")

Cadena pública addUser2(solicitud HttpServletRequest){

cadena nombre de usuario = solicitud getparameter(" nombre de usuario "); /p>

cadena contraseña = solicitud . getparameter(" contraseña ");

System.out.println("El nombre de usuario es: " nombre de usuario); out.println("La contraseña es: "contraseña);

return "/user/success"

}

3.

1) Cree un bean basado en los parámetros del formulario.

Usuario de clase pública {nombre de usuario de cadena privada; contraseña de cadena privada; cadena pública get nombre de usuario(){ return nombre de usuario;}

//métodos getter y setter. . . }

2) Utilice este bean para encapsular los parámetros recibidos.

@RequestMapping("/addUser3 ")

Cadena pública addUser3(usuario usuario) {

System.out.println("El nombre de usuario es:" usuario . get nombre de usuario());

System.out.println("La contraseña es: " usuario . get contraseña());

return "/user/success";

}

4. Recibir datos a través de json

lt @ page language = " Java " tipo de contenido = " text/html; juego de caracteres = UTF-8 "

codificación de página = " UTF-8 " gt;

lt! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transicional//ES " " http://www.w3.org/TR/HTML4/loose.DTD" gt;

lthtml gt< / p>

lthead gt

ltmeta http-equiv = " Tipo de contenido " Contenido = " text/html; charset=UTF-8 " >>p>

lttitle gtAgregar usuario lt/ título gt;

ltscript type = " text/JavaScript " src = " $ { pagecontext . request . contexto ruta }/resource/script/jquery-1 . 9 . 1 . min . js " gt ; /script gt;

ltscript tipo = " texto/JavaScript " gt

$(documentación). listo(función(){

$("#button_submit ").click(función(){

var nombre = $("#userName ").val();

var pasar = $("#contraseña ").

val();

var usuario = {nombre de usuario: nombre, contraseña: contraseña}; //Ensamblar en formato json

$.ajax({

Tipo : "Publicación",

URL: " $ { pagecontext . request . context path }/user/add user 4 ",

Datos: Usuario,

Éxito: función(datos){

Alerta("éxito");

},

Error: función(e) {

Alerta("Error: " e);

}

});

});

});< / p>

lt/script gt;

lt/head gt;

ltbody gt

lt formulario gt

lt Tabla gt

lttr gt

cuenta lttd gt

lttd gt

ltinput type = " text " id = " nombre de usuario " nombre = " nombre de usuario " >>p>

lt/TD gt;

lt/tr gt;

lttr gt

contraseña de lttd gt

lttd gt

ltTipo de entrada = " contraseña " id = " contraseña " nombre = " contraseña " gt;

lt/TD gt;

lt /tr gt;

lttr gt

lttd gt lt/TD gt;

lttd gt

lt tipo de entrada = " botón " ID = " botón _ enviar " valor = " enviar " >>p>

lt/TD gt

lt/tr gt

lt/table gt ;

lt/form gt;

lt/body gt;

lt/html gt;

Aún puedes usar beans para recibir json datos.

@RequestMapping("/addUser4 ")

Cadena pública addUser4(usuario usuario) {

System.out.println("El nombre de usuario es:" usuario . get nombre de usuario());

System.out.println("La contraseña es: " usuario . get contraseña());

return "/user/success";

}

5. Utilice el método serializeArray() de jQuery para serializar elementos del formulario.

Si hay muchos elementos de formulario, es muy problemático ensamblar datos json manualmente. Puede utilizar el método serializeArray() proporcionado por jQuery para serializar elementos de formulario y devolver datos de estructura de datos json.

lt @ idioma de la página = " Java " tipo de contenido = " texto/html; juego de caracteres = UTF-8 "

codificación de página = " UTF-8 " gt;

¡Es! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transicional//ES " " http://www.w3.org/TR/HTML4/loose.DTD" gt;

lthtml gt< / p>

lthead gt

ltmeta http-equiv = " Tipo de contenido " Contenido = " text/html; charset=UTF-8 " >>p>

lttitle gtAgregar usuario lt/ título gt;

ltscript type = " text/JavaScript " src = " $ { pagecontext . request . contexto ruta }/resource/script/jquery-1 . 9 . 1 . min . js " gt ; /script gt;

ltscript tipo = " texto/JavaScript " gt

$(documentación). ready(function(){

$("#button_submit "). Click(function(){

//Serializa elementos del formulario y devuelve datos json.

var params = $("#userForm "). serialize array();

//También puede guardar elementos fuera del formulario en formato de valor de nombre.

//params.push({nombre: "hola ", valor: " hombre "});

$.ajax({

Tipo: " Publicación",

URL: " $ { pagecontext . ruta de contexto }/usuario/agregar usuario 5 ",

Datos: Parámetros,

Éxito: Función(datos){

Alerta("Éxito");

},

Error: Función(e) {

Alerta ("Error:" e);

}

});

lt/script gt;

lt/head gt;

ltbody gt

ltform id = " userForm " gt

lt table gt

lttr gt

cuenta lttd gt

lttd gt

ltinput tipo = " texto " id = " nombre de usuario " nombre = " nombre de usuario " >>p>

lt/TD gt;

lt/tr gt;

lttr gt

lttd gtContraseña

lttd gt

ltInput type = " contraseña " id = " contraseña " nombre = " contraseña " gt

lt/TD gt

lt/tr gt;

lttr gt

lttd gt lt/TD gt;

lttd gt

lt tipo de entrada = botón " " ID = " botón _ enviar " valor = " enviar " >>p>

lt/TD gt;

lt/tr gt;

lt/table gt;

lt/form gt;

lt/body gt;

lt/html gt;

Aún puedes usar beans para recibir datos json:

@RequestMapping("/addUser5 ")

Cadena pública addUser5(usuario usuario) {

System.out.println(" El nombre de usuario es: " usuario . get nombre de usuario());

System.out.println("La contraseña es: " usuario . get contraseña());

return"/user / Éxito";

}