JAVA解析Excel工具easyexcel的简要使用
星期三, 2018-12-19 | Author: Lee | JAVA-and-J2EE | 没有评论 6,104 views
excel的版本说明:
Excel2003版最大行数是65536行。Excel2007开始的版本最大行数是1048576行。
Excel2003的最大列数是256列,2007以上版本是16384列。
项目git地址:https://github.com/alibaba/easyexcel
Java解析、生成Excel比较有名的框架有Apache poi、jxl。但他们都存在一个严重的问题就是非常的耗内存,poi有一套SAX模式的API可以一定程度的解决一些内存溢出的问题,
但POI还是有一些缺陷,比如07版Excel解压缩以及解压后存储都是在内存中完成的,内存消耗依然很大。
easyexcel重写了poi对07版Excel的解析,能够原本一个3M的excel用POI sax依然需要100M左右内存降低到KB级别,并且再大的excel不会出现内存溢出,03版依赖POI的sax模式。
在上层做了模型转换的封装,让使用者更加简单方便
使用pom.xml配置
<dependency> <groupid>com.alibaba</groupid> <artifactid>easyexcel</artifactid> <version>1.0.3</version> </dependency> |
使用代码如下:
› 继续阅读
百度语音朗读的在线REST的API
星期六, 2018-10-20 | Author: Lee | computer, JAVA-and-J2EE | 没有评论 7,128 views
访问如下地址即可返回对应的语音朗读文件:
http://tts.baidu.com/text2audio?cuid=baiduid&lan=zh&ctp=1&pdt=311&tex=昔孟母,择邻处,子不学,断机杼
只需要将tex换成你需要朗读的文字即可。
更多AI 相关API可以去百度的开发平台查看,比较全了
http://ai.baidu.com/
https的证书格式转换教程说明
星期一, 2018-09-10 | Author: Lee | computer | 没有评论 3,649 views
第一步:安装转换所需的运行环境
转换证书需要使用本地拥有 OpenSSL 和 JDK 运行环境,如果没有可以参考 《 OpenSSL 安装教程 》 和 《 Java 安装教程 》
第二步:合并证书链
完整的证书拥有四个部分
根证书
中级证书
域名证书
证书私钥
我们以 Symantec 品牌证书为例,您将收到以下三个文件
文件名称 文件说明
CACertificate-ROOT-2.cer 根证书
CACertificate-INTERMEDIATE-1.cer 中级证书
ServerCertificate.cer 域名证书
我们以 Comodo 品牌证书为例,您将收到以下四个文件
文件名称 文件说明
AddTrustExternalCARoot.crt 根证书
COMODORSAAddTrustCA.crt 中级证书
COMODORSADomainValidationSecureServerCA.crt 中级证书
129688217.crt 域名证书
我们需要按照 域名证书 – 中级证书 – 根证书 的顺序合并为证书链才能被绝大多数浏览器信任。
Symantec 合并顺序:
我们用打开各个证书文件
证书转换教程
› 继续阅读
php-fpm的php参数的配置和启动
星期二, 2018-09-04 | Author: Lee | php | 没有评论 2,117 views
0.启动:(基于php5.5.20)
/usr/local/webserver/php/sbin/php-fpm -D |
1.配置文件路径
/usr/local/webserver/php/etc
重要的配置文件:
php.ini 及php-fpm.conf
2.说明如下:php.ini
######避免PHP信息暴露在http头中 expose_php = Off ######避免暴露php调用mysql的错误信息 display_errors = Off ######在关闭display_errors后开启PHP错误日志(路径在php-fpm.conf中配置) log_errors = On ######设置PHP的扩展库路径 extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20141001/" ######设置PHP的opcache和mysql动态库 zend_extension=opcache.so extension=mysqli.so extension=pdo_mysql.so ######设置PHP的时区 date.timezone = PRC ######开启opcache [opcache] ; Determines if Zend OPCache is enabled opcache.enable=1 ######设置PHP脚本允许访问的目录(需要根据实际情况配置) ;open_basedir = /data/nginx/html; |
3. 配置php-fpm.conf 保持
kindle 安卓(Android) app把下载好的电子书放置
星期三, 2018-07-04 | Author: Lee | computer, 读书 | 没有评论 4,299 views
kindle 安卓(Android) app下载的电子书放在什么文件夹?
具体位置如下:/sdcard/Android/data/com.amazon.kindle/files/
或者是:Android\data\com.amazon.kindlefc\files\ 下
只要把对应的电子书(比如:斜杠创业家.mobi)放到这个位置就可以在kindle的软件中阅读了.
azkaban-web-server 邮件配置遭遇Connecting to SMTP server failed
星期三, 2018-06-27 | Author: Lee | Database, JAVA-and-J2EE, 大数据 | 2 Comments 6,822 views
azkaban-web-server 邮件配置遭遇Connecting to SMTP server failed
0.先说下使用的版本azkaban-web-server-3.45.0-10使用jdk1.8.151编译
1.启用azkaban的邮件配置在 azkaban.properties中定义发送邮箱
mail.sender=xx@qq.com mail.host=smtp.exmail.qq.com mail.user=xx@qq.com mail.port=465 mail.password=xxxxxx #[email protected] #[email protected] mail.tls=true |
2.配置job文件里配置接收邮箱地址
#file.job type=command command=sh /usr/local/bg/files/test.sh working.dir=/usr/local/bg/files/job/working notify.emails=xx@qq.com failure.emails=xx@qq.com success.emails=xx@qq.com |
3.遭遇错误如下
ERROR [EmailMessage] [Azkaban] Connecting to SMTP server failed, attempt: 0 javax.mail.MessagingException: Exception reading response; nested exception is: java.net.SocketTimeoutException: Read timed out at com.sun.mail.smtp.SMTPTransport.readServerResponse(SMTPTransport.java:2210) at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1950) at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:642) at javax.mail.Service.connect(Service.java:295) at azkaban.utils.EmailMessage.connectToSMTPServer(EmailMessage.java:226) at azkaban.utils.EmailMessage.retryConnectToSMTPServer(EmailMessage.java:236) at azkaban.utils.EmailMessage.sendEmail(EmailMessage.java:219) at azkaban.utils.Emailer.sendSuccessEmail(Emailer.java:231) |
4.解决方式需要修改源码并重新编译之 重新编译azkaban.utils.EmailMessage即可,
› 继续阅读
mysql的全量(查询)日志general-log的开启
星期一, 2018-05-21 | Author: Lee | JAVA-and-J2EE, linux | 没有评论 5,800 views
怀疑有异常连接进来操作数据库则开启日志记录.
mysql> show global variables like '%general%'; +------------------+----------------------------+ | Variable_name | Value | +------------------+----------------------------+ | general_log | OFF | | general_log_file | /var/run/mysqld/mysqld.log | +------------------+----------------------------+ 2 rows in set (0.00 sec) mysql> set global general_log=on; Query OK, 0 rows affected (0.00 sec) mysql> set global general_log_file='/data/logs/mysql/mysql_general_log.log'; ERROR 1231 (42000): Variable 'general_log_file' can't be set to the value of '/data/logs/mysql/mysql_general_log.log' |
1. 设置general log保存路径
2. 注意在Linux中只能设置到 /tmp 或 /var 文件夹下,设置其他路径出错
3. 需要root用户才有访问此文件的权限
4. 针对 2的一点注意 此版本是mysql-5.1.73 无法使用其他路径,可能新版本可以使用
已经尝试
chown -R mysql:mysql /data/logs/mysql/ chomd 777 /data/logs/mysql/mysql_general_log.log |
Git没有记录你的Contributions的修复记
星期二, 2018-05-15 | Author: Lee | JAVA-and-J2EE, linux | 一条评论 2,383 views
1.可以通过git log 查看提交的用户不一致造成的,只要调整成一致的用户即可(主要是email地址)
2.全局指定用户信息(如果有不同的账号信息,见3配置,可能公司和个人不同的git账号)
git config --global user.email "你的邮件地址" git config --global user.name "你的Git用户名" |
3.配置指定的git项目的config文件从而使每个独立账号
修改(.git下的config文件)
新增内容如下:
[user]
name = 正确的用户名
email = 正确的邮件地址
4.git提交历史的恢复及修改错误的email(若很在意提交的email信息请谨慎执行,比如把公司的email信息带到了log中,本人已验证可以正确执行)
重新clone 一份操作
4.1复制粘贴脚本,并根据你的信息修改以下变量:旧的Email地址,正确的用户名,正确的邮件地址
#!/bin/sh git filter-branch --env-filter ' OLD_EMAIL="旧的Email地址" CORRECT_NAME="正确的用户名" CORRECT_EMAIL="正确的邮件地址" if [ "$GIT_COMMITTER_EMAIL" = "$OLD_EMAIL" ] then export GIT_COMMITTER_NAME="$CORRECT_NAME" export GIT_COMMITTER_EMAIL="$CORRECT_EMAIL" fi if [ "$GIT_AUTHOR_EMAIL" = "$OLD_EMAIL" ] then export GIT_AUTHOR_NAME="$CORRECT_NAME" export GIT_AUTHOR_EMAIL="$CORRECT_EMAIL" fi ' --tag-name-filter cat -- --branches --tags |
4.2按 Enter键 执行脚本。
4.3用git log命令看看新 Git 历史有没有错误
4.4把正确历史 push 到 Git
git push --force --tags origin 'refs/heads/*' |
删除此次的clone
5.现在已经完全记录了你的提交数(4不执行的话,下次提交才会生效)
centos7 里面修改hostname的方式
星期三, 2018-03-21 | Author: Lee | linux, 大数据 | 没有评论 2,219 views
在CentOS中,有三种定义的主机名:静态的(static),瞬态的(transient),和灵活的(pretty)。
“静态”主机名也称为内核主机名,是系统在启动时从/etc/hostname自动初始化的主机名。
“瞬态”主机名是在系统运行时临时分配的主机名,例如,通过DHCP或mDNS服务器分配。
静态主机名和瞬态主机名都遵从作为互联网域名同样的字符限制规则。
centos7 里面修改hostname的方式有所改变,修改/etc/hosts和/etc/sysconfig/network两个文件已经不能生效。使用的新命令是:
默认 set-hostname 同时修改三个值,想只修改一个加 -static 对应的参数
shell> hostnamectl set-hostname centos7 shell> su shell> hostname centos7 |
centos7之前的版本请用此方法:
shell> vi /etc/sysconfig/network # Created by anaconda NETWORKING=yes HOSTNAME=centos6 :wq #保存并退出 |
局域网A/B主机直接通过hostname访问主机B:
#A主机设置 shell> vi /etc/sysconfig/network GATEWAY=192.168.1.100 #当前主机内网ip :wq #保存并退出 #A/B主机设置 shell> vi /etc/hosts 192.168.1.100 hostname :wq #保存并退出 |
Elasticsearch 启动报错参数配置处理 参数配置
星期五, 2018-01-26 | Author: Lee | 大数据 | 3 Comments 5,788 views
1.elasticsearch-6.1.2的具体就不介绍了,详情可以去看Elasticsearch guide
2.为了主机可以访问虚拟机里的ES 开启外部访问
vi config/elasticsearch.yml network.host: 0.0.0.0 #打开此注释,正式环境根据情况指定IP |
3.启动elasticsearch报如下错误
./bin/elasticsearch -d |
[2018-01-26T03:06:12,987][ERROR][o.e.b.Bootstrap ] [sA_Y-N7] node validation exception
[3] bootstrap checks failed
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
[2]: max number of threads [3884] for user [hadoop] is too low, increase to at least [4096]
[3]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
针对上述错误修改如下:
vi /etc/security/limits.conf * soft nofile 65536 * hard nofile 65536 * soft nproc 4096 * hard nproc 4096 |
vi /etc/security/limits.d/20-nproc.conf * soft nproc 4096 root soft nproc unlimited |
vi /etc/sysctl.conf vm.max_map_count=655360 |
使其生效
sysctl -p |
退出shell,重进生效,然后启动ok了
可以访问 http://192.168.1.188:9200/ 查看
Search
相关文章
热门文章
最新文章
文章分类
- ajax (10)
- algorithm-learn (3)
- Android (6)
- as (3)
- computer (86)
- Database (30)
- disucz (4)
- enterprise (1)
- erlang (2)
- flash (5)
- golang (3)
- html5 (18)
- ios (4)
- JAVA-and-J2EE (186)
- linux (144)
- mac (10)
- movie-music (11)
- pagemaker (36)
- php (50)
- spring-boot (2)
- Synology群晖 (2)
- Uncategorized (6)
- unity (1)
- webgame (15)
- wordpress (33)
- work-other (2)
- 低代码 (1)
- 体味生活 (40)
- 前端 (21)
- 大数据 (8)
- 游戏开发 (9)
- 爱上海 (19)
- 读书 (4)
- 软件 (3)