自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(189)
  • 收藏
  • 关注

原创 解决git提交问题error: The requested URL returned error: 403 Forbidden

vim .git/config修改url = https://github.com/XiaoMing/killsecond.git 为:url = https://[email protected]/XiaoMing/killsecond.git

2021-08-07 14:58:06 240

原创 react基础知识

文章目录1.前端三大主流框架2.概念2.1库和框架2.2 虚拟DoM1.前端三大主流框架angular 最早vue 最火(关注的人最多)react 最流行(使用得人最多)2.概念react起源于facebook项目,2013年开源2.1库和框架库:小而巧,可以随时切换框架:大而全,不能随时切换2.2 虚拟DoM本质: 以JS的形式,来模拟页面上DOM嵌套关系目的:实现页面上元素的高效更新...

2021-04-17 23:29:16 141

原创 mongodb

文章目录1.MongoDB是什么?2.bash命令1.基本操作2.操作集合3.带条件的文档db.find1.MongoDB是什么?MongoDB(来自于英文单词“Humongous”,中文含义为“庞大”)是可以应用于各种规模的企业、各个行业以及各类应用程序的开源数据库。特别在大数据处理方面比较擅长。2.bash命令1.基本操作mongoexithelpshow dbs()use blog;db.dropDatabase()db.stats()2.操作集合show coll

2021-01-10 22:43:55 211

原创 代码之丑——02 乱用英语

文章目录1. 违反语法规则的命名2.英语单词的拼写错误编写符合人英语语法规则的代码1. 违反语法规则的命名public void completedTranslate(final List chapterIds) { List chapters = repository.findByChapterIdIn(chapterIds); chapters.forEach(Chapter::completedTranslate); repository.saveAll(chapters); }

2021-01-09 21:24:44 214

原创 代码之丑——01 命名坏味道

文章目录1.不精准的命名1.用技术术语命名好的命名,是体现业务含义的命名。1.不精准的命名public void approveChapter(long chapterId, long userId) { ...}这个函数的意图是,确认章节内容审核通过。这里有一个问题,chapterId 是审核章节的 ID,这个没问题,但 userId 是什么呢? 了解了一下背景,我们才知道,之所以这里要有一个 userId,是因为这里需要记录一下审核人的信息,这个 userId 就是审核人的 userId

2021-01-09 21:15:56 262

原创 rails graphql的使用

1.rails new graphql_fun_demo2.构建数据rails g model User email:string name:stringrails g model Post user:belongs_to title:string body:textrails db:migrateclass User < ApplicationRecordhas_many :postsendgem ‘faker’gem ‘graphiql-rails’seeds.rb5.ti

2020-10-29 23:24:14 444

原创 var 与 let 的区别

var可以根据需要多次声明相同名称的变量,但是 let 不能。var myName = 'Chris';var myName = 'Bob';但是以下内容会在第二行引发错误:let myName = 'Chris';let myName = 'Bob';你必须这样做:重新声明变量——这只会让事情变得更加混乱。let myName = 'Chris';myName = 'Bob';建议您在代码中尽可能多地使用 let,而不是 var。...

2020-10-07 12:18:37 153

原创 面试常问:BIO、NIO、AIO

文章目录1.BIO、NIO、AIO定义2.BIO、NIO、AIO使用场景3. NIO 有3大核心部分:channel、buffer、selector4.NIO和BIO的区别1.BIO、NIO、AIO定义Java共支持3种网络编程模型IO模式BIO:(blocking io)同步并阻塞(传统阻塞型),服务器实现模式为一个连接一个线程,即客户端有连接请求时,服务器就要启动一个线程进行处理,如果这个链接不做任何事,就容易造成不必要的线程开销。可以用线程池改善实现多用户访问一个服务器即实现并发NIO:(n

2020-10-06 14:00:37 254

原创 ruby 迭代方法之 each、collect 、map、find、inject、select、find_all、filter

文章目录1. each collect map2.map.with_index3.select find_all filter4.find5.inject1. each collect mapeach 返回的仍是原数组,collect,map返回的是经过处理后的新数组 array = [1, 2, 3, 4] new_array1 = array.each { |n| n * 2 } new_array2 = array.collect { |n| n * 2 } n

2020-10-06 13:34:04 538 1

原创 rails 指南总结(十)——View 之表单辅助方法

文章目录1.form_tag2 用于生成表单元素的辅助方法3.复选框 check_box_tag4.单选按钮 radio_button_tag5.快速创建选择列表 select_tag和options_for_select6.从任意对象组成的集合创建 option 标签7.时区和国家选择列表8. 上传文件1.form_tagform_tag 方法是最基本的表单辅助方法。<%= form_tag do %> Form contents<% end %>无参数调用 for

2020-09-10 22:57:09 306

原创 rails 指南总结(八)——Action View 提供的辅助方法概述

文章目录1 AssetTagHelper 模块2 AtomFeedHelper 模块3 BenchmarkHelper 模块4 CacheHelper 模块5 CaptureHelper 模块6 DateHelper 模块7 FormHelper 模块8 FormOptionsHelper 模块9 FormTagHelper 模块10 JavaScriptHelper 模块11 NumberHelper 模块12 SanitizeHelper 模块13 CsrfHelper 模块1 AssetTagHel

2020-09-07 23:19:36 348

原创 rails 指南总结(五)——Model之Active Record 关联

文章目录1 为什么使用关联?1 为什么使用关联?

2020-09-07 06:49:06 476

原创 clickhouse概念

文章目录1.OLTP和OLAP2.ClickHouse3.OLAP场景的关键特征4.clickhouse的应用1.OLTP和OLAPOLTP(On-Line Transaction Processing)即联机事务处理,就是我们经常说的关系数据库,意即记录即时的增、删、改、查,就是我们经常应用的东西,这是数据库的基础;OLAP(On-Line Analytical Processing)即联机分析处理,是数据仓库的核心部心,所谓数据仓库是对于大量已经由OLTP形成的数据的一种分析型的数据库,用于处理商

2020-08-30 17:28:03 155

原创 rails 指南总结(七)——Model之Active Model 基础

文章目录1 属性方法2 回调3 转换4 弄脏5 数据验证6 命名7 模型8 序列化9 翻译10 lint 测试11 安全密码1 属性方法ActiveModel::AttributeMethods 模块可以为类中的方法添加自定义的前缀和后缀。它用于定义前缀和后缀,对象中的方法将使用它们。attribute_method_prefix 'reset_'attribute_method_suffix '_highest?'define_attribute_methods 'age'2 回调Acti

2020-08-30 17:09:17 638

原创 rails 指南总结(四)——Model之Active Record 回调

文章目录1.回调是什么?2.可用的回调2.1.创建对象2.2 更新对象2.3 删除对象2.4 事务回调2.5.其他情况的回调3触发回调的方法4 跳过回调的方法5. 关联回调6.条件回调6.1 使用符号作为 :if 和 :unless 选项的值6.2 使用 Proc 作为 :if 和 :unless 选项的值6.3 在条件回调中使用多个条件7 回调类1.回调是什么?回调是在对象生命周期的某些时刻被调用的方法。通过回调,我们可以编写在创建、保存、更新、删除、验证或从数据库中加载 Active Recor

2020-08-30 00:30:30 426

原创 rails 指南总结(三)——Model之Active Record 数据验证

文章目录1.概览1. 为什么要做数据验证?1.2会触发数据验证的方法1.3会跳过数据验证的方法1.4 valid? 和 invalid?2 数据验证辅助方法2.1 acceptance2.2 validates_associated2.3 confirmation2.4 inclusion2.5 exclusion2.6 format2.7 length2.8 numericality2.9 presence2.10 absence2.11 uniqueness2.12 validates_with2.13

2020-08-29 23:38:52 443

原创 rails 指南总结(二)——Model之Active Record 迁移

文章目录1.数据库迁移是什么?2. 迁移的创建2.1 创建独立的迁移2.1.1 创建数据表2.1.2 创建联结数据表2.1.3 增加单个字段2.1.4 增加多个字段2.1.5 增加 references 字段2.1.6 增加字段及索引2.1.7 删除字段2.1.8 修改字段2.1.9 增加外键2.1.10 删除外键2.2 模型生成器2.3 传递修饰符3 运行迁移3.1 回滚3.2 安装数据库3.3 重置数据库3.4 运行指定迁移3.5 在不同环境中运行迁移4 迁移和种子数据1.数据库迁移是什么?迁移是

2020-08-29 19:34:25 337

原创 rails 指南总结(一)——Model之Active Record 基础

文章目录1. Active Record 是什么?2.Active Record 的功能3 Active Record 中的“多约定少配置”原则3.1 模型和数据库表的命名约定3.1.1 默认的命名约定3.3.2 覆盖命名约定3.2 数据库表中的字段命名约定4.创建 Active Record 模型5.CRUD:数据操作5.1 创建5.1.1 创建对象的两种方式5.1.2 在 create 和 new 方法中使用块5.2 查询1. Active Record 是什么?Active Record 是 M

2020-08-29 14:43:11 395

原创 rails 指南总结(十三)——深入探索之Active Support 核心扩展

文章目录1.Active Support是什么?2 所有对象皆可使用的扩展2.1 blank? 和 present?2.2 presence2.3 duplicable?2.3 dup 和 deep_dup2.5 try3 Module 的扩展4 String 的扩展5 Integer 的扩展6 Enumerable 的扩展7 Array 的扩展8 Hash 的扩展14 Date 的扩展1.Active Support是什么?Active Support 是 Ruby on Rails 的一个组件,扩展

2020-08-23 17:49:32 457

原创 rails 指南总结(六)——Model之Active Record 查询接口

文章目录1从数据库中检索对象1.1 检索单个对象1.1.1 find1.1.2 take1.1.3 first1.1.4 last 方法1.1.5 find_by 方法1.2 批量检索多个对象1.2.1 find_each 方法1.2.2 find_in_batches 方法2 条件查询2.1 纯字符串条件2.2 数组条件2.3 散列条件2.4 NOT 条件3 排序 order4 选择特定字段5 限量和偏移量6 分组7 having 方法8 条件覆盖8.1 unscope 方法8.2 only 方法8.3

2020-08-22 20:08:08 885

原创 rails 指南总结(十一)——controller之Action Controller 概览

文章目录1.controller 是什么?2. 控制器命名约定3.参数3.1 数组:3.2 散列3.3 JSON3.4 路由参数3.5 健壮参数4.会话4.1 访问会话 session4.2 闪现消息flash5.cookies6.渲染 XML 和 JSON 数据7. 过滤器8.HTTP 身份验证9.数据流和文件下载10.日志过滤11.异常处理12.强制使用 HTTPS 协议1.controller 是什么?Action Controller 是 MVC 中的 C(控制器)。路由器决定使用哪个控制器

2020-08-22 15:41:56 671

原创 rails项目(七)——实现PDF文档导出功能

文章目录1.send_data2.send_file在所有的控制器中都可以使用 send_data 和 send_file 方法,把文件发送给用户。这两个方法都会以数据流的方式发送数据。1.send_data先引入:prawn gem 'prawn',利用prawn生成了pdf后,再进行数据发送controllerdef download_pdf user = User.find(params[:id]) send_data generate_pdf(user),

2020-08-22 14:58:13 191

原创 rails 指南总结(十)——View之表单辅助方法

文章目录1.form_tag2.form_for1.form_tagform_tag 方法是最基本的表单辅助方法。可用于用户登录<%= form_tag sessions_path method:"post" do %> <%= text_field_tag :username, placeholder = "用户名" %> <%= password_field_tag :password, placeholder = "密码" %> <%= su

2020-08-20 21:55:12 160

原创 rails项目(六)——博客发布与查看

文章目录1.model2 controller3.view1.model生成数据库迁移文件,运行db:rake ,db:migrateclass CreateBlogs < ActiveRecord::Migration[6.0] def change create_table :blogs do |t| t.string :title t.text :content t.boolean :is_public, default: true

2020-08-19 23:18:59 121

原创 rails 指南总结(九)——View 之Rails 布局和视图渲染

文章目录1.View1.1 view的原理1.2.View的查找1.3.View的分类1.4.View解析1.5.View的命名2.render2.1 render的作用2.1.1 render在controller的作用2.1.2 render在view的作用2.2 render遍历输出2.3 实例变量3.Layouts3.1 yield3.2 layouts方法的使用1.View1.1 view的原理ActionView: actionview gemActionController: acti

2020-08-15 23:52:16 759

原创 rails项目(五)——后台管理系统实现

1.生成对应controller rails g controller admin::users2.controller 编写class Admin::UsersController < ApplicationController def index @users = User.page(params[:page] || 1).per_page(params[:per_page] || 10).order('id desc') end def search @use

2020-08-15 22:23:45 237

原创 rails 指南总结(十二)——Controller之routes

文章目录1.Routes是什么2.命名路由3.RESTful资源设计4.resources资源5.单数资源6.namespace 关键字7.Scope关键字8. 嵌入路由9.排除不需要的action和请求方式10.添加自定义的restful路由11.非资源式路由12.根路由13.controller1.Routes是什么定义:规定了特定格式的URL请求到后端controller的action的分发规则路由查找是自上而下的,不存在覆盖的情况表现形式: get 'users/:id' ,to: '

2020-08-15 21:18:59 473

原创 rails项目(四)——用户的注册和登录

1.生成user controller 以及session controllerrails g controller userrails g controller sessions2.配置路由 routes.rb resource :users resource :sessions配置一个resources 可以生成7个路由,运行rake routes可看出当前项目下的所有路由,注:生成的路由对应会添加_path后缀,如users对应的path为:users_path(相对地址),use

2020-08-15 14:23:33 265

原创 git 强制远程分支更新本地

git reset --hard origin/dev

2020-08-11 22:08:54 1293

原创 微信小程序开发学习笔记

一 页面创建1.全局三个文件,分别是app.js,app.json,app.wxss(名称不可更改)2.创建pages目录文件,用来放各个页面3.创建页面(给页面起名字,并且创建4个文件)(1)js:页面逻辑实现(2)json:负责标题栏和一些状态栏(3)wxml:管理页面有什么,相当于html(4)wxss:页面排布,相当于css...

2020-08-04 22:37:38 125 1

原创 Ajax学习笔记(一)

AJAX是Asynchronous JavaScript And XML等的缩写,是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。 传统的网页(不使用 Ajax)如果需要更新内容,必须重载整个网页页面。而AJAX则是通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。使用...

2020-08-04 22:35:33 87

原创 js入门

1. 直接写入document.write("<h1>这是一个标题</h1>");2.对事件的反应 <button type="button" onclick="alert('欢迎!')">点我!</button>/3.改变html内容 <p id="demo"> javascript 可以改变html内容 </p> <script>function myFu

2020-08-04 22:33:37 108

原创 appcenterEsc使用

cd ~/Downloads/chmod +x appcenterEsc.1.2.x~/Downloads/AppcenterEcS.1.2.xsudo docker exec -it $(eval sudo docker ps --filter label=com.amazonaws.ecs.container-name=rubick --format {{.ID}}|head -1) ...

2020-08-04 22:30:44 131

原创 JVM面试整理

。# java 虚拟机一 JVM内存模型1.1 分类jvm虚拟机在执行java程序的过程中会把它所管理的内存划分为若干个不同的区域。这些区域各自有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有的区域则依赖用户进程的启动和结束而建立和销毁。JVM内存模型总体来说分为五大块。分别是:程序计数器,虚拟机栈,本地方法栈,方法区以及java堆。1.程序计数器程序计数...

2020-08-04 22:29:41 107

原创 java面试复习提纲

一 网络LRU算法 9一个url访问的完整流程 9DNS解析过程 10APR解析网络协议7层 5层分别是什么 10GET 与 POST 11Tcp ip协议 12TCP与UDP的区别 13TCP流模式与UDP数据报模式 14TCP的三次握手 15四次挥手 16TIME_WAIT作用 17HTTP协议 17HTTP长连接、短连接是什么? 18HTTP 1.0、1.1、1...

2020-08-04 22:28:56 315

原创 java并发编程

一 常见java 锁名词锁大概有以下名词:阻塞锁,可重入锁,读写锁,互斥锁,悲观锁,乐观锁,公平锁,偏向锁,对象锁,线程锁,锁粗化,锁消除,轻量级锁,重量级锁,信号量,独享锁,共享锁,分段锁1. 常见的锁Synchronized 和 LockSynchronized,它就是一个:非公平,悲观,独享,互斥,可重入的重量级锁。原生语义上实现的锁。以下两个锁都在JUC包下,是API层面上的实...

2020-08-04 22:27:58 145

原创 数据库优化

数据库优化1.使用缓存:比如redis2.合理使用索引:如频繁作为查询条件的字段,查询中有排序,统计,分组的字段我们都应创建索引,但经常更新的表就不适合创建索引,因为索引固然可以提高查询效率,但同时会影响插入、更新、删除的效率,因为会设计到重建索引的问题。3.合理的数据库设计:(1)根据数据库三范式来进行表结构的设计(2)为每张表设自增id4.SQL语句优化(1)考虑:使用prep...

2020-08-04 22:26:50 277

原创 java框架面试题汇总

一 spring1. IOC 和AOP两个核心特性Spring 是一个开源框架,Spring可以做很多事情,它为企业级开发提供这些功能的底层都依赖于它的两个核心特性:IOC和AOP。1.IOC:IOC控制反转也叫依赖注入,IOC 利用 java 反射机制,所谓控制反转是指,本来被调用者的实例是有调用者来创建的,这样的缺点是耦合性太强,IOC 则是统一交给 spring 容器来管理创建,将对象...

2020-08-04 22:24:56 1327

原创 java集合体系

一、集合体系简单介绍List特点:元素有顺序,能重复 ,可以插入多个 null 元素。a) List 接口有三个实现类:LinkedList,ArrayList,Vectorb) LinkedList:底层基于链表实现,链表内存是散乱的,每一个元素存储本身内存地址的同时还存储下一个元素的地址。链表增删快,查找慢c) ArrayList 可变长数组,查询快,非同步d) ArrayL...

2020-08-04 22:22:39 148

原创 MySQL索引

MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。提取句子主干,就可以得到索引的本质:索引是数据结构。索引的目的在于提高查询效率,与我们查阅图书所用的目录是一个道理:先定位到章,然后定位到该章下的一个小节,然后找到页数。1.索引的分类普通索引(INDEX):最基本的索引,没有任何限制唯一索引(UNIQUE):与"普通索引"类似,不同的就是:索引列的值...

2020-08-04 22:14:10 81

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除