IDEA(社区版)spring boot项目学习(1)

  一、创建项目

1.file->new->module

IDEA(社区版)spring boot项目学习(1)_第1张图片

2.因为是社区版的,所以没有spring Initializr,需要自己去下载spring assistant(在setting的plugins里面搜索然后install即可)

IDEA(社区版)spring boot项目学习(1)_第2张图片

3.next之后自定义项目域名和name(注意这里命名有时候会报invalid data的错误弹窗,换个名字就行了),然后选择Web,选择Spring web->next即创建完成。

IDEA(社区版)spring boot项目学习(1)_第3张图片

 这就是spring web项目的初始目录啦,是不是很完整~

IDEA(社区版)spring boot项目学习(1)_第4张图片

4.目录结构: 

  • static:静态资源(存放比如css、js、图片等)
  • template:视图模板(存放前端模板文件),存放用来渲染内容到浏览器的模板文件,我们会往里面添加thymeleaf模板。
  • application为properties配置文件(key = value这种的,比xml好多了)
  • Application为启动类
  • .gitignore是在使用git的时候需要忽略掉的代码部分
  • mvn是maven包装器(wrapper)脚本,借助这些脚本,即使电脑中没装maven,也可以构建项目

二、使用springboot框架集成springMVC

注意:写java代码的时候必须在Application启动类所在包下(包含下级),即不能高于入口类(不然咋进哈哈)。 比如controller:

IDEA(社区版)spring boot项目学习(1)_第5张图片或者:IDEA(社区版)spring boot项目学习(1)_第6张图片

package com.example1.demo1.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

@Controller
public class indexController {
    @RequestMapping("/cotroller/indexController")//设置方法的请求路径
    public @ResponseBody String say(){
        return "hello sting boot";
    }


//或者写:
    @RequestMapping("/map")
    @ResponseBody
    public String map(){

        return "this is spring boot project";
 };

};

@SpringBootApplication
public class Demo2Application {
	public static void main(String[] args) {
		SpringApplication.run(Demo2Application.class, args);
	}
}

 IDEA(社区版)spring boot项目学习(1)_第7张图片

tips:url后缀要和controller中mapping映射的value一样,不然也会报“This application has no explicit mapping”的错误。

三、springboot的核心配置文件(application)

1..properties形式的配置文件

#设置内嵌tomCat端口号
server.port = 8081
#设置上下文根
server.servlet.context-path = /springboot

2..yml和.yaml形式的配置文件

server:
    port: 8081
    servlet:
        context-path: /springboot

IDEA(社区版)spring boot项目学习(1)_第8张图片端口号和上下文根已改变

3.由于只能有一个核心配置文件application,所以当多种都存在的时候,项目会按以下优先级:

properties>yml

4.多环境下核心配置文件

不同环境的配置文件往往很不一样,springboot的多环境配置很方便。

目录结构:

IDEA(社区版)spring boot项目学习(1)_第9张图片

分别写好了不同环境的配置文件之后,在主配置文件中修改参数spring.profiles.active即可。

spring.profiles.active = test

5.自定义配置

 在核心配置文件里可以写一些自定义的参数,但由于自定义参数灵活多变,spring无法直接识别。在springboot中也无需解析配置文件,只需要在控制层(其他层也可以,在任何代码处。都可以直接用@Value注解获取变量)用@Value()注解即可获取配置参数即可。

#设置内嵌tomCat端口号
server.port = 8081
#设置上下文根
server.servlet.context-path = /springboot
school.name = "NCUT"
websit = "http://www.hellospringaaa.com"
@Controller
public class indexController {
    @Value("${school.name}")//获取自定义配置参数
    private String schoolName;
    @Value("${websit}")
    private String websit;//获取自定义配置参数
    @RequestMapping("/cotroller/indexController")//设置方法的请求路径
    public @ResponseBody String say(){
        return "hello "+ schoolName + websit;
    }

IDEA(社区版)spring boot项目学习(1)_第10张图片

另外,还可以把自定义配置映射到对象。

 四、springBoot集成JSP

1.springboot可以直接用thymeleaf前端引擎,如果想用jsp的话,需要手动集成。


		
			org.apache.tomcat.embed
			tomcat-embed-jasper
		

2.还需再build标签中指定路径,其中编译路径META-INF/resources是springboot为我们规定好的,需要编译的文件路径就选择webapp中所有的web资源文件。


		
			

				src/main/webapp

				META-INF/resources

				
					*.*
				
			
		

3.配置视图解析器

视图的作用是渲染模型数据,将模型里的数据以某种形式呈现给客户。视图对象可以是常见的 JSP,还可以是 Excel 或 PDF 等形式不一的媒体形式。视图解析器是将目标方法返回的逻辑视图名称转换为View对象。

我社区版IDEA貌似不太支持jsp,先看thymeleaf吧还是。

你可能感兴趣的:(java,spring,boot,intellij-idea,java)