源码下载:https://u11556602.ctfile.com/fs/11556602-361219278web
https://download.csdn.net/download/qq_36267875/11089023spring
在以前已经基本上了解了整个springboot运行机制,可是也须要清除的认识到如下的问题,在实际的项目开发之中,尤为是Java的mvc版的项目里面,全部的项目都必定须要知足以下几点要求:apache
1.访问的端口不可以是8080,应该使用默认的80端口;tomcat
2.在项目之中为了方便进行数据的维护,建议创建一系列的*.properties配置文件,例如:提示消息,跳转路径;springboot
3.全部的控制器如今都采用了rest风格输出,可是正常来说,信息的显示应该交给页面(再也不是jsp)负责完成;服务器
4.在进行项目打包的时候应该考虑到不一样的profile配置。mvc
2.1 改变环境属性app
经过当前的执行能够发现,默认清空下,在springboot里面启动web容器为tomcat:jsp
2019-04-07 10:18:56.464 INFO 7324 --- [ restartedMain] o.s.j.e.a.AnnotationMBeanExporter : Registering beans for JMX exposure on startup 2019-04-07 10:18:56.526 INFO 7324 --- [ restartedMain] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http) 2019-04-07 10:18:56.531 INFO 7324 --- [ restartedMain] cn.mldn.microboot.StartSpringBootMain : Started StartSpringBootMain in 3.142 seconds (JVM running for 3.7)
从实际的开发来说,咱们的web部署项目若是是单独运行不可能运行在8080的端口上。从正常来说咱们的服务器应该运行在80端口上,因此若是要想修改这样的默认环境,则必须编写与之对应的配置文件,该配置文件必定要写在classpath之中,例如:项目中的"src/main/resources"就是一个classpath路径,那么在这个目录之中直接建立有一个application.properties(文件名称绝对不要改变)。spring-boot
项目上右键 properties
设置resources为源文件目录
范例:定义application.properties配置文件
#设置tomcat的运行服务所在端口 server.port=80
从新启动以后已经变成了80端口了
2019-04-07 12:38:41.210 INFO 11436 --- [ restartedMain] o.s.j.e.a.AnnotationMBeanExporter : Registering beans for JMX exposure on startup 2019-04-07 12:38:41.257 INFO 11436 --- [ restartedMain] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http) 2019-04-07 12:38:41.261 INFO 11436 --- [ restartedMain] cn.mldn.microboot.StartSpringBootMain : Started StartSpringBootMain in 2.429 seconds (JVM running for 2.827)
范例:若是有须要也能够配置contextPath的信息
#设置tomcat的运行服务所在端口 server.port=80 # 能够配置ContextPath访问路径,可是在实际开发之中是不可以进行配置的 server.context-path=/hello
此时的访问路径须要追加contextPath前缀:http://localhost/hello/;
严格来说在springboot,springcloud里面可使用两类配置文件:application.properties application.yml
yaml文件:
这是一种结构化的数据文件,其在不少的地方上都使用过,例如:apache storm 开发组件上进行配置的时候使用就是yml的配置文件,该配置文件的全称'YAML Ain't a Markup Language' 仍然是一种标记语言。
范例:定义application.yml配置文件
server: port: 80 #此处设置的服务的访问端口配置
无聊的测试:若是application.properties和application.yml两个文件同时存在,使用哪一个?
那么这个时候将优先进行application.properties配置文件的加载,若是如今两个配置项的做用冲突了,则以properties为主,若是不冲突,则以存在的为主。
application.properties
server.port=8080
application.yml
server: port: 80 #此处设置的服务的访问端口配置 context-path: /mldn
在以前默认使用的web容器是tomcat容器,实际上在springboot里面若是用户有须要也能够将容器更换为jetty容器,若是如今想要使用这个容器则须要追加一些依赖便可
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jetty</artifactId> </dependency>
若是在之后项目以微服务的方式进行打包发布的时候,强烈建议你们使用jetty服务进行发布。
2019-04-07 12:39:47.425 INFO 12128 --- [ restartedMain] o.e.jetty.server.AbstractConnector : Started ServerConnector@77c45f6c{HTTP/1.1,[http/1.1]}{0.0.0.0:8080} 2019-04-07 12:39:47.425 INFO 12128 --- [ restartedMain] .s.b.c.e.j.JettyEmbeddedServletContainer : Jetty started on port(s) 8080 (http/1.1) 2019-04-07 12:39:47.429 INFO 12128 --- [ restartedMain] cn.mldn.microboot.StartSpringBootMain : Started StartSpringBootMain in 2.663 seconds (JVM running for 3.048)