随笔分类 - 后端技术
摘要:pom.xml 1. 添加spring boot devtools 2. 添加fork为true IDEA配置 1. Preferences中检查并配置Build project automatically 2. cmd+alt+shift+/ Registry中检查并配置compiler.auto
阅读全文
摘要:多线程访问共享资源 通常在多线程访问共享资源的场景会存在线程安全,临界区,竞争条件等问题,比如: 当多个线程访问共享资源时会产生竞态条件,导致最终结果不一致,最终stat统计值为864而不是1000。 使用同步锁机制保证线程安全 可以使用synchronized关键词对临界区代码片段加锁,变并发为排
阅读全文
摘要:匿名内部类 有时候我们需要临时创建一个类和对象并且这个类无需在其他地方复用,就可以使用匿名内部类。 匿名内部类的好处是不需要单独开一个类文件来编写,也不需要类名称,临时使用很方便。 但是匿名内部类没有名字也就没有构造器,不能直接实例化。 同时匿名内部类只能实现一个接口,这一点从使用方式上就可以看出来
阅读全文
摘要:Unicode和UTF16 Unicode是字符集,但是Unicode不规定如何存储,即到底几个字节为一组对应一个字符; UTF16是Unicode字符集的一种编码方式,通过”提示位“标识几个字节编为一组,这样就可以实现字符的存储和读取了; 位于 D800~0xDFFF 之间的 Unicode 编码
阅读全文
摘要:strip和trim String.trim() 可以去除字符串前后的“半角”空白字符 String.strip() 可以去除字符串前后的“全角和半角”空白字符 JDK11中引入String.strip() 全角和半角 在输入法中存在全角和半角字符的概念,比如说“逗号”存在“全角逗号和半角逗号”,体
阅读全文
摘要:历史 python2.1 经典类 DFS(深度优先遍历) python2.2 引入新式类,经典类 DFS,新式类 BFS(广度优先遍历) python2.3-2.7 经典类 DFS,新式类 C3 python3 新式类 C3 U型继承和菱形继承 U型继承 对于DFS算法,MRO(方法解析顺序)为:
阅读全文
摘要:Go的Cron表达式解析库:github.com/gorhill/cronexpr 核心类型和方法 解析Cron表达式 执行定时任务 实现定时任务循环调度
阅读全文
摘要:Golang执行shell命令主要依靠exec模块 代码为核心逻辑,并非全部 运行命令 运行命令并获取返回值 运行命令并强制结束
阅读全文
摘要:安装 主配置文件导入celery配置 celery配置文件 app中创建tasks.py并创建task app视图函数调用task 启动命令
阅读全文
摘要:Celery实现了分布式任务队列的功能,提供异步执行,定时任务两个特性。应用首先将任务封装后发送到Broker,Celery启动多个Worker从Broker中获取任务并执行,通过Broker这一层实现异步特性;Celery提供Beat调度器进行定时任务的调度执行,从而实现定时任务功能。 基本架构图
阅读全文
摘要:短网址源于Twitter中140个字符的限制,有时候一个长网址就占了100个字符,所以需要一个服务将长网址转化为短网址,比如百度短网址服务。 通常短网址服务需要两个接口: 生成短网址 根据短网址查询长网址 当直接访问短网址时,短网址服务器返回一个302和真实网址,然后浏览器会再去访问长网址 生成短网
阅读全文
摘要:Python属性访问的软限制 不同于JAVA,Python中并不限制属性访问,也没有private修饰符,访问限制一靠自觉,二靠对属性名的修改。 这里整理常见属性名写法: 尝试访问一下: 访问没有问题,然后看一下实际的属性名称: 从上述结果可以看出,Python并不会限制你干什么,只是建议或者约定一
阅读全文
摘要:装饰器的思想 装饰器是建立在Python中函数可以作为参数传递和返回的基础上,作用是对函数的功能和行为做扩充和延展,但是这个过程不会修改原函数的逻辑,所以叫装饰而不是修改。 装饰器的基本实现逻辑: 传入目标函数(func) 创建新函数(Wrapper) 在Wrapper中执行func同时添加扩展功能
阅读全文
摘要:反射给人的第一感觉: 常规调用是obj.field. / obj.method() 反射则是field.get(obj). / method.invoke(obj) 执行的主体发生了变化,非常适合于对象未定义的场景下,例如框架等通用场景。 反射的定义: JAVA反射机制是在运行状态中,对于任意一个类
阅读全文
摘要:报错场景 类似的还有Library not loaded: libssl.1.0.0.dylib, Library not loaded: @rpath/libmysqlclient.21.dylib等 解决方案 从mysql安装路径的lib目录下将相应的依赖库链接到/usr/local/lib/下
阅读全文
摘要:闭包是由函数及其相关的引用环境组合而成的实体 闭包发生于函数嵌套且内部函数引用了外部变量,此时外部函数返回的不仅仅是一个内部函数引用,而是内部函数和外部变量的整体,称作闭包。 所以每次单独调用返回的内部函数都可以使用外部函数定义的sum变量。 内部函数定义的变量只是内部函数的局部变量 python规
阅读全文
摘要:父类不会自动调用__init__方法 子类继承父类,子类实例化只会调用自己的构造方法,父类的构造方法不会调用,或者说子类重写了父类的构造方法,所以父类在构造方法中定义的默认属性也无法继承。 实例变量不能继承不是Python继承有问题,上面在class A中定义了一个类变量A就被成功继承下来了,pyt
阅读全文
摘要:尽量避免修改正在遍历的列表 正常的结果是L1=[3,4],但得到的结果是L1=[2,3,4] 在for循环中,Python使用一个内置计数器跟踪程序在列表中的位置,内部计数器在每次迭代结束时都会增加1,当计数器的值等于列表的当前长度时,循环终止。 所以,当L1[0]的值被删除后,L1[1]的值就会变
阅读全文
摘要:图的概念 图表示的是多点之间的连接关系,由节点和边组成。类型分为有向图,无向图,加权图等,任何问题只要能抽象为图,那么就可以应用相应的图算法。 用字典来表示图 这里我们以有向图举例,有向图的邻居节点是要顺着箭头方向,逆箭头方向的节点不算作邻居节点。 在python中,我们使用字典来表示图,我们将图相
阅读全文

浙公网安备 33010602011771号