快速入门web后台程序开发

先导知识

http协议

简述

超文本传输协议,是因特网上应用最为广泛的一种网络传输协议,无状态,是请求响应式的,基于TCP/IP通信协议,用于服务器与客户端之间的数据传输。

工作原理

HTTP 工作原理 HTTP协议工作于客户端-服务端架构为上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送请求,Web服务器根据接收到的请求后,向客户端发送响应信息。

Web服务器有:Apache服务器,IIS服务器(Internet Information Services)等。

HTTP默认端口号为80,但是你也可以改为8080或者其他端口。

HTTP三点注意事项:

  • HTTP是无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
  • HTTP是媒体独立的:这意味着,只要客户端和服务器知道如何处理的数据内容,任何类型的数据都可以通过HTTP发送。客户端以及服务器指定使用适合的MIME-type内容类型。
  • HTTP是无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。 快速入门web后台程序开发_第1张图片

RESTFUL规范

REST本身并没有创造新的技术、组件或服务,而隐藏在RESTful背后的理念就是使用Web的现有特征和能力, 更好地使用现有Web标准中的一些准则和约束。虽然REST本身受Web技术的影响很深, 但是理论上REST架构风格并不是绑定在HTTP上,只不过目前HTTP是唯一与REST相关的实例。 所以我们这里描述的REST也是通过HTTP实现的REST。

RESTful架构应该遵循统一接口原则,统一接口包含了一组受限的预定义的操作,不论什么样的资源,都是通过使用相同的接口进行资源的访问。接口应该使用标准的HTTP方法如GET,PUT和POST,并遵循这些方法的语义。

URI规范

  • 不要用大写
  • 单词间使用下划线'_'
  • 不使用动词,资源要使用名词复数形式,如:user、rooms、tickets
  • 层级 >= 三层,则使用'?'带参数

users/1/address/2/citys (bad) /citys?users=1&address=2; (good)


##Request

Method

  • GET:查询资源

  • POST:创建资源

  • PUT/PATCH

    • PUT:全量更新资源(提供改变后的完整资源)
    • PATCH:局部更新资源(仅提供改变的属性)
  • DELETE:删除资源


安全性与幂等性

  • 安全性:任意多次对同一资源操作,都不会导致资源的状态变化
  • 幂等性:任意次对同一资源操作,对资源的改变是一样的

git

java

Spring Boot

Spring Boot1.x是由spring官方团队在spring mvc4.x的基础上为了简化spring应用的初始搭建以及开发过程而开发的框架。所以对于有spring和spring mvc基础的人来说上手会相当快,即使没有这个基础,以后在使用的过程中也可以多补充补充相关知识,有助于更好的使用sringboot。

在此先略过mvc模式的讲解,直接先说控制器层相关知识。(更多相关知识可查看官网)

首先springboot项目的创建极为简单

最基本的springboot项目

  1. 创建一个普通的maven项目(有关maven的相关知识另外讲解,在此不必深究)
  2. 在pom.xml文件添加配置,保存后maven会自动下载被依赖的jar包
<parent>
    <groupId>org.springframework.bootgroupId>
    <artifactId>spring-boot-starter-parentartifactId>
    <version>1.5.14.RELEASEversion>
parent>
<dependencies>
    <dependency>
        <groupId>org.springframework.bootgroupId>
        <artifactId>spring-boot-starter-webartifactId>
    dependency>
dependencies>
  1. 创建类
import org.springframework.boot.*;
import org.springframework.boot.autoconfigure.*;
import org.springframework.stereotype.*;
import org.springframework.web.bind.annotation.*;

@RestController
@EnableAutoConfiguration
public class Example {

    @RequestMapping("/")
    String home() {
        return "Hello World!";
    }

    public static void main(String[] args) throws Exception {
        SpringApplication.run(Example.class, args);
    }

}

可以看到这个类中有main方法,运行这个类,从浏览器访问 http://localhost:8080 可看到浏览器显示Hello World! 表示springboot的基本环境搭建成功。

相关注解讲解

  • @RestController注解,相当于@Controller+@ResponseBody两个注解的结合,返回json数据不需要在方法前面加@ResponseBody注解了,但使用@RestController这个注解,就不能返回jsp,html页面,视图解析器无法解析jsp,html页面
  • @RequestMapping("/"),路由配置

你可能感兴趣的:(快速入门web后台程序开发)