文档章节

SpringBoot笔记1-使用idea创建SpringBoot的hello world

HGMrWang
 HGMrWang
发布于 2017/06/05 11:24
字数 875
阅读 58
收藏 2
  • 1、创建基本项目

1、新建项目选择 Spring Initializr ,右边的配置可以选择jdk的版本,其他选项不变

  

2、设置项目的基本信息

3、选择web模块

此处可以看到spring boot 的版本为:1.5.3

4、设置项目名称

5、修改maven仓库地址为阿里云提供的仓库。

	<!--设置maven 仓库为阿里云提供的maven仓库 国外的maven仓库慢-->
	<repositories>
		<repository>
			<id>nexus-aliyun</id>
			<name>Nexus aliyun</name>
			<url>http://maven.aliyun.com/nexus/content/groups/public</url>
		</repository>
	</repositories>

6、启动项目

spring boot 内置的tomcat默认端口是8080;

在浏览器访问:http://localhost:8080

7、创建一个控制器 

@RestController
public class HelloApiController {

    @GetMapping(value = "hello")
    public String hello(){
        return "hello spring boot";
    }
}

在浏览器输入:http://localhost:8080/hello

返回:hello spring boot

8、打包启动

使用idea的maven工具来打包项目为jar

进入 jar所在的目录执行:java -jar helloword-0.0.1-SNAPSHOT.jar

在浏览器输入:http://localhost:8080/hello

一切都是正常的。

第一个spring boot 项目已经创建完成啦……

2、配置文件

1、修改tomcat默认端口

在resource目录下新建一个application.yml文件,同时删除application.properties文件

 

2、yml文件和Java bean自动绑定

1、application.yml

server:
  port: 8888

student:
  name: 张三
  age: 12
  address: 张家沟

这里注意文件编码统一为utf-8

2、现金Student 类

@Component//加入到spring 容器中
@ConfigurationProperties(prefix = "student")
public class Student {

    private String name;

    private Integer age;

    private String address;


    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    @Override
    public String toString() {
        return "Student{" +
                "name='" + name + '\'' +
                ", age=" + age +
                ", address='" + address + '\'' +
                '}';
    }
}

如果属性名称时驼峰命名的话,在配置文件中使用中划线连接单词。

3、在控制器中使用:

@RestController
public class HelloApiController {

    Logger logger= LoggerFactory.getLogger(HelloApiController.class);

    @Autowired
    private Student student;

    @GetMapping(value = "hello")
    public String hello(){
        logger.info("你好1");
        return "hello spring boot" +student.toString();
    }
}

4、访问接口:

3、application.yml开发环境和生成环境

1、新建application-dev.yml

server:
  port: 8081
student:
  name: 张三-开发环境
  age: 12
  address: 张家沟

这里将开发环境的端口设置成了 8081

2、新建application-prod.yml

server:
  port: 8082

student:
  name: 张三-生产环境
  age: 12
  address: 张家沟

这里将生产环境的端口设置成了 8082

3、修改application.yml文件

设置为开发环境:

spring:
  profiles:
    active: dev

启动项目 http://localhost:8081/hello

设置为生产环境:

spring:
  profiles:
    active: prod

启动项目 http://localhost:8082/hello

 上面配置分别配置了生产环境和测试环境的yml文件,然后在application.yml文件中通过配置

spring:
  profiles:
    active: prod

4、jar部署

来启动项目,如果要同时启动生产环境和测试环境,则可以通过jar方式来启动:

进入 jar所在的目录执行:

启动生产环境:java -jar helloword-0.0.1-SNAPSHOT.jar --spring.profiles.active=prod

启动测试环境:java -jar helloword-0.0.1-SNAPSHOT.jar --spring.profiles.active=dev

只要端口不同就可以。

设置为后台部署:

   java -jar helloword-0.0.1-SNAPSHOT.jar --spring.profiles.active=prod &

   nohup java -jar yourapp.jar &

[root@localhost spring]# java -jar eureka-client-0.0.1-SNAPSHOT.jar &
[1] 2384
[root@localhost spring]# nohup java -jar eureka-client-0.0.1-SNAPSHOT.jar &
[1] 2366
[root@localhost spring]# nohup: 忽略输入并把输出追加到"nohup.out"

使用 tail -f nohup.out可以查看控制台日志

启动成功后会返回当前的进程id 

查看当前java应用有哪些在运行中:

[root@localhost spring]# ps -ef |grep java
root       2384   2288  9 09:40 pts/0    00:00:19 java -jar eureka-client-0.0.1-SNAPSHOT.jar
root       2422   2288  0 09:43 pts/0    00:00:00 grep --color=auto java

停止进程:kill -9 进程id

 

 

 

 

 

 

 

 

 

 

 

 

© 著作权归作者所有

共有 人打赏支持
HGMrWang
粉丝 7
博文 88
码字总数 41577
作品 0
深圳
程序员
私信 提问
《Spring Boot 实战:从0到1》第2章 快速开始Hello World

第2章 快速开始Hello World 大约20年前,程序员们使用“企业级Java Bean”(EJB)开发企业应用,需要配置复杂的XML。在二十世纪初期,新兴Java技术——Spring,横空出世。使用极简XML和POJO(...

程序员诗人
2017/08/01
0
0
SpringBoot学习之路:12.Spring Boot使用idea开发如何配置热加载

java开发的ide用最多的无非就是eclipse和idea,在eclipse中开发springboot,要使项目热加载资源只需要在pom文件中引入springboot的开发工devtools即可。但是该工具在使用idea开发springboot时...

MaxBill
2018/08/15
0
0
SpringBoot基础教程1.1.1 项目搭建

概述 为微服务而生,大大简化搭建工程的时间;个人理解,是一些框架的集合, 整合各个框架,降低使用门槛。 1.1. 特色 介绍项目的同时,推荐相关快捷键,熟能生巧,无需死记硬背。 2. 本节重...

Mkeeper
2018/07/02
0
0
SpringBoot系列一:SpringBoot入门

原文出处:晴枫 1 SpringBoot HelloWorld 功能:浏览器发送 sayHello 请求,服务器接受请求并处理,响应 Hello。 1.1 创建一个maven工程 com.seagetechspringboot-helloworld1.0.0 1.2 下载官...

晴枫
2018/11/21
0
0
第一个SpringBoot示例

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这...

zq木偶人
2018/07/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

IDE 插件新版本发布,开发效率 “biu” 起来了

近日,Cloud Toolkit正式推出了面向 IntelliJ 和 Eclipse 两个平台的新款插件,本文挑选了其中三个重大特性进行解读,点击文末官网跳转链接,可查看详细的版本说明。 本地应用一键部署到任何...

阿里云官方博客
24分钟前
1
0
我是怎样和Linux系统结缘并通过红帽RHCE认证的

我高考完当时就是选择的计算机科学与技术专业,上大学以后联想到的和计算机相关的就只有写代码,开发,网站,网页设计,就没有其他的了,当时学习写代码也都是在Windows上,什么C#、C++之类的...

linuxprobe16
25分钟前
0
0
Coding and Paper Letter(四十四)

资源整理。 1 Coding: 1.Rstudio2019年会“机器学习应用”的幻灯片,代码和数据 rstudio conf 2019 2.R语言包sparkxgb,Spark上XGBoost的R接口。 sparkxgb 3.自动SQL注入和数据库接管工具。 ...

胖胖雕
57分钟前
3
0
Ubuntu最新的主要操作系统放弃32位支持?

现在是2018年,2019年即将到来——64位处理器已经成为主流很长一段时间了。如果你仍然使用32位的电脑,那么是时候把它扔进垃圾箱了。 我为所有基于Linux的操作系统维护者感到自豪,他们有勇气...

Linux就该这么学
58分钟前
2
0
Fundebug发布Vue插件,简化BUG监控接入代码

摘要: 代码越短越好! 我们发布了fundebug-vue插件,可以简化Vue框架接入Fundebug的代码。 Vue如何接入Fundebug 1. 安装fundebug-javascript与fundebug-vue npm install fundebug-javascrip...

Fundebug
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部