最近阅读-2024-06-08

by kevin 8. 六月 2024 08:29 >
工具 小兔搜书 https://ss.yesky.online/ 24h Book https://24hbook.com/ 知搜 https://zhiso.cc/ 热点图书网 http://www.happydot.top/category/culture 进行占用空间分析 https://windirstat.net/ 资源分享 包含各种汽车修理手册 https://charm.li/ 量化交易的开源合集 https://github.com/wilsonfreitas/awesome-quant 言论 货币的性质总是在商品和债务代币之间徘徊。这可能就是硬币(小块的金银,本身已经是有价值的商品,但是随着被印上当地政治权威的标志,其价值会变得更高)仍然被我们看作最典型的货币形式的原因。硬币完美地包含货币的两重定义。更进一步说,货币这两重定义之间的关系,是持续的政治争论的来源。换句话说,国家和市场之间的战争、政府和商人之间的战争,并非人性所固有。 所有的人类关系的基础都是互惠性的某些变种。 the goal is consensus, not unanimity. 目标是达成共识,而不是一致同意。 暴力十分普遍的时期是金银货币的天下。关于出现这个现象的原因很简单。金银钱币有一个有别于信用安排(credit arrangements)的显著特征——它们可被盗窃。 货币往往有成为道德规则的潜能。如果允许用钱生钱,赚钱很快就成为一种极为重要的德行,让其他一切与之相比都黯然失色。 现代资本主义的特征就是,它创建一系列社会安排,并迫使我们这样认为。公司的结构是为清除所有道德规则,只留下利润而设计的。 纸币是债务货币,而债务货币是战争货币,一直以来都是如此。那些为欧洲无休止的军事冲突提供资金的人,也利用了政府的警察和监狱,榨取他人日益增长的生产力。 一家合法的企业必须有某些道德基础,而公司所知道的唯一道德就是债。 国债是政府在向人民承诺未来会不断变好,国债的利率就是变好的程度。 到底什么是债务?债务就是对一个承诺的曲解(perversion)。这是一个被数学和暴力腐化了的承诺。 商品本身有其“社会生命”,在这“社会生命”里,商品的意义、用处、价值不断在改变;“供应”与“需求”,由具有爱、恨、瘾性的人,通过文化力量来决定,而非由具体化的“市场力量”决定。

最近阅读-2024-05-12

by kevin 12. 五月 2024 09:39 >
工具 简单易用的视频清除水印工具 https://github.com/lxulxu/WatermarkRemover 学习 一个程序员的自我修养 https://github.com/doocs/source-code-hunter/blob/main/docs/LearningExperience/EncodingSpecification/%E4%B8%80%E4%B8%AA%E7%A8%8B%E5%BA%8F%E5%91%98%E7%9A%84%E8%87%AA%E6%88%91%E4%BF%AE%E5%85%BB.md 资源分享 运输大亨开源版 https://wiki.openttd.org/zh/ 言论 在任何战争中,最终占主流的必定不是温和派,而是极端派。 如果一个人系统地接受过某个学科的训练,了解所有基本的准则,了解历史与人类经验,然后担任领导人,那就更好了。 对于强烈不满现存社会秩序这一或那一方面的几乎所有不同人来说, 战争一下子把他们从日常的厌烦无奈中解脱出来, 使他们能转而投身到似乎有望带来欢欣前景的新环境中去。 债务原本是多种社会关系的往来,后来逐渐转为“数字”上的会计账目,慢慢变成道德上不可动摇的律则和罪恶。在这个时代,“日常生活的金融化”,不管我们愿不愿意,都已经卷入这场债务的绵密关系中。生活中的社会债务计算,已经抽离人类生活的脉络,更多是用价格来计算而不是人与人的价值。 虚拟货币正是货币的原始形式。信贷系统、账款甚至账单等和人类文明一样古老,它们的出现要远远早于现金。

最近阅读-2024-04-06

by kevin 6. 四月 2024 21:35 >
工具 图片生成音乐 https://imagetomusic.top/ Audacity,一款免费、开源的音频编辑工具。 https://github.com/audacity/audacity veracrypt一款开源的磁盘加密软件。 https://veracrypt.fr/en/Home.html 免费在线的PDF工具箱 https://www.pdfpai.com/ 学习 各种协议的详细解析 https://github.com/ByteByteGoHq/system-design-101 言论 物理是上帝的法律,数学是上帝的语言。 人们建立那些稀奇古怪的政权,往往不是因为他们本性邪恶,而是因为他们对现实不满,并拥有强烈 的自信,以为能够改造世界,让世界更好。但大部分时候,他们留下的只是狂妄和灾难。 长大是一个过程,成长是一段历程,成熟之后开启旅程。 痛苦能滋养勇气。如果只有美好的事情发生在你身上,你就不可能变得勇敢。 个人的财务管理,其实只有两条原则:一是支出小于收入,二是做对投资,投资对象可以是能够获利的资产,也可以是你的个人技能。

最近阅读-2024-03-09

by kevin 9. 三月 2024 09:17 >
工具 开源的邮件列表和营销平台。这是一个开箱即用的邮件营销平台,可以帮助你管理邮件订阅者、创建和发送邮件、分析营销数据。 https://github.com/knadh/listmonk Bandizip,最大的好处是不用解压文件就可以统计压缩包里面的文件数量。 https://www.bandisoft.com/bandizip/ 资源分享 这个网站提供2000多种生物的 3D 模型 https://sketchfab.com/ffishAsia-and-floraZia 言论 经理们对员工的要求,就是一句话:做你们昨天做过的事情,但是速度更快,成本更低。 对骄傲的人不要谦逊,对谦逊的人不要骄傲 。 君子贤其贤而亲其亲,小人乐其乐而利其利。 宗教的方法是信仰,哲学的方法是思想。 现在这个社会,是人类历史上第一个越来越以人类为中心的社会。 历史可能是以三种形式存在的,一是作为事件,一是作为神话,一是作为经验,而后两种正是时时可以被当作“记忆”。 利率是引导经济的钝器,货币政策工具具有“漫长而易变”的滞后性。 你可以逃避现实,但你无法逃避“逃避现实”的后果。 寇小则为盗,大则为戎。 安全有两种方式:常规的安全指的是尽可能多的发现并消除错误的部分,达到绝对安全,这是理想。另一种则是弹性安全,即使发生错误,只要及时恢复,也能正常工作,这是现实。 优异的判断来自于经验,而经验来自于拙劣的判断。 有些人很像 ChatGPT,ChatGPT 不理解任何材料,但可以利用这些材料,快速找到问题的合理答案。它会综合和模仿,有时表现得非常令人信服,就像某个知识渊博的人在谈论某个主题。如果你问一个探索性的问题,就会发现他们的理解很少,一切侃侃而谈都是表面的,没有深度。这都是模仿而不是真正的思想,他们只是故意让别人觉得似乎有道理。或许这就是ChatGPT受欢迎的原因。 任何傻瓜都能写出计算机能理解的代码。优秀程序员写人类能理解的代码。

springboot-同名class注入

by kevin 21. 二月 2024 14:30 >
springboot注入默认使用className作为注入的key,如果两个className一样,无法注入   添加配置CoreConfiguration package com.statcore; import com.xmeport.statcore.util.AnnotationBeanNameGenerator; import org.mybatis.spring.annotation.MapperScan; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; @Configuration @ComponentScan(nameGenerator = AnnotationBeanNameGenerator.class) @MapperScan(value = "com.xmeport.statcore.mapper" ,nameGenerator = AnnotationBeanNameGenerator.class) public class CoreConfiguration { }   创建AnnotationBeanNameGenerator类 package com.statcore.util; import org.springframework.beans.factory.annotation.AnnotatedBeanDefinition; import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.beans.factory.support.BeanDefinitionRegistry; import org.springframework.beans.factory.support.BeanNameGenerator; import org.springframework.core.annotation.AnnotationAttributes; import org.springframework.core.type.AnnotationMetadata; import org.springframework.util.StringUtils; import java.util.Map; import java.util.Set; public class AnnotationBeanNameGenerator implements BeanNameGenerator {     private static final String COMPONENT_ANNOTATION_CLASSNAME = "org.springframework.stereotype.Component";     @Override     public String generateBeanName(BeanDefinition definition, BeanDefinitionRegistry registry) {         if (definition instanceof AnnotatedBeanDefinition) {             String beanName = determineBeanNameFromAnnotation((AnnotatedBeanDefinition) definition);             if (StringUtils.hasText(beanName)) {                 // Explicit bean name found.                 return beanName;             }         }         return definition.getBeanClassName();     }     /**      * Derive a bean name from one of the annotations on the class.      *      * @param annotatedDef the annotation-aware bean definition      * @return the bean name, or {@code null} if none is found      */     protected String determineBeanNameFromAnnotation(AnnotatedBeanDefinition annotatedDef) {         AnnotationMetadata amd = annotatedDef.getMetadata();         Set<String> types = amd.getAnnotationTypes();         String beanName = null;         for (String type : types) {             AnnotationAttributes attributes = AnnotationAttributes.fromMap(amd.getAnnotationAttributes(type, false));             if (isStereotypeWithNameValue(type, amd.getMetaAnnotationTypes(type), attributes)) {                 Object value = attributes.get("value");                 if (value instanceof String) {                     String strVal = (String) value;                     if (StringUtils.hasLength(strVal)) {                         if (beanName != null && !strVal.equals(beanName)) {                             throw new IllegalStateException("Stereotype annotations suggest inconsistent " +                                     "component names: '" + beanName + "' versus '" + strVal + "'");                         }                         beanName = strVal;                     }                 }             }         }         return beanName;     }     /**      * Check whether the given annotation is a stereotype that is allowed      * to suggest a component name through its annotation {@code value()}.      *      * @param annotationType      the name of the annotation class to check      * @param metaAnnotationTypes the names of meta-annotations on the given annotation      * @param attributes          the map of attributes for the given annotation      * @return whether the annotation qualifies as a stereotype with component name      */     protected boolean isStereotypeWithNameValue(String annotationType,                                                 Set<String> metaAnnotationTypes, Map<String, Object> attributes) {         boolean isStereotype = annotationType.equals(COMPONENT_ANNOTATION_CLASSNAME) ||                 (metaAnnotationTypes != null && metaAnnotationTypes.contains(COMPONENT_ANNOTATION_CLASSNAME)) ||                 annotationType.equals("javax.annotation.ManagedBean") ||                 annotationType.equals("javax.inject.Named");         return (isStereotype && attributes != null && attributes.containsKey("value"));     } }

springboot移除url中的sessionid

by kevin 21. 二月 2024 14:26 >
1. 配置文件中添加 [sourcecode language='xml' padlinenumbers='true'] server.servlet.session.tracking-modes=COOKIE [/sourcecode] 2. 对每个请求的url判断,重新改写。 package com.ac; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; @Component public class SessionUrlInterceptor extends HandlerInterceptorAdapter {     @Value("${sessionUrlEnable}")     private boolean sessionUrlEnable;     @Override     public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws IOException, ServletException {         if (sessionUrlEnable && StringUtils.isNotBlank(request.getSession().getId())) {             String requestURI = request.getRequestURI();             String uriSession = ";jsessionid=" + request.getSession().getId();             LogUtils.logInfo("requestURI:" + requestURI + " sessionURI:" + uriSession);             if (requestURI.indexOf(uriSession) != -1) { //                LogUtils.logInfo("requestURI:" + requestURI + " Forward");                                requestURI = requestURI.replace(uriSession, "");                                request.getRequestDispatcher(requestURI).forward(request, response);                 return false;             }         }         return true;     } }

最近阅读-2024-01-27

by kevin 27. 一月 2024 09:09 >
工具 一个可视化全球天气实况的项目。该项目以可视化的方式展示了全球的天气情况,提供了风、温度、相对湿度等多种天气数据,以及风、洋流和波浪的动画效果。 https://github.com/cambecc/earth 小红书作品采集工具 https://github.com/JoeanAmier/XHS-Downloader 微信聊天记录迁移和备份工具 https://github.com/BlueMatthew/WechatExporter 视频翻译和配音工具 https://v.wonyes.org/ 资源分享 将 BiliBili 上面综合数据最高的一些中国历史视频,以时间轴的方式呈现。 https://www.historyline.online/ 言论 体格壮硕的男性和外形漂亮的女性更容易发怒,他们在解决社交冲突时比其他人更容易获胜,同时也体验到更强烈的优越感。 人不是什么都能的,尽管人很聪明,在繁衍后代这个问题上充分说明了这一点。人的聪明只是能够繁殖后代,但是不能设计后代繁殖。 帝国的存在往往以维护既有秩序和体制为基础,逻辑上帝国要求一种停滞的机制,不然帝国庞大的机制就会剥落,会在变动中风化瓦解。 大多数的文化冲突是“文明人”和“善良的未开化人”之间的冲突。 海上的霸权常常给那些握有这种霸权的民族以一种自然的骄傲,因为他们觉得他们能够到处凌辱人。他们以为他们的权力就和海洋一样地广大无边。

最近阅读-2023-12-14

by kevin 14. 十二月 2023 20:28 >
工具 一个查找重复文件的软件 https://github.com/arsenetar/dupeguru/ 言论 穷人即使在自己收入增加的情况下,也不会吃得更多更好,除了食物之外,他们需要面对太多其他的压力和欲望。 不过我们心里一定要清楚:要对外谈判,内部的冲突得先搞定。谈之前,谈之后,都不能让内部冲突消耗掉我们对外冲刺的能量。 在理论上,对外的部分叫战略,对内的部分叫结构,结构搞定了,战略才放得出去。 谈判重要的一点是,赢者不全赢,输者不全输。 破船还有三千钉。 我只想知道将来我会死在什么地方,这样我就不去那儿了。 如果我们试图理解一样看似独立存在的东西,我们将会发现它和宇宙间的其他一切都有联系。 动物在合适的地方能够繁衍,同样地,人只要在社会上找到了专属于自己的位置,也能够做得很成功。 简单是长期努力工作的结果,而不是起点。 恐怕事情就是这样的。假如有20种相互影响的因素,那么你必须学会处理这种错综复杂的关系——因为世界就是这样的。 假装知道未来的人总是有市场的。 想要理解万物是非常困难的,但如果你无法理解它,你可以把问题交给一位比你聪明的朋友。 在成为领先者之前,成功是发展你自己。当你成为领先者,成功是帮助其他人发展。 真理追求者之所以感到幸福,是因为他们的追求过程终于获得了成功,而不是因为他们终于拥有了真理。 信任能让资本主义运转得更好。 如果你觉得骂人是很好的主意,你可以留到明天再骂。 信任不只需要存在于朋友之间,有时也需要存在于敌人之间。 谈判者的文化底子很重要。尤其在东方社会,没有文化素养,是很难建立深层的关系的。

最近阅读-2023-11-15

by kevin 15. 十一月 2023 20:38 >
工具 一个开源免费的乐谱制作软件 https://musescore.org/ stretchly – 开源的休息提醒工具 https://github.com/hovancik/stretchly 言论 政治无论是表现为各个阶级之间的斗争,还是表现为对社会公共事务的管理,都特别强调理性的指引。理性是指从理智上控制行为的能力。政治理性则是理性的一般在政治领域的特殊表现。它注重立足实际、讲求效用,是为实用理性;它承认人的能力是有限的,或者说,人的理性是有限的,从而能够用谦卑的态度面对世界,用渐进的方式进行变革,是为渐进理性;它主张将一些一时不易弄清、不必弄清或弄清了并无益处甚至反有害处的问题搁置一边,不肯定、不否定甚至于也不怀疑,以避免不必要的麻烦,并注重通过实践以获得真知,达成共识,是为实践理性。 穷人的首要选择是:让自己的生活少一些乏味。 创业者有一个谬误,叫做"下一个功能谬误",指的是一种错误想法,认为自家产品的下一个新功能会突然让人们使用该产品。 企业的领导人不必非要说服员工跟着他走,因为企业里有等级制度,他通过这种组织形式传达指令,他的职责就是满足客户与股东。然而,一个政治领导人必须向其人民描绘他对未来的美好愿景,然后还要把这个愿景转变为具体政策,并说服人民,使他们相信这些政策是值得拥护的,最后还要把人民凝聚在一起,帮助他实现这个愿景。 在分享财富之前,我们首先需要创造财富。 壳牌的人才评估系统把人的特质归结为三种:强大的分析能力,合理把握事实的能力,以及善于总结原则并关注基本事实的能力。 人应该是平等的,但从来都没平等过。 个人和小企业适合去传授知识,而大公司不适合。因为大公司受制于保密政策,正式发布的每一个句子都得经由律师过目,再经严格的层层审查。 大公司的强项是付得起广告,小公司付不起。所以你能在传授知识方面大力投入,而大公司不能。 预防工作就算再便宜,穷人还是不会去做,他们只关心生病以后要花多少钱来治。 穷人的出场通常只是作为某种励志剧或悲剧的主人公,或令人钦佩,或惹人怜悯,而不是某种知识的传播者,人们不会向他们咨询其想法或计划。 贫穷并不仅仅意味着缺钱,它会使人丧失挖掘自身潜力的能力。 投机是在掌握有利胜算的情况下才承担风险。投机的艺术包括许多能力。精确地解释当时的状况;掌握胜算;知道如何下赌注,即使是在输的情况下,你仍能够参与下一盘赌局;具备心理的纪律,执行客观的知识,而不是由情绪主导决策。 工资的上涨意味着有更多的钱可以用来购买食品,但人们却用 50%的工资来购买能量更高的食品,另外 50%则用来购买价钱更高的食品。

最近阅读-2023-10-29

by kevin 29. 十月 2023 15:34 >
工具 BackgroundRemover,一个命令行工具,用于移除图片或者视频的背景。 https://github.com/nadermx/backgroundremover 学习 从头设计一个数据库,用于学习数据库知识。 https://github.com/spandanb/learndb-py 资源分享 一个教人如何种植蔬菜的网站 https://openfarm.cc/ 言论 所谓的资本积累规律是在了解资本积累的事实之后总结出的。 Vision is not enough; it must be combined with venture. 仅有远见是不够的,还必须与冒险相结合。 各种机构总是要把人们组织到某个区域或场所中,并在那里建立权力关系。 阶级是一种角色,而不是某个人身上贴的标签。我们总是同时扮演着多种角色。 政府通过刺激性政策工具或其他手段试图避免危机的做法是误导性的,到目前为止,更恰当的做法是让市场主导的“结构性调整”过程发挥应有的作用。对资本主义经济的健康发展来说这是一剂很有必要的药方。资本主义离死神越近,治疗的过程就越痛苦。当然,关键是不能让“病人”真的死掉。 你的产品解决了客户的问题,因此是你的资产。代码则是创造资产的成本。你拥有的代码越多,阅读、测试、更改和理解所付出的成本就越高。