[5+1]里氏替换原则(一)前言面向对象的SOLID设计原则,外加一个迪米特法则,就是我们常说的5+1设计原则。这六个设计原则的位置有点不上不下。论原则性和理论指导意义,它们不如封装继承抽象或者高内聚低耦合,所以在写代码或者codereview的时候,它们很难成为“应该这样做”或者“不应该这样做”的一个有说服力的理由。论灵活性和实践操作指南,它们又不如设计模式或者架构模式,所以即使你能说出来某段代
分类:
其他好文 时间:
2020-06-23 10:24:22
阅读次数:
67
什么是函数? 函数是对某一特定功能的代码块的封装 函数的定义 语法: def 函数名(形参列表): ? 函数说明文档 ? 函数体 说明: def - python定义函数的关键字:固定写法 函数名 - 自定义命名: ? 标识符,不要关键字(要求); ? 所有的字母都小写,多个单词之间用下划线隔开; ...
分类:
编程语言 时间:
2020-06-22 23:14:42
阅读次数:
65
面向对象三大特性:封装、继承、多态 封装:将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问 继承:{关键字 extends}子类继承父类的特征和行为,子类可以使用父类的方法和属性,还可以重写父类的方法 多态是指子类对象可以直接赋给父类变量(父类引 ...
分类:
其他好文 时间:
2020-06-22 22:32:09
阅读次数:
61
1、 简介: mysql5版本增加了对视图的支持, 所以本文章仅适用mysql5以后的版本 视图是一张虚拟的表,其内容由查询定义,它们包含的不是数据而是根据需要检索数据的查询。视图提供了一种MySQL的SELECT语句层次的封装,可用来简化数据处理以及重新格式化基础数据或保护基础数据。 视图本身不包 ...
分类:
数据库 时间:
2020-06-22 20:55:36
阅读次数:
54
前面大概了解了一下elasticsearch的数据存储和数据的查询。现在学习一下,es的复杂操作。 官网相关文档地址:https://www.elastic.co/guide/en/elasticsearch/client/java-api/7.x/java-docs-delete-by-query ...
分类:
编程语言 时间:
2020-06-22 18:37:02
阅读次数:
87
门面模式核心内容: 客户端与子系统的通信通过外观对象进行; 外观对象封装一系列子系统的具体对应方法,对客户端只需暴露一个单一的入口方法; 客户端通过访问外观对象即可调用子系统的基础方法,无需关心子系统的具体实现; 可以通过引入抽象外观类解决增减子系统需要修改外观类的问题; 可以通过引入外部配置文件实 ...
分类:
其他好文 时间:
2020-06-22 13:12:32
阅读次数:
54
post请求的时候,我们需要加上一个请求头,所以可以在这里进行一个默认的设置,即设置post的请求头为application/x-www-form-urlencoded;charset=UTF-8 axios.defaults.headers.post['Content-Type'] = 'appl ...
分类:
移动开发 时间:
2020-06-22 11:07:59
阅读次数:
76
上一篇随笔中已经说了简单的Jar是如何封装的,但是我的需求是根据TIPTOP的查询条件产生XML文件并上传到FTP主机中,那么就要涉及到XML生成的方法和FTP上传的方法 所以在Eclipse写的时候引用了第三方的价包:jdbc, org.dom4j , org.apache.commons 把这几 ...
分类:
数据库 时间:
2020-06-22 11:04:05
阅读次数:
72
@SpringBootConfiguration注解表示Spring Boot配置类。查看@SpringBootConfiguration注解源码,核心代码具体如下。 ```java @Target({ElementType.TYPE}) @Retention(RetentionPolicy.RUN ...
分类:
编程语言 时间:
2020-06-22 10:48:52
阅读次数:
71
Tornado的核心是什么?Tornado 的核心是 ioloop 和 iostream 这两个模块,前者提供了 一个高效的 I/O 事件循环,后者则封装了 一个无阻塞的 socket 。 通过向 ioloop 中添加网络 I/O 事件,利用无阻塞的 socket ,再搭配相应的回调函数,便可达到梦 ...
分类:
编程语言 时间:
2020-06-22 01:04:00
阅读次数:
95