V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  agzou  ›  全部回复第 1 页 / 共 2 页
回复总数  27
1  2  
@zhongpingjing #8 调用的 bean 应该在初始完之后调用,实现 InitializingBean 接口 afterPropertiesSet 方法,或者使用 @PostConstruct ,在构造方法里面不能保证其他 bean 给初始化了
目测,@Autowired 问题,有试过把 @Autworied 去掉吗,实现了 ApplicationContextAware 接口,不需要再用 @Autowired
137 天前
回复了 agzou 创建的主题 Java 请教一个 ConcurrentHashMap 问题
@justNoBody #3 但是这两句
if (!map.containsKey(key)) {
AtomicLong atomicLong = new AtomicLong(0);
map.put(key, atomicLong);
return atomicLong.incrementAndGet();
}

有可能返回不同的两个 AtomicLong,这样调用 atomicLong.incrementAndGet(),应该会重复返回 1 ,但是我运行我的测试代码并没有重复 id
137 天前
回复了 agzou 创建的主题 Java 请教一个 ConcurrentHashMap 问题
@JeromeCui #2 我的问题是,我觉得我这段代码不是线程安全的,但测试却不会生成重复的 id
167 天前
回复了 Dogod37 创建的主题 Java 密集多次 http 请求外部接口怎么操作比较好?
线程池+Future+CountDownLatch
手动分页
看了下代码,synchronized 加在方法上的,锁的是对象,nacos 和 restTemplate 用的肯定不是同一个 HttpURLConnection 对象吧。。是不是找错问题了
@agzou #3 忘了看 OP 语言,我说的是 java 下的方案
coupons 分配服务有多个的时候,肯定要用到分布式锁,最简单就是用 redis ,有现成代码,也可以用 JDBC+数据库实现一个分布式锁。
219 天前
回复了 Graves 创建的主题 Java shardingjdbc 根据 id 查询扫了所有分表
@Graves #12 看查询场景吧,一般分片的 key 都是必带的查询条件,要不所有表都会查一次。
223 天前
回复了 Graves 创建的主题 Java shardingjdbc 根据 id 查询扫了所有分表
分区 key 是 userid ,你用 order_id 去查,肯定是全表扫,并没有命中分区
267 天前
回复了 jinzhongyuan 创建的主题 程序员 学习使用 ShardingJdbc
我也用了一段时间,感觉如果没有太复杂的分库分表配置,基本全走配置文件,复杂的规则还是要实现 spi 的
@gancl #10 本质上就是个代理,你只要把请求指定到代理,和你开多少个服务没有关系。
@gancl #8 用了 k8s 也需要 gateway 呀,原本 gateway 怎么鉴权就怎么鉴权,服务在网关后面,你们只是将注册中心换成了 k8s 而已吧,其他和 spring cloud 那一套没什么区别。
@gancl #6 我们没用 k8s 做注册中心,telepresence,ktconnect 等工具只是个代理能让你能够访问 k8s 内部网络,你本地网络与 k8s 内部网络通了了,加上证书应该就能够访问 k8s apiserver,做服务发现与注册。
ktconnect
2021-07-12 17:16:30 +08:00
回复了 TimPeake 创建的主题 硬件 七彩虹 b460i 主板无法识别 海康威视 c2000 pro
我 c2000 用了几个月也坏了,然后售后换了 c2000pro😂😂
@Vegetable #1
@66beta #4
已经让运营自己拉个群讨论这个需求了。。
2021-05-26 11:30:21 +08:00
回复了 Aliberter 创建的主题 Java 求助! springboot 如何获取 url 上的参数,@PathVariable 复用问题
@Aspect
@Component
@RestController
public class Demo {
@RequestMapping()
public void test() {
//获取参数
ParamsHolder.getApiVersion();
}

@Pointcut(value = "@annotation(org.springframework.web.bind.annotation.RequestMapping)")
public void pointCut() {

}

@Around("pointCut()")
public Object process(ProceedingJoinPoint pjp) throws Throwable {
try {
ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
HttpServletRequest req = servletRequestAttributes.getRequest();
ParamsHolder.setApiVersion(getApiVersion(req));
return pjp.proceed();
} finally {
ParamsHolder.removeApiVersion();
}

}

private String getApiVersion(HttpServletRequest request) {
// TODO: 2021/5/26 获取需要的参数
return null;
}

public static class ParamsHolder {
private static final ThreadLocal<String> API_VERSION = new ThreadLocal<>();

public static String getApiVersion() {
return API_VERSION.get();
}

private static void removeApiVersion() {
API_VERSION.remove();
}

private static void setApiVersion(String apiVersion) {
API_VERSION.set(apiVersion);
}
}
}
2021-05-26 11:06:02 +08:00
回复了 Aliberter 创建的主题 Java 求助! springboot 如何获取 url 上的参数,@PathVariable 复用问题
切面加自定义注解实现
1  2  
关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1950 人在线   最高记录 5497   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 44ms · UTC 05:54 · PVG 13:54 · LAX 22:54 · JFK 01:54
Developed with CodeLauncher
♥ Do have faith in what you're doing.