本期视频作了一个博客的首页列表;html
内容简介:springboot 集成 beetlsql;使用for循环,使用if控制语句,使用虚拟属性,定义变量等等java
一块儿学beetl目录:https://my.oschina.net/u/1590490?tab=newest&catalogId=6214598mysql
做者:GKgit
引入依赖spring
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <dependency> <groupId>com.zaxxer</groupId> <artifactId>HikariCP</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>6.0.5</version> </dependency>
application.properties中增长数据库配置sql
spring.datasource.url=jdbc:mysql://mysql:3306/blog?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8&useSSL=false&useInformationSchema=true spring.datasource.username=root spring.datasource.password=8975789757 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
增长数据源配置类数据库
package com.ibeetl.blog.config; import com.zaxxer.hikari.HikariDataSource; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.core.env.Environment; import javax.sql.DataSource; /** * @author GavinKing * @ClassName: DBConfig * @Description: * @date 2018/11/18 */ @Configuration public class DBConfig { @Bean(name = "datasource") public DataSource datasource(Environment env) { HikariDataSource ds = new HikariDataSource(); ds.setJdbcUrl(env.getProperty("spring.datasource.url")); ds.setUsername(env.getProperty("spring.datasource.username")); ds.setPassword(env.getProperty("spring.datasource.password")); ds.setDriverClassName(env.getProperty("spring.datasource.driver-class-name")); return ds; } }
配置模板文件为html 结尾,在application.properties中增长配置springboot
beetl.suffix=html
临时变量:使用var 定义;相似js语法; 全局变量:整个模板都能访问的变量;经过 template.bind("key",object)去定义 共享变量:全部的模板都能访问的变量;经过app
GroupTemplate gt = new GroupTemplate(resourceLoader, cfg); Map<String,Object> shared = new HashMap<String,Object>(); shared.put("name", "beetl"); gt.setSharedVars(shared);
去定义。 模板变量:至关于用一个变量表示一段模板或者代码;ide
<% var content = { var c = "1234"; print(c); %> 模板其余内容: <% }; %>
for循环,支持 for-in和for(exp,exp,exp)
for(blog in page.list){ .... } for(var i=0;i<page.list.~size){ page.list[i].... }
其余循环语句
var i = 0; while(i<5){ print(i); i++; } //--------elsefor用法,若是for没有进行循环时执行---------- var list = []; for(item in list){ }elsefor{ print("未有记录"); }
条件语句
var a =true; var b = 1; if(a&&b==1){ }else if(a){ }else{ } //---------switch------- var b = 1; switch(b){ case 0: print("it's 0"); break; case 1: print("it's 1"); break; default: print("error"); } //---------select,更增强大的switch------- var b = 1; select(b){ case 0,1: print("it's small int"); case 2,3: print("it's big int"); default: print("error"); } //----------- var b = 1; select{ case b<1,b>10: print("it's out of range"); break; case b==1: print("it's 1"); break; default: print("error"); }
${date,"yyyy-MM-dd"}
这样就能格式化时间了,嗯,超简单
项目git地址:https://gitee.com/gavink/beetl-blog
视频地址:下载下来会更清晰,说话比较慢,建议 1.2x倍速播放
百度网盘下载: https://pan.baidu.com/s/1LyxAxlKpVXgVjwSXIbzBuA 提取码: 68im
bilibili (能够调节清晰度): https://www.bilibili.com/video/av36278644/?p=2
博客目录:https://my.oschina.net/u/1590490?tab=newest&catalogId=6214598