造一个方形轮子文章目录:造一个方形的轮子
01、先把车正过来
在上一篇《造一个方形的轮子1–嵌入容器》的最后成功的翻车了,现在先把发现的这个问题解决,想一下如果不想源码暴露出去那么就得改变一下tomcat的web服务项目根目录 ,改成什么好呢?还好有现成的springboot可以借(抄)鉴(袭)。
在springboot里如果我们要添加静态资源有好几个目录可选,可以在resources目录下添加
1 | -resources |
上边4个目录下的文件在打包的时候都会当作静态资源处理的,省点事,就用一个public吧。在square项目的resource目录下添加一下public文件夹,添加一个默认页面。
index.html
1 |
|
然后将SquareApplication.run()方法里的启动目录改一下:
1 | public static void run(Class clzz, String[] args) { |
启动后查看:
ok,问题解决了,解决的相当粗暴,这块下边会再统一改,就不多费话了。
02、解析配置准备
常用的配置文件有两种yaml
和properties
图省事我就只用yaml
了
yaml
本身就不多说了,java里面支持yaml
的工具包挺多的,看了一下Springboot使用的是snakeyaml,妥了,就用这个吧,添加一下yaml
解析使用的依赖:
pom.xml
1 | <properties> |
在resources文件夹下添加application.yml文件
application.yml
1 | server: |
03、添加资源加载工具类
这个工具类是利用snakeyaml包将application.yml配置的内容转换为Map类型key为配置的参数key比如server.port
LoadApplicationYmlUtil.java
1 | /** |
实现主要就是将读出来的内容利用convert
递归转换一下
04、初始化配置
在SquareApplication.java里添加loadYaml
方法,放个完整代码吧,重点看loadYaml
方法:
1 | /** |
启动T.main()方法测试,启动日志输出:
1 | 13:05:38.676 [main] INFO com.jisuye.core.SquareApplication - |
可以看到端口号及context-path
已经使用的是application.yml
配置文件中的了
05、翻车现场
又到了翻车时间了,到目前为止已经实现的代码好像都还ok,但不要忘记我的目的,我要造的是轮子,一个方形的轮子,轮子怎么能光自己跑呢,轮子是给别人用的,不然别人怎么翻车。
好的,把轮子打个包出来,找个”车“试试吧。
项目根目录下执行mvn clean install
编译完成并推到本地仓库里了,然后我们新建一个maven项目 car
在car项目的pom.xml里添加引用:
1 | <groupId>com.jisuye</groupId> |
添加resources/application.yml配置文件
1 | server: |
添加main/java/com/jisuye/Application.java文件
1 | package com.jisuye; |
启动main
方法,查看日志输出:
1 | 13:29:51.529 [main] INFO com.jisuye.core.SquareApplication - load banner file error!! |
这车翻的妥妥的….
下一篇再解决吧….
本篇代码地址: https://github.com/iuv/square
本文链接: http://blog.jisuye.com/2019/06/24/square2/
版权声明: 本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。转载请注明出处!