美文网首页
02.Beetl模板的基础用法 【变量、循环、条件】---《Be

02.Beetl模板的基础用法 【变量、循环、条件】---《Be

作者: 红茶有点ICE | 来源:发表于2018-11-23 09:58 被阅读0次

    本期视频做了一个博客的首页列表;

    内容简介:springboot 集成 beetlsql;使用for循环,使用if控制语句,使用虚拟属性,定义变量等等

    一起学beetl目录:https://my.oschina.net/u/1590490?tab=newest&catalogId=6214598

    作者:GK


    集成BeetlSql,用来查询数据库


    引入依赖

            <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中增加数据库配置

    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结尾


    配置模板文件为html 结尾,在application.properties中增加配置

    beetl.suffix=html
    

    变量


    临时变量:使用var 定义;类似js语法;
    全局变量:整个模板都能访问的变量;通过 template.bind("key",object)去定义
    共享变量:所有的模板都能访问的变量;通过

    GroupTemplate gt = new GroupTemplate(resourceLoader, cfg);
    Map<String,Object> shared = new HashMap<String,Object>();
    shared.put("name", "beetl");
    gt.setSharedVars(shared);
    

    去定义。
    模板变量:相当于用一个变量表示一段模板或者代码;

    <%
    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

    相关文章

      网友评论

          本文标题:02.Beetl模板的基础用法 【变量、循环、条件】---《Be

          本文链接:https://www.haomeiwen.com/subject/ulidqqtx.html