终于完成了所有自己想要的功能(鼓励下自己),虽然还是很简陋,但是还是挺有满足感的,哈哈. 附上前两篇的链接: 第一篇 第二篇 进入正题,在第二篇里面已经完成了连接数据库,并且实现了对数据库的增删改查,下面咱们来实现上传的图片存储数据库,并且在第二次访问时返回这张上传的图片. 昨天遇到的问题是这样的,因为进入首页时候会读取模板(routes/index.js),代码如下: router.get('/', function(req, res) { res.render('index', { titl…
先说明一下缘由,因为自己前段时间在实习,实习期间为了参与项目开发,粗略学习了下Vue.Vuex.Vue-Router,大致会一些基础的.这里也快要做毕业设计了,趁着放假回来的这两天,学习下Node的相关知识,最主要的是学习了Express这个基于Node的web框架,我自己本身选的毕设题目也是有关Node的,自然而然地想去用Vue和Express来做一个前后端分离的项目,也算是为毕业设计做准备了.下面进入正题. 一. Vue和Express怎么实现前后端分离呢 在接触Express的时候,更多的…
前端向后台传输数据: 传输方法:post  get 区别: (1)get:用于从服务器获取数据,将参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到. post:用于向服务器提交数据,通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址.用户无法看到这个过程. (2)get:服务器端用Request.QueryString获取变量的值. post:服务器端用Request…
前端向后台传输数据: 传输方法:post  get 区别: (1)get:用于从服务器获取数据,将参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到. post:用于向服务器提交数据,通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址.用户无法看到这个过程. (2)get:服务器端用Request.QueryString获取变量的值. post:服务器端用Request…
今天来写一下怎么登录和维持登录状态. 相信登录验证大家都比较熟悉,在Javaweb中一般保持登录状态都会用session.但如果是前后端分离的话,session的作用就没有那么明显了.对于前后端分离的项目目前比较流行的是jwt验证.参考文章:https://blog.csdn.net/qq_27828675/article/details/80923678 其实,作为开发一整个项目来说,以我一年多开发经验来,建议大家先做个需求开发文档,把项目的业务大致构思一下.然后再统一把数据库设计好,把用到的…
后端发送多个protobuffer消息到前端,前端用socket监听,如何区分消息类型呢? //定义心跳包 DseHeartbeat _DseHeartbeat; DseHeartbeat _DseHeartbeat1; _DseHeartbeat.set_time( ); ]; memset ( a ,,); std::string str; _DseHeartbeat.SerializeToString( &str ); memcpy(a,str.c_str(),str.length());…
一.查阅开发文档 首先,要做这个功能前,我们必须先查阅后台接口文档,了解使用登录接口时,需要提交哪些参数,并且接口使用返回的数据. 这里我使用了一个返回json格式数据的登录接口为例,讲解怎么使用Ajax与后台接口交互. 由上图开发文档里,我们可以清楚的知道,要使用这个登录接口,我们只需要提交账号adminName和密码pwd两个参数. 二.编写javascript(Ajax)实现登录 var xmlhttp; if (window.XMLHttpRequest){//IE7+, Firefox…
1.使用node http-server 起本地服务器  或者打开nginx 直接用nginx的默认页面也可以 (用下面的html文件替换nginx下html文件夹下的index.html) http-server -p 8888 然后在浏览器打开 localhost:8888 打开页面 jQuery ajax 请求数据 <!DOCTYPE html> <html> <head> <title>node</title> </head>…
View它相当于是一个点击触发一个事件,但是它的事件应该是相对来说可能是比较是偏向于页面上的一些展示,或者说是页面上的一些导航的一些跳转.Button它是一个标签, button是一个标签,一般去触发按钮的话大部分我们会去让我们的小程序页面和我们的后端进行一个交互,交互的时候它会有一个网络的延时.当有网络延时的时候我们就可以使用这个loading. <button>按钮</button> <button size="mini">按钮1</but…
WebSocket 的介绍 WebSocket 是什么 WebSocket 是一种网络通信协议.RFC6455 定义了它的通信标准. WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议. 为什么需要 WebSocket 了解计算机网络协议的人,应该都知道:HTTP 协议是一种无状态的.无连接的.单向的应用层协议.它采用了请求/响应模型.通信请求只能由客户端发起,服务端对请求做出应答处理. 这种通信模型有一个弊端:HTTP 协议无法实现服务器主动向客户端发…
之前在做站内信时,用到了 WebSocket ,整理了一些笔记分享如下.本文基于 SpringBoot 2.1.5,本文不涉及环境搭建. 引入依赖 在 Spring 中要使用 WebSocket 功能,需要在pom中引入依赖: <dependency>    <groupId>org.springframework.boot</groupId>    <artifactId>spring-boot-starter-websocket</artifact…
websocket通信是很好玩的,也很有用的的通信方式,使用方式如下: 第一步由于springboot很好地集成了websocket,所以先在在pom.xml文件中引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websocket</artifactId> </dependency> 第二步在前端…
1.ajax:短连接 2.websocket :长连接,双向的.   node搭建的websocket服务器,推送信息给客户端浏览器 :https://www.cnblogs.com/fps2tao/p/7875669.html (亲测有效,代码实现不难) 3.server-sent event (简称 SSE):只是从服务器端往客户端单向传输数据.概念:http://www.ruanyifeng.com/blog/2017/05/server-sent_events.html  教程:http…
根据前端跨域的那些事这篇文章中的跨域的理解这一块,我们重新创建两个服务,第一个服务使用了test.html const http = require('http') const fs = require('fs') http.createServer(function (request, response) { console.log('request come', request.url) const html = fs.readFileSync('test.html', 'utf8') re…
安装依赖 npm install --save axios # vue-axios是对axios的简单封装 npm install --save vue-axios 用例 在main.js里面进行全局引入 import Vue from 'vue' // 这里引入 import Axios from 'axios'; import VueAxios from 'vue-axios'; import App from './App' import router from './router' //…
锁 概念 锁是计算机协调多个进程或线程并发访问某一资源的机制.  在数据库中,除传统的计算资源(如CPU.RAM.I/O等)的争用以外,数据也是一种供许多用户共享的资源.如何保证数据并发访问的一致性.有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素.从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂. 分类 1.从对数据操作的类型(读\写)分 读锁(共享锁):针对同一份数据,多个读操作可以同时进行而不会互相影响. 写锁(排它锁):当前写操作没有完成前,它会…
删除数据库表 drop table [if exists] 表一,表二.....; 表分区:比如图书信息表有1000万个图书信息,如何优化他,其中一种方式就是表分区.就是把一张表的数据分成多个区块,这些区块可以在同一个磁盘上,也可以在不同的磁盘上. 基本操作如下: 先创建bookinfo的表,然后分区“partition by range(xx)”就是通过xx来分区. 里面分了三个区,p1,p2,p3.分别为20109999之前,20159999之前,和其他. 向表中插入数据“insert in…
关于前端接口传递的方法,推荐按以下使用: 若要在服务器上创建资源,推荐使用POST方法 若要检索某个资源,推荐使用GET方法 若要更新资源,推荐使用PUT方法 若要删除某个资源,推荐使用DELETE方法 另外本章主要讲述的是关于前后端通信关于对应性,前端为react的View,会分传递不同值有不同的处理情况. 首先关于Springboot内的代码变更都是在IndexController.java内,以下是代码: package maven.example.controller; import o…
之前总结过一篇vue-cli 2.x+express+json-server实现前后端分离的帖子,@vue/cli3.0及4.0搭建的项目与vue-cli2.x的项目结构有很大的不同.这里对@vue/cli 4.0+express实现前后端分离的经验进行总结. 一.准备: @vue/cli 4.0搭建的vue前端项目 Express 应用生成器 npm install express-generator -g 二.这里首先对express搭建后端项目进行介绍 express 项目名 cd 项目名…
1,下载 jsp 版本的 百度编辑器,点击此处下载 2,解压文件,解压后目录如下 3,我们将 jsp 目录暂时移动到别的地方,剩下的文件作为一个 H5 前端项目使用,笔者这边导入到 idea 进行开发,导入后如下 4,创建一个 springboot 项目,引入以下 maven 依赖 <!-- WEB 开发 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId&g…
Flask & Vue 构建前后端分离的应用 最近在使用 Flask 制作基于 HTML5 的桌面应用,前面写过<用 Python 构建 web 应用>,借助于完善的 Flask 框架,可以轻松的构建一个网站应用.服务端的路由管理和前端模板页面的渲染都使用 Flask 提供的 API 即可,并且由于 werkzuge 提供了强大的开发功能,可以在运行时自动重新加载整个应用.如果使用 gevent 提供的 WSGIServer 作为服务器网关,在使用时需要进行一定的配置.此时仍然是由 P…
本教程将从零开始部署一个前后端分离的开源项目,利用docker虚拟机的容器技术,采用分布式集群部署,将项目转换成为高性能.高负载.高可用的部署方案.包括了MySQL集群.Redis集群.负载均衡.双机热备等等. 部署图 所用到的主流技术 Docker容器.前后端集群.MySQL集群.Redis集群.Haproxy负载均衡.Nginx负载均衡.Keepalived实现双机热备 前后端分离项目部署图 前后端分离项目开源框架介绍 本次教程所采用的前后端分离的项目开源框架是人人网的renren-fast…
写在最前 前后端分离其实有两类: 开发阶段使用dev-server,生产阶段是打包成静态文件整个放入后端项目中. 开发阶段使用dev-server,生产阶段是打包成静态文件放入单独的静态资源服务器中,如nginx. 这两种方案最大的区别就是生产阶段.由于第一种方案前端和后端本质在同一个服务中的,所以压根就没有跨域,配置cas的坑比较少.而第二种方案我们一般使用nginx反向代理完成跨域,配置cas的坑会很多.为了后面分析方便,我们分别称上述两种方案为『前后端分离A』和『前后端分离B』 请求也分为…
前后端分离----VUE+node(express) vue作为前端的框架,node(express)作为后端的框架.无数据库,使用端口保存数据. VUE: 使用vue-cli构建vue项目(vueapp). npm install -g vue-cli(安装,安装过的就不用了) vue init webpack vueapp axios:(与ajax相似) import axios from 'axios' var url="http://localhost:3000" //expr…
GraphQL + React Apollo + React Hook + Express + Mongodb 大型前后端分离项目实战之后端(19 个视频) GraphQL + React Apollo + React Hook + Express + MongoDB 大型前后端分离项目实战之后端 #1 介绍「03:32」 GraphQL + React Apollo + React Hook + Express + MongoDB 大型前后端分离项目实战之后端 #2 GraphQL「04:11…
前言 之前都是介绍一些基础知识,在这一节,我们就要开始实战coding了.正所谓磨刀不误砍柴工,准备工作显得尤为重要.很多demo只是追求效果的实现,并不注重整个demo的架构性.从我个人的角度看来,既然是demo,就应该是有参考价值的,而作为web的demo,就更加应该凸显整个demo的结构,所以这一节着重讲解个人喜欢的node项目的前后端架构. 另,本教程乃系列教程,如需从头看起,可先看前面两篇博客: http://www.cnblogs.com/yuanzm/p/4179766.html…
采用异步来实现重新连接服务器或者重新启动服务 开启异步监听,不会导致主线程的堵塞,在服务异常断开后一直检测重新连接服务,成功连接服务后通知各个注册的客户端! #region 检测断线并重连OPC服务 可以强制启动OPC服务程序/// <summary>/// 提供外部使用/// 重新连接事件/// </summary>public event LinkStateChangedEvent OnLinkStateChanged; /// <summary>/// 当前连接状…
TableGo v6.0.0 版震撼发布,此次版本更新如下: 1.UI界面大改版,组件大调整,提升界面功能的可扩展性. 2.新增BeautyEye主题,界面更加清新美观,也可以通过配置切换到原生Java主题. 3.新增合并增量更新功能,并能指定代码中哪些代码块动态更新,哪些代码块不更新. 4.新增文件更新方式配置,可根据需要使用增量更新和覆盖更新. 5.新增保存全局参数和自定义文件的JSON参管理功能. 6.生成自定义文件新增JSON参数配置,可以灵活定义各种参数并能将代码直接生成到项目源码目录…
Spring Boot最好的学习方法就是实战训练,今天我们用很短的时间启动我们第一个Spring Boot应用,并且连接我们的MySQL数据库. 我将假设读者为几乎零基础,在实战讲解中会渗透Spring框架中的一些知识点,并提供相关官方文档链接, 让我们一起在实战中高效学习. 该教学实例在github上, 项目文件地址 在这个实战学习中, 我们将使用Spring Boot与MySQL数据库构建一个简单的登陆系统,功能包含注册账户和登陆两个功能,并用Spring Boot官方推荐使用的thymel…
NDS(域名系统) 按个人的理解,就是将域名和IP映射,通过输入域名,DNS 找到对应的域名的IP地址,即可访问. NDS请求步骤: 当用户输入域名(例:www.baidu.com),回车那一刻: 1.查找 缓存 和 host文件信息,如果有,则直接访问对应的IP地址,如果没有, 2.则系统将解析请求发送给本地域名服务器(LDNS).如果有对应的IP地址,访问,解析结束,如果没有, 3.则会请求 根服务器.即.com .cn .org 这里直接找到.com,返回到LDNS 4.然后通过 .com…