最近公司要用springboot,然后项目开始前本人就默默的在那里搭框架以便熟悉。。。
老大说IDEA对maven的支持比较好。。所以就放弃了长久以来的eclipse…然后我就开始各种踩坑…踩到绝望…
IDEA创建SpringBoot项目
- 其实用idea创建起来项目确实挺方便的…但是鉴于目录结构和eclipse有差异,也就是workspace和project的区别…需要注意
- 先创建一个project ,这里就不写Maven的多module项目了
- 选择emptyProject就好,然后next
- 选择project的目录位置,输入名称,finish
- 在project里面创建module ,选择spring initializr 选择jdk版本 (JDK版本在创建完project后可以设置当前project的版本,这里不细说了),点 Next
maven基本配置,我这里全部选按照默认的了 打包方式改为WAR 下一步
- 选中web ,其他的依赖就不选了,创建后也可以自己添加 直接next finish
- 选择打开刚创建module 如果打开的目录层级是project,多个module平级, 运行时会访问不到jsp页面.
- 创建之后和标准的maven差不多,就是没有webapp文件夹,官方说springboot不建议使用jsp页面,所有模版里面就没有,需要自己手工创建(坑!)
- 在 src\main 下面手动创建webapp/WEB-INF
- 在File-Project Structure中 ,指定webapp为web目录, 然后点击Apply 确定,
- 在WEB-INF下创建index.jsp页面 ,将webapp设置为web资源文件夹后右键就会显示 New → JSP选项了 ,不然没有
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
Hello SpringBoot
- 在src/main/application.properties 里面,设置MVC的view视图的前缀和后缀
spring.mvc.view.prefix=/WEB-INF/
spring.mvc.view.suffix=.jsp
- 同时需要在pom.xml中添加对jsp支持的 依赖包
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<!--<scope>provided</scope>-->
</dependency>
- 在com.example.demo下新建controller包 编写第一个controller IndexController
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class IndexController{
@RequestMapping("/index")
public String toIndex(){
return "index";
}
}
运行main方法,访问http://localhost:8080/index 大功告成
接下来会写springboot集成tomcat的文章,毕竟开发时还是用tomcat比较多。idea的热部署也是很好用的0.0
- 嗯。。。编写第一个springBoot的文档就写到这。。。截图还算详细