这篇文章将为大家详细讲解有关使用intellij IDEA搭建Spring Boot项目的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
在Spring Boot maven框架搭建教程图解一文中,已经介绍了如何使用Eclipse快速搭建Spring Boot项目。由于最近将开发工具由Eclipse转向了IDEA,在搭建Spring Boot项目时发现二者搭建流程不一样,因此,特记录下来搭建流程,方便日后查阅,也希望可以帮到初学者。在文末介绍如何读取application.properties文件的配置信息。
一. 在File-New-Module 页面 选择Spring initializr
二. 在Type处选择: Maven Project(项目的构建工具)
三. 创建依赖时勾上web,mybatis,mysql 此项是否勾选看个人需要吧,可以自主选择。Spring Boot版本默认选择最高稳定版。
我自己并未勾选MySQL和MyBatis,上图为勾选后的效果。新建四个类East7Application、ConfigBean、UserController和User
package com.east7;
import com.east7.bean.ConfigBean;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
/**
* @author east7
*/
@SpringBootApplication
@EnableConfigurationProperties({ConfigBean.class})
public class East7Application {
public static void main(String[] args) {
System.out.println("port : 8087");
System.out.println("URL: http://localhost:8087/user/viewUser");
SpringApplication.run(East7Application.class, args);
}
}
@EnableConfigurationProperties和@Value注解用于读取配置文件。
package com.east7.controller;
import com.east7.bean.User;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @author east7
*/
@RestController
@RequestMapping("/user")
public class UserController {
private static Logger logger = LoggerFactory.getLogger(UserController.class);
@Value("${config.data.test}")
private String configData;
@Autowired
private ConfigBean configBean;
/**
* 示例地址 http://localhost:8087/user/viewUser?ownerId=100
*
* @author east7
* @date 2019/5/8 11:27
*/
@RequestMapping("/viewUser")
public User viewUser(Long ownerId) {
logger.info("请求参数 ownerId = " + ownerId);
User user = new User();
user.setId(ownerId);
user.setName(" --> Lucy");
return user;
}
@RequestMapping("/readConfig")
public User readConfig() {
logger.info("请求参数 name = " + configData);
User user = new User();
user.setId(263L);
user.setName(" --> " + configData);
return user;
}
@RequestMapping("/readConfigSet")
public User readConfigSet() {
User user = new User();
user.setId(269L);
user.setName(configBean.getName() );
user.setMsg(configBean.getWant());
return user;
}
}
package com.east7.bean;
import java.io.Serializable;
/**
* @author east7
*/
public class User implements Serializable {
private static final long serialVersionUID = 6089103683553156328L;
private Long id;
private String name;
private String msg;
// omit getter, setter and toString
}
package com.east7.bean;
import org.springframework.boot.context.properties.ConfigurationProperties;
/**
* @author east7
* 读取配置文件
*/
@ConfigurationProperties(prefix = "config.set")
public class ConfigBean {
private String name;
private String want;
// omit getter, setter and toString
}
搭建完成后,结构如下:
相对应的pom.xml文件
<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com</groupId>
<artifactId>east7</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>east7</name>
<packaging>jar</packaging>
<name>demo</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.4.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.1</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
这里使用配置文件application.properties,如果想更换其它端口,需要配置属性server.port。配置文件内容如下:
server.port=8087
config.data.test=20000Wconfig.set.name="east7"
config.set.want="Hope you make progress in your study and work."
启动项目
使用postman验证服务:
读取应用配置
可以在应用中读取application.properties文件,通过注解@Value("${config.name}")就可以将config.name绑定到你想要的属性上面。例如readConfig()。
有时候配置属性太多,一个个绑定到属性字段上实在麻烦,官方提倡绑定一个对象的bean,通过以下三步完成:
@ConfigurationProperties :把配置文件的信息,读取并自动封装成实体类,从而方便我们在代码里面使用。测试时成功取出配置文件中的数据,结果如下图所示:
关于使用intellij IDEA搭建Spring Boot项目的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。