博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
vert.x学习(六),动态模板与静态文件的结合
阅读量:7079 次
发布时间:2019-06-28

本文共 1882 字,大约阅读时间需要 6 分钟。

这篇学习在动态模板里面引入css,把动态模板与静态文件结合起来使用。

编写DynamicReference.java

package com.javafm.vertx.helloworld;import io.vertx.core.Vertx;import io.vertx.core.http.HttpServer;import io.vertx.ext.web.Router;import io.vertx.ext.web.handler.StaticHandler;import io.vertx.ext.web.templ.ThymeleafTemplateEngine;import org.thymeleaf.templateresolver.ClassLoaderTemplateResolver;/** * Created by lemontea <36634584@qq.com> on 16-12-20. */public class DynamicReference {    public static void main(String[] args) {        Vertx vertx = Vertx.vertx();        ThymeleafTemplateEngine engine = ThymeleafTemplateEngine.create();        ClassLoaderTemplateResolver resolver = new ClassLoaderTemplateResolver();        resolver.setPrefix("templates");        resolver.setSuffix(".html");        resolver.setTemplateMode("HTML5");        engine.getThymeleafTemplateEngine().setTemplateResolver(resolver);        Router router = Router.router(vertx);        // 配置动态文件访问路径        router.route("/hello").handler(routingContext -> {            routingContext.put("msg", "DynamicReference.");            engine.render(routingContext, "/hello", res -> {                if (res.succeeded()) {                    routingContext.response().putHeader("Content-Type", "text/html").end(res.result());                } else {                    routingContext.fail(res.cause());                }            });        });        // 配置静态文件        router.route("/*").handler(StaticHandler.create());        HttpServer httpServer = vertx.createHttpServer();        httpServer.requestHandler(router::accept).listen(8080);    }}

在这里通过/*来匹配所有的静态文件,而动态模板,则用单个的route来配置,这里是/hello

编写动态模板文件resources/templates/hello.html

    

在这里引入了一个style.css文件,给h1标签设置了颜色样式。这个css文件与上篇学习中的css文件是同一个。

运行http服务,在浏览器查看效果

我们可以看到,访问动态页面的时候,为msg设置了值,并且引用了静态css文件。

 

原创文章,转载请注明出处。

转载于:https://www.cnblogs.com/tangjizhong/p/6203787.html

你可能感兴趣的文章
xtrabackup之Innobackupex增量备份及恢复
查看>>
jquery之营销系统(会员促销)
查看>>
总结六条对我们学习Linux系统有用的忠告
查看>>
CF687A. NP-Hard Problem[二分图判定]
查看>>
esriFeatureType与esriGeometryType的区别与联系
查看>>
windows添加linux 启动引导项
查看>>
asp.net Form认证超时后,在iframe中跳转问题
查看>>
java LinkedBlockingQueue和ConcurrentLinkedQueue的区别
查看>>
策略模式
查看>>
Shiro 设置session超时时间
查看>>
CANopen笔记2
查看>>
linux基础-第十三单元 硬盘分区、格式化及文件系统的管理二
查看>>
Android Activity 常用技巧
查看>>
Atitit attilax总结的对于attilax重要的jsr规范,以及需要增加的jsr规范
查看>>
.Net开源SqlServer ORM框架SqlSugar整理
查看>>
JQuery在循环中绑定事件的问题详解
查看>>
SOCKS 5协议详解(转)
查看>>
用Inno Setup来解决.NetFramework安装问题 (转载)
查看>>
使用axis调用WebService服务端
查看>>
Tomcat抛出异常:ClientAbortException: java.net.SocketException: Connection
查看>>