SpringBoot之Controller使用

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

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

我们用Freemarker来演示下;

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

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

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

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

对应的,我们在templates下新建一个helloWorld.ftl模版文件
SpringBoot之Controller使用_第5张图片
文件内容:
SpringBoot之Controller使用_第6张图片
我们测试下,启动HelloWorldApplication

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

页面显示结果:
SpringBoot之Controller使用_第7张图片

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

@PathVariable 获取url中的数据
SpringBoot之Controller使用_第11张图片
@RequestParam 获取请求参数中的值
举例:
在url中输入:localhost:8080/**/?userName=zhangsan
然后访问某个@RequestMapping,通过@RequestParam来取url后链接的参数键值对

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

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

你可能感兴趣的:(SpringBoot之Controller使用)