V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  chendy  ›  全部回复第 5 页 / 共 167 页
回复总数  3321
1  2  3  4  5  6  7  8  9  10 ... 167  
MongoDB 丢数据的问题,少说十年前就无了啊…
消费者敬畏厂家干啥
从 iPhone 到 mac 用了十多年了,苹果的感觉属于不很灵敏但也不慢,就很平滑
win 和安卓的感觉是快的时候很顺慢的时候很慢
类似于坐车,mac 就是匀速走,其他就是猛给油门猛踩刹车
@chaoschick 参考这个 https://stackoverflow.com/questions/42405829/performance-using-stdout-screen-vs-regular-file

应该是 buffer 的问题,某些场景 buffer 更大,flush 更少,于是更快
因为一样是 System.out.println ,打印到不同的地方耗时不一样,至于为什么不一样我就解释不出来了(可以问问 ai ?)
我这里把 1000 改成 10000
idea 执行 82
命令行 1452
命令行重定向到文件 55
不打印到屏幕上还是更快
随手写一个,然后下班

```java
class Scratch {
public static void main(String[] args) {
HashMap<String, Object> map = new HashMap<>();
map.put("userName", "user01");
map.put("userAge", 18);
map.put("userFriends", Arrays.asList("user02", "user03"));
System.out.println(map);
Map<String, Object> newMap = convertMap(map);
System.out.println(newMap);
}

public static Map<String, Object> convertMap(Map<String, ?> map) {
HashMap<String, Object> newMap = new HashMap<>();
for (Map.Entry<String, ?> e : map.entrySet()) {
String key = e.getKey();
String newKey = convertKey(key);
newMap.put(newKey, e.getValue());
}
return newMap;
}

public static String convertKey(String key) {
StringBuilder b = new StringBuilder(key.length() * 2);
for (int i = 0; i < key.length(); i++) {
char c = key.charAt(i);
if (Character.isUpperCase(c)) {
b.append("_").append(Character.toLowerCase(c));
} else {
b.append(c);
}
}
return b.toString();
}
}```
以下内容基于你用的是 java:
既然都 Map 了就不用转换了,直接 get("xxx_bbb")
甚至 Map 都不用,有一个神奇的包里面有个神奇的类叫 JSONObject ,直接各种 get(String) 就行

如果真的要 Map 且真的要转换,遍历 key ,改 key ,塞进另外一个新 map ,也不难
2014 年初入的 13 款 15 寸 RMBP 高配,用到了 2020 年底换了 M1 ,差不多 7 年
中途换过两次电池
124 天前
回复了 lancelotfh 创建的主题 程序员 国内软件公司的产品水分是不是很大
@lancelotfh 外采系统最多被供应商坑,大不了不续签合同不给验收不给结款
自建系统那可真是,自己拉💩自己吃啊,别问我怎么知道的
@iintothewind
> Hibernate ,MyBatis 这么老的框架在架构之初,parallelStream 根本就不存在导致的

parallelStream 确实不存在,但是多线程机制早就存在了,以前怎么处理多线程,parallelStream 里怎么处理就行了

> 如果这俩框架本身就支持多线程下操作数据库,不是更好吗?

问题在于,什么叫支持多线程操作数据库?如果想保证基本的操作,加个锁就行不用框架动;如果操作复杂,要处理比如谁前谁后,谁和谁抢锁,谁和谁联动,这么多细节问题也不是框架能决定的,是写代码的人决定的

> 因为 Hibernate ,MyBatis 太老了,该换掉了

换成啥也处理不了你这个需求,多线程下的复杂逻辑本来就应该是自己写的
不是,哥们,啥需求啥场景啊,为了用个 parallel 连持久层框架都看不上了?
而且你这问题不是持久层框架的问题,四舍五入是数据库的问题
因为 session 简单理解其实就是一个连接,既然只有一个连接,连接这玩意本身也不是线程安全的
想象一下,俩线程拿着同一个连接给数据库怼 SQL ,想想都头大。就算有好心的厂家给加了个 syncronized ,一个线程操作还没完,另一个线程直接一个 commit ,想想头更大了

所以说…还是优化一下代码设计吧,持久层框架不背这个锅
129 天前
回复了 clacf1 创建的主题 汽车 极氪是要倒闭的节奏了吗?
@HaloLegend 确实,锤子牌也是国产的
130 天前
回复了 MRG0 创建的主题 职场话题 突然发现上班这几年工作时长都不长
工作快十年了
前一半在传统软件厂,弹性工作,于是早十晚七正好躲高峰
后一半的制造业 iT 部门,早八晚五,但是要提前半小时到否则没车位
加班不能说没有但是很少,常年 on call 但问题不多,工资不高但是饿不着
水平不高但是喜欢写代码,第二份工作的项目在我接手之后代码少了一万多行

感觉和狂加班的兄弟们比起来,自己应该是没有世俗的欲望了
闻闻你的
131 天前
回复了 RamenCurator 创建的主题 职场话题 有什么保值技能/技术?
保持或者提高学习能力
持续扩宽视野和人脉

某一项具体技术的话,其实管理技术挺保值的(组织力之类的)
仅代表油车厂子谢谢你
可能是你相关的人,附近的人,同网络的人搜索过之类的
然后就一起推送了
135 天前
回复了 Rrrrrr 创建的主题 程序员 最近看推上挺多人用 cursor
点进来之前以为是数据库的 cursor…
建议拨打市长公开电话进行一个投诉
1  2  3  4  5  6  7  8  9  10 ... 167  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2454 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 47ms · UTC 02:42 · PVG 10:42 · LAX 18:42 · JFK 21:42
Developed with CodeLauncher
♥ Do have faith in what you're doing.