maven配置环境
maven作为一个整合和拉取开发jar包的管理工具,解放了我们需要通过下载一个个jar包并导入的繁杂过程,有利于开发的规范和速度,同时springboot等框架都利用了该方式进行依赖jar包的获取。
快速创建一个springboot项目
-
在file找到新建项目,选择spring initializr栏目
spring initializr -
next修改文件名后再next到选择想要创建的服务,此处的服务选择后会相应的在pom文件中写入相应所需的jar包,然后进行抓取,这就是springboot在spring的基础上基于不同的应用场景进行相关依赖的整合处理。下面选择web:
web -
在java的默认创建的文件夹下创建一个helloworld类,此类作为我们程序的主类,我们会发现还有一个默认的启动类DemoApplication,里面有一个main入口并利用@SpringBootApplication标定了其为springboot主类,我们需要将该启动类DemoApplication删除,避免和之后创建的helloworld类出现冲突。
结构 -
在helloworld类中填入以下代码,其中的@SpringBootApplication标定了其为springboot主类,这就是某些同学在打包时出现org.apache.maven-surefire-plugin:2.22.1:test的原因
main冲突
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class HelloWoldMainApplication {
public static void main(String[] args) {
SpringApplication.run(HelloWoldMainApplication.class,args);
}
}
- 在默认配置文件application.properties中填入服务端口(未填默认8080,但有时被占用)
server.port=3030
- 添加控制类作为业务逻辑的实现类,需要用@Controller来标识,在contrller类中填入以下的代码,模拟提供访问/hello文件下的服务。
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class contrller {
@ResponseBody
@RequestMapping("/hello")
public String hello(){
return "Hello world!";
}
}
-
点击运行主类的spring-test键开始运行
运行 -
在浏览器下访问localhost:3030/hello便可看到回复的helloworld证明了可行
hello -
利用spring‐boot‐maven‐plugin插件(web程序初始化在pom.xml已经配置了!若是普通的maven文件则需要导入)进行jar打包,点击maven的lifecycle下的package。
打包 -
可以看到生成了一个jar包
jar - 在改文件夹下用cmd进入命令行界面,通过一下shell指令可以开始运行jar包
java -jar string_test2-0.0.1-SNAPSHOT.jar
同样通过浏览器访问localhost:3030/hello
- jar包本质是一个压缩包,可以看到里面的lib文件夹下面有大量的依赖包,而且可以发现其中有tomcat的嵌入式开发包,这便是springboot不需要显性启动tomcat服务器的原因。
- resources文件夹中目录结构
static:保存所有的静态资源; js css images;
templates:保存所有的模板页面;(Spring Boot默认jar包使用嵌入式的Tomcat,默认不支持JSP页面);可以使用模板引擎(freemarker、thymeleaf);
application.properties:Spring Boot应用的配置文件;可以修改一些默认设置;
网友评论