后台工作总结
工作经验。
走过的坑。
分享给各位。
后台技术汇
公众号:《后台技术汇》,腾讯云加社区2023年度优秀作者、InfoQ签约作者
展开
-
开发日常小结(44):记一次现网sql执行效率优化过程
2019年11月14日昨晚测试提了一个bug:详情是管理后台的数据查询超时了,我重新在beta环境测试了查询sql,不出意外的复现了。现网nginx配置了HTTP请求的超时时间为60s,就是说请求超过60s还没有返回响应,那么就会断开连接。于是我拷贝了sql,单独拎出来分析......终于将这个坑填完了。目录数据表结构准备业务查询sql现网执行效果优...原创 2019-11-14 14:18:59 · 180 阅读 · 0 评论 -
开发日常小结(36):源码分析:String类的substring(int beginIndex, int endIndex)方法
目录1、提出问题2、测试Demo3、源码:1、提出问题顺序执行下列程序语句后,则b的值是()String a="Hello";String b=a.substring(0,2); 2、测试Demopublic class test_string_substring { /** * @param args */ public static...原创 2018-10-08 19:00:44 · 1063 阅读 · 0 评论 -
开发日常小结(35):源码分析:反射的方法获取
目录1、提出问题:2、测试Demo:3、源码3/1 getMethods()方法3/2 getDeclaredClasses()方法 1、提出问题:Class.getMethods() 和 Class.getDeclaredMethods()区别是什么?获取到哪些返回值? 2、测试Demo:public class test_class_exte...原创 2018-10-08 15:49:10 · 266 阅读 · 0 评论 -
开发日常小结(34):源码分析:String类的equals()方法
目录1、提出问题2、源码分析3、测试Demo:1、提出问题我们都知道,在Java中,“==”比较的是对象在内存中的地址,“equals”比较对象的内容;今天复习一下”equals“。 2、源码分析 /** * Compares this string to the specified object. The result is {@code...原创 2018-10-07 21:32:12 · 440 阅读 · 0 评论 -
开发日常小结(33):Java中的数组是否是对象
2018年10月06日目录1、概念2、测试Demo1、概念数组:具有相同类型的数据的集合,1)具有固定的长度;2)在内存中占据连续空间;Java中,数组有属性(length属性),也有方法(clone方法);对象的特点:封装了数据,同时提供一些属性和方法,故数组是对象!! 2、测试Demopackage testArray;public class...原创 2018-10-06 19:19:04 · 197 阅读 · 0 评论 -
开发日常小结(32):HashMap 源码分析
2018年10月05日目录1、Java数据结构图2、HashMap构造器2.1 HashMap(int initialCapacity, float loadFactor) 2.2 HashMap(int initialCapacity)2.3 HashMap()2.4 HashMap(Map m) 3、put(K key, V value)方法4、get(Ob...原创 2018-10-05 11:47:10 · 432 阅读 · 0 评论 -
开发日常小结(31):数组array与列表ArrayList的遍历性能比较与分析
2018年10月03日目录测试结论测试例子性能分析1)数组Array:2)列表ArrayList:2.1 构造函数2.2 成员变量2.3 add 方法(队列末尾插入一个元素 / 队列特定位置插入一个元素)2.4 remove方法(删除指定位置的元素 / 删除某个元素)2.5 get 方法 测试结论Java两个常用的数据结构进行性能的比较,发...原创 2018-10-03 21:30:42 · 1136 阅读 · 0 评论 -
开发日常小结(30):jar包的打包与使用
2018年09月24日jar包概念 编译打包 测试使用 jar用途 与其他压缩格式的区别1、什么是jar包?JAR(Java ARchive,Java 归档)是一种与平台无关的文件格式,可将多个文件合成一个文件。除了可以包括声音和图像文件以外,也可以在其中包括类文件。JAR 文件格式以流行的 ZIP 文件格式为基础。与 ZIP 文件不同的是,JAR 文件不仅用于压缩和...原创 2018-09-24 13:14:44 · 440 阅读 · 0 评论 -
开发日常小结(29):maven安装与使用
1、Demo 架构(注意目录)*******拓展,很多项目,归根也是个maven项目****** 2、maven指令2.1 清除、编译 进入工作目录(D:\InsAddress\eclipse\workplace\mavenTest),mvn clean compile; 这条命令的意思是:1、clean告诉Maven清理输出目录target/2、c...原创 2018-09-23 11:44:56 · 122 阅读 · 0 评论 -
开发日常小结(28):Mybatis 分页插件 -- PageHelper 使用小结
2018年7月23日09:50:01【1、背景】1)aop切面编程,spring框架提供的招牌菜之一(另一个是ioc,依赖注入),用于提供对模块化程序的切面处理;2)需求:一个是使用dataTable的服务器模式,通过物理分页,获取数据;二是对于某些数据,我们想让最新的Mysql数据显示在dataTable的最前面,(可以理解为id最大的数据排序最前面) 【2、构思】1)使...原创 2018-07-29 16:08:28 · 336 阅读 · 0 评论 -
开发日常小结(38):MYSQL: left join / right join / join 的使用区别和联系
2018年10月19日目录1、JOIN 的概念2、JOIN 使用场景3、场景一:INNER JOIN4、场景二: LEFT JOIN 5、场景三:RIGHT JOIN6、场景四:FULL JOINFULL JOIN 关键字语法1、JOIN 的概念有时为了得到完整的结果,我们需要从两个或更多的表中获取结果。我们就需要执行 join。SQL join 用于...原创 2018-10-21 15:11:24 · 356 阅读 · 0 评论 -
开发日常小结(39):MYSQL: UNION 和 UNION ALL 的使用与区别
2018年10月20日目录一、新建一个简单的表,两个select查询语句二、UNION用法的个人理解三、包含或取消重复的行四、查询结果排序五、小结1、UNION在MySQL4.0以上版本才能可以使用。2、UNION是条件联结的手段之一。一、新建一个简单的表,两个select查询语句新建表author:SET FOREIGN_KEY_CHECKS=...原创 2018-12-02 17:30:37 · 2921 阅读 · 0 评论 -
《转载》fiddler之请求过滤(Filters)
2019年5月17日目录标题:一、Hosts二、Client Process三、Request Headers四、Breakpoints五、response status code六、Response type and size七、response headers标题: 开启fiddler后,会监听所有的请求,在大多数情况下,我们只需要监听部分请求,此时...转载 2019-05-17 17:51:10 · 246 阅读 · 0 评论 -
开发工作中常用的linux指令,更新中...
2019年4月29日1)ubuntu系统下载电影1.1 echo url|base64 -d1.2 wget ftp://dygod1:dygod1@d317.dydytt.com:9009/%5B%E7%94%B5%E5%BD%B1%E5%A4%A9%E5%A0%82www.dy2018.net%5D.%E4%BA%91%E5%9B%BE.1024x576.BD%E4%B8%AD%E...原创 2019-05-04 16:21:10 · 1491 阅读 · 0 评论 -
Java(46):九个demo彻底让你明白内部类的语法使用!!
2019年5月3日目录引入demo1:普通内部类demo2:直接创建普通内部类demo3:静态内部类demo4:内部类与内部类成员demo5:内部类与外部类成员调用关系demo6:内部类访问外部类成员demo7:匿名内部类是抽象类demo8:匿名内部类是接口demo9:内部类作函数实参引入一般项目编程中,很少业务代码会使用到内部类,但是我经常看...原创 2019-06-01 15:28:37 · 368 阅读 · 0 评论 -
开发工作中常用的git指令,正在更新至2021年3月4日....
2019年4月26日1、git init : Create an empty Git repository or reinitialize an existing one2、git add . : Add file contents to the index3、git commit -m '**' git commit -a '**' The command g...原创 2019-04-26 11:29:43 · 180 阅读 · 0 评论 -
开发日常小结(44):Java,深拷贝/浅拷贝的区别(clone,ConvertHelper的使用,Cloneable接口)
2019年1月27日10:32:31工作中,忽然收到测试提的一个奇怪的bug(当然只是浅层原因),经过log定位,发现对象竟然被修改了,顺藤摸瓜,我找到了问题根源:那就是某处地方对参数对象进行了一个浅拷贝,然后修改了对象里面的hashMap属性,导致了问题。(总结:hashmap属性clone属于浅拷贝,Converthelper是公司封装的一个工具类,看过源码才明白也是浅拷贝,clone...原创 2019-01-27 14:59:47 · 443 阅读 · 0 评论 -
开发日常小结(27): Infinity与NaN的实现
2018年7月20日16:09:30场外音:总裁来故宫了。今日久违碰到基础的bug:java计算中碰到了“Infinity与NaN”;前端的哥们抱怨说为啥初始化数据时就出现这种情况捏??我汗颜..........【1】小例子导入java浮点数运算中有两个特殊的情况:NAN、INFINITY,分别是“非数字”和“无限大”;public abstract class ...原创 2018-07-20 19:59:46 · 1542 阅读 · 0 评论 -
开发日常小结(29):UUID的使用
2018年7月23日15:24:03【1】概念 【2】测试例子package test7;import java.util.UUID;public class cupNo { public static void main(String [] args){ String uuid = UUID.randomUUID().toString(); //获取UUID并转化...原创 2018-07-23 19:12:51 · 336 阅读 · 0 评论 -
开发日常小结(4):如何将Redis技术运用到java项目工程呢?--分析Jedis的使用和实例详解
2018年4月7日背景:大型商业项目,无论是java还是php,或是python,都会对redis数据库进行开发,redis数据库相比于其他的key-value数据库还是优势明显的。redis的叙述,在前文《Redis (REmote DIctionary Server):一个高性能的key-value数据库的学习(1)》有提到,这里不多介绍。运用:在实际工作中,工程代码已经有...原创 2018-04-07 13:06:30 · 707 阅读 · 0 评论 -
开发日常小结(10):项目如何使用图片服务器API?
开发日常小结(10):游戏项目中,应该如何使用图片服务器?原创 2018-05-13 18:28:44 · 602 阅读 · 0 评论 -
开发日常小结(2):如何使用Google提供的Protocol buffer协议实现序列化呢?--游戏公告序列化实例详解
2018年4月6日一般的商业项目,其前后端之间的数据交互要求使用更加高效的方式,google就提供了这种解决办法,那就是 序列化框架protocol buffer;这原本是Google内部开发的技术,后来开源给大众使用(佩服佩服!!);现在做的游戏项目也使用了该框架,因此做个总结和归纳。1、protocol buffer 概念:1)Protocol Buffers(也称prot原创 2018-04-06 14:46:09 · 416 阅读 · 0 评论 -
开发日常小结(3):如何使用datatable导出数据到Excel?-- 充值查询数据实例
2018年4月6日运营部的妹子们又来需求了,查了网上资料,很快的完成了,虽然只是基础;实现思路:使用datatable的插件--buttons;官方文档:https://datatables.net/reference/button/excel1)datatable的数据显示不需要我多说了,各位都懂的;2)加入buttons插件,其实分两步:一是导入js;二是编写js;(又是多余的废话。。)导入j...原创 2018-04-06 19:26:40 · 2008 阅读 · 1 评论 -
开发日常小结(1):获取当前时间--new Date还是system.currentTimeMillis?
2018年4月5日今天被老大略微又略微的提点了一下下,哈哈。下面是从开发过程提取的一个小点,小至分析一个时间数据的获取;测试用例:package test2;import java.util.Date;public class test4 { public static void main(String[] args){ /*第一种方式*/ Long Tim原创 2018-04-05 18:59:38 · 433 阅读 · 0 评论 -
开发日常小结(9):如何在项目中定位枚举类的作用,并使用枚举类?-- 枚举类描述业务对象状态的实例详解
开发日常小结(9):如何在项目中定位枚举类的作用,并使用枚举类?-- 枚举类描述业务对象状态的实例详解原创 2018-05-18 21:18:52 · 774 阅读 · 0 评论 -
开发日常小结(14):自动装箱与拆箱,概念+用法+Integer的实例分析
开发日常小结(14):自动装箱与拆箱,Integer的实例分析原创 2018-04-25 21:47:13 · 201 阅读 · 0 评论 -
开发日常小结(11):文件上传功能改进:中文字符检测与文本内容处理
开发日常小结(11):文件上传功能改进:中文字符检测与文本内容处理原创 2018-05-18 21:05:35 · 169 阅读 · 0 评论 -
开发日常小结(19):Spring AOP 最佳入门试验 + 游戏禁言的应用实例小结
2018年5月18日18:08:27一、实例-业务需求和场景:1、游戏的玩家时常出言不逊,这时候禁言这个功能应运而生了;2、手游的发言场景,其实是前端到后端的接口调用与返回的过程;3、特别是棋牌游戏,德州扑克有聊天接口、斗地主、百人场等等都会有相应的接口;因次,导致的结果是:禁言就是不断地在游戏接口重复判断,这样的工作是重复性的。有没有好的方法捏?下面讲解一下我在工作的一次小突破(实际结果嘛··文...原创 2018-05-18 18:40:35 · 312 阅读 · 0 评论 -
开发日常小结(24):Java的传值与传递引用之区别
2018年7月2日19:57:06原创 2018-07-04 10:01:11 · 156 阅读 · 0 评论 -
开发日常小结(21): 解决flume经常被系统挂起的问题 -- 开启守护线程
时间:2018年6月20日12:05:57【前言】flume的介绍可以参考前面:《flume(1):三个内置基本组件:channel、source、sink》;【bug】系统的flume线程启动后,常常运行一段时间后被系统挂起;原来的启动脚本:eg:bin/flume-ng agent –conf ./conf/ -f conf/simple-agent.proper...原创 2018-07-04 17:18:55 · 1479 阅读 · 0 评论 -
游戏开发术语(1): 渠道包 / 渠道 / 抓包 ?
2018年5月22日作者:孟远链接:https://www.zhihu.com/question/22168194/answer/91813384来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。1、渠道包:渠道包指的是在各大应用市场,发布的apk包的清单文件中,某个meta-data标签下,配置的value不一样,这个标签的作用就是用来区分是哪个市场的,比如你发布到3...转载 2018-05-22 10:16:27 · 3839 阅读 · 0 评论 -
开发日常小结(19): 前后端数据交互 -- ajax 与 FormData,用户上传图片时,异步ajax上传图片到服务器,并在页面显示图片
2018年5月15日10:42:05原创 2018-05-18 20:57:25 · 883 阅读 · 0 评论 -
开发日常小结(14):项目小功能:实现倒计时功能(js实现),基于java数据传递
2018年5月13日17:26:50【1】前言运营部姐姐发来一个留言:加个倒计时吧,这样看着舒服。然后,我就开始重新看模块的相关代码了(了解数据流的传递过程,是非常重要的)。经过努力,还是解决了这个问题,如下图所示:【2】原理开发必须注重效率,因此要明确需求:1)假如查询的玩家没有封号,那就不需要倒计时了;2)假如查询的玩家被封号了,那就要获取封禁开始时间、封禁所需时间和当前时间了,然后就是js的...原创 2018-05-13 17:47:55 · 440 阅读 · 0 评论 -
开发日常小结(5):这天顿悟的几个后端开发的小准则
开发日常小结(5)原创 2018-04-10 21:42:53 · 234 阅读 · 0 评论