SpringBoot笔记1-使用idea创建SpringBoot的hello world
博客专区 > HGMrWang 的博客 > 博客详情
SpringBoot笔记1-使用idea创建SpringBoot的hello world
HGMrWang 发表于5个月前
SpringBoot笔记1-使用idea创建SpringBoot的hello world
  • 发表于 5个月前
  • 阅读 33
  • 收藏 2
  • 点赞 0
  • 评论 0

腾讯云 十分钟定制你的第一个小程序>>>   

摘要: spring-boot
  • 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

 

 

 

 

 

 

 

 

 

 

 

 

标签: Spring Boot
共有 人打赏支持
粉丝 4
博文 52
码字总数 35061
×
HGMrWang
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: