SpringBoot之Controller使用

1.Controller的使用
① @Controller 处理http请求

② @RestController Spring4之后新加的注解,以前返回json
需要@ResponseBody配合@Controller来使用,现在只需要一个@RestController即可
在这里插入图片描述
后面专门推出一起Freemarker或者Velocity教程;

我们用Freemarker来演示下;

首先第一步,添加Freemarker支持,我们有两种方式,

第一种 直接找依赖 然后贴到pom.xml里,这种费时间

我们用第二种,直接工具,打开pom.xml

alt+/ 提示
然后点击Edit Starters
在这里插入图片描述
然后在Available下的搜索框里面写Freemarker,然后搜到之后勾上,然后点击ok即可
在这里插入图片描述
这样就自动添加了依赖,
在这里插入图片描述
然后我们新建一个新的Controller类 HelloWorldFreemakerController
在这里插入图片描述
通过ModelAndView定义一个message,然后设置返回视图名字为“helloWorld”

对应的,我们在templates下新建一个helloWorld.ftl模版文件
在这里插入图片描述
文件内容:
在这里插入图片描述
我们测试下,启动HelloWorldApplication

然后浏览器输入:http://localhost:8888/HelloWorld/freemarker/say

页面显示结果:
在这里插入图片描述

接下来我们再演示下@RestController,ajax方式
我们新建一个HelloWorldAjaxController类
因为再class上加了@RestController,使用返回的是json串
在这里插入图片描述
这里我们用的是jquery,随便找个jquery.js
再新建一个index.html
在这里插入图片描述
一个ajax请求
启动HelloWorldApplication类
页面先请求index.html
浏览器输入:http://localhost:8888/HelloWorld/
在这里插入图片描述
当然这里的json比较简单,所以我直接返回; 实际项目Json格式复杂,要借助于一些json框架,比如Json-lib,gson等等;
当然还有一些比如

@PathVariable 获取url中的数据
在这里插入图片描述
@RequestParam 获取请求参数中的值
举例:
在url中输入:localhost:8080/**/?userName=zhangsan
然后访问某个@RequestMapping,通过@RequestParam来取url后链接的参数键值对

public String queryUserName(@RequestParam(value="userName" ,required =false ) String userName)

这些SpringMvc课程中已经有讲解,所以这里不作讲解

猜你喜欢

转载自blog.csdn.net/qq_40241957/article/details/88874139