标签:enter enc configure main函数 对象模型 下载 慢慢 for Delve
有一点.NET的开发基础,在学校学过基础语法,对JAVA有点兴趣,就简单学习了一下,记录一下从哪些方面入手的,暂时不打算深入到原理方面,先简单搭下环境看看,所以有些地方可能讲得不慎准确。
从网上的讨论来看,SSM框架似乎正在慢慢被Spring Cloud的取代。
Spring是一个开源的Java/Java EE全功能栈(full-stack)的应用程序框架,以Apache License 2.0开源许可协议的形式发布,也有.NET平台上的移植版本。该框架基于 Expert One-on-One Java EE Design and Development(ISBN 0-7645-4385-7)一书中的代码,最初由Rod Johnson和Juergen Hoeller等开发。
Spring Framework提供了一个简易的开发方式,这种开发方式,将避免那些可能致使底层代码变得繁杂混乱的大量的属性文件和帮助类。 简单来说,Spring是一个轻量级的 控制反转(IoC) 和 面向切面(AOP) 的容器框架。
如果学习JAVA Spring,这两个东西应该是绕不开的,但是暂时理解不深刻,后面准备深入到代码实现层面,与.NET进行一些比较。
在IoC出现以前,组件之间的协调关系是由程序内部代码来控制的,或者说,以前我们使用New关键字来实现两组间之间的依赖关系的。
这种方式就造成了组件之间的互相耦合。IoC(控制反转)就是来解决这个问题的,它将实现组件间的关系从程序内部提到外部容器来管理。
也就是说,由容器在运行期将组件间的某种依赖关系动态的注入组件中。
依赖注入(Dependency Injection):这就是DI,字面上理解,依赖注入就是将服务注入到使用它的地方。对象只提供普通的方法让容器去决定依赖关系,容器全权负责组件的装配,它会把符合依赖关系的对象通过属性(JavaBean中的setter)或者是构造子传递给需要的对象。
相对于IoC而言,依赖注入(DI)更加准确地描述了IoC的设计理念。所谓依赖注入,即组件之间的依赖关系由容器在应用系统运行期来决定,也就是由容器动态地将某种依赖关系的目标对象实例注入到应用系统中的各个关联的组件之中。
POP面向过程程序设计
OOP面向对象的程序设计
微服务
Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring MVC 分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。
Spring Boot就是Spring,它做了那些没有它你也会去做的Spring Bean配置。它使用“习惯优于配置”(项目中存在大量的配置,此外还内置了一个习惯性的配置,让你无需手动进行配置)的理念让你的项目快速运行起来。使用Spring Boot很容易创建一个独立运行(运行jar,内嵌Servlet容器)、准生产级别的基于Spring框架的项目,使用Spring Boot你可以不用或者只需要很少的Spring配置。
通过Web构建 http://start.spring.io/
IDEA
目前IDEA只支持Java8的JDK
Apache Maven,是一个软件(特别是Java软件)项目管理及自动构建工具,由Apache软件基金会所提供。基于项目对象模型(Project Object Model,POM)概念,Maven利用一个中央信息片断能管理一个项目的构建、报告和文档等步骤(生命周期)。
选择需要的依赖
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>demo</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.0.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<!-- 添加classpath依赖 -->
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- 开发者工具,当classpath下有文件更新自动触发应用重启 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<!-- maven编译插件,用于创建可执行jar包 -->
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
另一种是直接输入命令
不管使用哪种方法都可以启动项目,然后访问http://localhost:8080就可以打开网站看到控制器里面的内容了
package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@SpringBootApplication
public class DemoApplication {
@RequestMapping("/")
public String index(){
return "Hello Spring Boot";
}
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
对main函数所在的类进行修改,时期能接收Http请求并返回内容。
标签:enter enc configure main函数 对象模型 下载 慢慢 for Delve
原文地址:https://www.cnblogs.com/LFeather/p/10018011.html