【Spring boot学习第九天】freemarker使用小结

1.修改freemarker默认模板位置

在配置文件中添加freemarker的配置地址即可:

spring.freemarker.template-loader-path=classpath:/web

这样就相当于由原来template文件夹,改为了web文件夹,如图:

【Spring boot学习第九天】freemarker使用小结_第1张图片

2.使用webjar方式加载js和css文件

这个类似于maven仓库,他可以把我们web开发需要的的js和css等静态文件打包成jar包的模式,来被我们直接引用,这里我们以引入jQuery为例:

我们首先打开webjar官网:“https://www.webjars.org/”

【Spring boot学习第九天】freemarker使用小结_第2张图片

点击“jQuery”,如图所示:【Spring boot学习第九天】freemarker使用小结_第3张图片

然后我们在pom.xml中添加类似maven的依赖:


	org.webjars
	jquery
	3.0.0

这里的groupId、artifactId和version都在上图中有所体现,

然后我们在HTML中引用webjar,



	
		
		
	
	
	

WEB

草拟大爷:${str}

<#if user??> <#if user.id ==1> id:${user.id}
name:${user.name} <#else> I am ELSE


<#list list as usr> id:${usr.id}
name:${usr.name}

,继续来查看结果:

【Spring boot学习第九天】freemarker使用小结_第4张图片

3.小结

  1. 我们在创建springboot项目时,勾选freemarker依赖
  2. Controller中向model存放数据
    package com.amap.controller;
    
    import java.util.ArrayList;
    import java.util.List;
    
    import org.springframework.stereotype.Controller;
    import org.springframework.ui.Model;
    import org.springframework.web.bind.annotation.RequestMapping;
    
    import com.amap.bean.UserInfo;
    
    @Controller
    @RequestMapping("/student/")
    public class StudentController {
    
    	@RequestMapping("show")
    	public String show(Model model) {
    		//添加单一字符串
    		model.addAttribute("str","jin wan yao jia ban");
    		
    		//添加bean
    		UserInfo user=new UserInfo();
    		user.setId(1);
    		user.setName("wangs");
    		model.addAttribute("user",user);
    		
    		//添加list
    		Listlist =new ArrayList();
    		for(int i=0;i<5;i++) {
    			UserInfo user2=new UserInfo();
    			user2.setId(i);
    			user2.setName("ws"+i);
    			list.add(user2);
    		}
    		model.addAttribute("list", list);
    		return "show/show";
    	}
    }

     

  3. freemarker模板,默认放置在templates/*.ftl,但我们可以在配置文件中改变设置
    #freemarker configuration,freemarker默认后缀.ftl文件,这里我们改成.html
    spring.freemarker.suffix=.html
    
    #更改freemarker的模板的存放位置到web
    spring.freemarker.template-loader-path=classpath:/web

     

  4. freemarker模板上,使用类似于EL表达式获取数据,然后freemarker会自动渲染,需要注意的是,如果将引用freemarker表达式放入外部引用的js中,表达式是无法使用的,因为配置文件中配置的是【.html】,而外部引入的是【.js】。
    
    
    	
    		
    		
    	
    	
    	

    WEB

    草拟大爷:${str}

    <#if user??> <#if user.id ==1> id:${user.id}
    name:${user.name} <#else> I am ELSE


    <#list list as usr> id:${usr.id}
    name:${usr.name}

     

你可能感兴趣的:(Springboot,Spring,boot,后台)