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中获取后台传过来的内容的方法:
<input type="hidden" id="invitationCode"name="invitationCode" value="${id}">
注:${传过来的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的方法是:
<script type="text/javascript"src="${base}/js/jquery/1.11.1/jquery.js"></script>
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;
}
}
只要这么写就可以。