SpringBoot入门系列~SpringBoot注解使用
@Controller SpringMvc中经常用到,主要是用来处理http请求
4.0重要的一个新的改进是@RestController注解,它继承自@Controller注解。4.0之前的版本,Spring MVC的组件都使用@Controller来标识当前类是一个控制器servlet。
当你实现一个RESTful web services的时候,response将一直通过response body发送。为了简化开发,Spring 4.0提供了一个专门版本的controller
@RestController相当于ajax请求,省略了@responsebody这个注解
1、SpringBoot与前端交互:Freemarker 模板引擎
步骤:需要在pom.xml添加Freemarker依赖
<!-- 添加freemarker 模板引擎的支持 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-freemarker</artifactId> </dependency>
通过alt+/快捷键搜索即可添加依赖
2、创建Controller返回视图页面
package com.sun.spring.boot.controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.servlet.ModelAndView; /** * 学生基本信息控制器 * @ClassName: StudentInfoController * @author sunt * @date 2017年11月7日 * @version V1.0 */ @RestController @RequestMapping(value = "/stu") public class StudentInfoController { /** * Spring注解说明 * @Controller 处理http请求 * 4.0重要的一个新的改进是@RestController注解,它继承自@Controller注解。4.0之前的版本,Spring MVC的组件都使用@Controller来标识当前类是一个控制器servlet。 * 当你实现一个RESTful web services的时候,response将一直通过response body发送。为了简化开发,Spring 4.0提供了一个专门版本的controller */ /** * 模板页面的跳转 * @Title: showStuInfo * @author sunt * @date 2017年11月7日 * @return ModelAndView */ @RequestMapping(value = "/stuInfo") public ModelAndView showStuInfo() { ModelAndView modelAndView = new ModelAndView(); modelAndView.addObject("stuInfo", "展示学生基本信息"); modelAndView.setViewName("stuInfo"); return modelAndView; } }
在模板文件夹下新建一个stuInfo.ftl模板文件
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>学生基本信息</title> </head> <body> <center> <h2>学生基本信息</h2> <span>${stuInfo}</span><br /> </center> </body> </html>
3、请求后台直接响应数据到模板页面
4、测试发送ajax请求
后台代码:
/** * 测试ajax请求,通过@RestController响应数据到前端展示 * @Title: showMsg * @author sunt * @date 2017年11月7日 * @return String */ @RequestMapping("/ajaxShowMsg") public String showMsg() { return "{'resCode' : 1, 'resMsg' : '数据加载成功!'}"; }
前台引入jquery.js,发送ajax请求
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>学生基本信息</title> <script type="text/javascript" src="../jquery-1.7.1.min.js"></script> <script type="text/javascript"> $(function() { $('#js-ajax-test').on('click', function() { $.ajax({ url : './ajaxShowMsg', success : function(resData) { alert('后台响应的数据:' + resData); } }); }); }); </script> </head> <body> <center> <h2>学生基本信息</h2> <span>${stuInfo}</span><br /> <button id="js-ajax-test">测试ajax请求</button> </center> </body> </html>
响应数据:
最新同步更新地址:https://www.sunnyblog.top/
感谢您花时间阅读此篇文章,如果您觉得这篇文章你学到了东西也是为了犒劳下博主的码字不易不妨打赏一下吧,让博主能喝上一杯咖啡,在此谢过了!
如果您觉得阅读本文对您有帮助,请点一下左下角“推荐”按钮,您的“推荐”将是我最大的写作动力!另外您也可以选择【关注我】,可以很方便找到我!
本文版权归作者和博客园共有,来源网址:https://www.cnblogs.com/sunny1009 欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利!