- 博客(18)
- 资源 (1)
- 收藏
- 关注
原创 h5 video标签播放任意路径下的视频文件
html中用video标签播放视频代码如下,<video src="xxx.mp4" controls="controls"></video> xxx.mp4需要放在项目里部署在container里,如果视频文件多或者需要动态上传,全扔在项目里不合适,需要可以读取任意路径下的视频文件供h5的video标签播放。 核心代码如下,简单说就是要在respons...
2018-09-18 23:18:29 15930 2
原创 sql统计某商品最近12个月的销量,缺销售数据的月份自动补0
今天遇到这样一个问题,要统计某商品最近12个月的销量,输出到UI画个柱状图sql长这样子:select date_format(date, '%Y-%m') as month, sum(money) as totalmoney from sales where code='1200040' and date>date_add(last_day(date_sub(curdate(),...
2018-09-16 22:25:36 7606 1
原创 分析企业微信和钉钉的角色/标签的设计
我们做药店行业的CRM软件,最近用到角色管理,需要用到企业微信和钉钉的角色/权限接口,站在码农角度思考了一下他们各自的设计企业微信中叫标签,钉钉里叫角色。从名字就能看出来他们定位不太一样。标签更随意一些,可以是职位也可以是人的特点,比如“产品经理”,“爱吃水果”角色一般和权限有关,指职位或职责钉钉里角色和后台管理权限是在一块的,感觉有两个问题:钉钉的角色一般在各种流程审批中用到,但后台管...
2018-09-13 22:34:05 3711
原创 MySQL一条语句算出中位数
起因:数据库里有商品在不同地区,不同时间段,不同渠道的销售价格,想取个平均值。但因为数据是各个网点统计上来的,有个别错列了,导致有的价格失真(像一盒糖卖几万块,但实际是错列了,几万是商品编号)。因为数据量太大,没法一一修正,想到用中位数来代替,但mysql没有现成的中位数函数,琢磨半天想到的,记录出来分享一下。这个方法也可以用来算四分位数等 复习一下什么是中位数:一串数字,按从小到...
2018-09-12 22:00:29 25418 6
原创 企业微信第三方服务商和钉钉ISV开发对比
企业微信第三方服务商和钉钉ISV开发对比项目本来是基于企业微信开发(之前叫微信企业号,现在统一叫企业微信),做为第三方服务提供方。最近需要支持钉钉,也体验了一把钉钉ISV(独立服务开发商)开发,对比一下两者的相同点和差异相同点接口,授权方式,回调模式几乎一样 两者基本的接口非常像,甚至可以用同一套抽象接口,两个实现来完成。安全机制也很像 都是每隔一段时间会下发ticket,用ticket和企
2017-07-01 23:15:49 14842 1
原创 SaaS系统的接口对资源访问范围进行限制
SaaS系统中,不同用户的资源应该是互相不可见的,但我们系统中,已登录的用户A,如果篡改掉接口调用的参数,是可以访问到其它用户的资源的。其实早就意识到这个问题了,前段时间才抽空把这个洞给补上,现在把方法记下来,供更多的同学们参考。
2017-06-29 23:40:18 1827
转载 oracle 的数据类型
Char用于描述定长的字符型数据,长度varchar2用于描述变长的字符型数据,长度nchar用来存储Unicode字符集的定长字符型数据,长度nvarchar2用来存储Unicode字符集的变长字符型数据,长度number用来存储整型或者浮点型数值Date用来存储日期数据Long用来存
2010-04-02 16:57:00 482
转载 JVM 内存
转自狂放不羁的博客: 一 JVM内存模型 1.1 Java栈 Java栈是与每一个线程关联的,JVM在创建每一个线程的时候,会分配一定的栈空间给线程。它主要用来存储线程执行过程中的局部变量,方法的返回值,以及方法调用上下文。栈空间随着线程的终止而释放。StackOverflowError:如果在线程执行的过程中,栈空间不够用,那么JV
2010-02-24 17:04:00 843
转载 关于外汇储备
一个岛上住着三个人,王二,张三和李四。王二干得多吃的少,每年下来都有余粮。张三是自给自足式的,一年到头正好吃光花光,不多也不少。李四有点好吃懒做,每年自己的粮食都不够吃,得找王二借才行。几年下来,王二手上全是李四打下的借条(俗称,外汇储备)。不过得记住,粮食这东西有个特点,没法放,不吃就烂了。所以,王二也有自己的问题,不借给李四多生产出的粮食也是烂掉,谁让王二自己吃不掉呢(俗称,内需不足)
2010-02-23 14:56:00 631
转载 一些有用的oracle sql语句
sql 查表空间语句: SELECT UPPER(F.TABLESPACE_NAME) "表空间名", D.TOT_GROOTTE_MB "表空间大小(M)", D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)", TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_
2010-01-25 20:18:00 412
转载 excel 表格实用技巧大全
一、让数据显示不同颜色 在学生成绩分析表中,如果想让总分大于等于500分的分数以蓝色显示,小于500分的分数以红色显示。操作的步骤如下:首先,选中总分所在列,执行“格式→条件格式”,在弹出的“条件格式”对话框中,将第一个框中设为“单元格数值”、第二个框中设为“大于或等于”,然后在第三个框中输入500,单击[格式]按钮,在“单元格格式”对话框中,将“字体”的颜色设置为蓝色,然后再单击[添加
2009-11-17 15:24:00 2040
原创 servlet/jsp原来这样子呀!
浏览了一本说servlet/jsp的书,终于大概弄明白jsp是什么意思了。 就像把java编译成供jvm执行的二进制class一样, jsp = javaservlet = 二进制classjsp最终会被翻译成servlet. 而jsp技术里的EL, JSTL就好像一些java代码自动生成器。
2009-10-30 16:40:00 427
原创 策略模式 [转载]
当我们掌握了Java的语法,当我们了解了面向对象的封装、继承、多态等特性,当我们可以用Swing、Servlet、JSP技术构建桌面以及Web应用,不意味着我们可以写出面向对象的程序,不意味着我们可以很好的实现代码复用,弹性维护,不意味着我们可以实现在维护、扩展基础上的代码复用。一把刀,可以使你制敌于无形而于江湖扬名,也可以只是一把利刃而使你切菜平静。Java,就是这把刀,它的威力取决于你使用的方
2009-10-21 13:18:00 411
原创 adapter模式理解
adapter用于接口转化,有class adapter和object adapter,object adapter就是挂羊头卖狗肉class adapter就是挂山羊头,卖野山羊肉
2009-10-10 15:55:00 718
原创 wait()和notify()
wait()是释放锁,然后挂起当前线程。notify()是通知挂起线程重新执行 wait()和notify()都应该是在synchronized代码块中使用 (个人理解,不一定下确) 测试代码:package com.hyliu;import java.util.Date;public class SimpleTest { public stat
2009-10-09 17:50:00 502
原创 jms pub/sub代码(jms provider: oracle AQ via oc4j )
publishHashtable env = new Hashtable(); env.put(Context.INITIAL_CONTEXT_FACTORY, "com.evermind.server.rmi.RMIInitialContextFactory"); env.put(Context.PROVIDER_URL, "ormi://localhos
2009-10-09 17:34:00 1059
转载 java script 的日期控件
calendar.js***********************document.write("");document.write("");function writeIframe(){ var strIframe = "<!--"+ "*{font-size: 12px; font-family: 宋体}"+ ".bg{ color
2009-10-09 17:23:00 2499 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人