小编Bar*_*lom的帖子

"URL友好标题"的好名字?

我正在创建一个包含文章的动态网站.每篇文章都有一个标题,如"一个人如何吃一只狗并与它一起生活?",而且我现在称之为"URL友好标题",例如"吃狗".

我正在为"URL友好标题"寻找一个更好的词,因为它非常满口.Wordpress称他们为"Post Slug"但我不喜欢这个.这些东西有什么好名字?

seo friendly-url slug

9
推荐指数
3
解决办法
2062
查看次数

PHP删除HTTP标头

我认为Apache会将这些HTTP标头添加到PHP脚本生成的所有响应中:

Expires:   Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control:  no-store, no-cache, must-revalidate, post-check=0, pre-check=0

这适用于实际的动态页面,但我有一些页面,虽然由PHP生成,但大部分是静态的,我希望浏览器缓存它们.

PHP中是否有一种方法可以从响应中删除这些标题,从而激活浏览器的默认缓存规则,如果没有,是否有任何值可以将它们设置为等同于它们不存在?

我宁愿不设置自己的值,因为我希望浏览器使用与Apache本身提供的静态资源相同的缓存规则(不使用mod_cache).

php http-headers

9
推荐指数
2
解决办法
2万
查看次数

V8不会清理所有垃圾

我在V8清理垃圾时遇到了麻烦.首先,我的Javascript如下:

var bigstring = "ASD";
for (var b = 0; b < 20; b++) {
    bigstring = bigstring + bigstring;
}
trace("bigstring " + bigstring.length);

function frame() {
    // generate some garbage
    var junkArray = [];
    for (var i = 0; i < 1000; i++) {
        junkArray.push(i + bigstring);
    }
}
Run Code Online (Sandbox Code Playgroud)

从C++开始,我正在运行一个循环:

  • 打电话frame.
  • 收集垃圾: while(!V8::IdleNotification()) {};

预期的结果是每次迭代junkArray都会收集垃圾.毕竟,IdleNotification只有当"V8完成尽可能多的清理"时才返回true (doc).

事实上,垃圾只清理*约.每100次迭代.我错过了一步吗?是junkArray出于某种原因不是立即垃圾frame

*通过比较堆使用前后来确定

javascript v8 embedded-v8

9
推荐指数
1
解决办法
358
查看次数

LinkageError JAXB 2.0 - > 2.1(Tomcat)

我在尝试访问在tomcat中运行的webservice时遇到此错误.

引起:java.lang.LinkageError:正在从引导类加载器加载JAXB 2.0 API,但是这个RI(来自jar:file:/ C:/ software/tomcat6/webapps/messaging/WEB-INF/lib/jaxb-impl) -2.1.5.jar!/com/sun/xml/bind/v2/model/impl/ModelBuilder.class)需要2.1 API.使用endorsed目录机制将jaxb-api.jar放在bootstrap类加载器中.(见http://java.sun.com/j2se/1.5.0/docs/guide/standards/)

我用google搜索错误并做了应该解决的问题(我把jaxb-api.jar,版本2.1放在JDK/lib/endorsed和JDK/jre/lib/endorsed中),但它似乎没有任何效果.

我之前没有,我不确定改变了什么.我使用的是JDK 6u10.

java tomcat jaxb endorsed

8
推荐指数
1
解决办法
1万
查看次数

PHP SimpleXML获取innerXML

我需要answer在这一点XML中获取HTML内容:

<qa>
 <question>Who are you?</question>
 <answer>Who who, <strong>who who</strong>, <em>me</em></answer>
</qa>
Run Code Online (Sandbox Code Playgroud)

所以我希望得到一个字符串"Who who,<strong>谁是</ strong>,<em> me </ em>".

如果我有answera SimpleXMLElement,我可以打电话asXML()来"<answer>谁是谁,<strong>谁</ strong>,<em>我</ em> </ answer>",但是如何获得内部XML没有元素本身缠绕的元素?

我更喜欢不涉及字符串函数的方法,但如果这是唯一的方法,那就这样吧.

php innerxml simplexml

8
推荐指数
3
解决办法
9909
查看次数

在try块中分配final变量

很短的问题:有更优雅的方法来做到这一点:

Object tmp;
try {
 tmp = somethingThatCanFail();
} catch (Fail f) {
 tmp = null;
}
final Object myObject = tmp;
// now I have a final myObject, which can be used in anonymous classes
Run Code Online (Sandbox Code Playgroud)

java final try-catch

8
推荐指数
1
解决办法
2578
查看次数

覆盖Logback错误输出

在我的自定义异常类中,我已覆盖toString():

@Override
public String toString() {
    final String msg = getLocalizedMessage();

    // base
    String str = getClass().getName() + ": [" + code + "]";

    // message
    if (msg != null)
        str += " " + msg;

    // extra
    if (extra != null) {
        str += '\n' + extra.toString();
    }

    return str;
}
Run Code Online (Sandbox Code Playgroud)

(是的,我知道我应该StringBuilder在那里使用)

但是,当我记录这样的异常(via org.slf4j.Logger.warn(String msg, Throwable err))时,输出与vanilla异常一样:

webersg.util.service.ServiceError: null
    at webersg.util.service.ServiceTools.decodeException(ServiceTools.java:39) ~[bin/:na]
    at tr.silvercar.rummikub.robot.LobbyConnection.sendRequestTo(LobbyConnection.java:143) ~[bin/:na]
    at tr.silvercar.rummikub.robot.LobbyConnection.sendRequest(LobbyConnection.java:98) ~[bin/:na]
    at tr.silvercar.rummikub.robot.Robot.<init>(Robot.java:32) ~[bin/:na]
    at tr.silvercar.rummikub.robot.RobotController.start(RobotController.java:81) ~[bin/:na] …
Run Code Online (Sandbox Code Playgroud)

java exception-handling logback slf4j printstacktrace

8
推荐指数
1
解决办法
2818
查看次数

在打开的窗口中收听URL更改

如果我打开一个窗口(带window.open),我可以检测到它的URL何时发生变化(特定的),具体如下:

  • 该窗口的初始URL位于另一个域(确切地说是Facebook)
  • 我有兴趣检测的URL也是

我需要这个用于身份验证.请参阅本页底部的"桌面应用".

javascript facebook cross-domain

8
推荐指数
1
解决办法
7362
查看次数

获取bash脚本文件所在的目录

如果该脚本文件包含在另一个脚本文件中(这使得它与此问题不同),如何获取bash脚本文件所在的目录?

/script1.sh

. /dir2/script2.sh
Run Code Online (Sandbox Code Playgroud)

/dir2/script2.sh

# echoes "/dir2"
echo whatevergetsthatdir
Run Code Online (Sandbox Code Playgroud)

这是我试图"修复"的脚本

/etc/init.d/silvercar-gameserver(每个实例都是唯一的)

#!/bin/bash
#
#       /etc/rc.d/init.d/silvercar-gameserver
#
#       Initscript for silvercar game server
#
# chkconfig: 2345 20 80
# description: lalalalala

#CONFIG
BIN=/opt/silvercar-gameserver # Want to get rid of this
CONF=/etc/opt/silvercar-gameserver

. /etc/init.d/functions
. $BIN/gameserver.sh.inc

exit 0
Run Code Online (Sandbox Code Playgroud)

/opt/silvercar-gameserver/gameserver.sh.inc(每次安装都不得更改.在svn中)

# Meant to be included from a script in init.d
# Required input:
#  CONF (e.g. /etc/opt/silvercarserver)


# -- Installation config (must provide JSVC, JAVA_HOME)
. …
Run Code Online (Sandbox Code Playgroud)

bash shell

8
推荐指数
2
解决办法
2044
查看次数

即使没有调用persist,JPA/Hibernate也会保存

em.getTransaction().begin();

StringData sd = em.find(StringData.class, key);
System.out.println("Old value: " + sd.getData());
sd.setData(newValue);
// em.persist(sd);

em.getTransaction().commit();
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,我没有打电话persist,它被注释掉了,因为我先干这个代码.然而,事实证明它并不是那么干燥.在检查数据库时,我看到数据已更改(幸运的是它是一个测试数据库).

显然我对Hibernate/JPA的理解是有缺陷的.是不是persist总是要求更改数据?如果没有,什么时候保存什么什么规则?

java hibernate jpa

8
推荐指数
1
解决办法
3700
查看次数