首页 > 其他分享 >day02-创建项目,注解,环境,容器

day02-创建项目,注解,环境,容器

时间:2022-10-29 12:36:03浏览次数:77  
标签:容器 String day02 application jsp 创建 注解 servlet public

2.2 创建Spring Boot项目

2.2.1 第一种方式, 使用Spring提供的初始化器, 就是向导创建SpringBoot应用

使用的地址: https://start.spring.io

step1:创建项目

step2

step3:选择依赖

SpringBoot项目的结构:

使用国内的地址

https://start.springboot.io

起步依赖

2.2 第二种方式,使用 springboot 提供的初始化器, 使用的国内的地址

国内地址: https://start.springboot.io

创建项目的步骤同上

第三种方式 使用 maven 向导创建项目

创建一个普通 maven 项目

添加 gav

点击 finish 创建,完成项目创建。

添加 Spring Boot 依赖

dependencies>
 <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>

创建启动类:加入@SpringBootApplication 注解

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

2.3 注解的使用

@SpringBootApplication
符合注解:由
@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan
    
    
1.@SpringBootConfiguration
    
@Configuration
public @interface SpringBootConfiguration {
    @AliasFor(
        annotation = Configuration.class
    )
    boolean proxyBeanMethods() default true;
}

说明:使用了@SpringBootConfiguration注解标注的类,可以作为配置文件使用的,
    可以使用Bean声明对象,注入到容器

2.@EnableAutoConfiguration

启用自动配置, 把java对象配置好,注入到spring容器中。例如可以把mybatis的对象创建好,放入到容器中

3.@ComponentScan

@ComponentScan 扫描器,找到注解,根据注解的功能创建对象,给属性赋值等等。
默认扫描的包: @ComponentScan所在的类所在的包和子包。
    

2.4 SpringBoot的配置文件

配置文件名称: application

扩展名有: properties( k=v) ; yml ( k: v)

使用application.properties, application.yml

例1:application.properties设置 端口和上下文

#设置端口号
server.port=8082
#设置访问应用上下文路径, contextpath
server.servlet.context-path=/myboot

例2: application.yml

server:
  port: 8083
  servlet:
    context-path: /myboot2

结构如下:

测试如下:

2.5 多环境配置

有开发环境, 测试环境, 上线的环境。

每个环境有不同的配置信息, 例如端口, 上下文件, 数据库url,用户名,密码等等

使用多环境配置文件,可以方便的切换不同的配置。

使用方式: 创建多个配置文件, 名称规则: application-环境名称.properties(yml)

创建开发环境的配置文件: application-dev.properties( application-dev.yml )

创建测试者使用的配置: application-test.properties

结果如下:

2.6 @ConfigurationProperties

@ConfigurationProperties: 把配置文件的数据映射为java对象。

属性:prefix 配置文件中的某些key的开头的内容。


@Component
@ConfigurationProperties(prefix = "school")
public class SchoolInfo {

    private String name;

    private String website;

    private String address;


    public String getName() {
        return name;
    }

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

    public String getWebsite() {
        return website;
    }

    public void setWebsite(String website) {
        this.website = website;
    }

    public String getAddress() {
        return address;
    }

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

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

application.properties

#配置端口号
server.port=8082
#context-path
server.servlet.context-path=/myboot

#自定义key=value
school.name=动力节点
school.website=www.bcht.com
school.address=北京的大兴区

2.7 使用jsp

SpringBoot不推荐使用jsp ,而是使用模板技术代替jsp

使用jsp需要配置:

1) 加入一个处理jsp的依赖。 负责编译jsp文件

<dependency>
    <groupId>org.apache.tomcat.embed</groupId>
    <artifactId>tomcat-embed-jasper</artifactId>
</dependency>
  1. 如果需要使用servlet, jsp,jstl的功能
<dependency>
	<groupId>javax.servlet</groupId>
	<artifactId>jstl</artifactId>
</dependency>

<dependency>
	<groupId>javax.servlet</groupId>
	<artifactId>javax.servlet-api</artifactId>
</dependency>

<dependency>
<groupId>javax.servlet.jsp</groupId>
	<artifactId>javax.servlet.jsp-api</artifactId>
	<version>2.3.1</version>
</dependency>

  1. 创建一个存放jsp的目录,一般叫做webapp

​ index.jsp

  1. 需要在pom.xml指定jsp文件编译后的存放目录。

META-INF/resources

5)创建Controller, 访问jsp

6)在application.propertis文件中配置视图解析器

2.8 使用容器

你想通过代码,从容器中获取对象。

通过SpringApplication.run(Application.class, args); 返回值获取容器。


public static ConfigurableApplicationContext run(Class<?> primarySource, String... args) {
        return run(new Class[]{primarySource}, args);
}

ConfigurableApplicationContext : 接口,是ApplicationContext的子接口
public interface ConfigurableApplicationContext extends ApplicationContext

2.9 ComnandLineRunner 接口 , ApplcationRunner接口

这两个接口都 有一个run方法。 执行时间在容器对象创建好后, 自动执行run()方法。

可以完成自定义的在容器对象创建好的一些操作。

@FunctionalInterface
public interface CommandLineRunner {
    void run(String... args) throws Exception;
}

@FunctionalInterface
public interface ApplicationRunner {
    void run(ApplicationArguments args) throws Exception;
}

标签:容器,String,day02,application,jsp,创建,注解,servlet,public
From: https://www.cnblogs.com/atao-BigData/p/16838474.html

相关文章

  • 获取指定容器的最新版tag
    例子:获取docker.io/jingjingxyk/nginx容器的最新tag#!/bin/bashset-eux__DIR__=$(cd"$(dirname"$0")";pwd)cd${__DIR__}#安装jq,解析jsontest$(whichjq|......
  • c++17 注解标签 attributes & c++ 枚举值
    c++标注c++17后逐渐完善注解标签语法:[[attribute]]types/functions/enums/etc 告诉编译器没有返回值[[noreturn]]常用于系统函数设计,如std::abort()std::exit()......
  • 基于C语言的通用型数据结构与容器库
    仓库地址:github:https://github.com/hellototoro/hlibcgitee:https://gitee.com/totorohello/hlibclist双向序列容器,用于将它们的元素保持为线性排列,并允许在序列的任何......
  • java基础-注解
    以下为本人的学习笔记 1.认识Annotation  JDK1.5开始,java增加了对元数据(即类的组成单元数据)的支持,也就是(Annotation)注解,它是代码里做的特殊标记,这些标记可以在编译,类......
  • 标准模板库 02 容器vector
    容器大致分为序列式容器(Sequence),关联式容器(Associative)和无序容器(Unordered),无序容器也可以归为关联式容器内。序列式容器(Sequence)array:数组,是一种固定大小的结构,静态空......
  • Spring 注解开发
    使用Spring注解前的配置<?xmlversion="1.0"encoding="UTF8"?><beansxmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/20......
  • day02-HTML02
    4.HTML4.3HTML基本标签4.3.9表格(table)标签基本语法:<tableborder="边框宽度"cellspacing="空隙大小"cellpadding="填充大小"></table>说明:table是表格标......
  • 注解Annotation
    1.1简介注解Annotation,也叫元数据。一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局......
  • k8s node节点重启docker后,所有该节点的容器无法运行。
    调度到该节点的pod,报错信息。'Errorresponsefromdaemon:cgroup-parentforsystemdcgroupshouldbeavalidslicenamedas"xxx.slice"'在对应node上发现所有容......
  • 查看docker容器运行服务错误日志
      #查看末尾3000行dockerlogs--tail3000e0864b9d33ef(容器ID)#滚动最后100行dockerlogs-f--tail100e0864b9d33ef#最后3000带查询dockerlogs--ta......