SpringBoot显示HTML

1、显示静态的html

在resources目录先新创建一个templates目录,html文件放在这个目录下。然后再application.properties文件中加入两条配置:

spring.freemarker.suffix=.html
spring.freemarker.template-loader-path=classpath:/templates/

然后配置Controller:

@Controller

@RequestMapping("/static/")
public class ProtocolController extends BaseController {
    @RequestMapping("showExplain")
    public String re(){
        return explain;
    }
}

返回的” explain”是HTML的文件名。前台访问这个bean的路径就能显示这个HTML。

2、动态的显示html的内容

第一部不变,不同的就是把要显示的内容传递给前台。

@RequestMapping("/{id}")
public String invitingFriends(@PathVariable("id") String id, ModelMapmap, HttpServletRequest request){
    map.addAttribute("id", id);
    map.addAttribute("base", request.getContextPath());
    return "invitingFriends";
}

注:importorg.springframework.ui.ModelMap;

前台html中获取后台传过来的内容的方法:

注:${传过来的key}就能获取后台穿过来的值

3、html中引入Jquery的方法:

在resources目录先新创建一个static目录,将jquery放入static下。我放的是static/ js/jquery/1.11.1/jquery.js。

如果想放在别的地方,请在application.properties文件中配置:

spring.mvc.static-path-pattern=/**
spring.resources.static-locations=classpath:/你要放的目录/

注,目录要在resources目录下(是不是必须我不知道,我没做测试)。引入jquery的方法是:

Base是后台穿过来的:

@RequestMapping("/{id}")
public String invitingFriends(@PathVariable("id") String id, ModelMapmap, HttpServletRequest request){
    map.addAttribute("id", id);
    map.addAttribute("base", request.getContextPath());
    return "invitingFriends";
}

 4、根据传过来的bean名显示HTML

  例如我想访问explain.html,那么我访问http://localhost:8080/driver/static/explain就能访问到。如果我想访问protocol.html,那么http://localhost:8080/driver/static/protocol就能访问到。

具体操作:

@RequestMapping("/static/")
@Controller
public class ProtocolController extends BaseController {
    @RequestMapping("{page}")
    public String re(@PathVariable("page")String page){
        return page;
    }
}

只要这么写就可以。



你可能感兴趣的:(JavaWeb,SpringBoot)