当前位置: 首页 > news >正文

中国海员建设工会网站中国建设工程招标网官方网站

中国海员建设工会网站,中国建设工程招标网官方网站,网络规划与设计毕设,网站数据库建表能够掌握SpringBoot程序多环境开发 能够基于Linux系统发布SpringBoot工程 能够解决线上灵活配置SpringBoot工程的需求 Windows打包运行 你的电脑不可能一直开着机联网作为服务器#xff1a; 我们将我们项目打包放到外部的服务器上#xff0c;这样其他用户才能正常访问#x… 能够掌握SpringBoot程序多环境开发 能够基于Linux系统发布SpringBoot工程 能够解决线上灵活配置SpringBoot工程的需求 Windows打包运行 你的电脑不可能一直开着机联网作为服务器 我们将我们项目打包放到外部的服务器上这样其他用户才能正常访问 打包 使用maven工具maven clean后maven package。target下就有一个本项目名.jar的包 windows环境运行springboot的jar包 本项目名.jar根目录文件夹上敲cmdjava -jar 项目名.jar 我们只需要敲上java -jar sp(jar包的首字母)然后tab键windows系统会自动补全 由于打包前默认测试 可在右侧maven本项目中lifeCycle,点一下test点菜单上面的闪电将其删除禁用掉即可。 注意事项  jar支持命令行启动需要依赖maven插件支持请确认打包时是否具有SpringBoot对应的maven插件。 buildpluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactId/plugin/plugins/build 有插件的打包后有发现META-INFO有MANIFEST.MF打开有Start-Class和Main-Class来加载引导类。 有插件的打包后有发现BOOT-INF里有lib依赖包里面各种jar包。 org这个文件夹就是使得这个springboot项目能够独立运行的工具文件夹。里面有boot的类加载器。boot想要独立运行需要class中项目文件和lib包及org工具文件夹。 Linux打包运行 我们使用VM打开CentOS7的虚拟机 可用FinalShell或SecureCRT 8.5界面好一些。 finalshell可用SSH连接虚拟机的linux系统。 linux按安装jdk8centos7 安装jdk详细教程_centos7安装jdk_奇漠的博客-CSDN博客 usr下创建app目录  cd/usr      mkdir app   cd app    通常我们的项目的东西一般放到这个文件夹或~的文件夹下 将jar上传到这。 然后java -jar 项目名.jar即可运行但是没连数据库yml的url写的localhost 我们首先在linux中安装数据库使用yam或rpm安装相同版本的mysql数据库 Centos7在线安装MySQL5教学版_centos7安装mysql5_-starshine丨的博客-CSDN博客 安装完后使用windows的navicat连一下然后建表建数据重新运行即可。 临时属性设置 java -jar springboot.jar --server.port80 或idea中编辑启动中configuaration中环境中Program arguments: --server.port80 生效原因引导类main方法有args[]参数传递给引导类run的入参其实为安全可删除入参args ConfigurableApplicationContext ctx SpringApplication.run(SpringbootBeginQuickstartApplication.class, args); 甚至可在引导类main方法中用arg[0]--server.port80 设置开发环境临时属性 问题开发时我们使用我们的一些配置。在将来上线时产品经理的一些设置可能跟我们不一样。 0普通yml4级  1 resource的config目录的yml优先级高于普通yml3级 springboot给我们提供了一套机制可以在现有的配置的基础上在写一套application.yml配置来覆盖 就在resource文件夹下创建一个config目录将新的配置文件放进去就能覆盖原有的配置。 且这两个配置文件还有合作的关系互补配置冲突的部分config中的进行覆盖。 2 jar包和application.yml同级的yml优先级更高一些2级 再一个问题是我们的数据库连接的密码时明文的将来肯定不可能使用明文 我们将开发的yml复制一份到打完jar包的项目的同级目录中 也就是jar包和application.yml同级然后在这个根目录进行java -jar运行优先用平级的application.yml文件。这个这个同级的yml配置文件给运维人员使用。 3.jar包同级的config文件夹中的yml优先级更高1级 对于运维组的大boss比如银行副行长级别的配置还有一个在该同级目录下创建一个config目录里面加上application.yml。对于加密有些目录直接加了密没有打开访问的权限 1级与2级留做系统打包后设置通用属性1级常用于运维经理进行线上整体项目部署方案调控。3级与4级用于系统开发阶段设置通用属性3级常用于项目经理进行整体项目属性调控。 项目类路径配置文件:服务于开发人员本机开发与测试 项目类路径config目录中配置文件:服务于项目经理整体调控 工程路径配置文件:服务于运维人员配置涉密线上环境 工程路径config目录中配置文件:服务于运维经理整体调控 还可在Idea的启动参数编辑启动中configuaration中环境中Program arguments: --server.port80 配置--spring.config.nameebank 这种方式有魅力和properties都支持可不写后缀。 或--spring.config.locationclasspath:ebank.yml也可 --spring.config.locationclasspath:ebank.yml,--spring.config.locationclasspath:ebank2.yml 谁在最后谁生效。 多环境开发 开发、测试 、生产 1、开发环境开发环境时程序猿们专门用于开发的服务器配置可以比较随意为了开发调试方便一般打开全部错误报告和测试工具是最基础的环境。 2、测试环境一般是克隆一份生产环境的配置一个程序在测试环境工作不正常那么肯定不能把它发布到生产服务器上是开发环境到生产环境的过度环境。 3、生产环境生产环境是指正式提供对外服务的一般会关掉错误报告打开错误日志是最重要的环境。部署分支一般为master分支。 resource下的application.yml将这个配置文件进行copy复制3份到resource目录下, 一定要以application-(环境名)命名dev\pro\test。删除配置中其他东西只留一些配置相关的 在这个主yml文件中进行指定使用的yml配置文件 spring:profiles:active: dev 同理properties也类似用spring.profiles.activedev指定 多环境的分组管理 根据功能对配置文件中的信息进行拆分并制作成独立的配置文件命名规则如下 application-devDB.yml application-devRedis.yml application-devMVC.yml 想要使用的时候直接include就ok了 spring:profiles:active: devinclude: devDB,devRedis,devMVC springboot2.4版本后就提供了环境组group spring:profiles:active: devgroup:dev: devDB,devMVCpro: proDB,proMVC 加载active为dev还是会加载dev的grop中的配置文件还是后面的会覆盖前面的配置 如果maven中设置的为生产环境springboot中设置的为开发环境 springboot是基于maven运行的。所以maven是主springboot为辅。 pom中设置多环境 默认开启dev的环境开哪个环境profile.active的参数值就为哪个 pom文件依赖下方加入 profilesprofileidenv_dev/idpropertiesprofile.activedev/profile.active/propertiesactivationactiveByDefaulttrue/activeByDefault!--开启哪个环境哪个环境生效--/activation/profileprofileidenv_pro/idpropertiesprofile.activepro/profile.active/properties/profile/profiles yml中加入 spring:profiles:active: profile.activegroup:dev: devDB,devMVCpro: proDB,proMVC 这样的话springboot就会随着maven的环境的变化而加载不同的springboot的环境配置了。使用maven控制boot环境后现在maven和boot的环境就统一了。 日志 编程期调试代码 运营期记录信息 记录日常运营重要信息峰值流量、平均响应时长……) 记录应用报错信息(错误堆栈) 记录运维过程数据(扩容、宕机、报警……) 代码中使用日志工具记录日志 import org.slf4j.Logger;下的 RestController//restful风格的controller RequestMapping(/books) public class BookController {private static final Logger log LoggerFactory.getLogger(BookController.class);Autowiredprivate BookService bookService;GetMappingpublic R getAll() {log.debug(debug....);log.info(info....);log.warn(warn....);log.error(error....);return new R(true,bookService.list());}结果全在日志中不同颜色展示出来提示日志且后面跟着参数里面的内容 默认使用的info级别及以上的级别 日志等级:debuginfowarnerror:设置为哪一等级只会打印该等级及以下等级的日志。 debug级别需要自己手动打开yml中设置 #debug: true logging:level:root: debug 若不想看系统及的debug只看某个包下的debug可以这样 logging:level:root: infocom.kdy.controller: debug #设置某个包的日志级别 logging:group:ebank: com.kdy.controller,com.kdy.service,com.kdy.mapperother: com.alibabalevel:root: infoebank: debug #对日志分组中的组设置日志级别com.kdy.controller: debug #设置某个包的日志级别 抽取log对象 private static final Logger log   LoggerFactory.getLogger(BookController.class);反复写 找个地方写个父类 public class BaseClass {//让其它类来继承该类private Class clazz;public static Logger log;public BaseClass(){clazz this.getClass();//这里的this是调用该构造方法的对象也就是子对象因为子类继承父类创建对象并不会创建父类对象而是super代指父类对象this是子类对象log LoggerFactory.getLogger(clazz);} } RestController//restful风格的controller RequestMapping(/books) public class BookController extends BaseClass {Autowiredprivate BookService bookService;GetMappingpublic R getAll() {log.debug(debug....);log.info(info....);log.warn(warn....);log.error(error....);return new R(true,bookService.list());} } 使用Lombok并注入Slf4j也可使用log Slf4j RestController//restful风格的controller RequestMapping(/books) public class BookController {Autowiredprivate BookService bookService;GetMappingpublic R getAll() {log.debug(debug....);log.info(info....);log.warn(warn....);log.error(error....);return new R(true,bookService.list());} } 日志输出格式控制  详见sringboot15 文件的形式记录日志 logging:file:name: server.log 项目根路径下。 设置定时生成一份日志文件且设置日志文件的最大大小 logging:file:name: server.loglogback:rollingpolicy:max-file-size: 4KBfile-name-pattern: server.%d{yyyy-MM-dd}.%i.log
http://www.zqtcl.cn/news/704635/

相关文章:

  • 南充网站制作不会做网站能做网络销售吗
  • 这2个代码 找做网站的 安装一下搜索引擎排行榜
  • 百度收录收费 重大网站网络空间设计说明怎么写
  • 网站开发 php模板图书馆网站建设的项目报告
  • 保定模板建站定制网站wordpress 收集
  • 万网 网站模板软件开发三个主要阶段
  • 网站首页psd格式怎么做seo关键词有哪些类型
  • 做部队网站技术vue做购物网站
  • 品牌网站建设服务机构wordpress英文改中文
  • 系统开发费外链优化方法
  • 网站建设公司起名网站构建的友情链接怎么做
  • 网站建设湖南wordpress 缓存时间
  • 木藕设计网站大全福州网络营销推广产品优化
  • 建设银行网上官方网站怎么批量修改wordpress文章内容
  • 多肉建设网站的目的及功能定位app网站开发成本
  • 如何保存网站上的图片不显示图片报纸网站建设
  • 网站营销的流程品牌推广方式有哪些
  • 网站开发的条件美术字设计
  • 网站可以自己做服务器么wordpress架站教程
  • 用ps怎么做网站导航条怎么做部署iis网站
  • 酒店 网站构建怎么创建自己的网址
  • 江苏推广网站建设业务个人工作室网站源码带后台
  • 色一把做最好的网站赤峰微信网站建设
  • 指定网站长期建设 运营计划网站淘宝客 没备案怎么做
  • 绵阳网站推广排名知名商业网站有哪些
  • 简要描述创建商务站点的商务天津建设工程合同备案网站
  • 做展示空间设计的网站wordpress调用作品分类
  • 网站怎么做访问量统计百度百科怎么创建自己
  • 泉州开发网站的公司有哪些网站页面相似度查询工具
  • 卖文章的网站源码咸阳做网站的公司电话