日志:117 评论:13
北京, 西城
【Java】Java运行环境

介绍

什么是Spring

我们说到Spring,一般指代的是Spring Framework,它是一个开源的应用程序框架,提供了一个简易的开发方式,通过这种开发方式,将避免那些可能致使代码变得繁杂混乱的大量的业务/工具对象,说的更通俗一点就是由框架来帮你管理这些对象,包括它的创建,销毁等

什么是Spring MVC

Spring MVC是Spring的一部分,Spring 出来以后,大家觉得很好用,于是按照这种模式设计了一个 MVC框架(一些用Spring 解耦的组件),主要用于开发WEB应用和网络接口,它是Spring的一个模块,通过Dispatcher Servlet, ModelAndView 和 View Resolver,让应用开发变得很容易。

什么是Spring Boot

初期的Spring通过代码加配置的形式为项目提供了良好的灵活性和扩展性,但随着Spring越来越庞大,其配置文件也越来越繁琐,太多复杂的xml文件也一直是Spring被人诟病的地方,特别是近些年其他简洁的WEB方案层出不穷,如基于Python或Node.Js,几行代码就能实现一个WEB服务器,对比起来,大家渐渐觉得Spring那一套太过繁琐,此时,Spring社区推出了Spring Boot,它的目的在于实现自动配置,降低项目搭建的复杂度,如需要搭建一个接口服务,通过Spring Boot,几行代码即可实现

安装

安装JDK

下载JDK12

https://www.oracle.com/technetwork/java/javase/downloads/jdk12-downloads-5295953.html

安装Eclipse

下载Eclipse

https://www.eclipse.org/downloads/

使用

Eclipse工程模板

Maven

Enterprise Application

Dynamic Web

EJB

Connector

Application Client

Static Web

JPA

安装Spring Boot

  • 打开Eclipse,点击 Help -> Eclipse Maketplace

  • 在弹出的窗口的 Find 里输入 Spring,在查询结果里面找到 Spring Tool 4 - for Spring Boot,安装它

  • 在下一步的窗口下面点击 Confirm

  • 在下一步的窗口下面勾选“I accept ...”,然后点击 Finish

  • 接下来窗口关闭,可以看到 Eclipse 右下角有安装状态提示,等待安装完成后会弹出对话框询问是否重新启动 Eclipse,点击 Restart Now

建立Spring Boot项目

  • 重启完成后,点击 File -> New -> Project

  • 在弹出的窗口里面可以找到 Spring Boot 文件夹,选择 Spring Starter Project,点击 Next

  • 在 Name 一栏输入项目名称 test

  • 下一步直接点击 Next

  • 在下一步的窗口左边的 Avaliable 里输入 Web,展开子项,勾选 Spring Web Starter,点击 Next

  • 下一步直接点击 Finish

  • 接下来窗口关闭,还是关注 Eclipse 右下角的状态提示,等待初始化完毕(第一次初始化的过程非常漫长,请耐心等待)

测试Spring Boot项目

  • 展开 Project Explorer 项目结构,选择 src -> main -> java -> com -> example -> test 节点

  • 在 test 节点下面建立目录 model(模型),controller(控制器)

  • 在 model 目录建立程序 Test.java,内容如下

package com.example.demo.model;

public class Test {
	
    private final long id;
    private final String content;
	
    public Test(long id, String content) {
        this.id = id;
        this.content = content;
    }

    public long getId() {
        return id;
    }

    public String getContent() {
        return content;
    }
}
  • 在 controller 目录建立程序 TestController.java,内容如下

package com.example.demo.controller;

import java.util.concurrent.atomic.AtomicLong;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

import com.example.demo.model.Test;

@RestController
public class TestController {

    private static final String template = "Hello, %s!";
    
    private final AtomicLong counter = new AtomicLong();

    @RequestMapping("/counter")
    public Test dealTest(@RequestParam(value="name", defaultValue="World") String name) {
        return new Test(counter.incrementAndGet(),
                            String.format(template, name));
    }
}
  • 右键项目 test,选择 Run As -> 9 Spring Boot App

  • 打开浏览器,输入网址 http://localhost:8080/counter,应该可以看到 Hello World 结果内容!

Spring Boot转Web

  • 打开项目 pom.xml 文件,添加打包方式设置

<packaging>war</packaging>
  • 添加依赖项,设置使用外部 tomcat 服务器

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
    <scope>provided</scope>
</dependency>
  • 启动程序 Application.java 增加两行引用

import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
  • 启动程序 Application.java 更改类继承父类 SpringBootServletInitializer

public class Application extends SpringBootServletInitializer {
  • 启动程序 Application.java 添加重载方法 configure

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(Application.class);
    }

Mavan

Apache Maven

下载

从官网下载 maven 包,地址 http://maven.apache.org/download.cgi

选择 Binary 包下载,地址 http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.1/binaries/apache-maven-3.6.1-bin.tar.gz

解压缩得到 apache-maven-3.6.1 目录

导入

  • 打开 Window -> Preferences -> Maven -> Installations

  • 点击 Add,在弹出的窗口的 Installation home 选择 apache-maven-3.6.1 目录

  • 点击 Finish 关闭窗口

  • 点击新添加的项目 apache-maven-3.6.1

  • 点击 Apply and close 关闭窗口

  • 打开 Window -> Preferences -> Maven -> User Settings

  • 修改 Global Settings 和 User Settings 改为 apache-maven-3.6.1/conf/settings.xml

  • 点击 Apply and close 关闭窗口

Mirror

设置镜像

如果发现 repo.maven.apache.org 慢的话可以设置一些镜像地址来提高速度

  • 打开 apache-maven-3.6.1/conf/settings.xml

  • 搜索 mirrors 节点,在里面添加自己的镜像地址

<mirror>
    <id>alimaven</id>
    <mirrorOf>central</mirrorOf>
    <name>aliyun maven</name>
    <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
  • 然后重新 build 就会使用这个镜像地址了

打包war

打包war

我们需要将项目打包成war,用来部署到tomcat上

  • 设置 Windows 环境变量 Path 增加指向 maven 的路径 apache-maven-3.6.1/bin

  • 重启电脑后,可以在 cmd 里输入命令 mvn -v 查看是否配置成功

Apache Maven 3.6.1 (d66c9c0b3152b2e69ee9bac180bb8fcc8e6af555; 2019-04-05T03:00:2
9+08:00)
Maven home: C:\Users\tongfu\eclipse\jee-2019-06\eclipse\apache-maven-3.6.1\bin\.
.
Java version: 12.0.2, vendor: Oracle Corporation, runtime: C:\Program Files\Java
\jdk-12.0.2
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"
  • 通过 cd 命令进入到自己的项目根目录,执行 mvn clean package,看到如下信息则表示成功了

[INFO] Replacing main artifact with repackaged archive
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  01:00 min
[INFO] Finished at: 2019-08-28T17:54:54+08:00
[INFO] ------------------------------------------------------------------------
  • 然后就可以在项目的 target 目录下面找到打包完成的 war 文件了