初次搭建spring boot 项目(实验楼-学习笔记)
首先说一下springboot 的优点:
-
使用Spring Initializr可以在几秒钟就配置好一个Spring Boot应用。
-
对大量的框架都可以无缝集成,基本不需要配置或者很少的配置就可以运行。
-
简化的安全性
-
丰富的SQL和NoSQL支持
-
嵌入式Servlet容器的支持,如:Tomcat,Jetty和Undertow
-
提高开发、生产效率,如热部署等功能
-
提供监控功能,如跟踪,指标和健康状况。
1.设置项目端口的三种方式
- 在 appliacation.properties 中加 server.port=** (默认是8080)
- 创建ServletConfig 实现类WebServerFactoryCustomizer<ConfigurableWebServerFactory>,在ServletConfig 类上加注解@Configuration表示该类为配置类,改注解可以被@ComponentScan扫描到
- 通过xml配置文件的形式,在**.xml配置文件中增加以下信息,配置文件放在项目/resources文件夹下
-
<bean id="servletConfig" class="com.shiyanlou.springboot.config.ServletConfig"/>
- 然后在SpringBootApplication.class类上增加注解@ImportResource(value = "classpath:/**/config.xml")
2.springBootWeb项目配置
-
配置视图文件存放位置(前缀)和视图文件后缀
#视图文件前缀
spring.mvc.view.prefix=/view/
#视图文件后缀
spring.mvc.view.suffix=.html
-
静态文件的读取
SpringBoot的静态资源默认目录为/static、/public、/resources、和/META-INF/resources,默认映射路径都是/。
SpringBoot默认会按照META/resources > resources > static > public 的优先级寻找对应的资源文件并返回第一个找到的文件。
如果不想使用默认的静态资源路径,可以配置自己的静态资源路径,通过实现WebMvcConfigurer接口的addResourceHandlers方法来自定义静态资源。
如上所说是通过java的方式配置静态资源所在路径,也可以通过配置文件配置静态资源路径
另外尽量不在SpringBoot中使用src/main/wabapp目录。
如果你的应用使用jar打包,不要使用/src/main/webapp 目录,尽管它是一个标准目录,该目录仅仅在使用war打包部署的时候生效,在大部分构建工具它都会被忽略
3.Spring中Bean及@Bean的理解
注解分为两类:
- 一类是使用Bean,即是把已经在xml文件中配置好的Bean拿来用,完成属性、方法的组装;比如@Autowired , @Resource,可以通过byTYPE(@Autowired)、byNAME(@Resource)的方式获取Bean;
- 一类是注册Bean,@Component , @Repository , @ Controller , @Service , @Configration这些注解都是把你要实例化的对象转化成一个Bean,放在IoC容器中,等你要用的时候,它会和上面的@Autowired , @Resource配合到一起,把对象、属性、方法完美组装。
4.其他
-
通过命令形式获取项目并启动maven项目
获取项目
wget 项目文件所在网络地址 如果获取是压缩文件.zip,解压文件命令
unzip 待解压的文件名称 文件移动位置
mv 文件 /**/**(新路径) 启动项目
mvn spring-boot:run
-
通过linux 的curl来模拟访问
1、发送post请求 先通过POST请求保存一个user,注意curl命令中的POST要大写curl中-v 显示请求头信息,-X 指定使用的协议,-d 指定传输的数据。 curl -v -X POST -d "username=shiyanlou&password=springboot" http://localhost:8080/user 2、发送put请求 curl -v -X PUT -d "username=shiyanlou&password=springboot" http://localhost:8080/user/参数
3、发送get请求 curl 请求地址
4、发送delete请求 curl -v -X DELETE http://localhost:8080/user/1
xsshu