zoukankan      html  css  js  c++  java
  • springmvc学习(二)


     

    在第一章中为了练手创建一个基本的springmvc 例子,这章主要记录 spring mvc中如何 接受前端发送过来的请求,前端发送请求数据类型(基本数据类型int,sring 等。对象类型:例如修改一个user的信息 。以及包装的对象类型)一下分别介绍这三种类型是如何传递 接受的。

    1. 接受基本数据类型:int
      搭建好一个基本springmvc的项目 配置 可以看我springmvc(一)
      创建一个SpringMvcTransmitInt类,并且创建一个 transmitInt(int age)方法 如图:|

      从浏览器中如何地址:http://localhost:8080/springmvc/transmitInt.action?age=2

      注意:方法transmitInt(int age)  参数名 age必须和请求中的参数 相同 如果 不相同 则请求的时候报错:

      绑定基本类型时候 如果要实现 请求参数和 方法参数 名 不相同 则 可以使用: @RequestParam 处理入参参数 和方法参数名字不一样的时候,value:请求的入参参入名(此处是age)required 是否为必填 ,defaultValue 默认值 如果请求中不带参数 则 默认值就是1

    2.  绑定 入参是pojo类型的数据

      /**
           * 绑定对象
           * 
           * @param user
           * @return
           */
          @RequestMapping("transmitPoJo")
          public ModelAndView transmitPoJo(User user) {
              ModelAndView mav = new ModelAndView();
              mav.setViewName("transmitpackagepojo");
              return mav;
          }
      <body>
      	<span>${ msg }</span>
      	<!-- 上传图片是需要指定属性 enctype="multipart/form-data" -->
      	<!-- <form id="itemForm" action="" method="post" enctype="multipart/form-data"> -->
      	<form id="itemForm"
      		action="${pageContext.request.contextPath }/transmitPoJo.action"
      		enctype="multipart/form-data" method="pos">
      		<table width="100%" border=1>
      			<tr>
      				<td>姓名</td>
      				<td><input type="text" name="name" value="${user.name}" /></td>
      			</tr>
      			<tr>
      				<td>岁数</td>
      				<td><input type="text" name="age" value="${user.age}" /></td>
      			</tr>
      
      
      			<tr>
      				<td colspan="2" align="center"><input type="submit" value="提交" />
      				</td>
      			</tr>
      		</table>
      
      	</form>
      </body>
      

         

      public class User {
          public String name;
          public int age;
          public Address address;
      
          public User() {
          }
      
          public User(String name, int age) {
              this.name = name;
              this.age = age;
          }
      
          public String getName() {
              return name;
          }
      
          public void setName(String name) {
              this.name = name;
          }
      
          public int getAge() {
              return age;
          }
      
          public void setAge(int age) {
              this.age = age;
          }
      
          public Address getAddress() {
              return address;
          }
      
          public void setAddress(Address address) {
              this.address = address;
          }
      
          @Override
          public String toString() {
              return "User [name=" + name + ", age=" + age + ", address=" + address + "]";
          }
      
      }

      注意:传递对象的时候  jsp中的name需要和user中的属性 相同




    3. 绑定 入参是包装类型的对象
      <body>
          <span>${ msg }</span>
          <!-- 上传图片是需要指定属性 enctype="multipart/form-data" -->
          <!-- <form id="itemForm" action="" method="post" enctype="multipart/form-data"> -->
          <form id="itemForm"
              action="${pageContext.request.contextPath }/transmitPoJoList.action"
              enctype="multipart/form-data" method="pos">
              <table width="100%" border=1>
                  <tr>
                      <td>姓名</td>
                      <td><input type="text" name="name" value="${user.name}" /></td>
                  </tr>
                  <tr>
                      <td>岁数</td>
                      <td><input type="text" name="age" value="${user.age}" /></td>
                  </tr>
                  <tr>
                      <td>用户省份</td>
                      <td><input type="text" name="address.province" value="${address.province}" /></td>
                  </tr>
      
                  <tr>
                      <td>用户城市</td>
                      <td><input type="text" name="address.city" value="${address.city}" /></td>
                  </tr>
                  <tr>
                      <td colspan="2" align="center"><input type="submit" value="提交" />
                      </td>
                  </tr>
              </table>
      
          </form>
      </body>


      jsp中的name必须和User里面的address 的属性名相同 用 .

    4. 此外 springmvc 传递 数据 还有 数组类型 和 集合类型。感兴趣的朋友 可以自己去试试。以上内容如果哪里有说的不对 或者 理解错误的 希望多包涵,帮忙指正
  • 相关阅读:
    开发流程之功能设计
    spring security之web应用安全
    feign架构原理解析
    负载均衡之ribbon
    服务发现之eureka
    JavaScript的内置对象
    JavaScript的流程控制语句以及函数
    JavaScript的基础语法及DOM元素和事件
    CSS的基础使用
    盒子模型
  • 原文地址:https://www.cnblogs.com/920913cheng/p/10149393.html
Copyright © 2011-2022 走看看