shigen_个人页

个人头像照片 shigen
个人头像照片
29
1
0

个人介绍

技术爱好者,个人IP:shigen

擅长的技术

  • Java
  • Go
  • Shell
  • 设计模式
  • 微服务
  • Python
  • Devops
  • 中间件
  • Linux
  • MacOS
获得更多能力
通用技术能力:

暂时未有相关通用技术能力~

云产品技术能力:

暂时未有相关云产品技术能力~

阿里云技能认证

详细说明
暂无更多信息

2024年09月

  • 09.28 16:45:49
    发表了文章 2024-09-28 16:45:49

    借助spirng的IOC 能力消除条件判断

    `shigen`是一位致力于分享成长与认知的博客作者。本文介绍了如何利用Spring的IOC机制替代条件判断,优化代码结构。通过抽象类`QuestionHandler`和具体实现,结合IOC注入,实现了问题类型的动态处理,提高了代码的可扩展性和维护性。与shigen一起,每天都有新收获!
  • 09.28 16:10:53
    发表了文章 2024-09-28 16:10:53

    巧用switch-case消除条件判断

    `shigen`是一位致力于撰写博客文章的作者,通过记录成长历程、分享见解并留住感动瞬间。在其文章中,`shigen`介绍了多种消除if-else代码的方法,包括使用HashMap、枚举以及switch-case。最新示例展示了如何通过简洁的switch-case语句处理不同类型的请求,代码优雅且直观。此外,还预告了下一章节将探讨如何利用Spring框架的IOC能力来进一步优化条件判断。与`shigen`一起探索编程世界的每一天都充满新意!**个人IP:shigen**
  • 09.28 15:31:29
    发表了文章 2024-09-28 15:31:29

    巧用枚举消除条件判断

    `shigen`是一位致力于撰写博客文章的作者,记录个人成长历程,分享真知灼见,并捕捉生活中的感动瞬间。在其最新文章中,通过枚举的方式展示了如何优雅地消除if-else判断,提供了一种更为简洁清晰的代码实现方案。利用自定义的`QuestionHandlerEnum`枚举类,实现了不同情况下的逻辑处理,展示了此方法在提升代码可读性和内聚性上的优势。与`shigen`一同探索编程之美,让每一天都有所进步。个人IP:shigen。
  • 09.22 18:21:42
    发表了文章 2024-09-22 18:21:42

    结合HashMap与Java 8的Function和Optional消除ifelse判断

    `shigen`是一位致力于记录成长、分享认知和留住感动的博客作者。本文通过具体代码示例探讨了如何优化业务代码中的if-else结构。首先展示了一个典型的if-else处理方法,并指出其弊端;然后引入了策略模式和工厂方法等优化方案,最终利用Java 8的Function和Optional特性简化代码。此外,还提到了其他几种消除if-else的方法,如switch-case、枚举行、SpringBoot的IOC等。一起跟随shigen的脚步,让每一天都有所不同!
  • 09.01 22:30:55
    发表了文章 2024-09-01 22:30:55

    盘点java8 stream中隐藏的函数式接口

    `shigen`是一位坚持更新文章的博客作者,记录成长历程,分享认知见解,留住感动瞬间。本文介绍了函数式接口的概念及其在Java中的应用,包括`Comparator`、`Runnable`、`Callable`等常见接口,并详细讲解了`Function`、`Predicate`、`Consumer`、`Supplier`和`Comparator`等函数式接口的使用方法及应用场景,展示了如何利用这些接口简化代码并提高编程效率。**个人IP:shigen**,与shigen一起,每天进步一点点!

2024年07月

  • 07.21 19:29:49
    发表了文章 2024-07-21 19:29:49

    当程序员的博客突然变少了

    `shigen`,编程博主,专注Java、Python等技术,分享知识与成长。一年前立下日更目标,近期因AI工具及时间压力减少更新。文章探讨博客价值与新时代变化,指出高效信息获取与时间成本的矛盾。面对成长焦虑,决定投入更多时间提升自己,以提供更高质量的技术内容。持续学习,不断突破,与读者共勉。
  • 07.07 10:14:16
    发表了文章 2024-07-07 10:14:16

    分享大厂对于缓存操作的封装

    作者shigen分享了关于Redis缓存的封装,以避免常见问题如穿透、击穿、雪崩。封装包括四个文件:CacheEnum、CacheLoader、CacheService和CacheServiceImpl。CacheEnum用于统一管理缓存名和过期时间,CacheService定义缓存操作接口,CacheServiceImpl是实现类,使用Semaphore解决缓存击穿问题。

2024年06月

  • 06.16 11:35:50
    发表了文章 2024-06-16 11:35:50

    mybatis-plus配置sql拦截器实现完整sql打印

    _shigen_ 博主分享了如何在MyBatis-Plus中打印完整SQL,包括更新和查询操作。默认日志打印的SQL用?代替参数,但通过自定义`SqlInterceptor`可以显示详细信息。代码示例展示了拦截器如何替换?以显示实际参数,并计算执行时间。配置中添加拦截器以启用此功能。文章提到了分页查询时的限制,以及对AI在编程辅助方面的思考。
  • 06.10 09:59:11
    发表了文章 2024-06-10 09:59:11

    通过 Python+Nacos实现微服务,细解微服务架构

    `shigen`是一名擅长多种编程语言的博主,致力于分享技术成长和认知。他尝试将Python服务构建为微服务架构,模仿Java领域的微服务设计。通过Nacos服务发现和注册,实现了Python Flask应用的微服务化,包括网关、用户中心、鉴权和文档服务。代码示例展示了服务注册、心跳维持、HTTP接口以及网关的代理和认证逻辑。此实现促进了服务安全调用,增强了对数据的保护。通过这种方式,`shigen`揭示了Python+Nacos实现微服务的细节,鼓励读者深入理解微服务工作原理。

2024年05月

  • 05.18 19:54:09
    发表了文章 2024-05-18 19:54:09

    互联网寒冬下,程序员做选择这件事

    `shigen`是一位专注于Java、Python、Vue和Shell的博主,分享成长经历和见解。在互联网寒冬中,他探讨程序员的选择:尽管行业面临挑战,如35岁危机和裁员,但仍优于许多行业。程序员应高效利用现有工具,不拘泥于现状,勇于拓宽圈子。技术栈选择无绝对好坏,关键在于系统设计和适应性。城市选择关注机遇,而副业需谨慎,不是所有人都能成功。`shigen`通过个人经历分享独特洞察,提倡积极面对行业波动。
  • 05.16 21:36:59
    发表了文章 2024-05-16 21:36:59

    vscode打造舒适的python开发环境

    _shigen_ 是一位专注于Java、Python、Vue和Shell等技术的博主,分享成长与认知。本文旨在记录配置Mac Python开发环境的过程,以优化使用体验和效率。内容包括:检查与验证Python版本,设置pip的阿里云镜像源以加速下载,以及VSCode的个性化配置,如选用美观的等宽字体和安装Python、isort(导入排序)及autopep8(代码格式化)插件。通过这些步骤,读者可复刻作者的高效开发环境。关注_shigen_ ,每天学习新知识!
  • 05.13 08:00:37
    发表了文章 2024-05-13 08:00:37

    数据缓存,可以尝试用RocksDB了

    `shigen`,一个专注于Java、Python、Vue和Shell的博主,探讨了为何在学习阿里云DRM产品时选择RocksDB而非Redis或Guava。RocksDB是一个高速、可配置的存储系统,适用于Flash和HDFS,支持数据压缩。与Redis相比,RocksDB在高速存储和灵活性上更具优势。在尝试使用RocksDB与SpringBoot集成时遇到问题,目前尚未解决。他还对比了RocksDB、Redis和Guava Cache的特性,强调RocksDB适合大规模、高性能场景,而Redis适合内存存储和实时性需求。
  • 05.12 20:27:58
    发表了文章 2024-05-12 20:27:58

    springboot实现文件防盗链设计

    `shigen`,一位专注于Java、Python、Vue和Shell的博主,分享成长和技术。近期将探讨SpringBoot实现图片防盗链,通过限制`Referer`防止资源被盗用。基础版通过`WebMvcConfigurer`配置静态资源,升级版添加拦截器检查`Referer`,确保请求来源合法性。详细代码实现和案例可在文中链接找到。一起学习,每天进步!
  • 04.24 10:24:33
    发表了文章 2024-04-24 10:24:33

    修改docker镜像版本,容器大小缩小10%!

    `shigen`,一位专注于Java、Python、Vue和Shell的博主,分享其通过修改Docker镜像版本实现容器瘦身的技巧。将服务从`1.0.0`更新至`1.0.1`,基于Alpine版Docker镜像,容器体积减小至原来的10%。文章展示了问题背景、选择轻量级镜像的原因及步骤,包括Docker镜像版本对比、构建和启动新容器的过程,并证实功能未受影响。`file-server`更新将发布在GitHub上,期待用户试用。一起学习,每天进步!
  • 04.16 20:19:10
    发表了文章 2024-04-16 20:19:10

    闲不住,手写了数据库生成工具

    `shigen`是一个擅长多种编程语言的博主,分享技术成长和认知。最近,他制作了一个数据库表结构导出工具,支持生成MD和DOCX文档。程序通过SQL(如`show tables`和`desc`)获取信息,展示包括字段注释在内的表详情。代码已分享,可用于学习交流。一起学习,每天进步!
  • 04.09 18:41:16
    发表了文章 2024-04-09 18:41:16

    分享Fork/Join经典案例

    `shigen`是位专注于Java、Python、Vue和Shell的博主,分享技术成长和认知。上篇文章探讨了Java的Fork/Join框架,它类似线程池,通过拆分大任务并并行执行提升效率。以大序列求和为例展示了ForkJoinPool的使用,与普通线程池对比,Fork/Join效率提升约50%。适合递归任务、独立子任务和长执行时间的任务。注意任务粒度、避免共享状态和死锁。推荐观看相关视频深入理解。一起学习,每天进步!
  • 04.08 18:03:10
    发表了文章 2024-04-08 18:03:10

    Java多线程+分治求和,太牛了

    `shigen`,一位擅长Java、Python、Vue和Shell的博主,分享编程知识和成长体验。在一次面试中因对高并发问题准备不足而受挫,随后深入学习,研究了线程池和经典案例——计算1亿数字的和。采用分治策略,`shigen`实现了Java版的归并排序,并对比了Python的简洁实现。通过多线程和分段求和优化,展示了如何高效解决大数求和问题,引入了分治思想的递归任务来进一步提升性能。未来将探讨`forkjoin`框架。关注`shigen`,每天学习新知识!
  • 04.07 10:00:58
    发表了文章 2024-04-07 10:00:58

    看不惯各种信息收集表,我手写了一个身份证号输入组件

    `shigen`是一位专注于Java、Python、Vue和Shell等技术的博主,分享知识和成长经历。为应对需频繁输入身份证号码的情况,`shigen`决定研究身份证校验机制。研究过程中,了解到身份证号码的生成规则,包括18位数字及校验码计算。通过编写JavaScript代码,实现了两个级别的身份证号码验证:一级仅检查基本格式,二级则加入校验码计算,确保符合生成规则。代码示例展示了逐步增强的验证功能,防止随意修改身份证号码。欢迎交流讨论,共同进步!
  • 04.06 18:23:35
    发表了文章 2024-04-06 18:23:35

    通过学习mayfly,我学会了前端如何优雅设计字典值

    `shigen`是一位擅长多种编程语言的博主,他在探索[mayfly-go](https://juejin.cn/post/7319365035552309248)项目后,发现了对枚举值管理的优雅设计。他分享了如何将字典和枚举值结构化,使用Vue+typescript实现更易维护的代码。通过创建`TagType`和`EnumValue`类,以及提供静态方法,实现了模块化和简洁的字典处理。示例展示了如何在页面中高效引用和显示字典数据,提高了代码的可读性和可维护性。
  • 04.02 16:55:37
    发表了文章 2024-04-02 16:55:37

    推荐一款命令行随机数据生成工具

    `shigen`是位多语言开发者,分享技术与感悟。在之前的帖子中介绍了如何用Python的Faker库生成模拟数据。其实,Faker也在conda环境中预装,可直接在命令行使用。通过`faker --help`查看选项,如`-l`选择本地化,`-r`指定重复次数。示例包括:生成地址、IPv4、用户代理,甚至批量生成JSON数据并保存到文件。探索Faker能提高数据生成的效率,欢迎交流。一起来学习,每天进步!
  • 03.31 10:53:21
    发表了文章 2024-03-31 10:53:21

    开源一款剪贴板跨设备共享工具

    `shigen`,编程博主,擅长多种语言,近期自制了一个名为`copyhub`的工具,用于局域网内跨设备同步剪贴板。设计灵感源于对现有共享工具的安全顾虑,采用`Flask`和`Redis`实现,前端直接HTML+JS,简化架构。用户通过取件码交换内容,不涉及复杂功能。代码已开源并在个人腾讯云服务器上部署。更多详情见shigen的GitHub和哔哩哔哩频道。一起探索,每天进步!
  • 03.28 15:50:38
    发表了文章 2024-03-28 15:50:38

    让人担心的软件生态

    `shigen`,一位专注于编程的博主,分享他对软件生态的观察。经历某信银行App更新的诡异事件,引发对软件安全和权限问题的讨论。回忆2014年首次接触智能手机时的隐私疑虑,及微信QQ读取相册的隐私争议。强调用户关注易用性和隐私,指出Android系统存在的安全隐患。提到HarmonyOS在流畅性与Android兼容性间的矛盾,个人偏好iOS的严格权限管理,但欧盟的新规可能改变这一局面。每个系统都有权衡,封闭可能保护隐私,开放则带来便利。
  • 03.28 13:27:48
    发表了文章 2024-03-28 13:27:48

    iPhone用GPT替代Siri

    `shigen`,一位编程博主,分享技术与感悟,近期遭遇iCloud显示问题,升级系统后发现新版Siri进步但不如`ChatGPT`。为获取纯净信息,他将`GPT`集成到iPhone的Siri中,通过快捷指令实现语音交互。两步操作:唤起Siri说“GPT”,然后提问,系统直接调用GPT接口朗读答案。实现方法参考`shigen`的往期Python教程。只需编辑iPhone快捷指令,即可打造个性化问答体验,例如命名为“小爱同学”。跟随`shigen`,每天探索新可能!
  • 03.22 00:08:44
    发表了文章 2024-03-22 00:08:44

    mybatis-flex入门体验(一)

    `shigen`,一个专注于Java、Python、Vue和Shell的博主,分享成长和认知。近期探索了`mybatis-flex`,通过官网学习了代码生成和编码体验。配置数据源和依赖后,利用示例代码生成了符合Lombok+MyBatis Plus规范的实体和Mapper。此外,展示了如何配置SQL打印,并用测试代码演示了查询、多条件查询和更新操作。`mybatis-flex`的亮点在于流畅的查询语法和连表查询功能。后续将分享更多关于连表查询的实践。一起学习,每天进步!
  • 03.14 23:20:54
    发表了文章 2024-03-14 23:20:54

    python flask服务如何注册到nacos

    一文讲清楚python flask服务如何注册到nacos
  • 03.11 22:36:52
    发表了文章 2024-03-11 22:36:52

    常见的限流算法-python版本

    常见的限流算法-python版本
  • 03.07 16:31:07
    发表了文章 2024-03-07 16:31:07

    spring boot使用异步多线程

    一文讲清楚spring boot如何结合异步多线程实现文件的导出这类耗时间的操作优化以及常用的场景,了解异步思想
  • 03.06 17:02:24
    发表了文章 2024-03-06 17:02:24

    如何优雅实现接口防刷

    一文讲清楚如何用redis实现接口防刷
  • 03.06 16:54:52
    发表了文章 2024-03-06 16:54:52

    设计模式——代理模式

    一文讲清楚设计模式中的代理模式

2024年03月

  • 发表了文章 2024-09-28

    借助spirng的IOC 能力消除条件判断

  • 发表了文章 2024-09-28

    巧用switch-case消除条件判断

  • 发表了文章 2024-09-28

    巧用枚举消除条件判断

  • 发表了文章 2024-09-22

    结合HashMap与Java 8的Function和Optional消除ifelse判断

  • 发表了文章 2024-09-01

    盘点java8 stream中隐藏的函数式接口

  • 发表了文章 2024-07-21

    当程序员的博客突然变少了

  • 发表了文章 2024-07-07

    分享大厂对于缓存操作的封装

  • 发表了文章 2024-06-16

    mybatis-plus配置sql拦截器实现完整sql打印

  • 发表了文章 2024-06-10

    通过 Python+Nacos实现微服务,细解微服务架构

  • 发表了文章 2024-05-18

    互联网寒冬下,程序员做选择这件事

  • 发表了文章 2024-05-16

    vscode打造舒适的python开发环境

  • 发表了文章 2024-05-15

    数据缓存,可以尝试用RocksDB了

  • 发表了文章 2024-05-15

    修改docker镜像版本,容器大小缩小10%!

  • 发表了文章 2024-05-15

    闲不住,手写了数据库生成工具

  • 发表了文章 2024-05-15

    Java多线程+分治求和,太牛了

  • 发表了文章 2024-05-15

    分享Fork/Join经典案例

  • 发表了文章 2024-05-15

    看不惯各种信息收集表,我手写了一个身份证号输入组件

  • 发表了文章 2024-05-15

    推荐一款命令行随机数据生成工具

  • 发表了文章 2024-05-15

    通过学习mayfly,我学会了前端如何优雅设计字典值

  • 发表了文章 2024-05-15

    iPhone用GPT替代Siri

正在加载, 请稍后...
滑动查看更多
  • 回答了问题 2024-03-14

    人工智能大模型如何引领智能时代的革命?

    人工智能带领了人类的第四次工业革命,深刻的影响了人类社会的发展和人类的进步。 基于大模型,具有更智能的水平 复杂且重复性的工作,大模型可以智能、快速、准确完成,减轻人类的工作量 应用场景的细分深入 每个领域,一旦需要人参与的工作,其实AI都能胜任,只是时间的问题。在AI大模型的加持下,都可以很好的提升运作效率 更好的驱动决策 大模型可以学习法律条文、金融交易数据,提升帮助人类决策的准确性 促进硬件的发展 在近20多年的编程语言的新特性是完全依照硬件的升级换代进行升级、优化的。但是在AI时代的加持下,日益增长的大模型需要,急切的需要更高质量的芯片、算力,刺激硬件发展 人类的分工更加的细化 AI的诞生只是为了减少人类的工作量,并不是替代人类。就像电脑的诞生,office的诞生。需要人的岗位并没有减少,而是职责的划分更加的精细化
    踩0 评论0
正在加载, 请稍后...
滑动查看更多
正在加载, 请稍后...
暂无更多信息