最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot與velocity的結(jié)合的示例代碼

 更新時間:2018年03月26日 09:47:04   作者:數(shù)齊  
本篇文章主要介紹了SpringBoot與velocity的結(jié)合的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

Velocity是一種Java模版引擎技術(shù),MVC架構(gòu)的一種實現(xiàn),但它更多的是關(guān)注在Model和View之間,作為它們的橋梁。服務(wù)端渲染,我們使用最多的就是用他來渲染HTML。下面我們看看他與spring boot的結(jié)合。

老樣子,我們看下pom中定義的依賴

 <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter</artifactId>
    </dependency>

    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-velocity</artifactId>
    </dependency>

spring-boot-starter-velocity 中定義了velocity模板需要的jar。

看下配置類中的配置

package com.shuqi;
import org.springframework.boot.autoconfigure.velocity.VelocityProperties;
import org.springframework.boot.web.servlet.view.velocity.EmbeddedVelocityViewResolver;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 *
 * @author linyang
 * @date 2017/5/9
 */
@Configuration
public class WebConfig {

  @Bean
  public EmbeddedVelocityViewResolver velocityViewResolver(VelocityProperties properties) {
    EmbeddedVelocityViewResolver resolver = new EmbeddedVelocityViewResolver();
    properties.applyToViewResolver(resolver);
    resolver.setRedirectHttp10Compatible(false);
    return resolver;
  }
}

熟悉spring mvc 的同學(xué)都應(yīng)該知道ViewResolver,是告訴spring mvc 怎樣渲染這個視圖,我們這邊使用了VelocityViewResolver就是告訴spring mvc 使用Velocity的語法來渲染頁面。但是僅有這個還不行,我們還有些配置文件的配置

# SpringBoot static resources locations
spring.mvc.static-path-pattern=/**
spring.resources.static-locations=classpath:/web/static/,classpath:/web/libs/,classpath:/web/views/

# VELOCITY TEMPLATES (VelocityAutoConfiguration)
spring.velocity.charset=UTF-8
spring.velocity.properties.input.encoding=UTF-8
spring.velocity.properties.output.encoding=UTF-8
spring.velocity.resourceLoaderPath=classpath:/web/views/
spring.velocity.suffix=.vm

里面配置了velocity模板的后綴是.vm,編碼統(tǒng)一使用UTF-8,視圖的加載位置,靜態(tài)資源的加載位置等。說白了,就是告訴spring mvc,我們的資源文件放到什么位置,然后才能取到,才能渲染。

配置搞定后,我們看下業(yè)務(wù)代碼

package com.shuqi.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import java.util.HashMap;
import java.util.Map;
@Controller
public class HelloController {
  @RequestMapping(value = "/index", method = RequestMethod.GET)
  public ModelAndView index() {
    Map<String, String> map = new HashMap<>();
    map.put("name", "shuqi");
    map.put("age", "26");
    return new ModelAndView("index", map);
  }
}

設(shè)置了name與age的值,設(shè)置了需要渲染文件的位置及名稱。含義就是:用map中的值,渲染index這個文件。我們最后看一眼,index這個文件的內(nèi)容

<html>
  <body>
   <h3>姓名:${name}</h3>
   <h3>年齡:${age}</h3>
  </body>
</html>

一段普通的HTML,只不過有name和age屬性需要渲染。那么執(zhí)行結(jié)果是什么?啟動項目,輸入http://localhost:8080/index,展示頁面


可以看到是一個正常的HTML。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • spring @Cacheable擴展實現(xiàn)緩存自動過期時間及自動刷新功能

    spring @Cacheable擴展實現(xiàn)緩存自動過期時間及自動刷新功能

    用過spring cache的朋友應(yīng)該會知道,Spring Cache默認是不支持在@Cacheable上添加過期時間的,雖然可以通過配置緩存容器時統(tǒng)一指定,本文主要介紹了如何基于spring @Cacheable擴展實現(xiàn)緩存自動過期時間以及緩存即將到期自動刷新,
    2024-02-02
  • JAVA Stack詳細介紹和示例學(xué)習(xí)

    JAVA Stack詳細介紹和示例學(xué)習(xí)

    JAVA Stack是棧。它的特性是:先進后出(FILO, First In Last Out)。
    2013-11-11
  • SpringBoot+Redis哨兵模式的實現(xiàn)

    SpringBoot+Redis哨兵模式的實現(xiàn)

    本文主要介紹了SpringBoot+Redis哨兵模式的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-05-05
  • Integer和int的區(qū)別實例詳解

    Integer和int的區(qū)別實例詳解

    這篇文章主要介紹了Integer和int的區(qū)別實例詳解,文字和代碼實例講解的很清楚,有感興趣的同學(xué)可以學(xué)習(xí)下
    2021-03-03
  • SpringBoot實現(xiàn)熱部署的三種方式

    SpringBoot實現(xiàn)熱部署的三種方式

    本文主要介紹了SpringBoot實現(xiàn)熱部署的三種方式,主要包括配置pom.xml文件,使用插件的執(zhí)行命令mvn spring-boot:run啟動項,使用springloader本地啟動修改jvm參數(shù),使用devtools工具包,感興趣的可以了解一下
    2023-12-12
  • Spring AOP注解案例及基本原理詳解

    Spring AOP注解案例及基本原理詳解

    這篇文章主要介紹了Spring AOP注解案例及基本原理詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-06-06
  • 解決IDEA集成Docker插件后出現(xiàn)日志亂碼的問題

    解決IDEA集成Docker插件后出現(xiàn)日志亂碼的問題

    這篇文章主要介紹了解決IDEA集成Docker插件后出現(xiàn)日志亂碼的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • 使用@PathVariable接收兩個參數(shù)

    使用@PathVariable接收兩個參數(shù)

    這篇文章主要介紹了使用@PathVariable接收兩個參數(shù)的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • Spring整合Mybatis框架方法剖析

    Spring整合Mybatis框架方法剖析

    這篇文章主要為大家介紹了Spring整合Mybatis框架方法剖析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • 詳解Mybatis的二級緩存配置

    詳解Mybatis的二級緩存配置

    這篇文章主要介紹了Mybatis的二級緩存配置的相關(guān)資料,需要的朋友可以參考下
    2017-05-05

最新評論

陕西省| 闻喜县| 南城县| 陇南市| 舞钢市| 波密县| 游戏| 双牌县| 河池市| 嘉黎县| 历史| 泸州市| 四川省| 德州市| 江西省| 全椒县| 苏州市| 兴安盟| 雷波县| 无为县| 沙田区| 象州县| 木兰县| 达孜县| 虎林市| 紫金县| 涿州市| 民县| 陕西省| 偏关县| 九江县| 故城县| 原阳县| 府谷县| 津南区| 沁阳市| 伊川县| 廉江市| 连州市| 思南县| 垣曲县|