项目中前端ftl模板了解
在项目中如前端页面list.ftl,代码部分如下:
<!DOCTYPE html>
<html>
<#import "/spring.ftl" as spring>
<head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><!-- Tell the browser to be responsive to screen width --><meta name="viewport" content="width=device-width, initial-scale=1"><!-- Font Awesome --><link rel="stylesheet" href="/static/plugins/fontawesome-free/css/all.min.css"><!-- icheck bootstrap --><link rel="stylesheet" href="/static/plugins/icheck-bootstrap/icheck-bootstrap.min.css"></head>
<body>
这里的 <#import “/spring.ftl” as spring> 怎么理解呢?
前端ftl模板中一定要引入spring.ftl
再说这个文件在哪里可以找到呢?
位置:项目下,External Libraries -> 找到Maven: org.springframework:spring-webmvc:5.1.7.RELEASE, -> spring-webmvc:5.1.7.RELEASE.jar ->org.springframework.web.servlet -> view -> freemarker ->spring.ftl
打开spring.ftl文件,可以看到定义很多宏指令
#这个宏名称为message,参数只有code,是我们国际化中最常用的,它实际调用了RequestContext的getMessage(String code)方法<#macro message code>${springMacroRequestContext.getMessage(code)}</#macro>#这个宏名称为messageArgs ,参数有两个code和args,国际化字符串中有占位符时可以用到,它实际调用了RequestContext的getMessage(String code, @Nullable Object[] args)方法<#macro messageArgs code, args>${springMacroRequestContext.getMessage(code, args)}</#macro>#这个与第二个类似,只是多了一个text参数,text传递的是默认值,调用了getMessage(String code, @Nullable Object[] args, String defaultMessage)<#macro messageArgsText code, args, text>${springMacroRequestContext.getMessage(code, args, text)}</#macro>
用法:
- 首先定义2个国际化配置文件
message_zh_CN.properties:username=用户名 title=欢迎来到{0},{1}!
messages_en_US.properties:
username=UserName title=welcome to {0},{1}!
- 编辑前端ftl模板
<html> <!--一定要导入spring.ftl--> <#import "spring.ftl" as spring><body> <!--或者<@spring.message code="username" />--> <@spring.message "username" /><!--arg是一个在freemarker中定义的数组,包含了占位符{0},{1}对应的参数 --> <#assign arg = ["我的首页","张三"]> <@spring.messageArgs "title" arg /></body> </html>
注意:
<@spring.messageArgs> 第二个参数是一个freemarker数组,需要先用<#assign>指令定义好
freemarker使用自定义命令<@spring.*>实现实现国际化,通过@符号可以看出是自定义的指令。
如代码中:
<@spring.message code=“enms.add”/>
<@spring.message code=“enms.batchDelete”/>
项目中前端ftl模板了解相关推荐
- Java项目中利用Freemarker模板引擎导出--生成Word文档
应邀写的一篇文章:Java项目中利用Freemarker模板引擎导出--生成Word文档 资源下载:https://download.csdn.net/download/weixin_41367523 ...
- Struts项目中前端页面向后台页面传参中文出现乱码(Get请求)
问题描述:Struts项目中前端页面向后台页面传递中文参数值,中文值传递到后台后出现乱码并且以???形式出现 解决方法: 1.前端页面js文件中使用encodeURI()方法将所传递的中文值加密起来( ...
- Web项目中前端页面引用外部Js和Css的路径问题
公众号:南宫一梦 Web项目中前端页面引用外部Js和Css的路径问题 一般我们在做Web项目时,通常会将多个页面引入的公共js和css文件抽取出来,单独写成一个公共文件,以期方便各个页面单独引入,达到 ...
- IDEA下,如何在java项目中新增jsp模板文件
IDEA下,如何在java项目中新增jsp模板文件 大家会不会有这样的烦恼,就是当想要创建一个jsp模板文件的时候,右键new的时候找不到JSP选项. 这是因为在创建项目的时候没有选中Web Appl ...
- Python网站导航项目-4.前端渲染模板
每每用到别人的导航网站会充斥的各种的广告,以及很多无用的内容,用起来真的很烦人.把内容网址收藏到浏览器中又很不方便,因此基于git的前端代码结合Django Web开发自制一套简易的导航网站项目. 项 ...
- 下载项目中的excel模板文件.xlsx后,无法打开的问题
题外话:通常在导入Excel文件时,会定义一套模板文件,让用户按此模板文件规定的内容进行填写,可以高效导入数据的同时,也利用Excel本身的功能,制定一些规则提示.有效性校验等,减少在代码中校验的繁琐 ...
- 《Vue》聊一聊实际项目中前端的几种皮肤实现和优缺点
前言 在现代大前端领域中,换肤功能已经逐渐成为几乎所有应用的标配,尤其是暗夜模式被推广之后,皮肤功能就正式走到了大众的视野,同样,在web领域尤其是后台管理系统中皮肤功能也由此几乎成为了标配,恰好最近 ...
- SpringBoot 项目中使用velocity模板(转载)
(不要使用这种模板了,spring boot最新版已经不支持了.使用FreeMarker吧:http://blog.csdn.net/clementad/article/details/5194262 ...
- django项目如何连接前端_Django项目中前端序列化参数获取
我的网站: Python爬虫人工智能学习教程www.python88.cn 最近在写一个django的web项目,后端代码基本都已经写好了,主要是前端,以前学过一段前端,只是对一些基本的方法知道,但 ...
最新文章
- Java基础班学习笔记(15)GUI图形界面编程
- c# 连续抓取页面内容
- “leave the world behind”十一快乐出行
- 慢动作输出Linux命令结果并用彩色显示
- w2k telnet port change
- c语言while跳不出来,这个while循环终止了却跳不出来为什么
- 关于Consul的几个问题
- 剑指offer之把二叉树打印成多行
- 机器学习——基于OpenCV和Python的智能图像处理(一)
- 【网络文件共享】04、rsync基础
- 【单目标优化求解】基于matlab被囊群算法(TSA)求解最优目标问题【含Matlab源码 1567期】
- msfvenom 生成php木马,利用msfvenom生成木马程序
- 【应用统计学】随机变量的概率分布,数学期望和方差及协方差
- 不知道华为手机识别图片文字怎么弄?2个识别方法收好了
- 汽车租赁APP应用开发
- 嵌入式应用层开发应该学习什么?
- 给表空间增加新的数据文件
- WMIC命令的利用技巧
- 字符串查找函数 php,php字符串查找函数(strrpos与strchr)
- cuda2D FDTD——share
热门文章
- python给excel排序_Python实现EXCEL表格的排序功能
- 通过社交媒体针对安全研究人员的社会工程学攻击活动
- 计算机组装与维修活动展示,《计算机组装维修》之组装计算机教学设计及案例...
- Ex20b示例程序:DLL测试客户程序
- burpsuite解决中文乱码的问题
- js公历日期转为农历日期
- atu打开服务器端文件失败,ATU操作流程.docx
- RS232 RTS和CTS是什么意思
- 计算机在线是什么,TIM电脑在线是什么意思?你清楚吗?
- zigbee的路由器能分配网络地址吗_光猫、路由器、交换机的区别与联系