发表于: 2018-01-23 22:25:02
1 796
一、今天学到的知识
-->SpringMVC获取页面表单参数的几种方式
1、直接把表单的参数写在Controller相应的方法的形参中 (控制器中方法的形参String userName,String userPwd名称必须和登陆页面的name="userName",name="userPwd"相同)
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping("/user")
public class UserController {
@RequestMapping("/login")
public String loginByUser(String userName, String userPwd) {
System.out.println("userName is:" + userName);
System.out.println("userPwd is:" + userPwd);
return "success";
}
}
2、通过HttpServletRequest接收(制器中String userName=request.getParameter("userName");String userPwd=request.getParameter("userPwd");的参数名称必须和登陆页面的name="userName",name="userPwd"相同)
@Controller
@RequestMapping("/user")
public class UserController {
@RequestMapping("/login")
public String loginByUser(HttpServletRequest request) {
String userName=request.getParameter("userName");
String userPwd=request.getParameter("userPwd");
System.out.println("userName is:" + userName);
System.out.println("userPwd is:" + userPwd);
return "success";
}
}
3.通过一个bean来接收(登陆页面的name="userName",name="userPwd"必须和Bean类的属性名称相同)
@Controller
@RequestMapping("/user")
public class UserController {
@RequestMapping("/login")
public String loginByUser(User user) {
System.out.println("userName is:" + user.getUserName());
System.out.println("userPwd is:" + user.getUserPwd());
return "success";
}
}
4.通过json数据接收
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript"
src="${pageContext.request.contextPath}/static/jquery-3.1.1.min.js"></script>
<title>登录</title>
<script type="text/javascript">
$(document).ready(function() {
$("#button_submit").click(function() {
var name = $("#userName").val();
var pwd = $("#userPwd").val();
var user = {
userName : name,
userPwd : pwd
};//拼装成json格式
$.ajax({
type : "POST",
url : "${pageContext.request.contextPath}/user/login.do",
data : user,
success : function(data) {
alert("成功");
},
error : function(e) {
alert("出错:" + e);
}
});
});
});
</script>
</head>
<body>
<form>
<table>
<tr>
<td>用户名:</td>
<td><input type="text" id="userName"></td>
</tr>
<tr>
<td>密码:</td>
<td><input type="password" id="userPwd"></td>
</tr>
<tr>
<td colspan="2"><input type="button" id="button_submit"
value="提交"></td>
</tr>
</table>
</form>
</body></html>
--> springMVC实现客户端跳转
@RequestMapping("/jump")
public ModelAndView jump() {
ModelAndView mav = new ModelAndView("redirect:/index");
return mav;
}-->JSP页面<%@ ...%>是 什么意思
这表示是指令,主要用来提供整个JSP 网页相关的信息,并且用来设定JSP网页的相关属性,
例如:网页的编码方式、语法、信息等。
起始符号为: <%@
终止符号为: %>
目前有三种指令:page、include 和taglib,每一种指令都有各自的属性。
page 指令是最复杂的JSP指令,它的主要功能为设定整个JSP 网页的属性和相关功能。
include 指令表示:在JSP 编译时插入一个包含文本或代码的文件,这个包含的过程是静态的,
而包含的文件可以是JSP 网页、HTML 网页、文本文件,或是一段Java 程序。
taglib 指令能够让用户自定义新的标签。二、明日计划
springMVC的session、文件上传
三、遇到的问题
在/addProduct界面输入后,
/showProduct显示刚才输入的产品信息出现乱码,如下所示:
四、今天的收获
springMVC接收表单数据的方式、服务端和客户端跳转的方法、简单的JSP页面的实现。
评论