有天上飞的概念,就要有落地的实现

  • 概念+代码实现是本文的特点,教程将涵盖完整的图文教程,代码案例
  • 文章结尾配套自测面试题,学完技术自我测试更扎实
  • 概念十遍不如代码一遍,朋友,希望你把文中所有的代码案例都敲一遍

大哥大姐新年好,点赞转发不要少

SpringBoot 图文系列教程技术大纲

鹿老师的Java笔记

SpringBoot 图文教程系列文章目录

  1. SpringBoot图文教程1「概念+案例 思维导图」「基础篇上」
  2. SpringBoot图文教程2—日志的使用「logback」「log4j」

前言

通过前面两篇,小伙伴们已经成功的实现了增删改查,但是,没有页面效果的项目,就像网恋没有奔现的小姐姐一样,安能辨她是雌雄。今天用SpringBoot整合Jsp页面,看到项目的亚子。

这个时候,有些同学要说了:为什么是Jsp,这么老的技术,效率也不高,用它干啥?不要用它 不要 不要 ….

哼哼,渣男,有了新欢忘了初恋,Jsp作为每个Java程序员触摸到的第一个视图技术,忘得了刚接触Jsp时候的小鹿乱撞吗?想想那天夕阳下的奔跑,是我们无法忘记的青春啊。

选择Jsp作为第一个集成的视图技术,原因有三:

  1. 根据本人2000+学生的就业经验来看,大部分的企业还在广泛的使用Jsp。(不是每个人都是BAT,大部分的人在一些中小型的软件公司,外包公司,Jsp挺常用)
  2. Jsp是Java程序员学过的第一个视图技术,集成难度很低
  3. 想用

前后端分离 以及 Thymeleaf FreeMarker 等视图技术会在后续讲解

SpringBoot 集成 Jsp

环境要求

  • 开发工具 IDEA 版本不限
  • maven3.x
  • jdk1.8
  • 本教程采用SpringBoot 2.0.3.RELEASE
    注意:SpringBoot 默认是不支持Jsp的,所以集成Jsp需要做一些配置
1.引入jsp的集成jar包
<dependency>
    <groupId>jstl</groupId>
    <artifactId>jstl</artifactId>
    <version>1.2</version>
</dependency> <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
</dependency> <dependency>
    <groupId>org.apache.tomcat.embed</groupId>
    <artifactId>tomcat-embed-jasper</artifactId>
</dependency>
2.引入jsp运行插件

插件是必须的,并且要通过插件启动项目,不使用插件,Jsp页面不会被编译,发布。简单说就是:不通过插件启动项目,访问Jsp页面会 404

<build>
    <!--引入jsp运行插件-->
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>
3.配置视图解析器

4.创建webapp目录写入Jsp页面

Jsp相关web资源的位置

  1. 在main下面创建webapp放置静态资源
  2. webapp 下面不要有 web.xml

hello.jsp页面内容

<%@page isELIgnored="false" pageEncoding="UTF-8" contentType="text/html; UTF-8" %>
<html>
<head>
    <meta charset="utf-8">
<%--    测试${pageContext.request.contextPath} 获取路径能不能使用  --%>
    <script src="${pageContext.request.contextPath}/js/jquery-1.12.4.js"></script>
</head>
<body>     <h1>那天夕阳下的奔跑,是我们无法忘记的青春!</h1> <script> </script> </body>
</html>
5.通过插件启动项目,即可访问页面

如果右侧没有工具栏,IDEA配置:菜单栏View--->Tool Window Bars

6.访问hello.jsp页面

浏览器访问:http://localhost:8802/hello.jsp

7.测试Jsp热部署
  1. 修改Jap页面代码

  2. 直接刷新浏览器页面 可以看到

总结

以上,就是SpringBoot 集成Jsp的正确姿势了。关于其他视图技术 Thymeleaf FreeMarker 以及 代码热部署 在后续文章中进行说明。

恭喜你完成了本章的学习,为你鼓掌!如果本文对你有帮助,请帮忙点赞,评论,转发,这对作者很重要,谢谢。

让我们再次回顾本文的学习目标

  • 掌握SpringBoot中Jsp的使用

要掌握SpringBoot更多的用法,请持续关注本系列教程。

下面体贴的我给朋友萌还准备了一些 自测面试题和项目案例,希望你能够成热打铁,将知识夯扎实。

上期自测面试题答案

见面试题集锦 https://gitee.com/bingqilinpeishenme/Lu-JavaNodes

自测面试题(答案见下期)

上期自测实现项目小案例答案

见码云仓库 https://gitee.com/bingqilinpeishenme/Lu-JavaNodes

自测实现项目小案例(答案见下期)

本次需求:

练习文中demo

求关注,求点赞,求转发

SpringBoot图文教程3—「‘初恋’情结」集成Jsp的更多相关文章

  1. SpringBoot图文教程8 — SpringBoot集成MBG「代码生成器」

    有天上飞的概念,就要有落地的实现 概念十遍不如代码一遍,朋友,希望你把文中所有的代码案例都敲一遍 先赞后看,养成习惯 SpringBoot 图文教程系列文章目录 SpringBoot图文教程1「概念+ ...

  2. SpringBoot图文教程9—SpringBoot 导入导出 Excel 「Apache Poi」

    有天上飞的概念,就要有落地的实现 概念十遍不如代码一遍,朋友,希望你把文中所有的代码案例都敲一遍 先赞后看,养成习惯 SpringBoot 图文教程系列文章目录 SpringBoot图文教程1「概念+ ...

  3. SpringBoot图文教程10—模板导出|百万数据Excel导出|图片导出「easypoi」

    有天上飞的概念,就要有落地的实现 概念十遍不如代码一遍,朋友,希望你把文中所有的代码案例都敲一遍 先赞后看,养成习惯 SpringBoot 图文教程系列文章目录 SpringBoot图文教程1「概念+ ...

  4. SpringBoot图文教程11—从此不写mapper文件「SpringBoot集成MybatisPlus」

    有天上飞的概念,就要有落地的实现 概念十遍不如代码一遍,朋友,希望你把文中所有的代码案例都敲一遍 先赞后看,养成习惯 SpringBoot 图文教程系列文章目录 SpringBoot图文教程1「概念+ ...

  5. SpringBoot图文教程14—SpringBoot集成EasyExcel「上」

    有天上飞的概念,就要有落地的实现 概念十遍不如代码一遍,朋友,希望你把文中所有的代码案例都敲一遍 先赞后看,养成习惯 SpringBoot 图文教程系列文章目录 SpringBoot图文教程1「概念+ ...

  6. SpringBoot图文教程15—项目异常怎么办?「跳转404错误页面」「全局异常捕获」

    有天上飞的概念,就要有落地的实现 概念十遍不如代码一遍,朋友,希望你把文中所有的代码案例都敲一遍 先赞后看,养成习惯 SpringBoot 图文教程系列文章目录 SpringBoot图文教程1-Spr ...

  7. SpringBoot图文教程17—上手就会 RestTemplate 使用指南「Get Post」「设置请求头」

    有天上飞的概念,就要有落地的实现 概念十遍不如代码一遍,朋友,希望你把文中所有的代码案例都敲一遍 先赞后看,养成习惯 SpringBoot 图文教程系列文章目录 SpringBoot图文教程1-Spr ...

  8. SpringBoot图文教程5—SpringBoot 中使用Aop

    有天上飞的概念,就要有落地的实现 概念+代码实现是本文的特点,教程将涵盖完整的图文教程,代码案例 文章结尾配套自测面试题,学完技术自我测试更扎实 概念十遍不如代码一遍,朋友,希望你把文中所有的代码案例 ...

  9. SpringBoot图文教程7—SpringBoot拦截器的使用姿势这都有

    有天上飞的概念,就要有落地的实现 概念十遍不如代码一遍,朋友,希望你把文中所有的代码案例都敲一遍 先赞后看,养成习惯 SpringBoot 图文教程系列文章目录 SpringBoot图文教程1「概念+ ...

随机推荐

  1. rg.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'TL_C_CONS_ExtendController':

    org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'TL_ ...

  2. Spring的简单介绍

    struts2:web层hibernate:dao层spring:service层 1 spring框架概述 1.1 什么是springSpring是一个开源框架,Spring是于2003 年兴起的一 ...

  3. EntityFramework中使用sql语句

    https://blog.csdn.net/yangyangafan/article/details/77602133 EntityFramework操作数据库谜一般的方便还不用写数据库,但前提是很简 ...

  4. SpringCloud全家桶学习之Feign负载均衡----Feign(四)

    一.Feign概述 (1)Feign是什么? 官网地址:https://projects.spring.io/spring-cloud/spring-cloud.html#spring-cloud-f ...

  5. hamming distance(汉明距离)

    看knn算法时无意间发现这个算法,但是维基上有错误的示例和python代码...因为汉明距离并不是求相同长度字符串(或相同长度的整数)之间的字符(或数位)差异个数. 正确的详见:https://en. ...

  6. 计算机二级C语言选择题错题知识点记录。

    计算机二级C语言选择题错题知识点记录. 1,在数据流图中,用标有名字的箭头表示数据流.在程序流程图中,用标有名字的箭头表示控制流. 2,结构化程序设计的基本原则:自顶向下,逐步求精,模块化,限制使用g ...

  7. NAT穿透的详细讲解及分析

    原文地址:http://bbs.pediy.com/thread-131961.htm 一.什么是NAT?为什么要使用NAT?NAT是将私有地址转换为合法IP地址的技术,通俗的讲就是将内网与内网通信时 ...

  8. Python 使用 prettytable 库打印表格(美化输出)

    pip install prettytable 每次添加一行 from prettytable import PrettyTable # 默认表头:Field 1.Field 2... # 添加表头 ...

  9. 需要写的CSS博客

    重绘与回流 BFC 水平垂直居中 定位 基线各种线 inline-block,img标签空字符

  10. 吴裕雄--天生自然Numpy库学习笔记:NumPy 数据类型

    下表列举了常用 NumPy 基本类型. 名称 描述 bool_ 布尔型数据类型(True 或者 False) int_ 默认的整数类型(类似于 C 语言中的 long,int32 或 int64) i ...