乐趣区

关于java:Spring从入门到入土概述以及HelloWorld

第一篇本文次要介绍了 Spring 的基本概念以及如何疾速编写一个 Spring 我的项目,并让它运行起来。

Spring 概述

长处

  • Spring 是一个开源收费的框架、容器
  • Spring 是一个轻量级的框架、非侵入式的
  • 管制反转 Ioc、面向切面 Aop
  • 对事务的反对以及对框架的反对

总之:

spring 是一个轻量级的管制反转(Ioc)和面向切面(AOP)的非侵入式框架。

学习网址:Spring-core 学习网址

组成

  • 组成 Spring 框架的每个模块都能够独自存在,或者与其余一个或多个模块联结实现:
    • 外围容器:外围容器提供 Spring 框架的基本功能,次要组件是 BeanFactory,是工厂模式的实现。其 BeanFactory 应用管制反转(IOC)模式将利用水平的配置和依赖性标准与理论的利用程序代码离开
    • Spring 上下文:是一个配置文件,向 Spring 框架提供上下文信息。其次要包含:企业服务,例如 JNDI、EJB、电子邮件、国际化、校验和调度性能
    • Spring AOP:通过配置管理个性,将面向切面的编程性能,集成到了 Spring 框架中,所以能够很不便的使 Spring 框架治理任何反对 AOP 的对象。也为基于 Spring 的应用程序中的对象提供了事务管理服务。应用 SpringAOP 能够不依赖组件,就能够将申明性事务管理集成到应用程序中。
    • Spring DAO:Spring DAO 形象层提供了有意义的异样层次结构,能够用该构造来治理异样解决和不同数据库供应商抛出的错误信息。异样层次结构简化了谬误的解决,并且升高了须要编写的异样代码数量。
    • Spring ORM:Spring 框架插入了若干个 ORM 框架,从而提供了 ORM 的对象关系工具,其中包含 JDO、Hibernate 和 iBatis SQL Map。所有这些都听从 Spring 的通用事务和 DAO 异样层次结构。
    • Spring Web 模块:Web 上下文模块建设在应用程序上下文模块之上,为基于 Web 的应用程序提供了上下文。所以,Spring 框架反对与 Jakarta Struts 的集成。Web 模块还简化了解决多局部申请以及将申请参数绑定到域对象的工作。
    • Spring MVC 框架:MVC 框架是一个全功能的构建 Web 应用程序的 MVC 实现。通过策略接口,MVC 框架变成为高度可配置的,MVC 包容了大量视图技术,其中包含 JSP、Velocity、Tiles、iText 和 POI。

现代化的 Java 开发

  • Spring Boot:构建所有
    • 一个疾速开发的脚手架,能够疾速开发单个微服务。
    • 约定大于配置
  • Spring Cloud:协调所有
    • SpringCloud 是基于 SpringBoot 实现的
  • Spring Cloud Data Flow:连贯所有

Hello World

通过下面的介绍咱们晓得了 Spring 的长处以及 Spring 的组成,上面咱们就通过官网的指引来疾速开始建设一个 Spring Boot 我的项目

开始一个 Spring Boot 我的项目

应用疾速开始来创立一个 web 我的项目,如下图所示:

有一下几点须要特地的留神:

  • 咱们须要在依赖关系中手动增加 web 依赖关系
  • 而后实现属于本人的个性化配置,而后点击生成。

点击生成后咱们就会失去一个压缩包,而后只须要解压,而后用 idea 关上,就实现了一个 Spring Boot 的创立。

须要手动来引入 pom 文件

编写本人的代码

在 Application.java 文件是咱们的启动文件,也是咱们程序的主办法,在外面咱们能够编写咱们本人的代码,如下所示

package com.zhonghu.springhelloworlddemo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
// 应用此注解将类被标记为 Controller,并且 Controller 类中的办法返回值不会解析为门路跳转,只会返回一个字符串在 response 中。@RestController
public class SpringHelloworldDemoApplication {public static void main(String[] args) {SpringApplication.run(SpringHelloworldDemoApplication.class, args);
    }

    // 通知 Spring 咱们用 hellodemo 办法来响应 /hello
    @GetMapping("/hello")
    //@Requestparam 通知 Spring 在申请中冀望的一个值,如果不存在,则应用前面的默认值
    public String hellodemo(@RequestParam(value = "name",defaultValue="World")String name){return String.format("Hello %s!",name);
    }
}

启动程序

启动方才咱们编写的程序

可能遇到的意外状况诸如:8080 端口被占用

  • 查看端口 8080 被那个过程占用
    • netstat -ano | findstr “8080”
  • 查看对应过程号的过程
    • tasklist | findstr “5768”
  • 杀死过程
    • taskkill -pid 过程 pid -f

启动胜利后拜访咱们的链接:http://localhost:8080/hello 拜访页面如下:

因为咱们没有拼接咱们的名字所以显示的默认名字 World,咱们也能够在浏览器前面先长期拼接上咱们的名字如下所示:

这样咱们就实现了第一行代码的编写,并且胜利让其运行起来了。这里咱们用到的代码,将会在咱们日后的学习中学习到,想要持续学习 Spring 相干的常识请继续关注我!

总结

  • spring 是一个轻量级的管制反转(Ioc)和面向切面(AOP)的非侵入式框架。
  • Spring 的组成
    • Spring Core:外围容器
    • Spring AOP:通过配置管理个性,面向 Spring 切面的编程性能
    • Spring ORM:对象——关系映射
    • Spring DAO:DAO 形象层
    • Spring Web:提供了创立 Web 应用程序的反对
    • Spring context:是一个配置文件,向 Spring 框架提供上下文信息
    • Spring Web MVC

最初

  • 如果感觉看完有播种,心愿能给我点个赞,这将会是我更新的最大能源,感激各位的反对
  • 欢送各位关注我的公众号【java 冢狐】,专一于 java 和计算机基础知识,保障让你看完有所播种,不信你打我
  • 如果看完有不同的意见或者倡议,欢送多多评论一起交换。感激各位的反对以及厚爱。

欢送关注公众号“Java 冢狐”,获取最新消息

退出移动版