zoukankan      html  css  js  c++  java
  • springboot第一个项目【创建】

    1.new project,不勾选create from archetype,直接选择

    2.next下一步

    Maven依赖管理中,唯一标识一个依赖项是由该依赖项的三个属性构成的,分别是groupId、artifactId以及version。这三个属性可以唯一确定一个组件(Jar包或者War包)。groupId和artifactId是为了保证项目唯一性提出的。

    参照maven中的groupId和artifactId到底指的是什么?

    groupId:一般分为多段,第一段为域(org: 非营利组织,com:商业组织,cn:中国)。第二段为公司名称,第三段为公司内部的部门,如qa等。

    artifactId:项目名称

    version: snapshot和正式版本。快照版本和正式版本的主要区别在于:本地获取这些依赖的机制不同。

    • 正式版本:如果依赖一个库的正式版本,那构建时会先在仓库中查找是否已经有如果没有才会去远程拉
    • snapshot:依赖snapshot库,每次构建项目时就会去远程拉它所依赖的版本。在配置Maven的Repository的时候中有个配置项,可以配置对于SNAPSHOT版本向远程仓库中查找的频率。频率共有四种,分别是always、daily、interval、never。 ![](./mavenauto.jpg)

    3.pom.xml配置

    • 在properties中配置版本信息,接下来可以用${java-version}来使用该版本号
      1 <properties>
      2       <java.version>1.8</java.version>
      3 </properties>
      View Code
    • 配置依赖的jar包,以<dependency></dependency>放在<dependencies></dependencies>中
      1 <dependencies>
      2         <dependency>
      3             <groupId>org.springframework.boot</groupId>
      4             <artifactId>spring-boot-starter-web</artifactId>
      5         </dependency>
      6 </dependencies>
      View Code
    • 在distributionManagement段中配置的是snapshot快照库和release发布库的地址,主要是id和url的配置,配置后就可以通过mvn deploy进行发布了
      1 <distributionManagement>
      2    <repository>
      3        <id>deployment</id>
      4        <name>internal repository for releases</name>
      5        <url>http://repo.caimi-inc.com/nexus/content/repositories/releases/</url>
      6     </repository>
      7 </distributionManagement>
      View Code
    • parent:配置被继承的父项目的具体信息,可以继承父项目的配置信息,如dependencies等 
      1 <parent>
      2        <groupId>org.springframework.boot</groupId>
      3        <artifactId>spring-boot-starter-parent</artifactId>
      4        <version>1.1.0</version>
      5 </parent>
      View Code
    • 构建中依赖的插件
      1 <build>
      2        <plugins>
      3            <plugin>
      4                <groupId>org.springframework.boot</groupId>
      5                <artifactId>spring-boot-maven-plugin</artifactId>
      6            </plugin>
      7        </plugins>
      8 </build>
      View Code
    • 资源配置:也是在build中配置的。无需编译,是一些properties或XML配置文件,构建过程中会往往会将资源文件从源路径复制到指定的目标路径
       1 <build>  
       2    <resources>  
       3      <resource>  
       4        <targetPath>META-INF/plexus</targetPath>  
       5        <filtering>false</filtering>  
       6        <directory>${basedir}/src/main/plexus</directory>  
       7        <includes>  
       8          <include>configuration.xml</include>  
       9        </includes>  
      10        <excludes>  
      11          <exclude>**/*.properties</exclude>  
      12        </excludes>  
      13      </resource>  
      14    </resources>  
      15 </build>  
      View Code

    4.项目结构

    • src—main下创建java目录,且右键选择mark directory as sources root
    • 在java目录下创建包,包名应该全为小写,包名前缀为groupId.artifactId.XXX
    • 在包下创建类 Main,作为程序入口
    • target是存放编译后的文件

    5.添加代码

    • 在Main类中添加一个main函数
     1 package cn.zll.testproject.controller; //这个要改成自己的包名
     2 import org.springframework.boot.SpringApplication;
     3 import org.springframework.boot.autoconfigure.SpringBootApplication; 
     4 //添加注解SpringBootApplication,是一个复合注解,包含下面三个: 
     5 //@Configuration:表示将该类作用springboot配置文件类。 
     6 //@EnableAutoConfiguration:表示程序启动时,自动加载springboot默认的配置
     7 //@ComponentScan:表示程序启动是,自动扫描当前包及子包下所有类
     8 @SpringBootApplication public class Main { 
     9     public static void main(String[] args){ 
    10         //创建一个SpringApplication 
    11         SpringApplication app = new SpringApplication(Main.class); 
    12         app.run(args); 
    13     }
    14 }
    View Code
    • 在包名下创建一个controller包,并添加一个类IndexController
     1 package cn.zll.springboottest.controller; 
     2 import org.springframework.stereotype.Controller; 
     3 import org.springframework.web.bind.annotation.RequestMapping; 
     4 import org.springframework.web.bind.annotation.RequestMethod; 
     5 
     6 //用Controller注解为控制器 
     7 @Controller 
     8 public class IndexController { 
     9     //拦截/路径的get请求,返回index.html中的内容 
    10     @RequestMapping(value = "/", method = RequestMethod.GET) 
    11     public String index(){ 
    12         return "index"; 
    13     } 
    14 }     
    View Code
    • 在resources下添加templates,并添加index.html文档
      •  注:需要在pom.xml中添加依赖 

        1 <dependency>
        2         <groupId>org.springframework.boot</groupId>
        3         <artifactId>spring-boot-starter-thymeleaf</artifactId>
        4 </dependency>
        View Code

    6.执行

    右键Main类,直接Run —> 打开浏览器,输入localhost:8080,就可以访问

  • 相关阅读:
    消息队列 ActiveMQ
    Redis
    SQL 怎么用EXISTS替代IN
    SQL优化
    为什么要重写hashCode()和equals()方法
    Redis的介绍和面试可能问到的问题
    建立私有CA和颁发证书
    修复grub2
    Centos 7 进入救援模式
    Centos 服务的常用命令
  • 原文地址:https://www.cnblogs.com/coolqiyu/p/7866094.html
Copyright © 2011-2022 走看看