最近某个开发环境的某个应用,隔三差五出现了某某页面找不到,网上百度找了些同类的问题都是说jstl包与默认tomcat里的包冲突,但都感觉和我的问题不是很搭配(因为相同框架的其他项目都可以正常允许) 报错信息如下: 17:40:18.890 [http-nio-8088-exec-18] ERROR o.a.c.c.C.[.[.[.[dispatcherServlet] - Servlet.service() for servlet [dispatcherServlet] in context w…
maven下载大的项目的时候,jar包下载出错是常见的, 但是这种情况经常能看到,如java.lang.ClassNotFoundException这样的提示, 所以一直以来也觉得maven下载jar错误也没什么,直到使用了springboot 因为springboot是内嵌tomcat的,所以当这些关于Tomcat的jar包出错时,他提示的是:Unable to start EmbeddedWebApplicationContextdue to missing EmbeddedServletC…
一.简介 正常来说SpringBoot项目就直接用jar包来启动,使用它内部的tomcat实现微服务,但有些时候可能有部署到外部tomcat的需求,本教程就讲解一下如何操作 二.修改pom.xml 将要部署的module的pom.xml文件<packaging>节点设置为war <!-- 默认打包方式为jar,如果是用module做父级则需要修改为pom,如果使用外部tomcat可以修改为war, 子级module的打包方式只能是jar或者war --> <packaging…
最近公司有个项目需要移植到SpringBoot框架上,项目里面又有许多第三方jar包,在linux服务器上最方便的就是用jar的方式来运行SpringBoot项目了,因此我研究了2种打jar包的方式,记录如下,供大家参考: 1.通过maven插件,将所有依赖包都打包成一个jar包,然后通过java -jar xxx.jar方式运行 由于项目中有些jar包是第三方的,maven官方仓库没有,需要使用mvn install命令打包到本地,然后将其写入到pom.xml的依赖中,maven仓库有的jar…
转载:http://blog.csdn.net/tengxing007/article/details/72675168 前言 JRebel是JavaEE中比较流行的热部署插件,可快速实现热部署,节省了大量重启时间,提高了个人开发效率.看一张图就知道了:我这里提到JRebel的目的主要是说明热部署工具带来的优势:节省时间,提高开发效率 下面我将介绍使用maven构建的SpringBoot项目中实现热部署的两种方式,使得部署变得异常简单,同时两种方式也非常的简单. 热部署 devtools Pom…
源码版本说明 本文源码采用版本为SpringBoot 2.1.0BUILD,对应的SpringFramework 5.1.0.RC1 注意:本文只是从整体上梳理流程,不做具体深入分析 SpringBoot入口类 @SpringBootApplication public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args…
SpringBoot项目版本升级:从1.5.3升级到2.1.8版本 前言 简单记录一次本人在自己的SpringBoot项目project-template中,把1.5.3版本升级到2.1.8版本时升级的步骤,及遇到的问题. 提升parent版本号 更改pom文件中parent的版本号 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-par…
官网生成SpringBoot项目 使用官网(https://start.spring.io/)生成一个Maven构建的的SpringBoot项目,下载下来的文件是这个样子的. 导入到IDEA中 为了查看方便,我把他又导入到IDEA中去了(当初为嘛不直接用IDEA构建?可能为了看两种生成SpringBoot项目方式有什么不同吧). 文件结构图如下: .idea---这个文件是把项目导入到IDEA中多出来的,所以这个是IDEA项目相关的文件,不用去管他.什么时候有空了再研究研究. .mvn---这个…
所有文章 https://www.cnblogs.com/lay2017/p/12078232.html 正文 在上一篇文章中,我们简单地了解了一下什么是seata.它是来自阿里巴巴的内部项目不断地发展出来的.2019年以fescar命名开源于apache开源协议,同年改名为seata. 本文将入手seata,官方的文档和demo主要以dubbo和springcloud体系的接入为主.本文选取springboot作为项目构建框架,快速构建示例. 环境说明 seata的发展还是比较快的,而版本的更…
工作之余,想要学习一下SpringBoot,通过网络大量教程最终成功运行SpringBoot项目.  第一步 首先,通过教程发现一套完整的快速搭建SpringBoot项目网站:https://start.spring.io/ 以上是我的简单配置(其实右边可以配置好多东西,比如spring-mysql,但是考虑第一次,就简单配置了一个Spring Web),点击 "GENERATE" 按钮就可以下载一个.zip压缩包,解压后就是一个简单的SpringBoot项目了! 因为工作中使用的是I…
更多精彩关注公众号: IDEA 导入Springboot 项目: 1. 菜单->File->New->Project From Existing Sources 2. 选中项目中的pom.xml 3. 点击OK,然后后面就一路 Next 就行了 eclipse导入SpringBoot项目: 有时候会拿到别人现成的 springboot 项目,而不是从头自己做一个. 这个时候,就需要用导入的方式来 import 这么一个项目了. 本教程讲解如何用 eclipse 来导入. Eclipse…
前置条件:jdk.SpringBoot项目.Nacos.Linux服务器(可无) 具体版本:jdk11.SpringBoot 2.3.5.RELEASE.Nacos 2.0.3.Centos 6 目标:SpirngBoot项目使用Nacos作为配置中心动态管理项目配置 相关问题及解答参考本文末尾 原文首发:chenetchen.ltd,个人博客网站. 前言 使用SringBoot框架开发的项目,虽然免去了在Tomcat上的配置,可以将项目打成jar包后在服务器上发布,但是如果需要修改配置文件,需…
错误: 导入别人的ssh项目后出现java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade错误, 错误发生条件: 别人是用myeclipse10版本,我是用eclipse4.6.0版本运行他的ssh项目,并且他的jar是放在lib目录下的文件夹,也就是说jar包不放在 lib根目录下,而是放在lib目录下的文件夹里.如图: 错误发生原因: 在myeclipse中,会自动扫描lib目录下的所有文件夹…
前言:本项目基于maven构建 spring-boot项目可以快速构建web应用,其内置的tomcat容器也十分方便我们的测试运行: spring-boot项目需要部署在外部容器中的时候,spring-boot导出的war包无法再外部容器(tomcat)中运行或运行报错,本章就是详细讲解如何解决这个问题 1.pom.xml一览 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www…
1 InteliJ IDEA 安装 下载地址:点击前往 注意:需要下载专业版本的,注册码在网上随便搜一个就行啦 2 MAVEN工具的安装 2.1 获取安装包 下载地址:点击前往 2.2 安装过程 到官网下载的maven是绿色版的,无需安装,解压即可 2.3 修改maven的配置 2.3.1 配置maven的本地仓库路径 <localRepository>D://PTool/maven/apache-maven-3.5.0/conf/bdck</localRepository> 2.…
Spring Boot是由Pivotal团队提供的全新框架,设计目的是用来简化新Spring应用的初始搭建以及开发过程.它主要推崇的是'消灭配置',实现零配置. 那么,如何在idea中创建一个springboot项目呢? 一.在你建立的工程下创建 Module 选择Spring initializr创建. 二.在Type处选择: Maven Project(项目的构建工具) 三.创建依赖时勾上web,mybatis,mysql(这个看你个人需要吧,可以自主选择) 建立好的项目结构如下: 相对应的…
先展示一下我遇到的问题: 用浏览器搜索是有页面的,但是但是但是呢,用IDEA快速构建的时候就报403 咳咳!巴格虐我万千遍,我待技术如初恋... 我看到的解决办法有以下两种,当然,我只想说:"毛用没有,毛用没有,毛用没有,重要的事儿说三遍": 在确保各种杀毒软件关闭,防火墙关闭的情况下进行下列操作!!! 我不行并不能代表你不行,也许你行呢: 第一种: 将IDEA默认的访问路径:https://start.spring.io  改成http://start.spring.io(换句话说就…
前言: springboot作为springcloud的基础,springboot的热度一直很高,所以就有了这个springboot系列,花些时间来了解和学习为自己做技术储备,以备不时之需[手动滑稽] springboot能做什么 springboot 致力于简洁,让开发者写更少的配置,程序能够更快的运行和启动. Springboot 设计原则就是 约定优于配置.并且内嵌了Servlet容器. springboot 采用的是Java Config的方式,对Spring进行配置,避免了XML配置以…
随着框架使用的不断的更新,后面使用SpringBoot会多,这边准备构建一个SpringBoot项目使用的模版. 所谓模版,和之前一样,就是一个最简单的项目,包含所有最简单的空实现. 做模版的时候参考了很多GitHub上的代码,所有参考过的优秀的代码来源都会放在最后,喜欢也对你有帮助. 这个适合从SpringMVC切换到SpringBoot的朋友,一些常见模块和包的功能这里就不多赘述了. 当然每个人都有属于自己项目的模版,这里只是做一个参考,如果你有更好的有优化还请多多评论. 模版地址 http…
1 QueryDSL介绍 1.1 背景 QueryDSL的诞生解决了HQL查询类型安全方面的缺陷:HQL查询的扩展需要用字符串拼接的方式进行,这往往会导致代码的阅读困难:通过字符串对域类型和属性的不安全引用又是HQL面临的问题. 随着类型安全的域模型给软件开发带来的巨大好处,域的更改可以直接反应在查询上,而且随着域的更改查询也会自动随着改变.(即:同一套查询,只需要通过改变域就可以实现不同的查询) 针对Hibernate的HQL是Querydsl的第一个目标语言,但现在它支持JPA,JDO,JD…
[内容指引] SpringBoot项目介绍: 打包SpringBoot项目: 1.pom.xml: 2.application.properties配置: 3.application-dev.properties配置: 4.application-prod.properties配置: 5.data.sql: 6.打包设置. 将jar包部署到linux服务器: 1.将jar包从Mac上传到远程linux服务器: 2.在Mysql中创建数据库实例: 3.以生产配置的方式运行jar包. 相关技巧 1.…
[内容指引] war包部署: jar包部署: 基于Docker云部署. 一.war包部署 通过"云开发"平台初始化的SpringBoot项目默认采用jar形式打包,这也是我们推荐的方式.但是,因为某些原因,软件需求方特别要求用war形式打包,我们该怎么做? 1.项目尚未开始 如果开发前,软件需求就指明要war形式打包和部署,那么我们在利用IntelliJ IDEA创建Spring Boot项目时直接选择打包方式(Packaging)是war形式即可:  打包方法和上篇文章jar的打包…
springboot的打包方式有很多种.有打成war的,有打成jar的,也有直接提交到github,通过jekins进行打包部署的.这里主要介绍如何打成jar进行部署.不推荐用war,因为springboot适合前后端分离,打成jar进行部署更合适.首先需要在application.properties当中配置端口 server.port=8080 # http://localhost:8088/swagger-ui.html marven的配置文件 <?xml version="1.0&…
多模块拆分的必要性 使用Java技术开发的工程项目,无论是数据处理系统还是Web网站,随着项目的不断发展,需求的不断细化与添加,工程项目中的代码越来越多,包结构也越来越复杂这时候工程的进展就会遇到各种问题: (1)不同方面的代码之间相互耦合,这时候一系统出现问题很难定位到问题的出现原因,即使定位到问题也很难修正问题,可能在修正问题的时候引入更多的问题. (2)多方面的代码集中在一个整体结构中,新入的开发者很难对整体项目有直观的感受,增加了新手介入开发的成本,需要有一个熟悉整个项目的开发者维护整个…
创建一个简单的springboot项目,依赖中加入: 编写一个Restfull接口: 编写启动类: 启动项目,浏览器访问该接口,得到想要的结果.下面,就将这个项目进行Docker容器化(application.yml配置文件里将项目端口改成了80). pom.xml配置文件中添加docker构建后的镜像前缀 该属性的作用是,构建后的镜像的前缀就是用该属性.然后在pom.xml文件中添加docker构建插件: 在src/main目录下创建docker文件夹,并在其中创建Dockerfile文件:…
目录 前言 一.基础结构 二.添加代码 三.应用配置 四.日志配置 五.打包部署 小结 前言 springboot 最近火的不行,目前几乎已经是 spring 家族最耀眼的项目了.抛开微服务.技术社区这些推广因素不说,框架本身的确有非常多的优点.比如 更简化的配置,摒除了许多繁杂的xml配置(事实证明,越简单的东西越容易让人记住): 内置Servlet容器,不再依赖外部环境 大量的starter模块,随手拈来 支持热部署 作为一名老程序员来说,仍然需要保持一个积极学习的态度. 哎,简单点说就是少…
在SpringBoot项目中添加logback的MDC     先看下MDC是什么 Mapped Diagnostic Context,用于打LOG时跟踪一个“会话“.一个”事务“.举例,有一个web controller,在同一时间可能收到来自多个客户端的请求,如果一个请求发生了错误,我们要跟踪这个请求从controller开始一步步都执行到了哪些代码.有哪些log的输出.这时我们可以看log文件,但是log文件是多个请求同时记录的,基本无法分辨哪行是哪个请求产生的,虽然我们可以看线程,但线程…
开发工具:推荐IDEA . Spring Tool Suit 虽然很简单,但还是记录一下,图个热闹. 开始 >>> 1. File --> New --> Spring Starter Project 2. 填写项目信息 3. 根据需要选择 Spring Boot Version 和 Available(这里选中Web就可以,其他的后续开发再根据需要添加) 4. Finish之后,等待项目初始化完成,会生成如下目录结构 5. 运行项目:Application.java --&…
看标题好像很简单的样子,但是针对使用jar包发布SpringBoot项目就不一样了.当你使用tomcat发布项目的时候,上传文件存放会变得非常简单,因为你可以随意操作项目路径下的资源.但是当你使用SpringBoot的jar包发布项目的时候,你会发现,你不能像以前一样操作文件了.当你使用File file = new File()的时候根本不知道这个路径怎么办.而且总不能很小的项目也给它构建一个文件服务器吧.所以这次就来解决这样的问题 实现 因为我们无法操作jar包内容,所以我们只能将文件存放在…
方式一(OK) 模块A引入模块B ,但是模块B的bean一直注入不进来 原因: A模块的Application是在com.xx.xx包下,那么势必只能扫描到这个包下的bean, B模块的Application是在com.xxx包下,那么在A引入B以后就A就肯定扫描不到他上层包的bean 解决办法: 1.将A模块和B模块的Application置于相同路径下,例如com.xx下(只是名称一致,不是真的在同一包下) 2.使用@ComponentScan(value="com.xx")注解,…