- 浏览: 117079 次
最新评论
文章列表
ECharts-calendar-pie
- 博客分类:
- 前端
var cellSize = [80, 80];
var pieRadius = 30;
function getVirtulData() {
var date = +echarts.number.parseDate('2017-02-01');
var end = +echarts.number.parseDate('2017-03-01');
var dayTime = 3600 * 24 * 1000;
var data = [];
for (var time = date; time < end; time += day ...
转自:https://www.cnblogs.com/maybo/p/5182439.html
通过阅读MongoDB 3.2.1的官方文档中关于java 编程发现最新的文档并没有实现对对象到Document的映射,所以自己有了利用反射实现简单的关系映射.
1.定义抽象类:AbstractMongoSession
import java.util.List;
import org.bson.Document;
import org.bson.conversions.Bson;
import com.mongodb.client.MongoCollection; ...
格式化金额,每三位加逗号并保留两位小数
- 博客分类:
- 前端
应客户的需求,希望将系统的所有金额格式化显示:整数位每隔三位加逗号,并保留两位小数。在input框输入时,焦点离开后,同样将输入的金额格式化,但保存到数据库时,保存数字而非字符串。
一.HTML格式化显示金额
将从数据库中取出的金额数字(单位为分)格式化显示出来:
<c:if test="${not empty item.getNum()}"><fmt:formatNumber value="${item.getNum()/100}" type=
AspectJ Load-Time 织入(入门)
- 博客分类:
- JAVA
简介
AspectJ 织入方式有 Compile-time weaving (编译时织入)、 Post-compile weaving (后编译织入)、 Load-time weaving (加载时织入)。
其中加载时织入不需要源码,可用于逆向分析。
安装
到 http://www.eclipse.org/aspectj/downloads.php 下载最新稳定版,我下载到的版本是 1.8.9 版。
双击下载好的jar包,一路 Next,提示安装路径时,我修改为了
JVM自动加载指定javaagent
- 博客分类:
- JVM
查资料时偶然查到的JVM启动时自动加载指定javaagent方法
核心是 JAVA_TOOL_OPTIONS 变量
Linux
export JAVA_TOOL_OPTIONS=-javaagent:/test.jar
Windows
set JAVA_TOOL_OPTIONS=-javaagent:D:/test.jar
推荐设置到环境变量, 配合 AspectJ, 可以构造大杀器.
JVM在启动时检测到有设置 JAVA_TOOL_OPTIONS 时, 会自动将
前阵子遇到几个面试题都是关于对Java内存控制的,因此从网上找到这篇文章,希望自己对Java的内存分配有重新的认识
/usr/local/jdk/bin/java -Dresin.home=/usr/local/resin -server -Xms1800M -Xmx1800M -Xmn300M -Xss512K -XX:PermSize=300M -XX:MaxPermSize=300M -XX:SurvivorRatio=8 -XX:MaxTenuringThreshold=5 -XX:GCTimeRatio=19 -Xnoclassgc -XX:+DisableExplicitGC - ...
这个是之前处理过的一个线上问题,处理过程断断续续,经历了两周多的时间,中间各种尝试,总结如下。这篇文章分三部分:
1、问题的场景和处理过程;2、GC的一些理论东西;3、看懂GC的日志
先说一下问题吧
问题场景:线上机器在半夜会推送一个700M左右的数据,这个时候有个数据置换的过程,也就是说有700M*2的数据在heap区域中,线上系统超时比较多,导致了很严重(严重程度就不说了)的问题。
问题原因:看日志,系统接口超时的时候,系统出现了FullGC,这个时候stop-the-world了,也就停机了。分析gc的日志,发现有promotion failed,根据FullGC触发的条件,这个 ...
在大数据的时代,传统的关系型数据库要能更高的服务必须要解决高并发读写、海量数据高效存储、高可扩展性和高可用性这些难题。不过就是因为这些问题Nosql诞生了。
NOSQL有这些优势:
大数据量,可以通过廉价服务器存储大量的数据,轻松摆脱传统mysql单表存储量级限制。
高扩展性,Nosql去掉了关系数据库的关系型特性,很容易横向扩展,摆脱了以往老是纵向扩展的诟病。
高性能,Nosql通过简单的key-value方式获取数据,非常快速。还有NoSQL的Cache是记录级的,是一种细粒度的Cache,所以NoSQL在这个层面上来说就要性能高很多。
灵活的数据模型,NoSQL无需事先为要存储 ...
按照上一节中《搭建高可用mongodb集群(三)—— 深入副本集》搭建后还有两个问题没有解决:
从节点每个上面的数据都是对数据库全量拷贝,从节点压力会不会过大?
数据压力大到机器支撑不了的时候能否做到自动扩展 ...
在上一篇文章《搭建高可用mongodb集群(二)—— 副本集》 介绍了副本集的配置,这篇文章深入研究一下副本集的内部机制。还是带着副本集的问题来看吧!
副本集故障转移,主节点是如何选举的?能否手动干涉下架某一台 ...
按照上一节中《搭建高可用mongodb集群(三)—— 深入副本集》搭建后还有两个问题没有解决:
从节点每个上面的数据都是对数据库全量拷贝,从节点压力会不会过大?
数据压力大到机器支撑不了的时候能否做到自动扩展?
...
在SECONDARY查询出发现如下错误:
SECONDARY> show collections;Sat Aug 4 15:29:00 uncaught exception: error: { "$err" : "not master and slaveok=false", "code" : 13435 }
这是正常的,因为SECONDARY是不允许读写的,如果非要解决,方法如下:
SECONDARY> rs.slaveOk();
为什么需要 Stream
Stream 作为 Java 8 的一大亮点,它与 Java.io 包里的 InputStream 和 OutputStream 是完全不同的概念。它也不同于 StAX 对 XML 解析的 Stream,也不是 Amazon Kinesis 对大数据实时处理的 Stream。java 8 中的 Stream 是对集合(Collection)对象功能的增强,它专注于对集合对象进行各种非常便利、高效的聚合操作(aggregate operation),或者大批量数据操作 (bulk data operation)。Stream API 借助于同样新出现的 Lambda ...
在Ubuntu下调试项目时使用TOMCAT容器,在设置好相应的TOMCAT LOCAL 路径及相关信息后,点击调试项目出现:
Unable to open debugger port : java.net.SocketException “Socket closed”
网上搜了一大堆,好像都和自己的情况不一样。
后面偶然发现TOMCAT的Bin目录里面的.sh全部都没有可执行权限。果断切换到Bin目录下:
chmod +x *.sh;
一切都顺顺利利的了