前端打印高度显示不全的问题

最近在写页面打印功能的时候,发现当页面超过一定高度的时候,打印时只会截取中间一部分打印出来。于是我在想会不会是打印时overflow样式的问题。于是在stackoverflow上找到了如下解答:

https://stackoverflow.com/questions/16221412/css-media-print-causes-part-of-the-page-to-be-cut-off-during-printing-in-ie

Printing CSS:

  1. Make sure all print floats are: float none;
  2. Make sure your body is overflow-y: visible;
  3. Make
Continue reading

利用正则表达式实现简单的文本键值对转xml

前言

前两天我有类似下面这样的文本需要转成xml格式。

源文本:

0411 大连
010 北京

xml格式:

<Property name="0411" value="大连"/>
<Property name="010" value="北京"/>

这样的数据有很多,自然一个个手动改又笨又麻烦。当时我就想在网上找个轮子或是自己造个轮子修改,后来转念一想“为啥不试试神奇的正则表达式呢?”。

查找正则

要想将源文本进行修改替换,首先需要对源文本进行匹配。通过翻阅菜鸟教程上的正则表达式语法,我写出了如下正则来匹配源文本:

[0-9]+s+[u4e00-u9fa5]+
Continue reading

线程安全的缓存Map

有时候需要使用线程安全的HashMap作为缓存,我们可以指定ConcurrentReferenceHashMap的引用级别为弱引用

  • ConcurrentReferenceHashMap可以指定引用级别(比如弱引用)
public class TestConcurrentReferenceHashMap {

    public static void main(String[] args) {
        ConcurrentReferenceHashMap map = new ConcurrentReferenceHashMap(16, ConcurrentReferenceHashMap.ReferenceType.WEAK);
        map.put(key,val);

        System.out.println(map);

        
Continue reading