`

3、spring-mvc(model view controller)

    博客分类:
  • mvc
 
阅读更多
1、@RequestMapping  URL地址请求
在web.xml中配置了关于view的启动文件如 web-servlet.xml或view-servlet.xml等,在这些view的配置文件中一般会配置spring扫描的包,以启动注解。
简单的url请求:@RequestMapping(value="/user/login.html")
通配url请求:@RequestMapping(value="/user/*.html")
通配参数请求:@RequestMapping(value="/user/{id}")   url: project/user/1221111
通配参数请求:@RequestMapping(value="/user")   url: project/user?id=1221111
1.1、获取通配参数请求中的参数:
@RequestMapping(value="/user/{id}")    url: project/user/1221111
public  String  loginPage(@PathVarirable("id") String id){System.out.println(id);}
也可以直接写成public  String  loginPage(@PathVarirable String id){ } 不推荐
@RequestMapping(value="/user")   url: project/user?id=1221111
常用:public  String  loginPage(HttpServletRequest request){
      String id = request.getParameter("id");}
也可用:public String loginPage(@RequestParam("id") String id){}
多个参数:@RequestMapping(value="/user")
public String loginPage(@RequestParam("id") String id,@RequestParam("name") String name,@RequestParam("age") String age){
System.out.println("id:"+id+"\nname:"+name+"\nage:"+age);

获取session
常用:public  String  loginPage(HttpServletRequest request){  String session =(String) request.getSession().getAttribute("loginName");
也可用:public  String  loginPage(@CookieValue("JSESSIONID") String cookieID){}
设置session
常用:request.getSession().setAttribute("id", "23222");
也可用:public  String  loginPage(HttpSession session){
session.setAttribute("id", "oioj0099");
<%=session.getAttribute("id")%>
还可以使用(返回本页):response.addCookie(new Cookie("id", "0909kkk"));

获取对象,注意必须要创建model,参数的name与之对应
http://localhost:8989/springMvc/user?name=skx&age=23
public  String  loginPage(User user){
注意:如果这时有个Person类和User一样拥有相同的属性name和age在接收时:
public  String  loginPage(User user,Person person){  这时会将ul参数分别传给user和person这可能不是我们想要的

使用@ModelAtrribute("user") User user 将请求的参数装备到对象user中,实现绑定。
也可在form表单将表单内容封装在对象中:<form modelAttribute="user" action="/test">....

注意:一个方法里面只能使用一种注解(@RequestParam,@CookieValue,@ModelAtrribute)其他的使用java类或request接收。
RequestParam参数绑定及判断,在写入数据库时是比较重要的
http://localhost:8989/springMvc/user?name=skx&age=23&sex=女
public  String  loginPage(@RequestParam(value="name",required=true)String name,@RequestParam(value="age",required=false) String age ,@RequestParam(value="sex",defaultValue="男") String sex){ 
print:
name:skx
age:23
sex:女
对cookile的判断:@CookieValue(value="loginName" required="true") String lid,

对头信息的获取与判断(字符编码,url请求方式)p184
还可以使用WebUtil这个类来获取参数(使用较少)


@Resource
@Autowired注解与 @Resource注解的区别
1. @Autowired
    @Autowired是Spring 提供的,需导入
    Package:org.springframework.beans.factory.annotation.Autowired;
    只按照byType 注入。
2. @Resource
    @Resource默认按 byName 自动注入,是J2EE提供的, 需导入Package: 
    javax.annotation.Resource;
@Resource的作用相当于@Autowired,只不过@Autowired按byType自动注入。


1.2、数据返回页面
1.2.1  ModelAndView 使用较少
return new  ModelAndView("/test");  //返回页面
return new ModelAndView("/test","age",s);   //带对象返回页面
1.2.2 String

1.3数据验证
1.3.1对model的验证  (springMVC数据效验)
1.3.2对请求参数的验证 BindingResult bindresult{
                                                       bindresult.hasErrors(){....}

                                          }
对传入的对象进行与1.3.1medol的校验
分享到:
评论

相关推荐

    Spring.MVC-A.Tutorial-Spring.MVC学习指南

    Spring MVC是Spring框架中用于Web应用快速开发的一个模块,其中的MVC是Model-View-Controller的缩写。作为当今业界主流的Web开发框架,Spring MVC已经成为当前热门的开发技能,同时也广泛用于桌面开发领域。  ...

    T01_SpringCrunchifyMVCTutorial:Funcionando - Spring-mvc-hello-world-example-tutorial-spring-model-view-controller-tips

    Crunchify.com 的 Spring MVC 教程系列 - 学习 fabiogm6 检索自: : 工作:

    Spring.MVC-A.Tutorial-Spring.MVC学习指南.rar

    Spring MVC是Spring框架中用于Web应用快速开发的一个模块,其中的MVC是Model-View-Controller的缩写。作为当今业界最主流的Web开发框架,Spring MVC已经成为当前最热门的开发技能,同时也广泛用于桌面开发领域。 ...

    Spring-MVC技术体系介绍(二)

    控制器(controller)、验证器(validator)、 命令对象(command object)、表单对象(form object)、模型对象(model object)、 Servlet分发器(DispatcherServlet)、 处理器映射(handler mapping)、视图解析...

    Spring MVC, A Tutorial, second edition 【2016】

    The MVC in Spring MVC stands for Model-View-Controller, a design pattern widely used in Graphical User Interface (GUI) development. This pattern is not only common in web development, but is also ...

    [免费]Spring MVC学习指南(高清)

    Spring MVC是Spring框架中用于Web应用快速开发的一个模块,其中的MVC是Model-View-Controller的缩写。作为当今业界最主流的Web开发框架,Spring MVC已经成为当前最热门的开发技能,同时也广泛用于桌面开发领域。 ...

    Spring-Template-Bootstrap3:这是简单的和信息性的Login and CRUD WebAPP的模板。 它使用MySQL和Oracle 10g等数据库以及设计模式Model-View-Controller(MVC)在Spring-Hibernate-Maven中进行编码

    它使用像MySQL和Oracle 10g这样的数据库以及设计模式Model-View-Controller(MVC)在Spring-Hibernate-Maven中进行编码。 Spring-Web 4.3.8 Spring安全4.2.2 JDK:1.8 Servlet Api:3.1.0 Hibernate:5.2.10决赛...

    Spring.MVC.A.Tutorial.2nd.Edition.1771970316

    The MVC in Spring MVC stands for Model-View-Controller, a design pattern widely used in Graphical User Interface (GUI) development. This pattern is not only common in web development, but is also ...

    SpringMVC常见知识点.md

    MVC是一种设计模式,遵循 模型(Model),视图(View) 和 控制器(Controller)的架构设计。 MVC的优点很明显: 应用层次分明,职责分明,使得系统的耦合性降低,并有利于系统的维护。 什么是 Spring MVC? Spring MVC是一...

    大优惠 Spring MVC学习指南(第2版)2017.pdf

    Spring MVC是Spring框架中用于Web应用快速开发的一个模块,其中的MVC是Model-View-Controller的缩写。作为当今业界最主流的Web开发框架,Spring MVC已经成为当前最热门的开发技能,同时也广泛用于桌面开发领域。 ...

    Spring MVC Beginner-s Guide.pdf

    Spring MVC is a model-view-controller framework for Java web applications to simplify the writing and testing of Java web applications, which fully integrates with the Spring dependency injection ...

    spring_MVC源码

    弃用了struts,用spring mvc框架做了几个项目,感觉都不错,而且使用了注解方式,可以省掉一大堆配置文件。本文主要介绍使用注解方式配置的spring mvc,之前写的spring3.0 mvc和rest小例子没有介绍到数据层的内容,...

    microservices-spring-books-service:使用Spring Boot框架和Model-View-Controller(MVC)架构的Java微服务实现

    Spring Boot图书微服务 相同的客户端实现可以在找到。 这里使用的库和技术是- Sprint Boot 玛文 用于RestFul请求的RestTemplate Lombok批注可简化代码 用于数据管理的JPA存储库 微服务实现的构建器模式 添加了...

    全面掌握Spring MVC:从基础到高级的实践指南

    Spring MVC基于Model-View-Controller(MVC)架构模式,优化了Web应用程序的设计和开发。在Spring MVC中,DispatcherServlet作为前端控制器,负责请求的接收和响应结果的处理。处理器映射器(HandlerMapping)和...

    Spring MVC学习指南

    Spring MVC是Spring框架中用于Web应用快速开发的一个模块,其中的MVC是Model-View-Controller的缩写。作为当今业界最主流的Web开发框架,Spring MVC已经成为当前最热门的开发技能,同时也广泛用于桌面开发领域。, ...

    基于SpringMvc的云音乐网站

    MVC框架 Spring 4.3.3 web服务器 Tomcat 开发系统 mac OSX Mysql数据库 ## 相关路径: controller: CloudMusic/src/controller model: CloudMusic/src/model view: CloudMusic/WebContent/WEB-INF/view ## ...

    spring-view-manipulation:当MVC魔术变黑时

    Spring View操作漏洞 在本文中,我们解释了Spring Framework中不受限制的视图名称操纵可能有多么危险。在这样做之前,让我们看一下使用Thymeleaf作为模板引擎的最简单的Spring应用程序: 结构: : @Controller ...

    spring mvc 3.2 参考文档

    Spring Web model-view-controller (MVC)框架是围绕 DispatcherServlet 设计的,并分发请求到处理程序(handler),Spring MVC支持可配置的处理程序映射(handler mapping),视图解析(view resolution)、 区域设置...

Global site tag (gtag.js) - Google Analytics