shaolin

悟已往之不谏,知来者之可追!

0%

Mac系统更新到10.15大版本之后,我遇到的最常见的大bug就是:npm安装时经常报gyp: No Xcode or CLT version detected!

解决方法:

$ sudo rm -rf $(xcode-select -print-path)
$ xcode-select --install

初识注解

前面两节学习了springboot的基本使用,其中大量使用了注解来减少代码量,想必大家都觉得挺奇怪的吧。

所以第三节,稍微停顿一下增删改查的脚步,补补一些基础(๑•̀ㅂ•́)و✧。

对于前端来说,注解这个概念很陌生,如此神秘的力量是如何发挥作用的呢,今天学习一下java中的注解:一种形如@xxx的东东,xxx一般是大写字母开头。

什么是注解

注解Annotation是在java源码中对于类、方法、字段、方法参数的一种特殊注释

阅读全文 »

初识mybatis

在第一节中学习了如何初始化一个项目,并且写了一个最最最最😄简单的接口,但是项目中数据肯定是来自数据库,在传统java中使用JDBC来操作数据库,进入web部分后,现在主要采用mybatis持久层框架做SQL映射(把数据库内容映射成对象,Object Relational Mapping)来操作数据库,在spring boot中集成到了mybatis-spring-boot-starter中。

阅读全文 »

初始化SpringBoot项目

这是前端初学SpringBoot系列的第一节,学习如何初始化一个空项目进行后续开发。目前有两种方式进行初始化:

  1. 去官网https://start.spring.io/直接按照下图进行初始化,相关配置项具体内容可查看文档,SpringBoot只要不选择SNAPSHOT即可。
  2. 直接通过IDEA进行初始化
  3. 初始化后的目录结构如下图所示:
  • 核心java文件在src/main/java内部。
阅读全文 »

引子

这篇文章源于几道面试题。

//demo 01
{
  function test() {}
  test = 123
}
console.log("test", test)
{
  test00 = 123
  function test00() { }
}
console.log("test00", test00)
// demo 02
{
  function test01() {

  }
  var test01 = 123
}
console.log("test01", test01)

// demo 03
{
  var test02 = function () {}
  var test02 = 123
}
console.log("test02", test02)
// demo 04
{
  function test03() {}
  test03 = 123
  function test03() {}
}
console.log("test03", test03)
// demo 05
{
  function test04() {}
  test04 = 123
  function test04() {}
  test04 = 234
}
console.log("test04", test04)
阅读全文 »

今天想就前段时间主要是20年第一季度的理财进行一下小总结,这一季度也是我自19年理财以来最大的损失,这种里程碑式事件极具教育意义,同样理财也可以看成人生某些特质的缩影,能让人变得更好或者更坏。

心理体验来说主要总结为以下三个方面:

阅读全文 »

受疫情的影响,从2月9号回京以来,一直在家里进行远程办公,虽然也享受到了国外流行的远程办公的福利,但是时间久了却有渐渐发现一些问题,其中主要就是时间太充足了,利用率上明显不高。

在接近两个月的远程里,沟通成本极其的大,从19年12月接手500以来的细微的小情绪慢慢的爆发开来,3月初更是一度让我萌生了一些不好的想法。

阅读全文 »

go的几个特点

可以粗略的认为go = c + python

  1. 从C语言中继承了很多理念,尤其是指针的运用
func testPtr(num *int) {
  *num = 20
}
  1. 引入包的概念,用于组织程序结构。单独的go文件必须存在于package中

  2. 垃圾回收制度,内存自动回收。

  3. 语言层面天然支持高并发
    使用了goroutine的语法,轻量级线程,高效利用多核

  4. 吸收了管道通信机制,有管道的写法,channel的写法,通过管道实现不同goroute之间的相互通信。

  5. 支持一些新的语法,例如切片(slice)和 延迟请求defer

  6. 函数支持多个返回值

阅读全文 »

promise兼容IE11

最近我开发的公司的竞赛网站被发现在IE11下排行榜无数据,但是在其他浏览器没问题,我然后打开控制台一看,发现了如下错误:

Promise未定义

真是醉了,然后发现有三个可行的方案:

阅读全文 »

响应式布局五个基本点

  1. 媒体查询
  2. 移动端对应的设计图
  3. 隐藏某些在PC端需要的元素
  4. 添加meta标签
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
  1. 交互方式与PC端不同,没有hover、滑动效果、滚动条、resize。替代的是touch和使用两点坐标来模拟滑动效果。
阅读全文 »