SQLSERVER之高灵活的业务单据流水号生成 最近的工作中要用到流水号,而且业务单据流水号生成的规则分好几种,并非以前那种千篇一律的前缀+日期+流水号的简单形式,经过对业务的分析,以及参考网上程序员的N种方法,整理出了一个表结构和存储过程 思路分析: 1.大体上,流水号都遵循近似这样的一般规则:流水号 = 前缀+动态内容+日期+中缀+流水号+后缀 这里的动态内容是通过参数传入流水号生成存储过程的,比如动态内容为科室+组别,这个科室和组别是动态的,每一张单可能都不同,是根据登录人组织信息得到的…
前几节终于实现了这个高并发秒杀业务,现在问题是如何优化这个业务使其能扛住一定程度的并发量. 一. 优化分析 对于整个业务来说,首先是分析哪些地方会出现高并发,以及哪些地方会影响到了业务的性能.可能会出现高并发的地方:详情页,获取系统时间,地址暴露接口,执行秒杀操作. 这个业务为什么要单独获取时间呢?用户会在详情页大量刷新,为了优化这里,将detal.jsp详情页和一些静态资源(css,js等)部署在CDN的节点上(至于这个CDN是什么,下面会说),也就是说用户访问详情页是不需要访问我们的系统的,…
先看看效果: 用极少的代码实现了 动态详情 及 二级评论 的 数据获取与处理 和 UI显示与交互,并且高解耦.高复用.高灵活. 动态列表界面MomentListFragment支持 下拉刷新与上拉加载 和 模糊搜索,反复快速滑动仍然非常流畅. 缓存机制使得数据可在启动界面后瞬间加载完成. 动态详情界面MomentActivity支持 (取消)点赞.(删除)评论.点击姓名跳到个人详情 等. 只有1张图片时图片放大显示,超过1张则按九宫格显示. 用到的CommentContainerView和Mom…
跟踪语句_业务单据_BOM select * from t_TableDescription where Ftablename like '%ICBOM%' order by FFieldName order by FFieldName declare @p2 int , select @p2 INSERT INTO ICBomChild (FInterID,FEntryID,FBrNo,FItemID,FAuxPropID, FUnitID,FMaterielType,FMarshalType…
概念 创建一个业务单据插件,处理单据的相关控制逻辑. 示例 新建一个类,继承自单据插件基类Kingdee.BOS.Core.Bill.PlugIn.AbstractBillPlugIn. using Kingdee.BOS.Core.Bill.PlugIn; using Kingdee.BOS.Core.DynamicForm.PlugIn; using Kingdee.BOS.Core.Metadata; using System; using System.Collections.Gener…
打算接下来的时间里把自己觉得用起来还比较好用的通用模块,在这里向大家介绍一下,如果你有更好的想法时,也希望你不吝指点. 1.数据库表及存储过程 在介绍这个通用流水号生成的模块前,我们先来看一下其相关的表结构: 从上图中我们可以看到,该模块用到的数据表有两个,其实用一个表也可以实现这个功能,我想很多人用到的也只是一个表,但我为什么要分为两个表,请容许我先在这儿买一个关子,接下来我再向你说明一下我要这么做的原因. 至于表的各字段是做什么用的我就不一 一解释了,如果对其中某些字段的用意不明白的话,待会…
介绍 本次采用mysql处理,性能不是很好,对于高并发有要求的建议不要采用公司一个小项目,需要生成一个单据号,格式为: 日期 + 每日重新自增号,自己考虑了一下每日自增需要考虑并发和持久问题,两种数据库redis和mysql由于项目较小,所以没有redis因为这个增加一个redis好像有点不值得,所以采用mysql作为持久化处理,一下思路也是借鉴了网上的许多想法 源码 源码查看规则源码位置: blog-study:module-utils:work-no 欢迎大家随时批评指正 思路 首先根据需求…
源码地址:https://github.com/GarsonZhang/GZFramework.ShareDemo 前言 1.在开始本节前请先重置代码为 chapter-03-start 懒人地址:https://github.com/GarsonZhang/GZFramework.ShareDemo/tree/chapter-03-start 2.创建表(商品入库主表/明细) 创建脚本目录:数据库脚本/Chapter-03新建商品入库表(主从表).sql 3.新建生成单据流水号所需的表和存储过…
流水号在各种系统中随处可见,一般都是使用自增.年月日时分秒+自增.UUID等,要么纯数字,要么纯字母,这种流水号缺乏一定的辨识度. 下面为大家介绍一种具有辨识度的流水号的生成方式:领域或者应用的标识 + 表名的英文缩写(单词的第一个字母) + 年月日(或者年月日时分秒) + Oracle Sequence自增. 代码示例: package com.pab.bloan.order.service; /** * Created by */ public interface SequenceGener…
高并发 php uniqid 用md5生成不重复唯一标识符方案uniqid() 函数基于以微秒计的当前时间,生成一个唯一的 ID.uniqid(prefix,more_entropy)prefix 可选.为 ID 规定前缀.如果两个脚本恰好在相同的微秒生成 ID,该参数很有用.more_entropy 可选.规定位于返回值末尾的更多的熵.如果 prefix 参数为空,则返回的字符串有 13 个字符串长.如果 more_entropy 参数设置为 true,则是 23 个字符串长.如果 more_…