国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Spring Boot - 整合Jsp/FreeMarker

AbnerMing / 705人閱讀

摘要:大家自己了解一下的使用方法,我這里就不進行詳細的講述了。啟動方式兩種方式都可以主函數(shù)啟動或者驗證訪問頁面,驗證是否輸出了當前時間。為了提高大家學(xué)習(xí)效果,錄制了同步的視頻課程,還望大家支持視頻課程

Spring Boot - 初識 Hello World 索引

Spring Boot - 初識 Hello World

Spring Boot - Servlet、過濾器、監(jiān)聽器、攔截器

Spring Boot - 靜態(tài)資源處理、啟動加載、日志處理

Spring Boot - 數(shù)據(jù)庫配置

Spring Boot - 部署Deploy

準備

Jdk8

Ide intelliJ IDEA 或者 eclipse

Maven 3

返回Json格式數(shù)據(jù) 修改pom依賴


    4.0.0

    com.wanye
    com.wanye.springboot
    1.0-SNAPSHOT

    
        org.springframework.boot
        spring-boot-starter-parent
        1.5.1.RELEASE
    

    

        
            org.springframework.boot
            spring-boot-starter-web
        


    

創(chuàng)建啟動類
package com.wanye;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

/**
 * Created by wanye on 2017/5/20.
 */
@SpringBootApplication
public class Start {

    public static void main(String[] args) {
        SpringApplication.run(Start.class, args);
    }
}
創(chuàng)建Controller
package com.wanye.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.HashMap;
import java.util.Map;

/**
 * Created by wanye on 2017/5/20.
 */
@RestController // @Controller + @ResponseBody
public class HelloController {

    @RequestMapping("/hello")
    public Map hello(){
        Map hello = new HashMap();
        hello.put("data", "hello 小紅");
        hello.put("status", "SUCCESS");
        return hello;
    }
}
啟動方式
通過main()方法來啟動
驗證

訪問http://localhost:8080/hello 我們可以看到頁面返回了數(shù)據(jù),并且自動轉(zhuǎn)換成JSON格式,接下來我們講解剛剛用到的注解

整合JSP/FreeMarker

在整合JSP/FreeMarker之前,我們先了解一下spring boot對于controller的支持

模版引擎:spring boot支持FreeMarker 、Groovy 、Thymeleaf (Spring 官?網(wǎng)使?用這個)、Velocity 、JSP

接收參數(shù):@RequestBody、@RequestParam、@ModelAttribute、JSONObject、HttpEntity 等

通過JSP模板引擎渲染
修改pom依賴


    4.0.0

    com.wanye
    com.wanye.springboot
    1.0-SNAPSHOT

    
        org.springframework.boot
        spring-boot-starter-parent
        1.5.1.RELEASE
    

    
        
            org.springframework.boot
            spring-boot-starter-web
        
        
        
            org.apache.tomcat.embed
            tomcat-embed-jasper
            provided
        
        
            javax.servlet
            jstl
        
        
    

添加JSP文件

增加?目錄“src/main/webapp/WEB-INF/jsp/”,將jsp?文件放?入這個?目錄中,示例home.jsp代碼(只用來驗證是否訪問到該文件)



    jsp


hello jsp

在?目錄“resources”中,增加application.properties配置?文件

# 頁面默認前綴目錄
spring.mvc.view.prefix=/WEB-INF/jsp/
# 響應(yīng)頁面默認后綴
spring.mvc.view.suffix=.jsp

創(chuàng)建JSPController

package com.wanye.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

/**
 * Created by wanye on 2017/5/20.
 */
@Controller
public class JSPController {

    @RequestMapping("/jsp/home")
    public String home() {
        return "home";
    }
}
啟動方式
#必須?用sping-boot:run啟動
mvn clean spring-boot:run
驗證

訪問http://localhost:8080/jsp/home 頁面返回”hello jsp”,說明整合JSP成功,該請求能夠訪問到home.jsp這個文件

通過FreeMarker模板引擎渲染
修改pom文件

刪除剛剛jsp的pom配置,并修改spring boot 啟動依賴的jar



    4.0.0

    com.wanye
    com.wanye.springboot
    1.0-SNAPSHOT

    
        org.springframework.boot
        spring-boot-starter-parent
        1.5.1.RELEASE
    

    
        
            org.springframework.boot
            spring-boot-starter-freemarker
        
    

添加.ftl模板文件

在resources下創(chuàng)建templates文件夾,將.ftl文件放?

application.properties文件中無需配置(刪除jsp配置)

home.ftl文件



    


hello freemarker. ${time?string("yyyy-MM-dd hh:mm:ss")}

創(chuàng)建FreemarkerController

package com.wanye.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

import java.util.Date;

/**
 * Created by wanye on 2017/5/20.
 */
@Controller
public class FreemarkerController {

    @RequestMapping("/ftl/home1")
    public String home1(Model model) {
        model.addAttribute("time", new Date(System.currentTimeMillis()));
        return "home";
    }

    @RequestMapping("/ftl/home2")
    public ModelAndView home2() {
        ModelAndView res = new ModelAndView("home");
        res.addObject("time", new Date(System.currentTimeMillis()));
        return res;
    }
}

這里通過兩種方式,向頁面?zhèn)鬟f參數(shù)“time”。大家自己了解一下Model, ModelAndView的使用方法,我這里就不進行詳細的講述了。

啟動方式
兩種方式都可以:主函數(shù)main()啟動或者spring-boot:run
驗證

訪問http://localhost:8080/ftl/home1 頁面,驗證是否輸出了當前時間。關(guān)于FreeMarker語法,大家自己了解一下,不是本文關(guān)注的重點

總結(jié)

本文講述了(json,jsp,freemarker)配置及整合方法,并針對web開發(fā)常用的注解的概念及功能進行了介紹,留下了一個疑問:為什么整合jsp后必須通過spring-boot:run方式啟動?歡迎大家留言討論。

注解含義

@SpringBootApplication 等價于 @Configuration + @ComponentScan + @EnableAutoConfiguration

@Configuration (可以理解為spring的xml配置) +

@ComponentScan (進行組件掃描,如果掃描到有@Component、@Controller、@Service等這些注解的類,并注冊為Bean,可以自動收集所有的Spring組件,包括@Configuration類) +

@EnableAutoConfiguration (開啟自動配置,這個注解告訴Spring Boot根據(jù)添加的jar依賴猜測你想如何配置Spring,建議標記在啟動類上)

@RestController 等價于 @Controller + @ResponseBody 返回json數(shù)據(jù)格式(springboot默認使用jackson組件進行轉(zhuǎn)換)

@RequestMapping 提供路由信息,注冊訪問路徑

最后

若本文對你有幫助,望點贊。為了提高大家學(xué)習(xí)效果,錄制了同步的視頻課程,還望大家支持視頻課程

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/71140.html

相關(guān)文章

  • Spring Boot整合jsp后必須通過spring-boot:run方式啟動?

    摘要:為什么整合后必須通過方式啟動背景在整合這篇文章中,我們用了兩種啟動方式方法啟動測試發(fā)現(xiàn),通過啟動能夠正常渲染頁面,而通過方法啟動無法渲染,本文分析下原因。通過來啟動對應(yīng)的服務(wù)器。 為什么整合jsp后必須通過spring-boot:run方式啟動? 背景 在Spring Boot - 整合Jsp/FreeMarker這篇文章中,我們用了兩種啟動方式 mvn clean spring-b...

    roundstones 評論0 收藏0
  • Spring Boot - Servlet、過濾器、監(jiān)聽器、攔截器

    摘要:過濾器監(jiān)聽器攔截器上一篇,我們講解了配置及整合方法,不清楚的可以點擊了解的兩種實現(xiàn)方式通過手動注入實現(xiàn)一個返回的方法,并將該對象注冊到中。 Spring Boot - Servlet、過濾器、監(jiān)聽器、攔截器 上一篇,我們講解了spring boot(json,jsp,freemarker)配置及整合方法,不清楚的可以點擊了解 Servlet的兩種實現(xiàn)方式 通過@Bean手動注入實現(xiàn)一個...

    anRui 評論0 收藏0
  • 通過項目逐步深入了解Spring MVC(一)

    摘要:是一個基于的框架。控制器將視圖響應(yīng)給用戶通過視圖展示給用戶要的數(shù)據(jù)或處理結(jié)果。有了減少了其它組件之間的耦合度。 相關(guān)閱讀: 本文檔和項目代碼地址:https://github.com/zhisheng17/springmvc 轉(zhuǎn)載請注明出處和保留以上文字! 了解 Spring: Spring 官網(wǎng):http://spring.io/ 一個好的東西一般都會有一個好的文檔解釋說明,如果你...

    whataa 評論0 收藏0
  • SSM框架運行機制

    摘要:框架搭建首先下載相應(yīng)的包,對于包有兩種方式使用創(chuàng)建依賴從而導(dǎo)入所需的包。總結(jié)主要進行頁面的請求接受與響應(yīng)。組件包括前端控制器,處理器映射器,處理器適配器,視圖解析器,處理器,視圖。 我之前的文章介紹了如何搭建SSH框架以及如何利用這一框架來進行web應(yīng)用開發(fā),最近我又接觸了SSM框架即Spring+SpringMVC+Mybatis三大框架的整合,而且目前該框架就SSH框架而言使用的較...

    winterdawn 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<