葵花宝典教程,一个自学编程平台

葵花宝典教程,一个自学编程平台

gin框架

简介

Gin 是一个基于 Go 语言编写的 Web 框架,与 martini 框架类似,但拥有更好的性能,借助高性能的 httprouter,速度提升了近 40 倍。如果你追求高性能和开发效率,你会爱上 Gin 框架。



开始介绍 Gin 框架的使用之前,我们先来简单看一下它的特性和优势。

功能特性

快速


  • 基于 Radix 树(一种更节省空间的 Trie 树结构)的路由,占用内存更少;

  • 没有反射;

  • 可预测的 API 性能。

内置路由器


开箱即用的路由器功能,不需要做任何配置即可使用。


支持中间件


传入的 HTTP 请求可以经由一系列中间件和最终操作来处理,例如 Logger、Authorization、GZIP 以及最终的 DB 操作。


Crash 处理


Gin 框架可以捕获一个发生在 HTTP 请求中的 panic 并 recover 它,从而保证服务器始终可用。此外,你还可以向 Sentry 报告这个 panic!


JSON 验证


Gin 框架可以解析并验证 JSON 格式的请求数据,例如检查某个必须值是否存在。


路由群组


支持通过路由群组来更好地组织路由,例如是否需要授权、设置 API 的版本等,此外,这些群组可以无限制地嵌套而不会降低性能。


API 冻结


支持 API 冻结,新版本的发布不会破坏已有的旧代码。


错误管理


Gin 框架提供了一种方便的机制来收集 HTTP 请求期间发生的所有错误,并且最终通过中间件将它们写入日志文件、数据库或者通过网络发送到其它系统。


内置渲染


Gin 框架提供了简单易上手的 API 来返回 JSON、XML 或者 HTML 格式响应。


可扩展性


我们将会在后续示例代码中看到 Gin 框架非常容易扩展。


易于测试


Gin 框架提供了完整的单元测试套件。

https://github.com/MasterJoyHunan/go-admin-cms

通过Mysql 函数替换数据表中的URL

这几天遇到一个问题是替换数据表中图片路径,

当时就纠结了,只替换域名URI不变,一直纠结,最后上网看了别人给的方法不错,分享一下。

我博客上的图片原来都存放在www.xxx.cc服务器上,由于该服务器不稳定,于是我将所有图片切换到www.xxx.com服务器上,

同时在MySQL数据库中,将字符串www.xxx.cc批量替换为www.xxx.com。为了方便以后使用,我将这条“将字符串cc批量替换为com”的SQL语句记录在此:

UPDATE 表名 SET 字段名 = REPLACE (字段名, 'cc', 'com');

然后写相应的脚本替换相应的表就OK了。


JavaScript - 变量

JavaScript 数据类型

编程语言最基本的特征之一是它支持的数据类型集。这些是可以在编程语言中表示和操作的值类型。

JavaScript 允许您使用三种原始数据类型 -

  • 数字,例如。123、120.50 等

  • 文本字符串,例如“此文本字符串”等。

  • 布尔值,例如真或假。

JavaScript 还定义了两种微不足道的数据类型,nullundefined,每一种都只定义一个值。除了这些原始数据类型之外,JavaScript 还支持一种称为object的复合数据类型。我们将在单独的章节中详细介绍对象。

注意- JavaScript 不区分整数值和浮点值。JavaScript 中的所有数字都表示为浮点值。JavaScript 使用 IEEE 754 标准定义的 64 位浮点格式表示数字。

JavaScript 变量

像许多其他编程语言一样,JavaScript 也有变量。变量可以被认为是命名容器。您可以将数据放入这些容器中,然后简单地通过命名容器来引用数据。

在 JavaScript 程序中使用变量之前,必须声明它。变量使用var关键字声明如下。

<script type = "text/javascript">
   <!--
      var money;
      var name;
   //--></script>

您还可以使用相同的var关键字声明多个变量,如下所示 -

<script type = "text/javascript">
   <!--
      var money, name;
   //--></script>

将值存储在变量中称为变量初始化您可以在创建变量时或稍后需要该变量时进行变量初始化。

例如,您可以创建一个名为money的变量,然后将值2000.50 分配给它。对于另一个变量,您可以在初始化时分配一个值,如下所示。

<script type = "text/javascript">
   <!--
      var name = "Ali";
      var money;
      money = 2000.50;
   //--></script>

注意- 仅将var关键字用于声明或初始化,一次用于文档中任何变量名的生命周期。您不应该两次重新声明相同的变量。

JavaScript 是无类型语言。这意味着 JavaScript 变量可以保存任何数据类型的值。与许多其他语言不同,您不必在变量声明期间告诉 JavaScript 变量将持有什么类型的值。变量的值类型可以在程序执行期间发生变化,JavaScript 会自动处理它。

JavaScript 变量范围

变量的范围是定义它的程序区域。JavaScript 变量只有两个作用域。

  • 全局变量- 全局变量具有全局范围,这意味着它可以在 JavaScript 代码中的任何位置定义。

  • 局部变量- 局部变量仅在定义它的函数中可见。函数参数始终是该函数的本地参数。

在函数体内,局部变量优先于同名的全局变量。如果你声明一个与全局变量同名的局部变量或函数参数,你实际上隐藏了全局变量。看看下面的例子。

<html>
   <body onload = checkscope();>   
      <script type = "text/javascript">
         <!--
            var myVar = "global";      // Declare a global variable
            function checkscope( ) {
               var myVar = "local";    // Declare a local variable
               document.write(myVar);
            }
         //-->
      </script>     
   </body></html>

这会产生以下结果 -

local

JavaScript 变量名

在 JavaScript 中命名变量时,请牢记以下规则。

  • 您不应使用任何 JavaScript 保留关键字作为变量名。这些关键字将在下一节中提到。例如,中断布尔变量名称无效。

  • JavaScript 变量名不应以数字 (0-9) 开头。它们必须以字母或下划线字符开头。例如,123test是一个无效的变量名,但_123test是一个有效的变量名。

  • JavaScript 变量名区分大小写。例如,名称名称是两个不同的变量。

JavaScript 保留字

下表给出了 JavaScript 中所有保留字的列表。它们不能用作 JavaScript 变量、函数、方法、循环标签或任何对象名称。





abstractelseinstanceofswitch
booleanenumintsynchronized
breakexportinterfacethis
byteextendslongthrow
casefalsenativethrows
catchfinalnewtransient
charfinallynulltrue
classfloatpackagetry
constforprivatetypeof
continuefunctionprotectedvar
debuggergotopublicvoid
defaultifreturnvolatile
deleteimplementsshortwhile
doimportstaticwith
doubleinsuper



JavaScript - HTML 文件中的位置

可以灵活地将 JavaScript 代码包含在 HTML 文档的任何位置。然而,在 HTML 文件中包含 JavaScript 的最优选方式如下:

  • <head>...</head> 部分中的脚本。

  • <body>...</body> 部分中的脚本。

  • <body>...</body> 和 <head>...</head> 部分中的脚本。

  • 在外部文件中编写脚本,然后包含在 <head>...</head> 部分中。

在下一节中,我们将了解如何以不同的方式将 JavaScript 放入 HTML 文件中。

<head>...</head> 部分中的 JavaScript

如果您想让脚本在某个事件上运行,例如当用户单击某处时,那么您将把该脚本放在头部,如下所示 -

<html>
   <head>      
      <script type = "text/javascript">
         <!--
            function sayHello() {
               alert("Hello World")
            }
         //-->
      </script>     
   </head>
   
   <body>
      <input type = "button" onclick = "sayHello()" value = "Say Hello" />
   </body>  </html>

此代码将产生以下结果 -

<body>...</body> 部分中的 JavaScript

如果您需要在页面加载时运行脚本以便脚本在页面中生成内容,则该脚本将进入文档的 <body> 部分。在这种情况下,您将不会使用 JavaScript 定义任何函数。看看下面的代码。

<html>
   <head>
   </head>
   
   <body>
      <script type = "text/javascript">
         <!--
            document.write("Hello World")
         //-->
      </script>
      
      <p>This is web page body </p>
   </body></html>

此代码将产生以下结果 -

<body> 和 <head> 部分中的 JavaScript

您可以将 JavaScript 代码完全放在 <head> 和 <body> 部分中,如下所示 -

<html>
   <head>
      <script type = "text/javascript">
         <!--
            function sayHello() {
               alert("Hello World")
            }
         //-->
      </script>
   </head>
   
   <body>
      <script type = "text/javascript">
         <!--
            document.write("Hello World")
         //-->
      </script>
      
      <input type = "button" onclick = "sayHello()" value = "Say Hello" />
   </body></html>

此代码将产生以下结果 -

外部文件中的 JavaScript

随着您开始更广泛地使用 JavaScript,您可能会发现在某些情况下您会在网站的多个页面上重用相同的 JavaScript 代码。

您不限于在多个 HTML 文件中维护相同的代码。script标签提供了一种机制,允许您将JavaScript 存储在外部文件中,然后将其包含到 HTML 文件中。

下面是一个示例,展示了如何使用script标签及其src属性在 HTML 代码中包含外部 JavaScript 文件。

<html>
   <head>
      <script type = "text/javascript" src = "filename.js" ></script>
   </head>
   
   <body>
      .......   </body></html>

要使用来自外部文件源的 JavaScript,您需要将所有 JavaScript 源代码写入扩展名为“.js”的简单文本文件中,然后如上所示包含该文件。

例如,您可以将以下内容保留在filename.js文件中,然后在包含 filename.js 文件后,您可以在 HTML 文件中使用sayHello函数。

function sayHello() {
   alert("Hello World")
}


JavaScript 运行

所有现代浏览器都内置了对 JavaScript 的支持。通常,您可能需要手动启用或禁用此支持。本章介绍在浏览器中启用和禁用 JavaScript 支持的过程:Internet Explorer、Firefox、chrome 和 Opera。


Internet Explorer 中的 JavaScript

以下是在 Internet Explorer 中打开或关闭 JavaScript 的简单步骤 -


  • 按照菜单中的工具 → Internet 选项。

  • 从对话框中选择安全选项卡。

  • 单击自定义级别按钮。

  • 向下滚动直到找到Scripting选项。

  • 选择Active scripting下的Enable单选按钮。

  • 最后点击OK就出来了


要在 Internet Explorer 中禁用 JavaScript 支持,您需要选择Active scripting下的Disable单选按钮。


Firefox 中的 JavaScript

以下是在 Firefox 中打开或关闭 JavaScript 的步骤 -


  • 打开一个新标签 → 在地址栏中输入about: config。

  • 然后你会发现警告对话框。选择我会小心的,我保证!

  • 然后您将在浏览器中找到配置选项列表。

  • 在搜索栏中,输入javascript.enabled。

  • 在那里,您将找到启用或禁用 javascript 的选项,方法是右键单击该选项的值 →选择切换。


如果 javascript.enabled 为真;单击时它会转换为false。如果 javascript 被禁用;它在单击切换时启用。


Chrome 中的 JavaScript

以下是在 Chrome 中打开或关闭 JavaScript 的步骤 -


  •     点击浏览器右上角的 Chrome 菜单。    

  •     选择设置。    

  •     单击页面末尾的显示高级设置。    

  •     在隐私部分下,单击内容设置按钮。    

  •     在“Javascript”部分,选择“不允许任何站点运行 JavaScript”或“允许所有站点运行 JavaScript(推荐)”。

    

Opera 中的 JavaScript

以下是在 Opera 中打开或关闭 JavaScript 的步骤 -


  • 按照菜单中的工具 → 首选项。

  • 从对话框中选择高级选项。

  • 从列出的项目中选择内容。

  • 选择启用 JavaScript复选框。

  • 最后点击确定就出来了。


要在 Opera 中禁用 JavaScript 支持,您不应选中Enable JavaScript 复选框。


非 JavaScript 浏览器的警告

如果您必须使用 JavaScript 做一些重要的事情,那么您可以使用<noscript>标记向用户显示警告消息。


您可以在脚本块之后立即添加一个noscript块,如下所示 -


<html>

   <body>

      <script language = "javascript" type = "text/javascript">

         <!--

            document.write("Hello World!")

         //-->

      </script>

      

      <noscript>

         Sorry...JavaScript is needed to go ahead.

      </noscript>      

   </body>

</html>

现在,如果用户的浏览器不支持 JavaScript 或未启用 JavaScript,则来自 </noscript> 的消息将显示在屏幕上。



Javascript - Syntax

Javascript - Syntax

Javascript - Overview

Javascript - Overview

Javascript - Home

Javascript - Home

C++编译器

编译器


遵循这些教程所需的基本工具是计算机和能够编译 C++ 代码并构建在其上运行的程序的编译器工具链。

C++ 是一种经过多年发展的语言,这些教程解释了最近添加到该语言中的许多特性。因此,为了正确遵循教程,需要最新的编译器。它应支持(即使只是部分)2011 标准引入的功能。

许多编译器供应商在不同程度上支持新特性。有关已知支持所需功能的一些编译器,请参阅本页底部。其中一些是免费的!

如果由于某种原因,您需要使用一些较旧的编译器,您可以在此处访问这些教程的较旧版本(不再更新)。


什么是编译器?

计算机只能理解一种语言,而这种语言由一组由 1 和 0 组成的指令组成。这种计算机语言被恰当地称为机器语言

对计算机的一条指令可能如下所示:

0000010011110

允许用户输入两个数字、将两个数字相加并显示总数的特定计算机的机器语言程序可能包括以下机器代码指令:

0000010011110
0000111110100
0001010011110
0001111010100
0010010111111
0010100000000

您可以想象,仅使用 1 和 0 直接用机器语言对计算机进行编程非常繁琐且容易出错。为了使编程更容易,已经开发了高级语言。高级程序还使程序员更容易检查和理解彼此的程序。

这是用 C++ 编写的代码的一部分,用于实现完全相同的目的:

1234567
inta, b, sum;
     
cin >> a;
cin >> b;
             
sum = a + b;
cout << sum << endl;



即使你不能真正理解上面的代码,你也应该能够体会到用 C++ 语言编程比用机器语言编程要容易得多。

因为计算机只能理解机器语言,而人类希望用高级语言编写高级语言,所以必须在某些时候将高级语言重新编写(翻译)成机器语言。这是通过内置在各种编程应用程序中的称为编译器、解释器或汇编器的特殊程序来完成的。

C++被设计成一种编译型语言,也就是说它一般被翻译成系统可以直接理解的机器语言,使得生成的程序非常高效。为此,需要一组工具,称为开发工具链,其核心是编译器及其链接器。



控制台程序

控制台程序是使用文本与用户和环境进行通信的程序,例如将文本打印到屏幕或从键盘读取输入。

控制台程序易于交互,并且通常具有在所有平台上相同的可预测行为。它们也很容易实现,因此对于学习编程语言的基础知识非常有用:这些教程中的示例都是控制台程序。

编译控制台程序的方式取决于您使用的特定工具。

初学者编译 C++ 程序的最简单方法是使用集成开发环境 (IDE)。IDE 通常集成多个开发工具,包括文本编辑器和直接从中编译程序的工具。

这里有关于如何使用不同的免费集成开发接口 (IDE) 编译和运行控制台程序的说明:

IDE平台控制台程序
代码::块Windows/Linux/MacOS使用 Code::blocks 编译控制台程序
Visual Studio 速成版视窗使用 VS Express 2013 编译控制台程序
开发-C++视窗使用 Dev-C++ 编译控制台程序

如果您碰巧拥有具有开发功能的 Linux 或 Mac 环境,您应该能够直接从终端编译任何示例,只需在编译器命令中包含 C++11 标志:

编译器平台命令
GCCLinux 等...g++ -std=c++0x example.cpp -o example_program
ClangOS X 等...clang++ -std=c++11 -stdlib=libc++ example.cpp -o example_program



app及网站

app

[ted英语演讲]

[]非小号]区块链

[学生赚]

[es文件浏览器]

[萝卜数据]

[自选股]

<< < 1 2 3 4 5 6 7 8 9 10 > >>

Copyright www.jennal.cn Rights Reserved葵花宝典教程.鄂icp2022001145号-1

分享:

支付宝

微信