我有一些虚拟主机设置nginx 0.8.53,可以按我的意愿工作.然而,由于对虚拟主机的nginx的"最匹配"我需要添加一个默认主机赶上那是不是为特定的虚拟主机的所有请求.我想缺省主机返回一个404页面,并没有说明我正在运行的nginx 0.8.53.
我认为这应该是这样的:
# The default server.
#
server {
listen 80 default_server;
server_name everythingelse;
# Everything is a 404
location / {
return 404;
}
error_page 404 /opt/local/html/404.html;
}
Run Code Online (Sandbox Code Playgroud)
但是,这仍然返回具有版本号默认nginx的404页..看来"回404"忽略"error_page"配置..
JSR-250表示将在@PostConstruct方法之前调用所有@Resource注释方法.
我的问题是:
这是否意味着在调用任何@PostConstruct注释方法之前,将调用上下文中所有bean的所有@Resource注释方法?或者换句话说,一旦注入了依赖项,就可以调用bean @PostConstruct方法,即使上下文中的其他bean仍没有注入依赖项吗?
此致,蒂姆.
我有一个带有不同类型的动态字段的solr模式.例如,在schema.xml中有:
<dynamicField name="*_s" type="string" indexed="true" stored="true"/>
<dynamicField name="*_i" type="int" indexed="true" stored="true"/>
<dynamicField name="*_l" type="long" indexed="true" stored="true"/>
<dynamicField name="*_f" type="float" indexed="true" stored="true"/>
<dynamicField name="*_d" type="double" indexed="true" stored="true"/>
Run Code Online (Sandbox Code Playgroud)
我想使用SolrJ注释的POJO访问这些字段.我知道我可以为POJO中的每种数据类型提供不同的Map引用,如下所示:
...
@Field("*_s")
public Map<String, String> strings;
@Field("*_i")
public Map<String, Integer> integers;
...
Run Code Online (Sandbox Code Playgroud)
但是可以将所有动态字段存储在同一个地图中吗?我想的是:
...
@Field("*_s")
@Field("*_i")
public Map<String, Object> dynamicFields;
...
Run Code Online (Sandbox Code Playgroud)
我能找到的关于SolrJ,POJO和动态字段的唯一文档是旧功能请求:https: //issues.apache.org/jira/browse/SOLR-1129
我的Web应用程序中有一些域模型类,它们与自己有层次关系.一个示例是用于对用户发布进行分类的分层类别结构.
有一些逻辑与这些类的层次性有关,这是常见的.所以我试图将逻辑移到一个通用的@MappedSuperclass注释超类中.
就像是 :
@MappedSuperclass
public abstract class HierarchicalBaseEntity<N extends HierarchicalBaseEntity<N>>
extends BaseEntity {
@ManyToOne(optional=true)
@JoinColumn(name="parent")
private N parent;
private int depth;
public N getParent() { ...
public void setParent(N newParent) { ...
public boolean isRoot() { ...
public int getDepth() { ...
public boolean isDescendantOf(N ancestor) { ...
public static <N extends HierarchicalBaseEntity<N>> N getCommonAncestor(N a, N b) { ...
public static <N extends HierarchicalBaseEntity<N>> Collection<N> reduceToCommonAncestors(Collection<N> entities) { ...
}
Run Code Online (Sandbox Code Playgroud)
然后子类扩展HierarchicalBaseEntity,将自己作为泛型类型N:
@Entity
public class CategoryBean extends HierarchicalBaseEntity<CategoryBean> { …Run Code Online (Sandbox Code Playgroud) 是否可以在Solr中增加过滤器查询(fq =)中出现的字段?
我有一个带有标记过滤器查询的分面查询,如下所示:
...&q=*:*&fq={!tag:X}brand:(+"4911")+OR+body:(abc)&facet.field={!ex:X}brand&..
Run Code Online (Sandbox Code Playgroud)
(我面对品牌,并且facet设置为忽略标记为X的过滤器查询,因此我需要使用过滤器查询.)
我想在品牌字段得分上的匹配高于过滤查询中的正文字段上的匹配.
品牌和身体领域是多值的.
我已经尝试添加bf =/bq =参数,如果我将过滤器查询更改为主要的'q ='查询,我可以获得更高的品牌匹配,但我似乎无法影响分数过滤查询中的任何内容.我想我可能会以错误的方式解决这个问题.
谢谢.