目录

一、创建Spring项目

 二、介绍理论

一、创建Spring项目

通过maven创建Spring项目,我们需要借助一些工具完成工程的创建。

1.pom.xml 2.一部分示例代码

Spring提供了一个Spring Initializr使用网页版本。

 然后将得到文件的内容用idea打开。然后执行会显示未连接数据库。

然后我们在这个文件夹下连接上数据库。

spring.datasource.url=jdbc:mysql://127.0.0.1:3306/ccb_1221?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai

spring.datasource.username=root

spring.datasource.password=200177

然后在浏览器中搜索127.0.0.1:8080即可以进入我们创建的程序,这时还没有输出所以会显示错误。

 然后我们输出库中book表的信息。

@Data

public class Book {

private Integer bid;

private String name;

private int current;

private int total;

}

@Mapper

public interface BookMapper {

@Select("select bid, name, current, total from books order by bid")

List selectAll();

}

@Controller

public class TestController {

@Autowired

private BookMapper bookMapper;

@GetMapping("/")

@ResponseBody

public List testIndex() {

return bookMapper.selectAll();

}

}

 再在浏览器中搜索127.0.0.1:8080,就会显示表内的信息。

 二、介绍理论

早期的Web应用:

  以上的这个程序的职责:以资源的形式对外提供服务,以服务器这个角色出现,提供的是Web服务,所以我们一般称其为Web服务器,又由于网络中数据交换采用的格式(协议)是HTTP协议,所以又把Web服务器成为HTTP服务器。Java中最常使用的是Tomcat软件。

常见的浏览器:IE,Edge,Chrome,Firefox,Safari,QQ浏览器,360浏览器。

 上图本质上就是人访问资源,但是不能直接访问,需要通过浏览器访问。

 网络语境下,一般不称作电脑,称为主机,因为网络不止有电脑,可能有其他硬件,Pad、摄像头、手机等。

从用户工作的电脑上,由浏览器发出的请求,怎么就知道目标主机是哪一个,而不会走错呢?通过ip地址(理论上,网络中每一个主机都是一个主机的唯一的ip地址)所以,只要ip地址是确定的,则目标主机就确定了。但由于人类不方便记忆ip地址,所以通过域名来表示ip地址,通过一种叫做DNS服务器来把域名换成ip地址。

 Web服务器(Tomcat)要对外提供服务,必须提前开辟好端口,一般情况下,HTTP开发阶段使用的都是8080端口,但在最终正式提供服务的时候要使用80端口(这是一个规定)。

 地址栏输入 url: 127.0.0.1:8080/hello

1、找到目标主机:127.0.0.1

2、在对应的主机上找到对应的端口(port),进而找到对应的进程 (如果对应的主机不存在或者主机上对应的端口不存在结果如何?浏览器在尝试建立连接,无法建立连接浏览器会重试,但多次重试仍然不不成功,最终显示会是无法访问)

3、根据资源路径 (resource path),访问对应的资源 如果路径对应的资源存在,则web 服务器将资源的内容通过响应的方式返回 如果路径对应的资源不存在,则web 服务器会响应 404 Not Found。

关于端口 (port):一个端口同一时间,只能被一个进程(而不是程序)监听,反过来,一个进程可以同时监听多个端口。

URL 的标准格式Unique Resource Location(唯一资源定位符)

协议名称://主机,/资源路径?查询字符串#文档片段

1. http 协议 http://127.0.0.1:8080 省略资源路径,说明请求的是首页路径(一般是/或者 index.html)  http://127.0.0.1:8080/hello http://127.0.0.1/hello 省略端口号,说明端口是 http 协议的标准端口,即 80 端口 

2.https 协议: 关于 http 的一个安全加密协议,标准端口号是 443 https://127.0.0.1:8080/ https://127.0.0.1:8080/hello https://127.0.0.1/hello 省略端口,即 443 端口 

3.常见的基本是 http 或者 https(现在实际中,https 占主流) https://www.baidu.com/   https://www.qq.com/   https://jd.com/

当我们在地址栏输入内容时,由于现在的浏览器比较智能 1.我们的过程中,浏览器在帮我们自动提示或者自动补全,导致最终输入的地址不是我 们想输的地址。

2.输入之后的内容如果不符合 URL 标准,浏览器在我们导航搜索引擎上去了

3.所以正确的输入 url,才可以得到我们想要的结果

1.先找到主机

2.再找到端口 (进程)

3.再找到资源

我们平时看到的网页,其实不止一个资源,而是由多个资源共同配合完成的(入口的 html 类型的资源 (1.html 类型是内容的类型2.还有很多的图片资源 jpg、png、gif、webp ...3.有很多的 JavaScript 资源在工作4.为了网页好看,有很多的 css 资源在工作)

早期的网页,大多是一个资源展示一个效果,现在的网页,很多是 N 个资源展示一个效果。

一次请求/响应 (HTTP 协议) 只处理一个资源的所以要展示一个效果,需要 N 个请求/响应,进而得到 N 资源的内容,最终配合以展示。

资源的分类 (生成方式的分类) (1)静态资源: 提前生成的内容 (2)动态资源: 运行期间生成的内容

资源根据内容的格式不同,也可以看作不同的类型(无穷多个类型),常见的有:

1.html 格式 - Hyper Text Markup Language - 超文本标记语言 - web 应用中用于框架和内容 也就是图纸、毛坏房。

2.css格式 - Cascading Style Sheets - 层叠样式表 - web 应用中的显示布局和样式 也就是装修,让房子好看

3.JavaScript 格式 运行在浏览器的一门语言 - JS 脚本 - web 应用中做逻辑处理

4.多媒体格式 (1)图片   jpg jpeg、png、gif、webp、 bmp (2)音频   aac、mp3 .... (3)视频   mp4 mpeg4、flv、mkv ...

5.纯文本格式  txt

6.结构化数据  json、xml  

查看原文