列表A包含属性Developer.开发人员架构喜欢:
@Getter
@Setter
public class Developer {
private String name;
private int age;
public Developer(String name, int age) {
this.name = name;
this.age = age;
}
public Developer name(String name) {
this.name = name;
return this;
}
public Developer name(int age) {
this.age = age;
return this;
}
}
Run Code Online (Sandbox Code Playgroud)
列出A的属性:
List<Developer> A = ImmutableList.of(new Developer("Ivan", 25), new Developer("Curry", 28));
Run Code Online (Sandbox Code Playgroud)
要求将列表A转换为列表B,列表B具有属性ProductManager,属性与列表A的属性相同.
@Getter
@Setter
public class ProductManager {
private String name;
private int age;
public ProductManager(String name, int age) {
this.name = …Run Code Online (Sandbox Code Playgroud) 我无法理解为什么在策略设计模式中使用Context模块(我们将在下面的代码中看到),它的功能是什么?让我们看一下战略设计模式的一部分.
public interface Strategy {
public int doOperation(int num1, int num2);
}
public class OperationAdd implements Strategy {
@Override
public int doOperation(int num1, int num2) {
return num1 + num2;
}
}
public class OperationSubstract implements Strategy {
@Override
public int doOperation(int num1, int num2) {
return num1 - num2;
}
}
public class Context {
private Strategy strategy;
public Context(Strategy strategy) {
this.strategy = strategy;
}
public int executeStrategy(int num1, int num2) {
return strategy.doOperation(num1, num2);
}
}
Run Code Online (Sandbox Code Playgroud)
从上面的代码中,我们可以通过这种方式调用不同的算法: …
我们使用的是spring boot框架,通过内嵌的tomcat生成访问日志,访问日志的格式如下属性:
server.tomcat.access-log-enabled=true
server.tomcat.access-log-pattern="%h %l %u %t '%r' %s %b %D"
server.tomcat.basedir=/data/logs/Waijule/SchoolService/access
Run Code Online (Sandbox Code Playgroud)
幸运的是,访问日志生成成功,我们得到了肯定的结果:
"127.0.0.1 - - [01/Mar/2016:11:25:47 +0800] 'POST /school-svc/index-summary HTTP/1.1' 200 127 21"
"127.0.0.1 - - [01/Mar/2016:11:25:47 +0800] 'POST /school-svc/wechat/signature/get HTTP/1.1' 200 238 9"
"127.0.0.1 - - [01/Mar/2016:11:25:47 +0800] 'POST /school-svc/wechat/ticket/get HTTP/1.1' 200 225 148"
Run Code Online (Sandbox Code Playgroud)
为了确保服务健康,我们每 5 秒运行一次健康检查,我们想要过滤的请求以便我们可以获得清晰的访问日志,健康检查 url 如下示例:
"127.0.0.1 - - [01/Mar/2016:12:04:10 +0800] 'GET /school-svc/isHealth HTTP/1.1' 200 6 104"
Run Code Online (Sandbox Code Playgroud)
如何过滤健康检查请求?
感谢帮助。
根据访问日志的文档,我尝试使用conditionIf来解决问题,在我们的spring框架中,我尝试覆盖EmbeddedServletContainerCustomizer类中的customize函数,以便可以设置conditionIf,我们的实现如下示例:
@Configuration
public class Application implements EmbeddedServletContainerCustomizer {
@Override
public void customize(ConfigurableEmbeddedServletContainer …Run Code Online (Sandbox Code Playgroud) 在包java.util.LinkedList中,将类节点定义为一个静态类,是否有必要?目标是什么?
我们可以从此页面找到源代码。
java ×4
access-log ×1
collections ×1
java-8 ×1
linked-list ×1
list ×1
refactoring ×1
spring ×1
spring-boot ×1
tomcat ×1