从头开始Spring Boot之常见用法总结

从头开始Spring Boot之常见用法总结

[^Spring Boot 规约大于配置,大多数组件,不需要自行配置,而是自动组装!简化开发,大多数情况,使用默认即可!]:

构建可执行jar或者war

问题:构建出的xxx-1.0.0-SNAPSHOT.jar中没有主清单属性?

答:

在pom.xml文件中添加 Spring Boot 的插件:

<build>
  <plugins>
    <plugin>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-maven-plugin</artifactId>
    </plugin>
  </plugins>
</build>

jar 规范里面,JAR文件META-INF目录有一个 MANIFEST.MF,里面有一个 Main-Class 的属性。API:java.util.jar.Manifest#getAttributes

从 jar 切换成 war 打包方式
优先方案:

1.pom.xml的打包方式<packaging>jar</packaging>改成<packaging>war</packaging>(默认jar方式)

2.加入标签<failOnMissingWebXml>

<plugin>
    <artifactId>maven-war-plugin</artifactId>
    <configuration>
         <failOnMissingWebXml>false</failOnMissingWebXml>
    </configuration>
</plugin>
备选方案
  1. jar-> war
  2. 创建文件夹webapp/WEB-INF (相对于src/main级别),创建空文件web.xml
构建多模块(module)应用
  1. 修改主工程类型jar -> pom
  2. 新建 web 工程,讲遗留代码移动到 web java 目录下
  3. 再从 web 工程,独立出 model 工程
  4. 将 web 工程依赖 model 工程
  5. 重复步骤 3,独立出 persistence
  6. 再从 persistence 添加 model 的依赖
  7. 最终依赖关系 web -> persistence -> model
jar、war、其它启动方式

目录启动方式可以帮助解决老旧的jar 不支持 Spring Boot 新方式,比如老版本的 MyBatis

  • 如果是 jar 包,解压后,跳转解压目录,并且执行java命令启动,启动类是 org.springframework.boot.loader.JarLauncher
  • 如果是 war包,解压后,跳转解压目录,并且执行java命令启动类是org.springframework.boot.loader.WarLauncher
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值