SpringMVC_02控制层接值方式和jsp三种传值方式

package com.vp.springtest.controller;

import javax.servlet.http.HttpServletRequest;

import org.springframework.http.converter.xml.SourceHttpMessageConverter;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

/**
 * @author 作者 周明:
 * @version 创建时间:2020年2月24日 上午9:29:18 类说明
 */
@Controller // 实例化当前控制器类
@RequestMapping("/") // 设置web访问地址
public class StudentController {

	@RequestMapping(value = "/addStudent1", method = RequestMethod.POST) // value指定web访问地址...并限定只能通过GET方式访问
	public String add1() {//
		System.out.println("POST添加学生...");
		return "index";
	}

	@RequestMapping(value = "/addStudent2", method = RequestMethod.GET) // value指定web访问地址...并限定只能通过GET方式访问
	public String add2() {//
		System.out.println("GET添加学生...");
		return "index";
	}

	// 2.1接收页面值的第一种方式.直接在参数里面写一个和页面名字一样的变量就自动接收...di/ioc
	@RequestMapping(value = "/addStudent3", method = RequestMethod.POST) // value指定web访问地址...并限定只能通过GET方式访问
	public String add3(String sid, String sname, int sage) {//
		System.out.println("学号:" + sid);
		System.out.println("姓名:" + sname);
		System.out.println("年龄:" + sage);
		return "index";
	}

	// 2.2接收页面值的第二种方式,直接用对象,页面名字要与对象的属性名一样
	@RequestMapping(value = "addStudent4", method = RequestMethod.POST)
	public String add4(Student student) {
		System.out.println(student.getSid());
		System.out.println(student.getSname());
		System.out.println(student.getScore());
		return "index";
	}

	// 2.4非ioc/di方式,也就是原生 的入侵方式,用HttpServletRequest
	@RequestMapping(value = "addStudent5", method = RequestMethod.POST)
	public String add5(HttpServletRequest request) {
		String sid = request.getParameter("sid");
		String sname = request.getParameter("sname");
		double score = Double.parseDouble(request.getParameter("score"));

		System.out.println(sid);
		System.out.println(sname);
		System.out.println(score);
		return "index";
	}

	// 处理 javascript请求
	@RequestMapping(value = "/addStudent6", method = RequestMethod.GET) // value指定web访问地址...并限定只能通过GET方式访问
	public String add6(String sid, String sname, int sage) {//
		System.out.println("学号:" + sid);
		System.out.println("姓名:" + sname);
		System.out.println("年龄:" + sage);
		return "index";
	}

	// 处理 ajax请求
	@RequestMapping(value = "/addStudent7", method = RequestMethod.GET) // value指定web访问地址...并限定只能通过GET方式访问
	public String add7(String sid, String sname, String sage) {//
		System.out.println("学号:" + sid);
		System.out.println("姓名:" + sname);
		System.out.println("年龄:" + Integer.parseInt(sage));
		return "index";
	}
}
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>添加学生</title>
<script type="text/javascript" src="js/jquery-1.7.js"></script>
</head>
<body>
	<form action="addStudent1" method="post">
		请输入学号:<input type="text" name="sid"/><br/>
		请输入姓名:<input type="text" name="sname"/><br/>
		请输入年龄:<input type="text" name="sage"/><br/>
		<input type="submit" value="添加学生"/>
	</form>
	
	<hr/>
	<a href="addStudent2">通过Get方式来请求服务器的添加方法</a>
	<hr/>
	
	<!-- springmvc是如何接收页面的值呢1.1 -->
	<form action="addStudent3" method="post">
		请输入学号:<input type="text" name="sid"/><br/>
		请输入姓名:<input type="text" name="sname"/><br/>
		请输入年龄:<input type="text" name="sage"/><br/>
		<input type="submit" value="添加学生"/>
	</form>
	
	<hr/>
	<!-- springmvc是如何接收页面的值呢1.2 -->
	<form action="addStudent4" method="post">
		请输入学号:<input type="text" name="sid"/><br/>
		请输入姓名:<input type="text" name="sname"/><br/>
		请输入分数:<input type="text" name="score"/><br/>
		<input type="submit" value="添加学生"/>
	</form>
	
	
	<hr/>
	<!-- springmvc是如何接收页面的值呢1.3 -->
	<form action="addStudent5" method="post">
		请输入学号:<input type="text" name="sid"/><br/>
		请输入姓名:<input type="text" name="sname"/><br/>
		请输入分数:<input type="text" name="score"/><br/>
		<input type="submit" value="添加学生"/>
	</form>
	<hr/>
	
	<!-- 用js请求,也是一样的 -->
	请输入学号:<input type="text" id="sid"/><br/>
	请输入姓名:<input type="text" id="sname"/><br/>
	请输入分数:<input type="text" id="score"/><br/>
	<input type="button" value="添加学生" onclick="sendto()"/>
	<script>
		function sendto(){
			var vsid = document.getElementById("sid").value;
			var vsname = document.getElementById("sname").value;
			var vscore = document.getElementById("score").value;
			//转发里面的参数名一定要与控制中心的参数名一样
			window.location = "addStudent6?sid="+vsid+"&sname="+vsname+"&sage="+vscore;
		}
	</script>
	<hr/>
	
	<!-- 用jquery操作ajax请求,也是一样的 -->
	请输入学号:<input type="text" id="sid2"/><br/>
	请输入姓名:<input type="text" id="sname2"/><br/>
	请输入分数:<input type="text" id="sage2"/><br/>
	<input type="button" value="添加学生" id="btn"/>
	<script>
		$(function(){
			$("#btn").click(function(){
				var v1 = $("#sid2").val();
				var v2 = $("#sname2").val();
				var v3 = $("#sage2").val();

				$.ajax({
		             type: "GET",
		             url: "addStudent7",
		             data: "sid="+v1+"&sname="+v2+"&sage="+v3,
		             success: function(data){
		                        
		             }
		         });
			});
		});
	</script>
</body>
</html>

@RequestMapping(value = “ss/addStudent1”, method = RequestMethod.POST) //
value是指地址,method是指以什么来接受,一般是get或post。
怎么找到的,web。xml配置的那个类是spring bean容器专门控制serlect,先找到实列化为ss的控制层,再找到里面接收地址是addStudent1的方法。

@RequestMapping(value = “/addStudent3”, method = RequestMethod.POST) // value指定web访问地址…并限定只能通过GET方式访问
public String add3(String sid, String sname, int sage) {//

接收的参数名字要跟页面传的参数的名称一样,不然接收不到值。同样如果方法里面的参数是对象,那么页面的的参数名字跟对象的属性名称一样。同时还会将接收到的对象直接传到该方法返回到的界面中去。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值