频道栏目
首页 > 资讯 > 其他 > 正文

SpringMVC利用表单传递数据实现代码

18-06-28        来源:[db:作者]  
收藏   我要投稿

SpringMVC利用表单传递数据实现代码,在ssm框架的基础上加入了几个jsp页面,并修改了controller。

controller

@Controller
@RequestMapping("/user")
public class UserController {

    /*
     public void test(){
     System.out.println("spring success");
     }
     */

    @Autowired
    private UserService userService;

    //requestMapping用于指定映射路径,这里可以看成当路径为/user/findUser时将会被映射到此方法
    @RequestMapping("findUser")
    public String getUser(HttpServletRequest request){
        //用List接收结果
        List<user> user = userService.getUser();
        //把结果放到相应的request域中
        request.setAttribute(&quot;User&quot;, user);
        //返回一个视图
        return &quot;/User&quot;;
    }

    @RequestMapping(&quot;name&quot;)
    public String getUser(HttpServletRequest request,String name){
        System.out.println(&quot;name id&quot; + name);
        return &quot;user/name&quot;;
    }

    @RequestMapping(&quot;login&quot;)
    public ModelAndView login(){  
        System.out.println(&quot;login() login&quot;);
        ModelAndView mav = new ModelAndView(&quot;input&quot;);  
        return mav;
    }

    @RequestMapping(&quot;output&quot;)
    public ModelAndView login1(){ 
        System.out.println(&quot;login1() input&quot;);
        ModelAndView mav = new ModelAndView(&quot;login&quot;);  
        return mav;
    }   
    //用于接收参数,并且返回到output页面
    @RequestMapping(&quot;input&quot;)
    public ModelAndView login2(@RequestParam(&quot;yonghu&quot;)String yonghu,@RequestParam(&quot;mima&quot;)String mima){ 
        System.out.println(&quot;login2() output&quot;);
        ModelAndView mav = new ModelAndView(&quot;output&quot;);  
        mav.addObject(&quot;yonghu&quot;,yonghu);
        mav.addObject(&quot;mima&quot;,mima);

        return mav;
    }  </user>
<form action="http://localhost:8080/spring_mybatis_springmvc/user/input" id="form1" method="get" name="myform">
	用户:<input name="yonghu" type="text" /> 密码:<input name="mima" type="password" /> input:<input type="submit" />&nbsp;</form>
<form action="http://localhost:8080/spring_mybatis_springmvc/user/login" id="form2" method="get" name="myform">
	output<input type="submit" />&nbsp;</form>

用户是: ${yonghu}

密码是:${mima}

input.jsp

//前面就不说了,这里主要是body中的代码

output.jsp

1.输入:

    http://localhost:8080/spring_mybatis_springmvc/user/login

这里写图片描述

//这里执行的是这一串代码
//由user----login-----再通过ModelAndview的设置到input界面
//后台打印-----login() login
@Controller
@RequestMapping("/user")
public class UserController {
.......
@RequestMapping("login")
    public ModelAndView login(){  
        System.out.println("login() login");
        ModelAndView mav = new ModelAndView("input");  
        return mav;
    }
    .......
}

2.结果

接着我们输入用户,密码,确定

//首先执行的是input页面中的from内action操作
action="http://localhost:8080/spring_mybatis_springmvc/user/input"

//接着,由http://localhost:8080/spring_mybatis_springmvc/user/input,后台将会将其映射到对应的方法上

//用于接收参数,并且返回到output页面
//这里接收了yonghu,mima参数,并且利用modelandview传递到视图
//返回output界面
    @RequestMapping("input")
    public ModelAndView login2(@RequestParam("yonghu")String yonghu,@RequestParam("mima")String mima){ 
        System.out.println("login2() output");
        ModelAndView mav = new ModelAndView("output");  
        mav.addObject("yonghu",yonghu);
        mav.addObject("mima",mima);

        return mav;
    }  

这里写图片描述

得到结果如图。
整个流程就这样:
login—后台接收到url—-映射到@RequestMapping(”login”)对应的方法上——根据return返回的视图名—–跳转到input页面——输入数据,action—–按照action的url用get方法发起请求——后台接收——映射到@RequestMapping(”input”)方法上——–根据modelAndView设定的视图名—–进行视图解析—–数据显示在output.jsp界面上

相关TAG标签
上一篇:如何在springcloud分布式系统中实现分布式锁
下一篇:spring执行原理及流程详解
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站