当然,可以通过spring.resources.static-locations配置指定静态文件的位置。但是要特别注意,一旦自己指定了静态资源目录,系统默认的静态资源目录就会失效。所以系统默认的就已经足够使用了,尽量不要自定义。
Thymeleaf 的出现是为了取代 JSP,虽然 JSP 存在了很长时间,并在 Java Web 开发中无处不在,但是它也存在一些缺陷:
因为Spring Boot其实是对Spring生态的封装整合打包,以简化开发中使用Spring框架。所以 Spring Boot在集成模板引擎过程中,其实就是对传统SpringMVC集成对应模板引擎的打包自动化配置。
提起Java不得不说的一个开发场景就是Web开发,也是Java最热门的开发场景之一,说到Web开发绕不开的一个技术就是JSP,因为目前市面上仍有很多的公司在使用JSP,所以本文就来介绍一下Spring Boot 怎么集成JSP开发,以及生产环境的详细部署方法。
Servlet和JSP是Java Web开发中最常用的两种技术,它们都属于JavaEE技术栈的一部分。本文将详细介绍Servlet和JSP的概念、特点、应用场景以及示例代码。
在最早的Java Web应用中,最为广泛使用的就是JSP,但是JSP已经是陈旧的技术了,ken.io觉得JSP主要有三个问题: 1、视图代码不能与Java代码完全分离,如果再JSP页面写Java代码维护成本高 2、无法实现页面继承工程,实现模板页的方式蹩脚 3、由于一些已知问题,Spring Boot官方不建议,比如:Spring Boot+JSP打成jar包会有问题
在Spring中视图相关的两个接口是ViewResolver和View两个接口,ViewResolver用于视图名称和实际视图之间的映射,View接口用于准备和传递数据到实际的视图。
1)spring-boot-starter-parent作用 在pom.xml中引入spring-boot-start-parent,spring官方的解释是stater poms,它可以提供dependency management,也就是说依赖管理,引入以后在申明其它dependency的时候就不需要version了,后面可以看到。
可称之为 Web 1.0 时代,非常适合创业型小项目,不分前后端,经常 3-5 人搞定所有开发。页面由 JSP、PHP 等工程师在服务端生成,浏览器负责展现。基本上是服务端给什么浏览器就展现什么,展现的控制在 Web Server 层。
JSP(Java sever pages):一种用于开发动态web页面(资源)的技术。 jsp页面是在服务器上运行的一个页面,一个jsp页面就是一个类。写jsp就像在写html,jsp允许在页面中编写
前后端分离已成为互联网项目开发的业界标准使用方式,通过 nginx + tomcat 的方式(也可以中间加一个 nodejs)有效的进行解耦,并且前后端分离会为以后的大型分布式架构、弹性计算架构、微服务架构、多端化服务(多种客户端,例如:浏览器,车载终端,安卓,IOS 等等)打下坚实的基础。这个步骤是系统架构从猿进化成人的必经之路。
前后端分离已成为互联网项目开发的业界标准使用方式,通过nginx+tomcat的方式(也可以中间加一个nodejs)有效的进行解耦,并且前后端分离会为以后的大型分布式架构、弹性计算架构、微服务架构、多端化服务(多种客户端,例如:浏览器,车载终端,安卓,IOS等等)打下坚实的基础。这个步骤是系统架构从猿进化成人的必经之路。
概述 SpringBoot开发: 1.创建SpringBoot应用,选中需要的场景模块。 2.SpringBoot已经默认将场景模块配置好,只需要在配置文件中指定少量的配置(数据库地址,用户名,密码)就可以运行起来。 3.只需要编写业务逻辑代码。 需要掌握自动配置原理:这个场景中SpringBoot默认配置好了什么,能不能修改,能修改哪些配置,能不能扩展。 XxxAutoConfiguration:帮我们给容器中自动配置组件 XxxProperties:配置类,封装配置文件中的内容 SpringBoo
【开发总结】:使用一个servlet实现一个网站效果,代码太繁琐了!!生不如死!!
现在很多开发,都采用了前后端完全分离的模式,随着近几年前端工程化工具和MVC框架的完善,使得这种模式的维护成本逐渐降低。但是这种模式目前并不利于SEO(前后端分离的SEO问题会慢慢改善),而且某些场景使用模板引擎会更方便,比如说邮件模板以及数据变化不频繁的后台系统。 Spring,确切来说是Spring MVC除了可以实现RESTful web服务之外,还可以使用它提供动态HTML内容。Spring MVC支持多种模板技术,包括Thymeleaf、FreeMarker和JSP等。
JSP 全名是 Java Server Pages ,它是建立在 Servlet 规范之上的动态网页开发技术。在 JSP 文件
但是:springboot这个项目首先是以jar的方式,不是war,第二,我们用的还是嵌入式的Tomcat,所以他默认是不支持jsp,对此springboot推荐我们使用Thymeleaf模板引擎
为什么会有这一些列的文章呢?因为我发现网上没有成系列的文章或者教程,基本上是 Java 代码审计中某个点来阐述的,对于新人来说可能不是那么友好,加上本人也在学习 Java 审计,想做个学习历程的记录和总结,因此有了本系列的文章。
我们学习技术的时代赶上了最好的时代,跳过了很多前人经常踩的坑,前人在踩坑的过程中总结了很多经验和教训,而新时代的我们只是继承了前人的经验和教训,而忽略了这些采坑的过程,以至于我们面对很多新技术都不知道他是什么?他为什么存在?他为什么可以解决这个问题?更不知道如何掌握其原理!云里雾里一头雾水!
一、JSP概述 1.1、JSP简介 一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码。标签通常以<%开头以%>结束。JSP是一种Java servlet,主要用于实现JavaWeb应用程序的用户界面部分。 网页开发者们通过结合HTML代码、XHTML代码、XML元素以及嵌入JSP操作和命令来编写JSP。JSP通过网页表单获取用户输入数据、访问数据库及其他数据源,然后动态地创建网页。 JSP标签有多种功能,比如访问数据库、记录用户选择信息、访问JavaBeans组件等,还可以
Spring核心技术原理(1)为什么要有Spring? 一、知史可以明鉴 我们学习技术的时代赶上了最好的时代,跳过了很多前人经常踩的坑,前人在踩坑的过程中总结了很多经验和教训,而新时代的我们只是继承了
此问题一经提出,得到众多网友回答;其中对这位网友还在使用jsp开发表示同情和不看好jsp的还是比较多的:
正如其名称所述,Spring MVC框架基于Model - View - Controller(MVC)设计模式,将应用程序的逻辑分为三层 【模式,视图和控制器】。 MVC在Spring中由以下组件实现:
现在来说,前后端分离开始更加流行,但是很多旧的项目,或者自己一个人写东西,我感觉使用模板引擎也是非常不错的选择,还有时候去找一些后台的开源模板,有一些也都用了Thymeleaf, 何况出于学习的态度,学哪种技术都是可以的
前言 随着公有云产品的快速发展,产品线越来越多,功能越来越丰富。但在业务发展的同时,原有的前后端一体的开发模式与架构已经呈现出捉襟见肘的状况。为了能够更好地服务客户,提高产品交付效率,公有云产品组进行了前后端分离工作的探索与实践。在过去的几个月,已经成功实现多个产品的前后端分离交付,一方面提高了产品开发效率,另一方面,也更加明确了前后端开发工程师的职责,使得前后端开发工程师能够更专注于自身领域的技能提升。在本文中,我们主要介绍为什么要做前后端分离以及如何做前后端分离,具体的技术实践我们将在下一篇中介绍。
自定义标签的步骤 自定义标签的步骤大概有三步: 1.继承javax.servlet.jsp.tagext.*下提供的几个标签类,如Tag、TagSupport、BodyTagSupport、Simpl
大家好,我是 bigsai,今天我们来学习 Thymeleaf,如果你对 Thymeleaf 比较陌生也不要紧,它很容易学习与理解,并有着自己鲜明的特色。
大家好,我是bigsai,今天我们来学习Thymeleaf,如果你对Thymeleaf比较陌生也不要紧,它很容易学习与理解,并有着自己鲜明的特色。
说明:由于官方对jsp不友好,在内嵌的servlet容器中运行一个Spring Boot应用时(并打包成一个可执行的存档archive),容器对JSP的支持有一些限制。
使用由多个子视图组成的复合视图。整个模板的每个子视图可以整体动态地包括在内,并且可以独立于内容来管理页面的布局。
JavaServer Pages(JSP)是一种用于在Java Web应用程序中创建动态Web页面的技术。它于1999年问世,并在过去的几十年里在Web开发中扮演了重要角色。然而,随着时间的推移,新的技术不断涌现,JSP技术逐渐走向淘汰。本文将探讨JSP技术从问世到淘汰的历程,并通过代码片段、实例、优缺点以及背后的原因来加深理解。
JSP(JavaServer Pages)是一种用于开发动态网页的Java技术。它允许将Java代码嵌入HTML页面中,以便在服务器端生成动态内容。在本次教程中,我将向您介绍如何开始使用JSP。
Spring的web框架是围绕DispatcherServlet来进行设计的。DispatcherServlet的作用是将请求分发到不同的处理器。Spring的web框架包括可配置的处理器(handler)映射、视图(view)解析、本地化(local)解析、主题(theme)解析以及对上传文件解析。处理器是对Controller接口的实现,该接口仅仅定义了ModelAndView handleRequest(request, response)方法。你可以通过实现这个接口来生成自己的控制器(也可以称之为处理器),但是从Spring提供的一系列控制器继承会更省事,比如AbstractController、AbstractCommandController和SimpleFormController。注意,你需要选择正确的基类:如果你没有表单,你就不需要一个FormController。这是和Structs的一个主要区别。Spring的视图解析相当灵活。一个控制器甚至可以直接向response输出一个视图(此时控制器返回ModelAndView的值必须是null)。在一般的情况下,一个ModelAndView实例包含一个视图名字和一个类型为Map的model,一个model是一些以bean的名字为key,以bean对象(可以是命令或form,也可以是其他的JavaBean)为value的名值对。对视图名称的解析处理也是高度可配置的,可以通过bean的名字、属性文件或者自定义的ViewResolver实现来进行解析。实际上基于Map的model(也就是MVC中的M))是高度抽象的,适用于各种表现层技术。也就是说,任何表现层都可以直接和Spring集成,无论是JSP、Velocity还是其它表现层技术。Map model可以被转换成合适的格式,比如JSP request attribute或者Velocity template model。
通过IDEA创建maven项目。勾选脚手架工具。选择maven-archetype-webapp
话不多说,直接上代码。依赖管理pom.xml,需要添加servlet和嵌入式tomcat运行jsp需要的jar,详细依赖配置如下:
《SpringBoot快速入门》 中我们完成了一个简单的RESTful Service,体验了快速开发的特性。在留言中也有朋友提到如何把处理结果渲染到页面上。那么本篇就在上篇基础上介绍一下如何进行Web应用的开发。 静态资源访问 在我们开发Web应用的时候,需要引用大量的js、css、图片等静态资源。 默认配置 Spring Boot默认提供静态资源目录位置需置于classpath下,目录名需符合如下规则: /static /public /resources /META-INF/resources 举例:
大家好,我是 Leo,今天我们来学习 Thymeleaf,如果你对 Thymeleaf 比较陌生也不要紧,它很容易学习与理解,并有着自己鲜明的特色。
jsp通过自定义标签实现类似模板继承的效果 关于标签的定义、注册、使用在上面文章均以一个自定义时间的标签体现,如有不清楚自定义标签流程的话请参考这篇文章 http://www.cnblogs.com/zhuchenglin/p/8109787.html 关于jsp 的模板继承 请参考 这篇文章,上面的使用方法非常清楚,这里就不再说明 自定义标签实现类似模板继承的效果 参考 下面来看一下我的代码: 1. 在新建包 com.xiangmu.tags 中新建两个类,一个是 BlockTag.java,另一
jsp介绍: jsp全称Java Server Page,它是Servlet的扩展,其作用就是简化网站创建过程和维护动态网站。 jsp运作原理: 浏览器访问index.jsp的URL为http://localhost:8080/工程名称/index.jsp,tomcat服务器接收到客户端的访问请求时,服务器首先去查找到myweb工程,找到后到web.xml文件中查找JSPServlet的映射,再运行JSPServlet,然后进入到jsp对象池,询问有没有对象,如果有对象就抓取对象使用,再调用service(
摘要:本文主要讲解SpringBoot使用Thymeleaf开发web页面。
JSP处理过程 就像其他普通的网页一样,您的浏览器发送一个HTTP请求给服务器。 Web服务器识别出这是一个对JSP网页的请求,并且将该请求传递给JSP引擎。通过使用URL或者.jsp文件来完成。 JSP引擎从磁盘中载入JSP文件,然后将它们转化为servlet。这种转化只是简单地将所有模板文本改用println()语句,并且将所有的JSP元素转化成Java代码。 JSP引擎将servlet编译成可执行类,并且将原始请求传递给servlet引擎。 Web服务器的某组件将会调用servlet引擎,然后载入并执行servlet类。在执行过程中,servlet产生HTML格式的输出并将其内嵌于HTTP response中上交给Web服务器。 Web服务器以静态HTML网页的形式将HTTP response返回到您的浏览器中。 Web浏览器处理HTTP response中动态产生的HTML网页,就好像在处理静态网页一样。 JSP页面只有在首次访问的时候需要编译生成Servlet字节码,所以首次加载的速度会稍慢(可以忽略)
JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML(标准通用标记语言的子集)文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。
org.springframework.web.serviet.view是SpringMVC中将原本可能存在于Dispatcherservlet中的视图渲染逻辑得以剥离出来的关键组件。
Spring MVC起源篇--01 MVC起源 Servlet独行天下的时代 繁盛一时的JSP时代 Servlet与JSP的联盟 数英雄人物,还看今朝 Spring MVC初探 实践出真知 ContextLoaderListener与/WEB-INF/applicationContext.xml ContextLoaderListener之外的选择 ServletContext是啥(Tomcat知识点巩固) Dispathcher与xxx-servlet.xml 小结 小案例 ---- MVC起源 Serv
Thymeleaf 是 Java 模板引擎,Spring 官方推荐使用,也是 Spring Boot 默认的模板引擎;前后端分离之前就是thymeleaf这类引擎模板的地盘;其支持HTML5的视图模板,能够无缝衔接springboot;主要用途能进行web开发和非web开发,比如页面渲染,代码生成,文档生成等等,做些日常的小工具是个很好的选择;
领取专属 10元无门槛券
手把手带您无忧上云