前端架构

Spring和SpringMVC总结篇

倾然丶 夕夏残阳落幕 提交于 2019-12-04 17:39:23
作者:肥宅兜 链接:https://www.cnblogs.com/doudouxiaoye/p/5693399.html 1.为什么使用Spring ? 方便解耦,简化开发; 通过Spring提供的IoC容器,可以将对象之间的依赖关系交由Spring进行控制,避免硬编码所造成的过度程序耦合。 AOP编程的支持; 通过Spring提供的AOP功能,方便进行面向切面的编程,如性能监测、事务管理、日志记录等。 声明式事务的支持; 方便集成各种优秀框架; 降低Java EE API的使用难度; 如对JDBC,JavaMail,远程调用等提供了简便封装 2. 什么是IOC,为什使用IOC ? IOC全称Iversion of Controller,控制反转。 这概念是说你不用创建对象,而只需要描述它如何被创建。 你不在代码里直接组装你的组件和服务,但是要在配置文件里描述哪些组件需要哪些服务,之后一个容器(IOC容器)负责把他们组装起来。 它能指导我们如何设计出松耦合、更优良的程序。 3. 什么是AOP,为什么使用AOP ? AOP全称:Aspect-Oriented Programming,面向切面编程。 AOP,面向切面编程,就是把可重用的功能提取出来,然后将这些通用功能在合适的时候织入到应用程序中,比如事务管理、权限控制、日志记录、性能统计等。 AOP并没有帮助我们解决任何新的问题

github上值得关注的前端项目

为君一笑 提交于 2019-12-04 12:43:34
综合/资源 frontend-dev-bookmarks 一个巨大的前端开发资源清单。 star:15000 front-end-collect 分享自己长期关注的前端开发相关的优秀网站、博客、以及活跃开发者。 star:860 Front-end-Interview-questions 史上最全前端开发面试问题及答案 f2e-hub 包含 Animation,UI,dialog,Carousels,color,image,workflow 等。 star:100 awesome-javascript 一系列很棒的 javascript 库,资源。 star:3100 fks 前端技能汇总,包含前端知识架构,后端知识, linux ,书籍推荐等。 star:4000 node123 node.js 中文资料导航。 star:1200 mobile-web-favorites 移动端web开发收藏夹。 star:200 gulp-book Gulp 入门指南 样式/UI Semantic-UI 让你使用任何 HTML 标签 来表现UI控件。 这是一款语义化设计的前端框架,为攻城师而制作的可复用的开源前端框架。 star:17500 primer CSS 风格指南。 star:3600 测试/工具 mocha 一个简单、灵活有趣的 JavaScript 测试框架,用于 Node.js

微前端框架 single-spa

孤街浪徒 提交于 2019-12-04 08:46:10
单体应用对比前端微服务化 普通的前端单体应用 微前端架构 1.基本概念 实现一套微前端架构,可以把其分成四部分(参考:https://alili.tech/archive/11052bf4/) 加载器:也就是微前端架构的核心,主要用来调度子应用,决定何时展示哪个子应用, 可以把它理解成电源。 包装器:有了加载器,可以把现有的应用包装,使得加载器可以使用它们,它相当于电源适配器。 主应用:一般是包含所有子应用公共部分的项目—— 它相当于电器底座 子应用:众多展示在主应用内容区的应用—— 它相当于你要使用的电器 所以是这么个概念:电源(加载器)→电源适配器(包装器)→️电器底座(主应用)→️电器(子应用)️ 总的来说是这样一个流程:用户访问index.html后,浏览器运行加载器的js文件,加载器去配置文件,然后注册配置文件中配置的各个子应用后,首先加载主应用(菜单等),再通过路由判定,动态远程加载子应用。 2.预备知识 2.1 SystemJs SystemJS提供通用的模块导入途径,支持传统模块和ES6的模块。 SystemJs有两个版本,6.x版本是在浏览器中使用的,0.21版本的是在浏览器和node环境中使用的,两者的使用方式不同。(参考: https://github.com/systemjs/systemjs ) 在微服务中主要充当加载器的角色。 2.2 singleSpa

前端

只谈情不闲聊 提交于 2019-12-04 07:47:55
目录 前端 1.前端简介 2.软件开发架构 3.web服务的本质 4.http协议 a.什么是http协议 b.http协议介绍 html文档结构 标签的分类 前端 1.前端简介 什么是前端 任何与用户打交道的界面,都是前端 什么是后端 幕后操作者 为什么学前端 前后端都得会 2.软件开发架构 C/S B/S B/S本质也是C/S 统一接口 3.web服务的本质 关键就两字:请求 响应 浏览器输入网址,回车发生了那些事 朝着指定服务器地址发送请求 服务端接收请求并处理 返回响应的响应 浏览器接收并渲染出好看的界面给用户看 请求方式 get请求 朝服务器要资源 post请求 朝服务器提交数据 4.http协议 a.什么是http协议 超文本传输协议,规定了浏览器和服务端数据的传输格式 b.http协议介绍 a.http协议4大特性 基于tcp/ip作用于应用层之上的协议 基于请求响应 请求对响应 无状态 不保存客户端状态,无论客户端向服务端请求多少次,永远当做第一次请求客户端 无连接 客户端发送的请求服务端响应一次,此次通信就结束了 数据格式 请求格式 请求首行 请求头 /r/n 请求体 响应格式 响应首行 响应头 /r/n 响应体 响应状态码 用数字来表示一串文字信息 1xx:服务端已经成功接收了你的请求,正在处理,客户端可以继续发送请求 2xx:服务端成功响应了响应的数据 3xx

前端随心记---------Axios/fetch/ajax的区别

青春壹個敷衍的年華 提交于 2019-12-04 07:18:16
一.jQuery ajax $.ajax({ type: 'POST', url: url, data: data, dataType: dataType, success: function () {}, error: function () {} });   传统 Ajax 指的是 XMLHttpRequest(XHR), 最早出现的发送后端请求技术,隶属于原始js中,核心使用XMLHttpRequest对象,多个请求之间如果有先后关系的话,就会出现 回调地狱 。    JQuery ajax 是对原生XHR的封装,除此以外还增添了对 JSONP 的支持。经过多年的更新维护,真的已经是非常的方便了,优点无需多言;如果是硬要举出几个缺点,那可能只有: 1.本身是针对MVC的编程,不符合现在前端 MVVM 的浪潮 2.基于原生的XHR开发,XHR本身的架构不清晰。 3.JQuery整个项目太大,单纯使用ajax却要引入整个JQuery非常的不合理(采取个性化打包的方案又不能享受CDN服务) 4.不符合关注分离(Separation of Concerns)的原则 5.配置和调用方式非常混乱,而且基于事件的异步模型不友好。 二.axios axios({ method: "post", url: "/user/12345", data: { firstName: "liu",

前端01初步了解前端

孤人 提交于 2019-12-04 07:08:48
目录 软件开发架构 web服务器的本质 HTTP协议 是什么 HTTP协议的作用 为什么要有HTTP协议 HTTP协议的四个特性 1. 基于TCP/IP作用于应用层之上的协议 2.基于请求响应 4.无连接 3. 无状态 HTML 什么时HTML 使用HTML 注释 HTML的文档结构 标签的分类 head内的常用标签 body内常用标签 body 内的特殊号 标签分类 标签通常应该有两个属性 body内重要的标签 div span a 链接标签 img 图片标签 列表标签 有序列表 标题列表 软件开发架构 目前的软件开发架构有两种 b/s和c/s,我们现在用的架构已经慢慢在向b/s去靠拢了,就比如说微信小程序,支付宝小程序,出现小程序的原因,就是为了 统一接口 ,让你只使用一个软件,就能在这个软件上使用多个软件,也增加了用户量 web服务器的本质 其本质就是请求和响应 当我在浏览器输入一个网址时,首先会朝着指定的服务器发送一个请求,然后服务器接收请求,并进行处理,处理完成后会返回响应,最后浏览器会接收响应并渲染成页面给用户浏览 请求方式: get请求 朝服务器要资源,比如访问一个网址 post请求 朝服务器提交资源,比如登录功能 HTTP协议 是什么 全称是超文本传输协议,协议通俗的说就是一个规范,HTTP协议就是浏览器和服务器的沟通的一种规范 HTTP协议的作用

前端之html

夙愿已清 提交于 2019-12-04 07:04:10
目录 什么是前端 前端基础 前端必备知识点 软件开发架构 web服务的本质 请求方式 HTTP协议 是什么 四大特性 数据格式 响应状态码 HTML是什么 HTML文档结构 HTML的注释 标签的分类 双标签和自闭合标签 块级标签和行级标签 标签属性 HTML常用标签 head内常用标签 body内常用标签 body内特殊符号 body内重要的标签 div和span标签 链接标签a img图片标签 列表标签 标题列表 表格标签 什么是前端 简单来说,任何直接与用户打交道的操作界面都叫前端。 前端基础 html ---> 骨架 css ----> 衣服、打扮 JavaScript ----> 动态效果 html 标签 css 属性、选择器 JavaScript BOOM & DOOM 前端必备知识点 软件开发架构 c/s b/s 本质上也是c/s web服务的本质 客户端向服务端请求, 服务端向客户端相应 当在浏览器地址栏输入网址,回车会发生什么事情: 向指定的服务器地址(也就是IP+PORT)发送请求 服务器接受请求,并处理 服务器相应浏览器的请求 浏览器接收到,并渲染出好看的界面供用户观看 import socket server = socket.socket() server.bind(('127.0.0.1', 9527)) server.listen(5) while

前端day01

对着背影说爱祢 提交于 2019-12-04 07:04:05
目录 软件开发架构 web服务的本质 HTTP协议 HTML的注释 HTML的文档结构 标签的分类 标签的分类 列表标签 表格标签 软件开发架构 ​ c/s ​ b/s ​ b/s本质也是c/s ​ 统一接口(**) web服务的本质 ​ 请求 响应 ​ 浏览器输入网址,回车发生了哪些事 ​ 1 朝着指定的服务器地址发送请求 ​ 2 服务端接收请求,并处理 ​ 3 返回相应的响应 ​ 4 浏览器接收并渲染出好看的页面给用户看 ​ 请求方式 ​ 1.get请求 ​ 朝服务器要资源 ​ eg:敲www.baidu.com ​ 2.post请求 朝服务器提交数据 eg:登录功能 总分总 HTTP协议 ​ 超文本传输协议 ​ 规定了服务端与浏览器数据传输的数据格式 ​ 1四大特性 ​ 1 基于TCP/IP作用于应用层之上的协议 ​ 2 基于请求响应 ​ 请求对应响应 ​ 3 无状态 不保存客户状态 4 无连接 长连接 websocket 聊天室 2 数据格式 请求格式 请求首行(请求方式 协议版本) 请求头(一大堆K:V键值对) 请求体(敏感信息 密码 身份证号) 响应格式 响应首行(请求方式 协议版本) 响应头(一大堆K:V键值对) 响应体(给用户看的数据) 3 响应状态码 用数字来表示一串文字需要表达的意思 1xx:服务端已经成功接收到了你的请求,正在处理,你可以继续提交其他数据

微服务解决方案

◇◆丶佛笑我妖孽 提交于 2019-12-04 06:04:55
一、微服务架构演进过程 近年来我们大家都体会到了互联网、移动互联带来的好处,作为IT从业者,在生活中时刻感受互联网好处的同时,在工作中可能感受的却是来自自互联网的一些压力,那就是我们传统企业的IT建设也是迫切需要转型,需要面向外部客户,我们也需要应对外部环境的快速变化、需要快速创新,那么我们的IT架构也需要向互联网企业学习作出相应的改进,来支撑企业的数字化转型。 我们再看一下应用架构的演进过程,回忆一下微服务架构是如何一步一步进化产生的,最早是应用是单块架构,后来为了具备一定的扩展和可靠性,就有了垂直架构,也就是加了个负载均衡,接下来是前几年比较火的SOA,主要讲了应用系统之间如何集成和互通,而到现在的微服务架构则是进一步在探讨一个应用系统该如何设计才能够更好的开发、管理更加灵活高效。 微服务架构的基本思想就是“围绕业务领域组件来创建应用,让应用可以独立的开发、管理和加速”。 二、微服务架构的好处 我们总结了四个方面的优点,分别如下: 是每个微服务组件都是简单灵活的,能够独立部署。不再像以前一样,应用需要一个庞大的应用服务器来支撑。 可以由一个小团队负责更专注专业,相应的也就更高效可靠。 微服务之间是松耦合的,微服务内部是高内聚的,每个微服务很容易按需扩展。 微服务架构与语言工具无关,自由选择合适的语言和工具,高效的完成业务目标即可。 看到这里,大家会觉得微服务架构挺不错

前端进阶系列(三):HTML5新特性

谁说我不能喝 提交于 2019-12-04 04:32:25
HTML5 是对 HTML 标准的第五次修订。其主要的目标是将互联网语义化,以便更好地被人类和机器阅读,并同时提供更好地支持各种媒体的嵌入。HTML5 的语法是向后兼容的。现在国内普遍说的 H5 是包括了 CSS3,JavaScript 的说法(严格意义上说,这么叫并不合适,但是已经这么叫开了,就将错就错了)。 HTML5新特性 语义特性 HTML5赋予网页更好的意义和结构 文件类型声明(<!DOCTYPE>)仅有一型:<!DOCTYPE HTML>。 新的解析顺序:不再基于SGML。 新的元素:section, video, progress, nav, meter, time, aside, canvas, command, datalist, details, embed, figcaption, figure, footer, header, hgroup, keygen, mark, output, rp, rt, ruby, source, summary, wbr。 input元素的新类型:date, email, url等等。 新的属性:ping(用于a与area), charset(用于meta), async(用于script)。 全域属性:id, tabindex, repeat。 新的全域属性:contenteditable, contextmenu,