<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[fireaco的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/fireaco</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; fireaco]]></copyright><item><title><![CDATA[报表导出sql]]></title><link>https://blog.youkuaiyun.com/fireaco/article/details/93206000</link><guid>https://blog.youkuaiyun.com/fireaco/article/details/93206000</guid><author>fireaco</author><pubDate>Fri, 21 Jun 2019 16:56:29 +0800</pubDate><description><![CDATA[用了毕生所学，写出来的sql，记录一下，留作纪念
SELECT
	(
				select string_agg(unit_name, '--&gt;') as unit_chain from ( with recursive cte (id,unit_name) as (
        select *, 1 as depath from t_unit where id = (select u...]]></description><category></category></item><item><title><![CDATA[报表导出sql]]></title><link>https://blog.youkuaiyun.com/fireaco/article/details/93205999</link><guid>https://blog.youkuaiyun.com/fireaco/article/details/93205999</guid><author>fireaco</author><pubDate>Fri, 21 Jun 2019 16:56:29 +0800</pubDate><description><![CDATA[用了毕生所学，写出来的sql，记录一下，留作纪念
SELECT
	(
				select string_agg(unit_name, '--&gt;') as unit_chain from ( with recursive cte (id,unit_name) as (
        select *, 1 as depath from t_unit where id = (select u...]]></description><category></category></item><item><title><![CDATA[一种常见的并发问题处理]]></title><link>https://blog.youkuaiyun.com/fireaco/article/details/86554058</link><guid>https://blog.youkuaiyun.com/fireaco/article/details/86554058</guid><author>fireaco</author><pubDate>Sat, 19 Jan 2019 16:42:36 +0800</pubDate><description><![CDATA[分享一种非常常见的并发问题处理，先看下场景重现：
在这个并发场景中，有一下几个条件

使用了spring的@transactional注解处理事务，
在A方法调用了B方法，A和B在同一个service方法中，同时A和B方法都使用了REQUIRED的传播方式
在b方法中，先判断数据库中是否有记录，有则修改，无则添加。

好了，这个方法在使用jmeter测试时，就会有很大概率，无视b方法中的判断方法，...]]></description><category></category></item><item><title><![CDATA[activiti对于包括网关，多实例任务的实际需求与应用]]></title><link>https://blog.youkuaiyun.com/fireaco/article/details/80521424</link><guid>https://blog.youkuaiyun.com/fireaco/article/details/80521424</guid><author>fireaco</author><pubDate>Thu, 31 May 2018 11:17:53 +0800</pubDate><description><![CDATA[在工作中遇到的一些工作流需求，记录下来，作为参考


需求1：在各个节点上可以动态的添加表单属性
解决方案：使用动态表单，有的属性需要从数据库中查询也没关系，在activiti modeler中统一定义为String类型，表单的显示可以从业务那里调过来
需求2：一个节点上需要多个人审批，并且每个人之间不牵扯，可以同时审批
解决方案：使用子流程任务，需要注意的是节点的定义，Assigneements...]]></description><category></category></item><item><title><![CDATA[nginx配置单机10000并发的几个参数]]></title><link>https://blog.youkuaiyun.com/fireaco/article/details/79373343</link><guid>https://blog.youkuaiyun.com/fireaco/article/details/79373343</guid><author>fireaco</author><pubDate>Mon, 26 Feb 2018 09:27:13 +0800</pubDate><description><![CDATA[配置单机10000并发的几个参数


ulimit -n 30000：打开文件最大数
echo 10000 &amp;gt; /proc/sys/net/core/somaxconn：最大连接数
echo 1 &amp;gt; /proc/sys/net/ipv4/tcp_tw_recycle:是否立即回收
echo 1 &amp;gt; /proc/sys/net/ipv4/tcp_tw_reuse：
echo 0 &amp;...]]></description><category></category></item><item><title><![CDATA[使用layui定义一个模块并使用的实例]]></title><link>https://blog.youkuaiyun.com/fireaco/article/details/79109706</link><guid>https://blog.youkuaiyun.com/fireaco/article/details/79109706</guid><author>fireaco</author><pubDate>Fri, 19 Jan 2018 18:32:51 +0800</pubDate><description><![CDATA[在使用layui的过程，有几个方法需要被多个js引用，所以我按照文档，自定义了一个layui的模块，下面实现过程


先定义一个模块



//定义模块
layui.define(['form'], function(exports){

    var form = layui.form; //只有执行了这一步，部分表单元素才会自动修饰成功
    var $ = layui.$;

    v]]></description><category></category></item><item><title><![CDATA[使用layui的一点心得【更新中】]]></title><link>https://blog.youkuaiyun.com/fireaco/article/details/79100469</link><guid>https://blog.youkuaiyun.com/fireaco/article/details/79100469</guid><author>fireaco</author><pubDate>Thu, 18 Jan 2018 20:27:43 +0800</pubDate><description><![CDATA[要使用layui的模块时，需先加载所需模块



layui.use(['form'], function(){
    var form = layui.form; //只有执行了这一步，部分表单元素才会自动修饰成功
    var $ = layui.$;

    //但是，如果你的HTML是动态生成的，自动渲染就会失效
    //因此你需要在相应的地方，执行下述方法来手动渲染，跟这类似的]]></description><category></category></item><item><title><![CDATA[一个反射方法应用实例]]></title><link>https://blog.youkuaiyun.com/fireaco/article/details/78981697</link><guid>https://blog.youkuaiyun.com/fireaco/article/details/78981697</guid><author>fireaco</author><pubDate>Fri, 05 Jan 2018 15:16:23 +0800</pubDate><description><![CDATA[需求：在导出的时候，需要将list中的对象值赋给数组对象，返回一个数组集合


原先的代码，在每一个导出的方法下需要写一个这样的转换方法




private List transBean2ObjectGradeNumber(List list) {
        List retList = new ArrayList();
        if (list == null || list.]]></description><category></category></item><item><title><![CDATA[请假工作流工作总结]]></title><link>https://blog.youkuaiyun.com/fireaco/article/details/78950270</link><guid>https://blog.youkuaiyun.com/fireaco/article/details/78950270</guid><author>fireaco</author><pubDate>Tue, 02 Jan 2018 11:32:02 +0800</pubDate><description><![CDATA[一个完整的请假工作流例子和一些注意事项]]></description><category></category></item><item><title><![CDATA[使用Jmeter压力测试]]></title><link>https://blog.youkuaiyun.com/fireaco/article/details/75109974</link><guid>https://blog.youkuaiyun.com/fireaco/article/details/75109974</guid><author>fireaco</author><pubDate>Fri, 14 Jul 2017 14:52:45 +0800</pubDate><description><![CDATA[JMETER进行登录的压力测试]]></description><category></category></item><item><title><![CDATA[POI实现EXCEL下拉列表]]></title><link>https://blog.youkuaiyun.com/fireaco/article/details/75043773</link><guid>https://blog.youkuaiyun.com/fireaco/article/details/75043773</guid><author>fireaco</author><pubDate>Thu, 13 Jul 2017 09:48:00 +0800</pubDate><description><![CDATA[POI报String literals in formulas can’t be bigger than 255 characters ASCII异常的解决方案]]></description><category></category></item><item><title><![CDATA[操作activiti出现的bug]]></title><link>https://blog.youkuaiyun.com/fireaco/article/details/74424299</link><guid>https://blog.youkuaiyun.com/fireaco/article/details/74424299</guid><author>fireaco</author><pubDate>Wed, 05 Jul 2017 14:12:11 +0800</pubDate><description><![CDATA[操作activiti中出现的bug]]></description><category></category></item><item><title><![CDATA[理解activiti表结构]]></title><link>https://blog.youkuaiyun.com/fireaco/article/details/74423739</link><guid>https://blog.youkuaiyun.com/fireaco/article/details/74423739</guid><author>fireaco</author><pubDate>Wed, 05 Jul 2017 14:11:07 +0800</pubDate><description><![CDATA[activiti表结构
部署,开启流程步骤所涉及到的表]]></description><category></category></item><item><title><![CDATA[activiti任务操作]]></title><link>https://blog.youkuaiyun.com/fireaco/article/details/74422868</link><guid>https://blog.youkuaiyun.com/fireaco/article/details/74422868</guid><author>fireaco</author><pubDate>Wed, 05 Jul 2017 14:09:20 +0800</pubDate><description><![CDATA[个人任务
组任务]]></description><category></category></item><item><title><![CDATA[activiti学习]]></title><link>https://blog.youkuaiyun.com/fireaco/article/details/74421906</link><guid>https://blog.youkuaiyun.com/fireaco/article/details/74421906</guid><author>fireaco</author><pubDate>Wed, 05 Jul 2017 14:06:04 +0800</pubDate><description><![CDATA[核心组件介绍关键对象 
Deployment：流程部署对象，部署一个流程时创建。 
ProcessDefinitions：流程定义，部署成功后自动创建。 
ProcessInstances：流程实例，启动流程时创建。 
Task：任务，在Activiti中的Task仅指有角色参与的任务，即定义中的UserTask。 
Execution：执行计划，流程实例和流程执行中的所有节点都是Execution]]></description><category></category></item><item><title><![CDATA[activiti测试文档]]></title><link>https://blog.youkuaiyun.com/fireaco/article/details/74421866</link><guid>https://blog.youkuaiyun.com/fireaco/article/details/74421866</guid><author>fireaco</author><pubDate>Wed, 05 Jul 2017 14:02:04 +0800</pubDate><description><![CDATA[activiti测试文档]]></description><category></category></item><item><title><![CDATA[使用jacob + SWFTool + flexpaper进行office的页面预览]]></title><link>https://blog.youkuaiyun.com/fireaco/article/details/72675940</link><guid>https://blog.youkuaiyun.com/fireaco/article/details/72675940</guid><author>fireaco</author><pubDate>Wed, 24 May 2017 14:16:50 +0800</pubDate><description><![CDATA[利用jacob，swftool，flexpaper将office文件先转成pdf，在转成swf显示在页面上，效果类似于百度文库。。]]></description><category></category></item></channel></rss>