欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

SpringMVC实现前端后台交互传递数据

程序员文章站 2024-03-05 17:27:31
本人对springmvc前端交互不太懂,搜索了很多关于springmvc前端交互介绍,下面我来记录一下,有需要了解的朋友可参考。希望此文章对各位有所帮助。 control...

本人对springmvc前端交互不太懂,搜索了很多关于springmvc前端交互介绍,下面我来记录一下,有需要了解的朋友可参考。希望此文章对各位有所帮助。

controller.java代码:

@controller
public class datacontroller {
  
  //一、接收和通过modelmap传出参数,不需要视图解析器,测试时加了解析器,顾返回值不需后缀
  //普通参数
  @requestmapping("/data1")
  public string data1(@requestparam("uname")string name,modelmap mm){
    //接收数据
    //1.页面提交的表单域名和参数名需相同
    //2.非要与提交的表单域名不一样的时候,如上加@requestparam("uname"),但提交的表单域名名必须和uname相同
//    system.out.println(name);
    
    //传递数据到页面,添加modelmap mm,类似request.setattribute()
    mm.addattribute("uname", name);
    return "data";
  }
  
  //对象参数
  @requestmapping("/data2")
  public string data2(user user,modelmap mm){
    //接收数据
    //提交的表单域名需和对象里的属性名一致
//    system.out.println(user);
    
    //传递数据到页面,添加modelmap mm,类似request.setattribute()
    mm.addattribute("user", user);
    
    return "data";
  }
  
  //二、接收和通过modelandview传出参数,需要配置视图解析器
  @requestmapping("/data3")
  public modelandview data3(httpservletrequest req,httpservletresponse resp){
    modelandview mv = new modelandview();
    user user = new user();
    //接收数据
    user.setname(req.getparameter("name"));
    user.setpassword(req.getparameter("password"));
    //传递数据
    req.setattribute("uname", user.getname());
    req.setattribute("user", user);
    mv.setviewname("data");
    return mv;
  }
}

springmvc.xml配置

 <mvc:annotation-driven />
  <!-- viewresolver -->
  <bean id="viewresolver"
    class="org.springframework.web.servlet.view.urlbasedviewresolver">
    <!-- 视图解析类型 -->
    <property name="viewclass" value="org.springframework.web.servlet.view.jstlview"/>
    <!-- 设置前缀 -->
    <property name="prefix" value="/"/>
    <!-- 设置后缀 -->
    <property name="suffix" value=".jsp"/>
  </bean>    
  <context:component-scan base-package="com.xhx.controller" />

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。