SpringBoot——02WEB

本文详细介绍了SpringBoot中WEB模块的使用,包括如何通过@Controller和@ResponseBody返回JSON数据,以及使用Freemarker进行页面跳转的方法。同时,文章还提供了具体的代码示例,展示了不同类型的JSON数据返回方式以及页面配置的细节。

SpringBoot之WEB(跳转到一个页面或者获取一个Json数据)

6f580478da056fe146d1692131a2c411901.jpg

模块结构:

c07163d2d950c0ccf16f0fca16a0cf4e9ed.jpg

        1.返回json两种方式
@Controller+@ResponseBody

@Controller
@RequestMapping("/json")
public class JsonController {
    @RequestMapping("/str")
    @ResponseBody
    public String json1(){
        return "json001";
    }
    @RequestMapping("/obj")
    @ResponseBody
    public Person json2(){
        return new Person(1L,"json2",new Date());
    }
    @RequestMapping("/list")
    @ResponseBody
    public List<Person> json3(){
        return Arrays.asList(new Person(1L,"json2",new Date()),new Person(2L,"json2",new Date()),new Person(3L,"json2",new Date()));
    }
}

@RestController=@Controller+@ResponseBody 

@RestController
@RequestMapping("/json2")
public class JsonController2 {
    @RequestMapping("/str")
    public String json1(){
        return "json001";
    }
    @RequestMapping("/obj")
    public Person json2(){
        return new Person(1L,"json2",new Date());
    }
    @RequestMapping("/list")
    public List<Person> json3(){
        return Arrays.asList(new Person(1L,"json2",new Date()),new Person(2L,"json2",new Date()),new Person(3L,"json2",new Date()));
    }
}

2.页面跳转

官方推荐使用模板引擎,不推荐jsp。这里我用的FreeeMarker

导包

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-freemarker</artifactId>
        </dependency>

配置:application.properties

# FreeeMarker 模板引擎配置
spring.freemarker.allow-request-override=false
spring.freemarker.cache=false
spring.freemarker.check-template-location=true
spring.freemarker.charset=UTF-8
spring.freemarker.content-type=text/html
spring.freemarker.expose-request-attributes=false
spring.freemarker.expose-session-attributes=false
spring.freemarker.expose-spring-macro-helpers=false
#spring.freemarker.prefix=
#spring.freemarker.request-context-attribute=
#spring.freemarker.settings.*=
#spring.freemarker.suffix=.ftl
#spring.freemarker.template-loader-path=classpath:/templates/ #comma-separated list
#spring.freemarker.view-names= # whitelist of view names that can be resolved

Controller

@Controller
public class IndexController {
    @RequestMapping("/index")
    public String json1(Model model){
        model.addAttribute("msg","springboot");
        return "index";
    }
    @RequestMapping("/index2")
    @ResponseBody
    public String json2(Model model){
        model.addAttribute("msg","springboot");
        return "index";
    }
}

FreeeMarker模板

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org"
             xmlns:sec="http://www.thymeleaf.org/thymeleaf-extras-springsecurity3">
<head>
    <title>Hello World!</title>
</head>
<body>
<h1><span style="color: red">${msg}</span> </h1>
</body>
</html>

springboot----web结束

转载于:https://my.oschina.net/u/3975109/blog/2996953

【路径规划】(螺旋)基于A星全覆盖路径规划研究(Matlab代码实现)内容概要:本文围绕“基于A星算法的全覆盖路径规划”展开研究,重点介绍了一种结合螺旋搜索策略的A星算法在栅格地图中的路径规划实现方法,并提供了完整的Matlab代码实现。该方法旨在解决移动机器人或无人机在未知或部分已知环境中实现高效、无遗漏的区域全覆盖路径规划问题。文中详细阐述了A星算法的基本原理、启发式函数设计、开放集与关闭集管理机制,并融合螺旋遍历策略以提升初始探索效率,确保覆盖完整性。同时,文档提及该研究属于一系列路径规划技术的一部分,涵盖多种智能优化算法与其他路径规划方法的融合应用。; 适合人群:具备一定Matlab编程基础,从事机器人、自动化、智能控制及相关领域研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①应用于服务机器人、农业无人机、扫地机器人等需要完成区域全覆盖任务的设备路径设计;②用于学习和理解A星算法在实际路径规划中的扩展应用,特别是如何结合特定搜索策略(如螺旋)提升算法性能;③作为科研复现与算法对比实验的基础代码参考。; 阅读建议:建议结合Matlab代码逐段理解算法实现细节,重点关注A星算法与螺旋策略的切换逻辑与条件判断,并可通过修改地图环境、障碍物分布等方式进行仿真实验,进一步掌握算法适应性与优化方向。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值