SpringMVC——建立连接

建立连接

将用户(浏览器)和java程序连接起来,也就是访问一个地址能够调用到我们的Spring程序。在 Spring MVC 中使用 @RequestMapping来实现URL 路由映射,也就是浏览器连接程序的作用。


1.@RequestMapping注解介绍

  • @RequestMapping :它是用来注册接口的路由映射的注解。当用户访问一个URL时,将用户的请求对应到程序中某个类的某个方法 的过程就叫路由映射。
  • @RestController:与@RequestMapping 一起使用。 ⼀个项目中, 会有很多类, 每个类可能有很多的方法, Spring程序怎么知道要执行哪个方法呢?Spring会对所有的类进行扫描, 如果类加了注解@RestController, Spring才会去看这个类里面的方法有没有加 @RequestMapping 这个注解。如果不写@RestController会出下如下报错:

2.@RequestMapping注解使用

访问方法:类路径 + 方法路径

java 复制代码
@RequestMapping("/user")
@RestController
public class UserController {
    @RequestMapping("/sayHi")
    public String sayHi(){
        return "hello,Spring MVC";
    }
}
java 复制代码
@RequestMapping("/user/m1")
@RestController
public class UserController {
    @RequestMapping("/say/hi")
    public String sayHi(){
        return "hello,Spring MVC";
    }
}
  • 注1:@RequestMapping 的URL 路径最前面加不加 / (斜杠)都可以, Spring程序启动时, 会进行判断, 如果前面没有加 / , Spring会拼接上⼀个 / (通常情况下, 我们加上 /)
java 复制代码
@RequestMapping("user")
@RestController
public class UserController {
    @RequestMapping("sayHi")
    public String sayHi(){
        return "hello,Spring MVC";
    }
}

3. @RequestMapping 既支持Get请求, 又支持Post请求

可显示的指定@RequestMapping 来接收POST请求

java 复制代码
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

@RestController
public class UserController {
    @RequestMapping(value = "/getRequest",method= RequestMethod.POST)
    public String sayHi(){
        return "get request...";
    }
}

可显示的指定@RequestMapping 来接收GET请求

java 复制代码
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

@RestController
public class UserController {
    @RequestMapping(value = "/getRequest",method= RequestMethod.GET)
    public String sayHi(){
        return "get request...";
    }
}

4.GetMapping

和@RequestMapping相同用法,但专门支持Get请求

5.PostMapping

和@RequestMapping相同用法,但专门支持Post请求

注意:客户端(浏览器)传过来的数据会自动进行类型转换(但不一定成功)

相关推荐
朝新_1 天前
【EE初阶 - 网络原理】网络通信
java·开发语言·网络·php·javaee
Brookty7 天前
【Java学习】定时器Timer(源码详解)
java·开发语言·学习·多线程·javaee
脑子慢且灵1 个月前
【JavaWeb】一个简单的Web浏览服务程序
java·前端·后端·servlet·tomcat·web·javaee
天若有情6731 个月前
《JAVA EE企业级应用开发》第一课笔记
java·笔记·后端·java-ee·javaee
coderlwz3 个月前
高级 JAVA 工程师卷 1
javaee
朝新_4 个月前
【多线程初阶】阻塞队列 & 生产者消费者模型
java·开发语言·javaee
朝新_4 个月前
【多线程初阶】内存可见性问题 & volatile
java·javaee
sugar__salt4 个月前
多线程(5)——单例模式,阻塞队列
android·java·单例模式·intellij-idea·javaee
弥鸿4 个月前
MinIO的安装和使用
java·spring boot·java-ee·springcloud·javaee