后端
编程鸭
这个作者很懒,什么都没留下…
展开
-
JS 无形装逼,最为致命
除了三目运算,你还知道其他的装逼姿势吗?留言走你~~单行简洁的代码很难维护(有时甚至难以理解),但这并不能阻止广大攻城狮们脑洞,在编写简洁的代码后获得一定的满足感。以下我最近的一些收藏javascript精简代码集合。它们都可以在你的开发控制台中运行,你可以从控制台中查看运行结果。同时,我希望你能在评论中分享一些自己的藏品!日历创建过去七天的数组,如果将代码中的减号换...原创 2019-06-18 17:51:24 · 189 阅读 · 0 评论 -
python pickle模块
持久性就是指保持对象,甚至在多次执行同一程序之间也保持对象。通过本文,您会对 Python对象的各种持久性机制(从关系数据库到 Python 的 pickle以及其它机制)有一个总体认识。另外,还会让您更深一步地了解Python 的对象序列化能力。什么是持久性?持久性的基本思想很简单。假定有一个 Python 程序,它可能是一个管理日常待办事项的程序,您希望在多次执行这个程序之间可...原创 2019-06-01 15:06:27 · 193 阅读 · 0 评论 -
Python线程指南
本文介绍了Python对于线程的支持,包括“学会”多线程编程需要掌握的基础以及Python两个线程标准库的完整介绍及使用示例。注意:本文基于Python2.4完成,;如果看到不明白的词汇请记得百度谷歌或维基,whatever。尊重作者的劳动,转载请注明作者及原文地址 >.<1. 线程基础1.1. 线程状态线程有5种状态,状态转换的过程如下图所示:1.2....原创 2019-06-01 14:56:58 · 173 阅读 · 0 评论 -
并发编程之synchronize
synchronized是Java中的关键字,是一种常用的线程同步锁。用法注意:在理解synchronized时,要知道一个核心点,synchronized锁定的不是代码,而是对象。使用synchronized时,其会申请对象的堆内存,进行锁定。写法一 Object o = new Object(); // 锁对象 public void test01(){...原创 2019-06-01 14:48:07 · 264 阅读 · 0 评论 -
SpringBoot 第一篇:入门篇
前言 博主从去年开始,项目中使用的框架逐渐被 SpringBoot 取代。今年独立负责的两个项目也都是用 SpringBoot ,看过不少资料、博客。网上的资源,内容有长有短,参差不齐。有的内容甚至存在误导性,误导读者从一个坑跳进另一个坑。另外,在项目中使用的 SpringBoot 的功能比较零散。 基于此,想系统整理其相关的知识点以及项目中踩得坑,并记录。一是作为自己的一个成长笔记,...原创 2019-06-01 14:42:43 · 186 阅读 · 1 评论 -
SpringBoot第二篇:配置文件详解一
前言 SpringBoot 完全摒弃了xml配置的模式,几乎做到了“零配置”。说是“几乎”,是因为一般情况下默认的配置足够满足日常开发所需,但是在特殊的情况下,我们往往需要用到自定义属性配置、自定义文件配置、多环境配置、外部命令引导等一系列功能。 SpringBoot 使用的全局配置文件 application.properties 的作用是对一些默认配置的值进行修改。配置文件通常放在...原创 2019-06-01 14:41:34 · 155 阅读 · 0 评论 -
SpringBoot第三篇:配置文件详解二
前言 本文主要讲 yaml 文件。 传统的配置文件有 .xml、.properties、.json 等格式的文件。yaml 文件想对于传统的文件来说,减少很多不必要的标签或者括号,阅读也更加清晰简单。SpringBoot 官方推荐的配置文件,除了 .properties ,还有 yaml 。概述 yaml 文件其实与properties 文件差别不大,主要是层次结构更加...原创 2019-05-31 14:05:18 · 153 阅读 · 0 评论 -
SpringBoot第四篇:整合JDBCTemplate
引言 前面几篇文章介绍了 SpringBoot 的一些基本信息,但是还没有跟数据库交互。接下来几章,我们将陆续介绍 SpringBoot 整合各大主流的 ORM 框架。 操作数据库的方式有很多种。本章介绍 JDBCTemplate 操作数据库。JDBCTemplate 简介 JDBCTemplate 是 Spring 对数据库操作在jdbc上做的深层封装。使用 Sprin...原创 2019-05-31 14:03:50 · 718 阅读 · 0 评论 -
python MySQLdb模块有些操作失效问题解决
今天用这个模块做update操作时没有办法写入库中,原因是如果你使用InnoDB之类的存储引擎管理表的时候需要手动提交事务,否则所有的更改都变得无效。 官方文档见http://mysql-python.sourceforge.net/FAQ.html#my-data-disappeared-or-won-t-go-away Starting with 1.2.0, MySQLdb di...原创 2019-06-01 15:12:46 · 291 阅读 · 0 评论 -
一文了解ConfigurationConditon接口
ConfigurationCondition 接口说明@Conditional 和 Condition 在了解ConfigurationCondition 接口之前,先通过一个示例来了解一下@Conditional 和 Condition。(你也可以通过 https://www.cnblogs.com/cxuanBlog/p/10960575.html 详细了解)首先新建一个Mave...原创 2019-06-02 10:16:09 · 161 阅读 · 0 评论 -
vue页面切换效果(slide效果切换)
最近碰到一个需求,单页应用里面页面切换的效果需要做成跟轮播图滑动slide一样,让这个页面在切换时感觉是一个页面。反复琢磨的vue里面的transition,最终将实现的核心代码贴出来。这里实现的是上下切换,左右的效果类似。核心代码如下(App.vue):注:这里使用了vue-touch组件来监听swipe事件最重要的就是transition的样式:如果你...原创 2019-06-03 14:03:06 · 5096 阅读 · 0 评论 -
Tomcat 容器的安全认证和鉴权
大量的 Web 应用都有安全相关的需求,正因如此,Servlet 规范建议容器要有满足这些需求的机制和基础设施,所以容器要对以下安全特性予以支持:身份验证:验证授权用户的用户名和密码 资源访问控制:限制某些资源只允许部分用户访问 数据完整性:能够证明数据在传输过程中未被第三方修改 机密性或数据隐私:传输加密(SSL),确保信息只能被信任用户访问本文就以上问题,对 Tomcat 容器提供...原创 2019-06-03 10:52:23 · 926 阅读 · 0 评论 -
深入分析 JDK8 中 HashMap 的原理、实现和优化
HashMap 可以说是使用频率最高的处理键值映射的数据结构,它不保证插入顺序,允许插入 null 的键和值。本文采用 JDK8 中的源码,深入分析 HashMap 的原理、实现和优化。首发于微信公众号顿悟源码.1. 基本结构HashMap 基于散列表实现,使用拉链法处理碰撞,在 JDK8 中,当链表长度大于 8 时转为红黑树存储,基本结构如下:HashMap 有一个 Node&l...原创 2019-06-03 10:42:17 · 155 阅读 · 0 评论 -
初探奥尔良(Orleans)
由于工作上关系目前经常被各种并发数据问题搞得焦头烂额,要么要性能舍弃数据上得一致性,要么要一致性但是却得到了特别糟糕的响应。难道鱼和熊掌真的无法兼得吗?然后找到了类似奥尔良这种基于Actor模型的kuangjia首先本人因为是C#系的所以暂不考虑Java系那套,那摆在面前的此类型的框架其实就2个。 Akka.Net和Orleans。什么是Actor?Actor应该说是一...原创 2019-06-02 13:42:39 · 1311 阅读 · 0 评论 -
.NET Core 迁移躺坑记
最近将自己负责的一个核心接口系统从.Net Framework迁移到了.Net Core。整体过程,从业务层面说一般般吧(整体还好但还是搞的业务有感,没出严重故障)但是技术层面上感觉其实并没有达到要求,不过预期也是应该不会那么顺利,接下来可能还需要几个小Fix来处理各种奇奇怪怪的问题。回顾下迁移时候遇到的若干个坑,希望对后续有此类操作的人所有帮助。1.NetCore下的路由行为和...原创 2019-06-02 13:41:16 · 807 阅读 · 0 评论 -
.NET Core 迁移躺坑记续集--Win下莫名其妙的超时
继上一集里说到遇到的各种问题并且弄了n个解决方案之后,特别是对于问题4的解决方案对于切换了HttpClientFactory我用了你家netcore 2.1下专门解决之前HttpClient口病已久的灵丹妙药了,信心满满的上线…..然后挂了,该超时的继续超其中这个问题比较诡异在于超时的主要集中在两台机器上(俗称两兄弟了)由于不明真相到底是什么导致的,而且接下来又要到五一了,为了欢...原创 2019-06-02 13:40:10 · 206 阅读 · 0 评论 -
ApplicationInsights的探测器尝鲜
通常我们可以依靠ApplicationInsights(以下简称ai)来收集比如请求(request),依赖项(dependencies),异常(exception)等信息,但是无法收集到比如一个方法(方法内部比如没有依赖项调用)的信息。很多时候如果一个方法很慢,我们只能根据ai分析首先是不是依赖项慢导致,如果不是,就以依赖项为节点,看这个依赖项是前面慢还是后面慢,然后在进行下一步分析。然...原创 2019-06-02 13:39:06 · 1578 阅读 · 0 评论 -
Spring Cloud Zuul API服务网关之请求路由
目录 一、Zuul 介绍 二、构建Spring Cloud Zuul网关 构建网关 请求路由 请求过滤 三、路由详解 一、Zuul 介绍 通过前几篇文章的介绍,我们了解了Spring Cloud Eureka 如何搭建注册中心,Spring Cloud Ribbon 如何做负载均衡,Spring Cloud Hystrix 断路器如何保护我们的服...原创 2019-06-02 11:08:18 · 1175 阅读 · 0 评论 -
一文了解@Conditional注解说明和使用
@Conditional:Spring4.0 介绍了一个新的注解@Conditional,它的逻辑语义可以作为"If…then…else…"来对bean的注册起作用。@Contidional 介绍 Conditional 是由 SpringFramework 提供的一个注解,位于 org.springframework.context.annotation 包内,定义如下。@R...原创 2019-06-02 10:45:48 · 534 阅读 · 0 评论 -
SpringBoot第六篇:整合通用Mapper
引言 在以往的项目中,对于dao层的常规 CRUD 操作,我们通常使用 JPA、JDBC 时会做一个所谓的 BaseDaoMapper 以减少代码量。而通用 Mapper 刚好是这一环节的替代品,代码更简单,更优雅,也是 Mybatis 用的很广泛的一个插件。 不过需要注意的一点是,通用 Mapper 支持单表操作,不支持通用的多表联合查询。使用 下面通过用增删改查的简...原创 2019-05-31 13:45:05 · 993 阅读 · 0 评论 -
SpringBoot第七篇:整合Mybatis-Plus
引言 一看这个名字,就能看出与 MyBatis 有关。没错,它就是一款 MyBatis 的增强工具。 下面我们先介绍这款工具,然后再介绍在 SpringBoot 中的使用。这样符合博主的习惯:在学习一个新的技术或者新的框架之前,一定会思考这个技术或者框架为什么会出现?解决了什么问题?有没有别的取代方案?Mybatis Plus简介1、概念 MyBatis-Plus(...原创 2019-05-31 11:58:12 · 448 阅读 · 0 评论 -
SpringBoot第八篇:整合MyBatis-Generator
MyBatis Generator简介 MyBatis Generator 是 MyBatis 代码生成器。 MyBatis 是一个ORM 的半自动框架,需要手动维护大量的 mapper.xml 文件和 POJO 类。 MyBatis Generator 为了完善 MyBatis 的这个缺点而出现。自动生成 Java POJOs、map.xml、代理接口、以及常规的 CRUD 方法。...原创 2019-05-31 11:51:35 · 216 阅读 · 1 评论 -
学完C语言,你可以去哪些应用领域工作?
C语言是目前世界上流行、使用非常广泛的高级程序设计语言。C语言对操作系统和系统使用程序以及需要对硬件进行操作的场合,用C语言明显优于其它高级语言,许多大型应用软件都是用C语言编写的。C语言具有绘图能力强,可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画它是数值计算的高级语言。因为C语言具有高级语言的特点,又具有汇编语言的特点,所以可以作为工作系统设计语言,...转载 2019-05-06 11:48:56 · 5051 阅读 · 0 评论 -
Java 问题排查工具单
前言平时的工作中经常碰到很多疑难问题的处理,在解决问题的同时,有一些工具起到了相当大的作用,在此书写下来,一是作为笔记,可以让自己后续忘记了可快速翻阅,二是分享,希望看到此文的同学们可以拿出自己日常觉得帮助很大的工具,大家一起进步。闲话不多说,开搞。Linux命令类tail最常用的tail -ftail -300f shopbase.log #倒数300行并进入实时监听文...转载 2019-04-14 17:51:29 · 221 阅读 · 0 评论 -
Python 条件语句
Python 条件语句Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。可以通过下图来简单了解条件语句的执行过程:Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。Python 编程中 if 语句用于控制程序的执行,基本形式为:if 判断条件: 执行语句……else: ...转载 2019-04-17 10:34:36 · 209 阅读 · 0 评论 -
Java 面试题 :百度前 200 页都在这里
基本概念 操作系统中 heap 和 stack 的区别 什么是基于注解的切面实现 什么是 对象/关系 映射集成模块 什么是 Java 的反射机制 什么是 ACID BS与CS的联系与区别 Cookie 和 Session的区别 fail-fast 与 fail-safe 机制有什么区别 get 和 post...转载 2019-04-21 18:24:04 · 124 阅读 · 0 评论 -
java面试真题
001_Java跨平台原理(字节码文件、虚拟机)C/C++语言都直接编译成针对特定平台机器码。如果要跨平台,需要使用相应的编译器重新编译。Java源程序(.java)要先编译成与平台无关的字节码文件(.class),然后字节码文件再解释成机器码运行。解释是通过Java虚拟机来执行的。字节码文件不面向任何具体平台,只面向虚拟机。Java虚拟机是可运行Ja...转载 2019-04-16 10:28:03 · 289 阅读 · 0 评论 -
Java 中整型的缓存机制
本文将介绍Java中Integer的缓存相关知识。这是在Java 5中引入的一个有助于节省内存、提高性能的功能。首先看一个使用Integer的示例代码,从中学习其缓存行为。接着我们将为什么这么实现以及他到底是如何实现的。你能猜出下面的Java程序的输出结果吗。如果你的结果和真正结果不一样,那么你就要好好看看本文了。package com.javapapers.java;pub...转载 2019-04-16 10:19:22 · 210 阅读 · 0 评论 -
18个有趣的Linux命令运行的彩蛋&游戏
1、《Matrix》字节数据流在命令行中输入以下命令安装并运行。sudoapt-getinstallcmatrixcmatrix还可输入参数控制颜色。cmatric-Cred按ctrl+c退出。在《Matrix》电影里的字节流其实是该片美术指导Simon Whitley的日本妻子菜谱上的片假名。2、仪表盘之blessed-contr...原创 2019-04-08 10:51:50 · 1216 阅读 · 0 评论 -
老大难的空指针,如何优雅处理?
导语在笔者几年的开发经验中,经常看到项目中存在到处空值判断的情况,这些判断,会让人觉得摸不这头绪,它的出现很有可能和当前的业务逻辑并没有关系。但它会让你很头疼。有时候,更可怕的是系统因为这些空值的情况,会抛出空指针异常,导致业务系统发生问题。此篇文章,我总结了几种关于空值的处理手法,希望对读者有帮助。业务中的空值场景存在一个UserSearchService用来提供用户查询...转载 2019-04-02 10:59:40 · 1343 阅读 · 0 评论 -
新手能看懂的(Interceptor)和(Filter)区别与使用!
一、拦截器与过滤器我们先了解一下过滤器和拦截器。这两者在功能方面很类似,但是在具体技术实现方面,差距还是比较大的。在分析两者的区别之前,我们先理解一下AOP的概念,AOP不是一种具体的技术,而是一种编程思想。在面向对象编程的过程中,我们很容易通过继承、多态来解决纵向扩展。但是对于横向的功能,比如,在所有的service方法中开启事务,或者统一记录日志等功能,面向对象的是无法解决的。所以AO...转载 2019-03-28 11:28:36 · 331 阅读 · 0 评论 -
c语言版贪吃蛇小游戏想学吗?
数据结构:双向链表1.程序未使用graphis.h中的 函数,所以采用先清屏,再打印的方式显示图形,大约每秒刷新一次;2.除蛇头元素外,其它元素的状态(行进方向)均重复前一元素;3.蛇的图形元素为笑脸,可在源码中更改symbol参数选用不同元素。游戏截图1游戏截图2/**********************************time:...原创 2019-05-09 13:58:19 · 155 阅读 · 0 评论 -
会写Python代码的人工智能Kite宣布支持Linux,“程序猿”要失业了?
Kite,那个能为“程序猿”们减少写Python代码时的重复劳动的“自动完成AI”,近日宣布,为了回应社区的反馈,它已经添加了对Ubuntu 16.04+、Debian、Fedora、Archlinux、Linux Mint的Linux支持。现在,在Linux环境中编写代码的Python开发人员可以使用他们喜欢的代码编辑器编写更高效的软件。Kite 是TEEC天使基金投资项目,名列20...原创 2019-05-14 13:58:56 · 1644 阅读 · 0 评论 -
java提高篇(三)-----java的四舍五入
Java小事非小事!!!!!!!!!!!! 四舍五入是我们小学的数学问题,这个问题对于我们程序猿来说就类似于1到10的加减乘除那么简单了。在讲解之间我们先看如下一个经典的案例:public static void main(String[] args) { System.out.println("12.5的四舍五入值:" + Math.round(12....原创 2019-05-18 14:16:45 · 199 阅读 · 0 评论 -
Python3学习笔记(3)集合、文件操作、字符转编码
1.集合集合是无序的、不重复的数据组合,主要作用是:关系测试、去重等,用{}表示,set() 创建集合。--------------关系测试------------------------------intersection() 求集合交集 运算符为 &union() 求集合并集 运算符为 |difference() 求集合差集 ...原创 2019-05-18 11:25:31 · 159 阅读 · 0 评论 -
java HashMap那点事
集合类的整体架构比较重要的集合类图如下: 有序否 允许元素重复否 Collection 否 是 List 是 是 Set AbstractSet 否 ...原创 2019-05-22 11:06:01 · 93 阅读 · 0 评论 -
用C表达面向对象语言的机制——C#版
阅读目录(Content)1. 目标 2. 封装字段和方法 1) 用struct代替class 2) 用New[ClassName]代替new 3. 实现继承 3) 用组合代替继承 4) 用函数指针代替virtual 4. 用Convert2Type代替as 5) 使用关键字as 6) 准备类型标识结构 7) 实现Convert2Type 5. 用链表...原创 2019-05-25 10:53:19 · 242 阅读 · 0 评论 -
Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
去空格及特殊符号s.strip().lstrip().rstrip(',')复制字符串#strcpy(sStr1,sStr2)sStr1 = 'strcpy'sStr2 = sStr1sStr1 = 'strcpy2'print sStr2连接字符串#strcat(sStr1,sStr2)sStr1 = 'strcat'sStr2 = 'append'sSt...原创 2019-05-21 13:47:40 · 170 阅读 · 0 评论 -
一个月玩了8个游戏,他学会了python,快乐就完事了!
学python什么的,快乐就完事了有人说人生最大的两大幸事: 结婚是因为爱情, 选择这份工作是因为喜欢。 当然,我们选择python可能是因为兴趣,也有可能是因为找一份高薪的工作,但是不管是因为什么,当我们没有去经营最初的那份心,它也会变成你所厌恶的!从最开始的学习开始,不能产生对python、对自己的质疑,要在学python中产生兴趣,然后好好经营这份兴趣,你将一往直...原创 2019-05-15 16:05:40 · 1215 阅读 · 0 评论 -
java数据结构和算法08(B树的简单原理)
这一篇首先会说说前面剩余的一点知识2-3树,然后简单说说B树,不写代码,只是简单看看原理吧! 为什么要说一下2-3树呢?了解2-3树之后能更快的了解B树;1.简单看看2-3树 其实我们学过了前面的2-3-4树之后,再看2-3树就太容易了,2-3树中任意一个节点最多只有三个子节点,而且节点中只有两个空位置可以存数据;除了分裂,其他的都和2-3-4树一样的,就不多说了,下面我们...原创 2019-05-19 14:35:10 · 192 阅读 · 0 评论