小编Ser*_*gio的帖子

在 Markdown 中混淆电子邮件

我想将我的电子邮件包含在 github 存储库的 readme.md 文件中。当然,我想以某种方式对其进行混淆以避免垃圾邮件。

本教程中,我阅读了以下文字:

电子邮件地址的自动链接的工作原理类似,只是 Markdown 还会执行一些随机的十进制和十六进制实体编码,以帮助隐藏您的地址,使其免遭地址收集垃圾邮件机器人的攻击。例如,Markdown 会这样:

<address@example.com>变成这样的东西:

<a href="&#x6D;&#x61;i&#x6C;&#x74;&#x6F;:&#x61;&#x64;&#x64;&#x72;&#x65; &#115;&#115;&#64;&#101;&#120;&#x61;&#109;&#x70;&#x6C;e&#x2E;&#99;&#111; &#109;">&#x61;&#x64;&#x64;&#x72;&#x65;&#115;&#115;&#64;&#101;&#120;&#x61; &#109;&#x70;&#x6C;e&#x2E;&#99;&#111;&#109;</a>

我按照他们说的做了,但是当我检查包含自述文件的 github 页面的源代码时,我仍然可以看到:

<a href="address@example.com">address@example.com</a>

我错过了什么吗?在我看来,如果它位于网页的源代码中,机器人应该能够找到它。

markdown github

3
推荐指数
2
解决办法
6842
查看次数

Scala线性化函数的基本原理

据我所知,Scala线性化函数算法是右前优先深度优先搜索,在消除结果列表中每个特征的最后一次出现之前.

这个算法有两个方面对我来说似乎相当随意:

  • 为什么首先探索性状而不是类,而不是反过来?
  • 为什么特征是从右到左遍历,而不是从左到右?

这些任意约定是否与其他约定一样好?或者这些设计决策背后有理由吗?

请注意,我的问题仅涉及算法的"水平"排序.

scala traits

3
推荐指数
1
解决办法
453
查看次数

可以在 32 位机器上用 Java 创建的线程数

我正在阅读Java 并发实践,但在下面的段落中有点迷失了,关于可以在 32 位机器上用 Java 创建的线程数:

在 32 位机器上,一个主要的限制因素是线程堆栈的地址空间。每个线程维护两个执行堆栈,一个用于 Java 代码,一个用于本机代码。典型的 JVM 默认值产生大约半兆字节的组合堆栈大小。(您可以使用 -Xss JVM 标志或通过 Thread 构造函数更改此设置。)如果将每个线程的堆栈大小划分为 2 32,则会得到数千或数万个线程的限制。其他因素,例如操作系统限制,可能会施加更严格的限制。

这是什么意思?2 32数字从何而来?如果在 Thread 类中没有将堆栈大小作为参数的构造函数,我如何更改 Thread 构造函数中的堆栈大小?

java concurrency multithreading

3
推荐指数
1
解决办法
175
查看次数

XmlAdapter在JAXB RI中无法正常工作

我正在尝试实现一个XmlAdapter来修改某些对象属性的编组/解组.特别是,我尝试了NullStringAdapter这里描述的:

Jaxb:xs:属性null值

该目标是将NullStringAdapter空值编组为空字符串,反之亦然.

与上面描述的示例和我的代码的唯一区别是,我想将适配器应用于元素,而不是属性,所以我拥有的是:

@XmlElement
@XmlJavaTypeAdapter(NullStringAdapter.class)
public String getSomeValue() {
    return someValue;  //someValue could be null, in that case the adapter should marshall it as an empty string
}
Run Code Online (Sandbox Code Playgroud)

但是,经过一些调试后,我意识到在从Java到XML的编组过程中从未调用过Adapter方法!当XmlElement值为null时,会发生这种情况.当此值不为null时,将按预期调用适配器方法.

谢谢你的帮助!.

java xml jaxb

2
推荐指数
1
解决办法
5844
查看次数

标签 统计

java ×2

concurrency ×1

github ×1

jaxb ×1

markdown ×1

multithreading ×1

scala ×1

traits ×1

xml ×1