public class Program {
private static <Program> void foo(Program x){
System.out.println(x+"-->1");
}
private static void foo(final int i){
System.out.println(i+"-->2");
}
public static void main(String[] args) {
Integer i = 10;
foo(i);
}
}
Run Code Online (Sandbox Code Playgroud)
输出是:
10-->1
Run Code Online (Sandbox Code Playgroud)
我无法找到关于这个主题的任何相关讨论.但是,对不同主题的回答让我有点困惑: - 返回Java通用方法的类型
根据它们,泛型<Program>
与返回类型无关,但在我的情况下,如果我稍微改变一下这个程序,那么输出就不同了.
public class Program {
private static <Integer> void foo(Program x){
System.out.println(x+"-->1");
}
private static void foo(final int i){
System.out.println(i+"-->2");
}
public static void main(String[] args) {
Integer i = 10;
foo(i);
}
}
Run Code Online (Sandbox Code Playgroud)
输出:
10-->2
Run Code Online (Sandbox Code Playgroud)
我正在使用JDK1.7
这让我的脖子痛!我有三个问题.
1)我想在我的项目中配置CommonsPool2TargetSource以汇集我的自定义POJO类.
到目前为止我做了什么:
MySpringBeanConfig类:
@Configuration
@EnableWebMvc
@ComponentScan(basePackages = {"com.redirect.controller","com.redirect.business","com.redirect.dao.impl","com.redirect.model"})
@EnableTransactionManagement
@PropertySource("classpath:" + JioTUConstant.SYSTEM_PROPERTY_FILE_NAME + ".properties")
@Import({JioTUCouchbaseConfig.class,JioTUJmsConfig.class})
public class JioTUBeanConfig extends WebMvcConfigurerAdapter {
private static final Logger LOGGER = Logger.getLogger(JioTUConfig.class);
@Bean
public CommonsPool2TargetSource poolTargetSource() {
CommonsPool2TargetSource commonsPool2TargetSource = new CommonsPool2TargetSource();
commonsPool2TargetSource.setTargetBeanName("jioTUURL");
commonsPool2TargetSource.setMinIdle(5);
commonsPool2TargetSource.setMaxIdle(5);
commonsPool2TargetSource.setMaxSize(10);
return commonsPool2TargetSource;
}
@Bean
public ProxyFactoryBean proxyFactoryBean() {
ProxyFactoryBean proxyFactoryBean = new ProxyFactoryBean();
proxyFactoryBean.setTargetSource(poolTargetSource());
return proxyFactoryBean;
}
@Bean
public MethodInvokingFactoryBean poolConfigAdvisor() {
MethodInvokingFactoryBean poolConfigAdvisor = new MethodInvokingFactoryBean();
poolConfigAdvisor.setTargetObject(poolTargetSource());
poolConfigAdvisor.setTargetMethod("getPoolingConfigMixin");
return poolConfigAdvisor;
}
}
Run Code Online (Sandbox Code Playgroud)
我在"com.redirect.model"包中的POJO类:
@Repository …
Run Code Online (Sandbox Code Playgroud) 我的一位同事问我这个问题,断路器和重试之间有什么区别,但我无法正确回答他。据我所知,如果请求负载很大,断路器很有用,但这可以通过重试来实现。然后何时使用断路器以及何时重试。
另外,是否可以在同一个 API 上使用两者?
circuit-breaker spring-boot microservices retry-logic resilience4j-retry
java ×2
generics ×1
overloading ×1
pool ×1
proxyfactory ×1
retry-logic ×1
spring ×1
spring-boot ×1