当前位置: 首页 > news >正文

贵阳建网站南昌做网站哪个公司好

贵阳建网站,南昌做网站哪个公司好,微信小商店分销系统,软件仓库springboot_3.2_freemark_基础环境配置 一、前言二、环境三、相关资料四、目标五、默认配置项六、构建springboot 3.2项目6.1 pom.xml 内容#xff1a;6.2 启动类6.3 添加ftlh模板6.4 controller内容6.5 bootstrap.yml配置 七、总结 一、前言 FreeMarker 是一款模板引擎… springboot_3.2_freemark_基础环境配置 一、前言二、环境三、相关资料四、目标五、默认配置项六、构建springboot 3.2项目6.1 pom.xml 内容6.2 启动类6.3 添加ftlh模板6.4 controller内容6.5 bootstrap.yml配置 七、总结 一、前言 FreeMarker 是一款模板引擎即一种基于模板和要改变的数据 并用来生成输出文本(HTML网页电子邮件配置文件源代码等)的通用工具。 它不是面向最终用户的而是一个Java类库是一款程序员可以嵌入他们所开发产品的组件。 模板编写为FreeMarker Template Language (FTL)。它是简单的标签语言。需要在服务器端组织数据之后通过编写FTL模板显示已经准备好的数据。在模板中你可以专注于如何展现数据而在模板之外可以专注于要展示什么数据。 注从freemarker 2.x 开始模板的默认后缀由 ftl 改为 ftlh配置类FreeMarkerProperties.DEFAULT_SUFFIX。 二、环境 java 21springboot 3.2 三、相关资料 freemark中文管网 四、目标 sprinboot 3.2 整合freemarker基础配置加入freemarker模板编写controller将绑定数据输出到模板中运行测试页面 五、默认配置项 jar包spring-boot-autoconfigure-3.2.0.jar 对象org.springframework.boot.autoconfigure.freemarker.FreeMarkerProperties 六、构建springboot 3.2项目 项目是通过idea脚手架创建由于2.x不在维护建项目时通过服务https://start.spring.io只能创建springboot3.x项目如果想要创建低版本可以使用阿里的脚手架start.aliyun.com。springboot3.x只支持java 17 及以上版本。所以建项目前先配置好本地的jdk。 idea脚手架服务更改位置file/New/New Project/Sping Initializr : Server URL start.string.io 点击后面的齿轮标记修改 6.1 pom.xml 内容 ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersionparentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion3.2.0/versionrelativePath/ !-- lookup parent from repository --/parentgroupIdcom.test/groupIdartifactIdtest2312/artifactIdversion0.0.1-SNAPSHOT/versionnametest2312/namedescriptiontest2312/descriptionpropertiesjava.version21/java.version/propertiesdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-freemarker/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependencydependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactIdoptionaltrue/optional/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopetest/scope/dependency/dependenciesbuildpluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactIdconfigurationexcludesexcludegroupIdorg.projectlombok/groupIdartifactIdlombok/artifactId/exclude/excludes/configuration/plugin/plugins/build/project 6.2 启动类 其中在SpringBootApplication注解中屏蔽了DataSourceAutoConfiguration.class的加载目的是避免出现“ Failed to configure a DataSource: ‘url’ attribute is not specified and no embedded datasource could be configured.” 错误提示。 因为我们目的只是验证freemarker不需要数据库相关的依赖所以不需要配置数据源相关配置。而springboot基础依赖中默认加载了MySQL、Oracle、Mybatis等和数据库相关的依赖包结果我们的配置文件中却没有添加数据库相关的配置。 package com.test;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;SpringBootApplication(exclude {DataSourceAutoConfiguration.class }) public class StartApplication {public static void main(String[] args) {SpringApplication.run(StartApplication.class, args);}} 6.3 添加ftlh模板 freemarker2.x开始默认的后缀由ftl改为ftlh了使用ftl在freemarker3.x中是找不到的。 模板中对spring、list、map等常用的类型做了绑定和遍历示例。加了个test目录是需要与后面的controller的地址一致。 模板位置resources\templates\test\index.ftlh html headtitleWelcome!/title /head /bodybrh1Welcome ${user} !/h1brb展示list中的数据:/bpul#list lst as itemli${item}/li/#list/ulul/ul/p pbmap遍历key值遍历/bul#assign keysmap?keys/#list keys as keylikey${key}; value${map[${key}]};/li/#list/ulbmap遍历直接遍历/bul#list map?keys as keylikey${key}; value${map[${key}]};/li/#list/ulbmap遍历直接遍历值/bul#list map?values as valuelivalue${value};/li/#list/ul /p /body /html6.4 controller内容 controller中有两个方法分别是返回text内容 和 绑定ftlh模板内容。 package com.test.controller;import lombok.extern.log4j.Log4j; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.servlet.View;import java.util.Arrays; import java.util.HashMap;Controller RequestMapping(/test) public class TestController {private Logger logger LoggerFactory.getLogger(this.getClass());GetMapping(/hello)ResponseBodypublic String hello(){logger.info(hello word~~~);return hello word!;}GetMapping(/index.html)public String index(Model model){model.addAttribute(user,joy);var lst Arrays.asList(11,22,33);var lst4empty new HashMap();var map new HashMapString,Object(){{put(k1,11);}{put(k2,22);}{put(k3,33);}};model.addAttribute(lst,lst);model.addAttribute(lst4empty,lst4empty);model.addAttribute(map,map);logger.info(test index ~~~);return /test/index;}} 6.5 bootstrap.yml配置 使用这个配置可以方便做环境切换启动项目时传入dev这个forfile参数可以读到dev环境配置。 spring:profiles.active: ${profile:dev}application:name: test2312http:multipart:max-file-size: 2MBmax-request-size: 2MB --- spring.profiles: dev spring:freemarker:templateLoaderPath: classpath:/templates/preferFileSystemAccess: true #支持热加载默认为true(生产时false七、总结 以上就是一个比较基础的整合过程需要注意的是通过idea构建时依赖尽量选择少的依赖否则容易出现各种错误。
http://www.pierceye.com/news/250488/

相关文章:

  • 山西山西省建设厅网站首页哪个网站做分享赚佣金
  • 曲靖网站制作一条龙赣州章贡区邮政编码是多少
  • 海南省网站设计公司网址百度小说风云榜排名
  • 刷网站关键词排名原理寮步建设网站
  • 银川网站建设一条龙服务服装行业网站模板
  • 重庆建站程序建筑网站起名
  • 便宜网站制作wordpress函数手册
  • 适合在家做的网站工作做音乐网站要求
  • 在哪个网站做视频赚钱的建设彩票网站需要多少投资
  • 大连网站建设意动科技推荐做那个的电影网站
  • 博达 网站群建设wordpress打开乱码
  • 电商网站建设代理商定制网站开发介绍图
  • 网站系统问题解决措施上海网站建设系
  • c 做网站简单吗ui设计需要学什么软件
  • 网站建设app开发公司国内免备案空间
  • nas 支持做网站dedecms 做影网站
  • 网上商城网站模板广州建设技术职业学院
  • 养生网站模板下载山东网站建设哪家专业
  • 最新电子产品网站模板网站建设公司 腾佳
  • 跟公司产品做网站用什么程序做网站最好优化
  • 在线代理网页浏览网站山东省城乡住房建设厅网站
  • 网站建设需准备什么彩页模板图片
  • 怎么用网站源码建站网站换空间步骤
  • 酒店网站开发回扣商丘企业网站建设服务
  • 网站建设策划解决方案河北自助建站系统平台
  • 有没有做高仿手表的网站设计师的职责
  • struts2 做的网站seo公司怎样找客户
  • 帮别人做网站赚钱吗中山快速建站合作
  • 保靖网站建设做网站要运用到代码吗
  • 我用织梦5.7做个网站应该把淘宝客店铺链接放到哪frontpage可以制作网页吗