写在最前面 想想来新公司也快五个月了,恍惚一瞬间. 翻了翻博客,因为太忙,也有将近五个多月没认真总结过了. 正好趁着今天老婆出门团建的机会,记录下最近这段时间遇到的大坑-JasperReport. 六月份的时候写过一篇利用poi文件导入导出的小Demo,JAVA实用案例之文件导入导出(POI方式). 虽然简单,但是企业应用的原理基本上也就是这样,只不过是封装的更好些,不像我之前写的那样每个Cell都需要定义,其实poi的方式也是我目前最推崇的方式之一了.主要原因是jxl不支持xlsx,Jaspe…
1.介绍 java实现文件的导入导出数据库,目前在大部分系统中是比较常见的功能了,今天写个小demo来理解其原理,没接触过的同学也可以看看参考下. 目前我所接触过的导入导出技术主要有POI和iReport,poi主要作为一些数据批量导入数据库,iReport做报表导出.另外还有jxl类似poi的方式,不过貌似很久没跟新了,2007之后的office好像也不支持,这里就不说了. 2.POI使用详解 2.1 什么是Apache POI? Apache POI是Apache软件基金会的开放源码函式库,…
写在最前面 翻了翻博客,因为太忙,已经好久没认真总结过了. 正好趁着今天老婆出门团建的机会,记录下最近这段时间遇到的大坑-JasperReport. 六月份的时候写过一篇利用poi文件导入导出的小Demo,JAVA实用案例之文件导入导出(POI方式). 虽然简单,但是企业应用的原理基本上也就是这样,只不过是封装的更好些,不像我之前写的那样每个Cell都需要定义,其实poi的方式也是我目前最推崇的方式之一了.主要原因是jxl不支持xlsx,JasperReport坑又太大,哎.下面进入正题,来介绍…
写在最前面 上周零零碎碎花了一周的时间研究水印的开发,现在终于写了个入门级的Demo,做下笔记同时分享出来供大家参考. Demo是在我上次写的 JAVA实用案例之文件导入导出(POI方式) 框架基础上搭建的,基于Spring+SpringMVC.如果有错误还请大家指正. 最后源码地址在:https://github.com/allanzhuo/myport.git .转载还请注明出处:http://www.cnblogs.com/allanzhang/p/7193309.html. 简单介绍 水…
写在最前面 上周零零碎碎花了一周的时间研究水印的开发,现在终于写了个入门级的Demo,做下笔记同时分享出来供大家参考. Demo是在我上次写的 JAVA实用案例之文件导入导出(POI方式) 框架基础上搭建的,基于Spring+SpringMVC.如果有错误还请大家指正. 最后源码地址在:https://github.com/allanzhuo/myport.git .转载还请注明出处:http://www.cnblogs.com/laoyeye/p/7193309.html. 简单介绍 水印开发…
一.背景介绍 最近领导要求做一个视频录制的相关项目.其中,需要对视频文件进行添加 实时时间水印.于是,我想到了使用之前的ffmpeg来做. 二.ffmpeg实际操作 首先把需要添加水印的视频文件,上传到服务器指定位置 比如 “/usr/local/1.mp4”,这样的地方.其次,我们需要了解如何去给视频添加水印. 这里提供两种方式,一种是静态的,一种是动态的.(相关安装请参考 <ffmpeg 踩坑实录(一)>) 静态水印: ffmpeg -i /usr/local/test/448da411-…
前言 公司有个后端路由的项目是用 gulp 作为前端自动化构建工具,最近学习了一下 webpack,深感其强大,一狠心将其改成了 webpack 构建,以下是踩坑实录. gulp 先来说说原来的架构. 该项目是个 后端路由 的项目,我们以域名 www.abc.com 为例.假设有以下两个路由 www.abc.com/about 和 www.abc.com/join,因为路由后端已经构建好,这个时候我们是可以打开这两个页面的. 后端模版为 php 的 twig(当然可以是其他任何模版),这两个路由…
前言 Visual Studio (简称VS)是微软公司旗下最重要的软件集成开发工具产品.是目前最流行的 Windows 平台应用程序开发环境,也是无数人学习编程的入门软件之一.Visual Studio 可以用来创建 Windows 平台下的 Windows 应用程序和网络应用程序,也可以用来创建网络服务.智能设备应用程序和 Office 插件,目前还可开发安卓平台应用及IOS平台应用.由于本人是做视频编码的,跑实验都是用C语言,而VS系列是对C语言最友好的编程工具.因为,我花了整整一天时间在…
说到HashMap,hashCode 和 equals ,想必绝大多数人都不会陌生,然而你真的了解这它们的机制么?本文将通过一个简单的Demo还原我自己前不久在 HashMap 上导致的线上问题,看看我是怎么跳进这个坑中去的. 起因 在重构一段旧代码的时候发现有个 HashMap 的key对象没有重写 hashCode 和 equals 方法,使用IDEA自动重构工具生成后引发线上问题,因为实际重构的旧代码复杂,所以我抽出了一个关于奶酪(Cheese)的Demo还原踩坑场景,看看究竟谁动了我的奶…
最近有朋友问邮件怎么发送,就简单写了个demo,因为懒得找jar包,所以项目是创建的maven工程,具体的maven引用的jar如下: <dependency> <groupId>com.sun.mail</groupId> <artifactId>javax.mail</artifactId> <version>1.4.4</version> </dependency> <!-- https://mvn…
验证码在很多地方都会遇到,实现的方法和形式也有很多,主要的目的就是为了安全,防止一些恶意的攻击等.说实话那么多年竟然没注意过这东西,原理很简单,贴出来给大家做个参考. 1.简单介绍 一般稍微有些经验的程序员都不会再自己写原生验证码生成了,因为各种强大的开源组件,足以解决我们大部分的需求.但是,毕竟也是刚接触这东西,还需要从原理入手的. 项目效果图: 下面我就简单介绍下原生和使用开源项目kaptcha生成验证码的两种形式. 2.jdk原生生成验证码 效果: 2.1 验证码生成的流程 1.定义Buf…
CSV的坑 在Ubuntu下是简单的写入完事 import csv ... with open(filename, 'w') as output: f = csv.writer(output) f.writerow(results[0].keys()) .在win7下, 用msys2环境执行同一个python脚本, 发现生成的csv有两个问题: 1)有空行, 2)编码变成了GB2312 关于空行的问题, 百度的结果都是open(filename, 'wb')来解决, 但是在python3下会报…
由于BrowserHistory访问的是文件真实地址不仅需要前端配置package.json还需要运维端配置一下网站Nginx设置环境: "react": "^17.0.2", "react-dev-utils": "^11.0.4", "react-dom": "^17.0.2", "react-router": "^5.2.0", "…
由于需求涉及oracle的clob类型字段,在mybatis的mapper xml文件中编写merge into语句时总是失败. 附上错误代码 <insert id="mergeInto"> <selectKey resultType="java.lang.String" order="BEFORE" keyProperty="id"> SELECT to_char(sysdate,'yyyymmdd'…
一.背景介绍 将ffmpeg运用到项目上已经有一段时间了,趁现在有空赶紧记下来. 二.技术点总结    2.1 实现方式 项目里面主要运用的形式是,在java端,调用操作系统的方法,并执行切片命令. 在执行切片之前,出于对代码的健壮性考虑,一般会下意识地对文件和目标地址进行检查和创建路径. 这里除了,判断传入的String对象是否为空之外,还需要对实际的文件进行判断以及目标地址的路径是否存在.这样可以在发布上线之后避免很多问题.   2.2 时长的获得 除了切片还需要,统计被切片的文件时长,这个…
这段时间一直在做一个关于视频处理的项目.其中有一块需要切片相关功能.于是采用了ffmpeg来完成相关需求. 第一,ffmpeg的安装. 首先下载官方包,我这里用的是ffmpeg-release-64bit-static.tar.xz,地址在这里http://www.ffmpeg.org/download.html.选择自己系统相关的包. 然后解压缩 tar -xvf ffmpeg-release-64bit-static.tar.xz 最后把 需要把文件的执行命令写入环境变量 在/etc/pro…
nodejs的常用api url 主要是配置一系列和路径相关的信息 url.parse(urlString[, parseQueryString[, slashesDenoteHost]]) 将一个URL字符串解析为URL对象 urlString: 解析的路径字符串 parseQueryString: 返回是布尔类型,主要用来解析query的 slashesDenoteHost: 返回是布尔类型,当你不确定你的请求协议时,辅助帮助你进行解析 url.format(urlObj,parseObj,…
Archlinux 没声音 1. 排查驱动,声卡驱动没问题 2.排查alsa,alsa没问题(并确认声卡存在且取消静音) 3.抱着尝试的心态,安下VLC.然后提示找不到默认声卡设备(大概这个意思),通过audio选项切换至其他几个设备,终于有声音了.. 4.设置默认音频设备: aplay -l 查看所有音频设备,锁定我需要的设备是:card 1 device 1  ALC892 Digital 编辑文件:/etc/asound.conf defaults.pcm.card defaults.pc…
在项目中引用 cardview 卡片布局,编译时 Android Studio 报出下面图片中红框标记的错误: 出现这种情况的原因在于没有导入 cardview 卡片布局相应的依赖包,因此我们需要在 build.gradle 文件中添加相应的依赖, compile 'com.android.support:cardview-v7:25.3.0'需要注意的是,cardview 的依赖版本不能高于 support:appcompat 的版本数,否则无法成功添加依赖! 我的 support:appco…
最近想做一个统计文章点击率,评论率和点赞率的功能,听说echarts可以轻易完成它,于是我就选择使用echarts,考虑到我做的模块上文章是没有分类的,所以我的统计是基于一个个点,这一看嘛,感觉散点图可以胜任.为了突出表现那篇文章点击率或点赞率多,感觉气泡图就更能胜任这么回事.于是就选择气泡图干这件事. 简单地从官网拷贝个案例,直接从后台传递需要的json数据,原以为会想直方图那样简单,结果是数据加载了,然而默认没看见意料中的气泡!!怎么回事?? 一开始我怀疑是我后台返回的数据不符合需求,于是我…
[转自别处] 比如我sed想做文件原地的替换,但是怎么写都出错,错误提示还莫名其妙,后来多方搜索才知道Mac上的sed如果参数有-i就必须加上备份指令,即-i后添加任意字符,那些字符就作为备份文件的后缀名, 可耻的man上却写得好像是可选的一样. 批量替换命令: sed -i.bak "s/suanec/core-user/g" `grep suanec * | awk -F":" '{print $1}' | uniq` sed -i.bak "s/su…
公司要使用PowerDNS,作为内网域名解析的工具.让我和另一组的同事学一下如何配置及调优.所以先找了两台服务器试着安装一下.这一装就是一个礼拜,经历了大大小小的坑,记下来以后可能需要参考.安装过程如下:   1.安装mysql: 尽量使用源码安装,不要使用apt-get,安装的版本不完全,缺少相关的库,会导致后面缺少mysql.h.mysql_config等等文件.我手里这台机器已经装好了mysql,这步就直接略过了.   2.安装php: 在php官网http://www.php.net/ …
谨以此文,记录和ubuntu系统不死不休的搏斗过程,后续待补. 1.双系统安装,windows采用uefi模式安装(优启通可制作uefi的win10安装盘),ubuntu不要划分boot区,而应该划分uefi区,否则,不能被uefi引导 2.软件源都替换成清华或者阿里,blabla,否则被墙得泪流满面 清华镜像站:https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/ Ubuntu 的软件源配置文件是 /etc/apt/sources.list.将系统…
项目需求:这里暂且叫A公司吧,A公司有一套人事管理软件,需要与我们公司的软件做人员信息同步,A公司用的是SQL server数据库,我们公司用的Oracle,接口都不会开发(一万句"fuck you"),就单单给我们公司提供了一个SQL server的账户和密码,还有一个视图.后来百度一番,可以通过DBLink跨数据库访问,然后做数据信息同步功能. 安装过程中,踩了不少的坑,需要配置很多的东西,QQ群里也请教不少人,都很少人听说还有这玩意,现在做数据对接,都是走到接口,传JSON字符串…
前段时间公司APP做了一个APP论坛会议,嵌入了h5播放器.我以为很简单,没想到,这正是我踩进泥潭的开始... (想要吸取经验的小伙伴可以慢慢往下看,想要解决方案的直接看最后!) 一.一开始我以为直接用H5原生video就可以直接实现. <video src="url" poster="video.png" width="100%" height = "9rem"></video> src :视频地址,…
在IIS上部署 .Net Core 3.0 项目的主要流程有: 安装并启用IIS 安装AspNetCoreModuleV2 添加.配置网站 设置应用程序池 通过VS发布 一.安装并启用IIS: 安装了VS的环境,已经默认装上了IIS,可在控制面板的“程序和功能”中查看确认. 在“程序和功能”界面点击“启用或关闭Windows功能”,全选IIS下的全部选项,“确定”,等待启用完成. 二.安装AspNetCoreModuleV2 下载网址:https://dotnet.microsoft.com/d…
Linux版本Centos elasticsearch版本:5.5 1.下载elasticsearch https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.2.tar.gz 使用xftp,将下载好的文件直接放到linux上面 解压 进入到复制目录进行解压 tar -zxvf elasticsearch-5.5.2.tar.gz 之后将解压好的elasticsearch文件夹挪到合适的位置 mv elasti…
最近心血来潮想给自己的笔记本装一套linux系统作为开发环境, 说干就干,首先先收集一下现在linux主流版本, 貌似现在市场上应用服务器比较多的是redhat相关产品,而ubuntu的优势在于它庞大的社区支持用户群体, 个人认为两个都差不多,至于选择哪个看个人兴趣. 我选择的是RedHat旗下CentOS7.6版本,下载地址 http://isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1810.iso 下面是我的…
最近学习springcloud消息总线需要用到rabbitmq,然后安装的时候踩了一些坑,记录如下: 首先安装rabbitmq之前需要先安装erlang,因为rabbitmq服务端使用erlang写的,依赖erlang 安装好erlang之后安装rabbitmq 第一个坑: 1.rabbitmq的版…
当我们添加某些依赖库(Okhttp.Retrofit)时, Android studio 会报如下错误: Error:A problem occurred configuring project ':app'.> Could not resolve all dependencies for configuration ':app:_iranDebugCompile'.   > Could not resolve com.facebook.network.connectionclass:conn…