小编Emi*_*lio的帖子

d3追加svg扩展名的图像

我正在尝试将带有'.svg'扩展名的svg图像添加到我的图表(使用d3创建的另一个svg图像).

这是代码:

d3.select("#chart1 svg")
  .append("svg:image")
  .attr("xlink:href", "img/icons/sun.svg")
  .attr("width", 40)
  .attr("height", 40)
  .attr("x", 228)
  .attr("y",53);
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,我正在设置"xlink:href"属性,但是d3会在浏览器中将其更改为href:

<image href="img/icons/sun.svg" width="40" height="40" x="228" y="53"></image>
Run Code Online (Sandbox Code Playgroud)

事实上,如果我使用png扩展名,这段代码就能完美运行.任何的想法?

javascript svg image xlink d3.js

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

Spring MVC执行顺序:过滤器和拦截器

我正在开发一个使用过滤器实现的spring-mvc应用程序:

javax.servlet.Filter
Run Code Online (Sandbox Code Playgroud)

和拦截器扩展:

org.springframework.web.servlet.handler.HandlerInterceptorAdapter
Run Code Online (Sandbox Code Playgroud)

据我所知,Spring MVC的控制流程是这样的:

  1. 请求到达DispatcherServlet.
  2. DispatcherServlet将它发送到Interceptor,并执行覆盖的preHandle方法.
  3. 请求到达匹配控制器.
  4. 处理完请求后,如果拦截器的postHandle方法也被覆盖,则Spring执行其代码.
  5. DispatcherServlet使用视图解析器并将模型发送到视图,然后呈现它.

做一些测试我可以看到我的过滤器总是在preHandle拦截器方法之前执行.它似乎是DispatcherServlet之后的第一个执行的东西.没关系,但我找不到这种行为的原因.有人有一个很好的解释?

谢谢!

更新:可能性:这是因为过滤器是在web.xml中定义的(如DispatcherServlet)所以Filter在DispatcherServlet之前执行?

java spring servlets spring-mvc

10
推荐指数
1
解决办法
8683
查看次数

Swagger UI:如何自定义排序资源

安静而直接的问题:如何在 v2.2.6 中对 swagger-ui 中的端点进行排序?我使用 springfox 作为 java 部分。

在我的 swagger 主页中,我有一组按标签分组的资源。这些标签按随机顺序排列。我想按自定义顺序排列(如果不可能,则按字母顺序排列)。我的 SwaggerConfig.java 文件:

package cat.meteo.apiinterna.commons.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Tag;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@Configuration
@EnableSwagger2
public class SwaggerConfig {

@Bean
public Docket api() {
    return new Docket(DocumentationType.SWAGGER_2)
            .select()
            .apis(RequestHandlerSelectors.any())
            .paths(PathSelectors.any())
            .build()
            .tags(
                    new Tag("XEMA Me", "1"),
                    new Tag("XEMA Ul", "2"),
                    new Tag("XEMA Ag", "3"),
                    new Tag("Prono", "4"),
                    new Tag("Sound", "5")
            )
            .apiInfo(apiInfo());
}

private ApiInfo apiInfo() { …
Run Code Online (Sandbox Code Playgroud)

rest spring-mvc swagger swagger-ui

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

使用JsonRest Store(dojo)自定义http标头

我想知道是否有任何方法可以在Get ajax请求(xhr.get)中设置我自己的自定义http标头,该请求会自动执行JsonRest存储.

有一个相关的主题,但没有一个很好的解决方案: 带有自定义HTTP标头的Dojo数据网格

我已经在'dojo.store.JsonRest'中看到了包含构造函数的JsonRest实现,如果我们能够做到或不做(我不这么认为),这一点并不明显.正在使用的JsonRest存储示例:

var store = new JsonRestStore({target: "/Table/" });
Run Code Online (Sandbox Code Playgroud)

ajax dojo json store http-headers

4
推荐指数
1
解决办法
1622
查看次数

Web服务架构:Redis(作为缓存)和PostgreSQL用于持久性

我正在开发一个使用postgreSQL数据库中的客户端数据的Java REST API.

数字: .一开始大约有600个客户.他们中的一些人每隔几秒就做一次请求

由于客户按要求付费,我们需要控制成功请求的数量是否达到限制,并且在每次请求性能不佳后查询postgresql数据(更新'hitsCounter'字段的值)时,我们正在考虑实施一个带redis的缓存系统.

想法: 在客户端发出第一个请求后,我们从postgresql中检索他的数据并将其存储到redis缓存中.然后使用此缓存数据,例如递增'hitsCounter'键值,直到客户端停止执行请求. 同时,后台进程每隔几分钟就会将数据从redis缓存持久保存到db表,所以最后我们将更新后的数据恢复到postgresql,我们将来可以处理它们.

我认为它显然会提高性能,但我不确定这个"后台进程".一个选项是检查缓存元素的TTL,如果它比某个值小(这意味着客户端已完成请求),则保留数据.

我很想听听有关这方面的一些意见.这是一个好主意吗?你知道更好的选择吗?

java architecture postgresql rest redis

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

Spring Batch:在读取器和写入器之间传递数据

我想在步骤中的读取器中设置的写入器中获取数据。我通过http://docs.spring.io/spring-batch/trunk/reference/html/patterns.html#passingDataToFutureSteps了解ExecutionContexts(步骤和工作)以及ExecutionContextPromotionListener

问题是在Writer中,我正在检索'npag'的空值。

ItemWriter上的行:

LOG.info("INSIDE WRITE, NPAG: " + nPag);
Run Code Online (Sandbox Code Playgroud)

我正在做一些变通办法,没有运气,正在寻找其他类似问题的答案……有什么帮助吗?谢谢!

这是我的代码:

读者

@Component
public class LCItemReader implements ItemReader<String> {

private StepExecution stepExecution;

private int nPag = 1;

@Override
public String read() throws CustomItemReaderException {

    ExecutionContext stepContext = this.stepExecution.getExecutionContext();
    stepContext.put("npag", nPag);
    nPag++;
    return "content";
}

@BeforeStep
public void saveStepExecution(StepExecution stepExecution) {
    this.stepExecution = stepExecution;
}
}
Run Code Online (Sandbox Code Playgroud)

作家

@Component
@StepScope
public class LCItemWriter implements ItemWriter<String> {

private String nPag;

@Override
public void write(List<? extends String> continguts) throws Exception …
Run Code Online (Sandbox Code Playgroud)

spring spring-batch spring-boot

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

使用Jackson和Spring-MVC将对象列表序列化为Json

我正在研究一个项目,我需要以json格式返回一个对象列表.我正在使用带有jackson库的Spring-mvc框架来进行序列化.

我想要一个直接包含对象的json结构,而不是'name:对象数组'.

这是我的简化代码:

@RequestMapping(method = RequestMethod.GET, value = "/clients")
public List getClients(
        @RequestParam(value = "estat", required = false) String estat
        throws Exception {

    List<Clients> l = s.mdClients(estat);
    return l;
}
Run Code Online (Sandbox Code Playgroud)

你看到的这个"返回l"直接转向Jackson,而jackson将'l'转换成如下结构:

{
  "ClientsList": [
    {
      "x": "2",
      "y": "5"
    }
]}
Run Code Online (Sandbox Code Playgroud)

问题是根"ClientsList".我想在没有root的情况下得到这个输出:

{
  [
    {
      "x": "2",
      "y": "5"
    }
]}
Run Code Online (Sandbox Code Playgroud)

那么,有人可以帮忙吗?提前致谢!

serialization json spring-mvc jackson

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