自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

专注于技术分享

人个目前就职于一家外企业500强公司担任架构师一职,在这里我会着重分享我多年来在Java开发领域的实战经验和心得体会。从企业级项目架构设计、高并发处理到微服务架构的落地实施。

  • 博客(652)
  • 资源 (10)
  • 收藏
  • 关注

原创 HPA 策略优化

HPA(Horizontal Pod Autoscaler,水平 Pod 自动伸缩)是 Kubernetes 中用于根据观察到的 CPU 利用率或其他自定义指标自动调整 Pod 副本数量的机制。优化 HPA 策略对于确保应用程序的性能、可用性和资源利用率至关重要。优化 HPA 策略需要根据应用程序的特点、负载模式和性能目标进行调整。通过合理的 HPA 策略优化,可以提高应用程序的性能、可用性和资源利用率,降低成本。(选择影响最小的策略), 或者是。(选择影响最大的策略) 或。选择策略的方式,可以是。

2025-07-23 11:22:29 560

原创 WAF(Web Application Firewall,Web 应用防火墙)的作用

WAF(Web Application Firewall,Web 应用防火墙)是一种部署在 Web 服务器或 Web 应用程序之前的安全设备或软件,用于保护 Web 应用程序免受各种网络攻击。WAF 是保护 Web 应用程序免受各种网络攻击的重要安全措施。它可以防御 SQL 注入、XSS、CSRF、DoS/DDoS 等多种攻击,并提供流量过滤、监控、负载均衡、虚拟补丁等功能。

2025-07-23 11:20:03 496

原创 Spring 如何处理不同的事务传播行为和隔离级别?

Spring 通过 AOP 代理拦截事务性方法调用,利用作为策略接口来执行具体的事务操作,并借助在线程级别上管理事务状态和资源。这种设计将复杂的事务控制逻辑与业务代码解耦,使得开发者可以通过简单的注解来灵活地控制事务的传播行为和隔离级别,从而构建出稳定、可靠的应用程序。

2025-07-23 11:17:49 458

原创 Spring 事务传播行为和隔离级别是如何实现的?

Spring 事务传播行为和隔离级别的实现是一个精巧的、分层明确的设计。AOP 代理作为入口: 通过动态代理拦截方法调用,为事务管理提供了切入点。PlatformTransactionManager 作为策略核心: 定义了统一的事务操作接口,并针对不同持久化技术提供了具体的实现,解耦了业务代码与底层的事务细节。TransactionSynchronizationManager 作为线程协调员: 利用确保了事务状态和资源在单个线程中的正确传递和管理,是实现事务传播的关键。

2025-07-23 11:14:42 420

原创 面试官:python 封装、继承、多态 这三大特性分别解决了什么问题?

特性核心思想解决的问题就像…封装隐藏细节,提供接口保护数据,降低复杂性汽车的仪表盘继承代码复用,建立层次消除重复,构建逻辑子女继承父母的基因多态统一接口,不同实现提高灵活性,方便扩展一个USB接口可以插U盘、键盘、鼠标。

2025-07-23 11:12:09 665

原创 Spring Boot 中集成ShardingSphere-JDBC的基本使用

在 Spring Boot 中集成 ShardingSphere-JDBC,可以透明地将数据分片、读写分离等功能引入到应用中,而无需大规模修改业务代码。以下是在 Spring Boot 中使用 ShardingSphere 的基本步骤和核心概念。

2025-07-22 17:46:52 477

原创 我们能否承担微服务带来的复杂性和运维成本?

坦率地说,并非所有团队都应该,承担微服务带来的复杂性和运维成本。在做出决定前,我们必须进行自我评估。这是一个需要高层支持和全团队共同努力的重大决策。

2025-07-22 17:30:35 480

原创 应该为所有微服务提供一个共享的 Redis 集群,还是每个(或每组)微服务部署独立的 Redis 实例/集群?

因为它更符合微服务的核心理念(松耦合、独立部署、故障隔离)。只有在成本或管理复杂度成为绝对制约因素,且能接受共享带来的风险时,才考虑共享集群,并必须实施严格的监控、治理和 Key的 命名规范。优势(性能、数据、故障域)对于保证微服务架构的韧性和可维护性至关重要,可以有效避免“一点故障,全局瘫痪”的风险。这是一个经典的架构决策问题,没有绝对的“正确”答案,选择哪种方式取决于多种因素的权衡。

2025-07-22 17:23:24 660

原创 python 类(Class) 和 实例(Instance/Object) 到底是什么关系?

类 (Class)是一个静态的定义。它是代码层面的逻辑组织,是创建对象的模板,本身不执行具体操作,也不存储具体数据。实例 (Instance)是一个动态的实体。它是类在程序运行过程中的具体化身,存在于内存中,拥有自己独立的数据(属性状态),并且可以执行类所定义的行为(方法)。简单来说,类是菜谱,实例是根据这个菜谱做出的一道道具体的菜。菜谱只有一份,但你可以用它做出无数道味道可能略有不同的菜。

2025-07-22 14:01:07 505

原创 python 中什么是作用域(Scope)?为什么函数内部的变量在外部无法访问?

核心概念作用域 (Scope)定义一个变量的可见性和生命周期所在的区域。主要目的1. 避免命名冲突。2. 高效管理内存。3. 增强代码的封装性和可预测性。基本规则函数内部定义的变量(局部变量)在函数外部不可见,因为函数执行完毕后它们就被销毁了。查找顺序Python 遵循LEGB规则来查找变量。

2025-07-22 11:45:28 483

原创 面试官:python 中参数(Argument) 和 返回值(Return Value) 是如何传递数据的?

参数传递 (数据输入):通过赋值传递实现。函数内部会创建一个新变量名(标签),指向外部变量名所指向的同一个对象。如果对象是不可变的(如数字、字符串),在函数内对其重新赋值,只会让内部变量指向一个新对象,不影响外部。如果对象是可变的(如列表、字典),在函数内通过方法修改对象内容,这个修改会反映到外部。返回值传递 (数据输出):通过 return关键字实现。它将一个值或对象的引用从函数内部“弹出”到外部,外部代码可以用一个变量来“接住”这个结果。如果函数没有return,则默认返回None。

2025-07-22 11:40:29 578

原创 python 为什么要使用函数?它解决了什么问题?

模块化 (Modularity):将复杂的程序分解成一个个独立的、功能单一的小模块(函数),使程序结构更清晰,更容易管理。抽象 (Abstraction):隐藏实现细节,调用者只需关心函数的输入和输出,无需了解其内部的复杂逻辑。简化调试 (Easier Debugging):如果程序出错,你可以逐个测试函数,快速定位到有问题的模块,而不是在成百上千行混乱的代码中寻找错误。代码复用 (Code Reusability):定义好的函数可以在同一个程序的不同地方被调用,甚至可以被导出到其他程序中使用。

2025-07-21 15:28:24 841

原创 python break, continue, pass 分别在什么情况下使用?pass 的意义是什么?

当循环的某个目标已经达成,无需再继续执行剩下的迭代时。时,什么也不会发生。它的存在是为了在语法上需要一个语句,但逻辑上你又不需要执行任何代码的场合。是三个用于控制程序流程的关键字,它们各自有明确且不同的用途,尤其是在循环和定义代码结构时。在规划程序结构时,你可能已经想好了要定义哪些函数或类,但暂时不想实现它们的具体功能。当你希望在某些特定条件下,忽略当前迭代的某些处理逻辑,但仍需继续执行循环时。结构中,某个分支下你不需要做任何事,但语法上又必须有代码块。,循环将立即停止,程序会继续执行循环后面的代码。

2025-07-21 15:24:14 470

原创 python 中if/elif/else 是如何构建程序逻辑的?

它允许我们的代码根据不同的条件执行不同的操作,就像在十字路口选择不同的道路一样。大于或等于 18,会打印欢迎信息。它让程序能够根据不同的输入或状态,动态地选择执行路径,从而实现复杂的、智能的行为。这是最简单的形式,用于“如果满足某个条件,就做某事,否则什么都不做”。是 “else if” 的缩写,允许你添加任意多个额外的条件检查。游乐园门票系统,既要考虑是否是周末,也要考虑年龄。,即“如果满足条件,做一件事;否则,做另一件事”。,你可以构建出从简单到复杂的各种程序逻辑。结构,以处理更复杂的逻辑层次。

2025-07-21 15:20:51 411

原创 python 中for 循环和 while 循环的根本区别是什么?各自的应用场景是什么?

循环是两种核心的循环结构,它们在重复执行代码块方面发挥着至关重要的作用。尽管两者都能实现循环,但其根本区别在于循环的控制方式,这也决定了它们各自的应用场景。循环在某些情况下可以相互转换,但遵循上述原则来选择合适的循环结构将使您的代码更具可读性、更高效和更符合 Python 的编程习惯。了解了它们的根本区别后,我们就可以根据具体需求来选择合适的循环类型。当您不知道循环需要执行多少次,但知道循环应该在满足某个条件时停止时,循环中,您需要自己初始化和更新循环控制变量。函数,可以轻松实现指定次数的循环。

2025-07-21 13:36:53 412

原创 Spring Boot 项目中 JSONException: Unterminated string at 3297 [character 3298 line 1] 分析?

除了上述原因,JSON数据中可能还存在其他不符合规范的地方,例如多余的逗号、错误的括号匹配等,这些也可能间接导致解析器在某个位置报出“未结束的字符串”错误。这个错误明确地指向了JSON数据中的一个字符串没有被正确地关闭。您需要根据错误提示的位置,检查并修复JSON字符串的语法问题。这通常意味着您正在尝试解析的JSON字符串存在语法错误,导致解析器无法正确识别字符串的结束。可能是在构建JSON字符串时,某个字符串类型的值忘记了末尾的双引号。您可能只收到了部分JSON数据,导致最后一个字符串没有正常结束。

2025-07-21 09:54:52 403

原创 面试官:我需要在 Bean 的所有依赖都注入完成后,执行一些初始化逻辑(比如加载缓存),该怎么做?

方法优点缺点推荐场景标准规范、简单直观、与框架解耦需要 JSR-250 API 依赖(通常 Spring Boot 已包含)绝大多数情况下的首选无需额外注解代码侵入性强,与 Spring 框架耦合老旧项目维护,或有特殊需求时完全无侵入,配置集中方法名是字符串,无编译时检查使用 Java 配置()创建第三方库的 Bean 或需要保持 POJO 纯净时对于 Spring Boot 应用开发,强烈推荐使用,因为它兼具了优雅、简洁和标准化。

2025-07-20 12:08:30 317

原创 面试官:如何只在 dev 环境加载一个 Bean,而在 prod 环境加载另一个?

在 Spring Boot 中,根据不同的环境(如devprodtest)加载不同的 Bean 是一个非常常见的需求。实现这一目标的最佳方式是使用。通过@Profile注解,您可以将一个 Bean 的创建与一个或多个特定的 Profile 关联起来。只有当指定的 Profile 处于激活状态时,Spring 容器才会创建该 Bean。下面是如何实现“只在dev环境加载一个 Bean,而在prod环境加载另一个”的具体步骤。

2025-07-20 10:20:15 298

原创 如何实现“只有在项目中存在某个特定的类时,才创建某个 Bean”?

在 Spring Boot 中,可以使用注解来实现“只有在项目中存在某个特定的类时,才创建某个 Bean”的需求。这在处理可选依赖(optional dependencies)时尤其有用,可以让配置根据类路径(classpath)中存在的库动态地调整。的核心作用是,它会在加载配置前检查指定的类是否存在于类路径上。如果类存在,那么该配置(或 Bean)就会被加载;如果不存在,Spring Boot 会安静地跳过它,不会引发任何错误。

2025-07-19 13:19:17 237

原创 如何实现“只有在配置文件中 notification.sms.enabled=true 时,才创建 SmsService 这个 Bean”?

在 Spring Boot 框架中,我们可以利用 注解来实现根据配置文件中的属性值来决定是否创建某个 Bean。这是一种实现特性开关(Feature Toggle)的常用且优雅的方式。要实现“只有在 时才创建 这个 Bean”,我们可以按照以下步骤操作:在 或 中定义属性。在您的配置文件中,添加相应的属性: 示例:或者,如果您使用的是 YAML 格式: 示例:当此属性为 时, 将被创建。如果将其设置为 或直接注释掉该行,则 Spring 容器在启动时不会创建这个 Bean。在 类或其

2025-07-19 09:59:56 298

原创 @Primary 是做什么的?

Primary是一个强大而优雅的工具,用于解决依赖注入中的歧义性问题。它通过在 Bean 定义端设立一个“默认选项”,使得注入端的代码可以保持干净和通用,是实现“约定优于配置”思想的一个绝佳体现。

2025-07-18 17:49:20 486

原创 @Qualifier(“beanName“) 详解

特性@Primary角色设置全局默认值进行局部精确指定决定权Bean 的提供方Bean 的消费方优先级较低较高使用时机当多个实现中有一个是绝大多数情况下的选择时。当需要灵活地在多个实现之间切换,或者需要覆盖@Primary的默认行为时。@Primary和@Qualifier是 Spring IoC 中一对相辅相成的利器,共同解决了依赖注入中的歧义性问题,使得代码既能保持简洁(依赖于默认),又能拥有足够的灵活性(按需指定)。

2025-07-18 16:37:46 579

原创 @Primary 是做什么的?

特性@Primary@Qualifier决定权提供方(Bean 的定义者)消费方(Bean 的使用者)作用范围全局默认。影响所有未明确指定的注入点。局部精确。只影响当前这一个注入点。比喻餐厅菜单上的“本店推荐”菜品点菜时对服务员说“我要那道水煮鱼使用场景当一个接口有多个实现,但其中一个实现是最常用、最标准的。当一个接口有多个实现,消费方需要根据不同的业务场景,灵活选择不同的实现。优先级较低。如果同时使用,@Qualifier的指定会覆盖@Primary的默认。较高。@Primary。

2025-07-18 16:29:34 563

原创 @Configuration 和 @Component 有什么区别?为什么有些配置类要用 @Configuration?

Component用途首选,用于定义Bean的配置类,特别是当Bean之间有依赖关系时。用于普通的业务组件。不推荐在其中定义有相互依赖的@Bean方法。行为通过CGLIB代理,保证@Bean方法调用返回容器中的单例Bean。普通Java方法调用,每次都创建新对象,绕过容器管理。何时使用只要你的配置类里有@Bean方法,特别是它们之间有调用关系,就必须使用。当你的类只是一个简单的业务组件(如Service),或者你的配置类里的@Bean方法完全独立,没有相互调用时(但依然不推荐)。

2025-07-17 18:24:34 989

原创 @Component, @Service, @Repository, @Controller 有什么本质区别吗?为什么需要这么多不同的注解?

通用/任何层 | 一个通用的 Spring 管理组件 | 无 || 表现层 (Web Layer) | 一个目标。// 这个切点会匹配所有被 @Service 注解的类中的所有公共方法@Point处理 Web 请求的控制器 | 无(但与 Spring MVC 深度集成)|@Around("service | 业务逻辑层 (Service Layer) | 一个处理业务逻辑的服务 | 无(但常作为 AOP 事务Layer()")// ... 在方法切面的目标)|

2025-07-17 14:14:05 1625

原创 @Autowired 关键字做了什么?它和“依赖注入”是什么关系?

概念角色描述依赖注入 (DI)设计模式/原则一种思想:组件的依赖由外部容器来提供,以实现解耦。@Autowired注解/指令Spring 框架中实现 DI 的一种工具,它告诉容器“请在这里注入一个 Bean”。@Autowired是你向 Spring 发出的一个请求,而 Spring 响应这个请求并为你完成依赖的传递,这个过程就是依赖注入。

2025-07-17 14:04:24 667

原创 我们通常写的 Bean 都被放在哪里管理?

把整个流程用一个图书馆的比喻开馆准备 (Spring 启动)图书馆管理员(BeanFactory)整理了一份完整的图书目录目录上写着每本书(Bean)的详细信息(读者借书 (第一次调用getBean一个读者想借《Java 编程思想》这本书(管理员首先查看“热门借阅/参考书架”(一级缓存),看上面有没有这本书。没有。管理员于是去查图书目录),找到了这本书的详细信息。他根据信息去书库(JVM 堆)里把这本书的原版)找了出来,并盖上“图书馆藏”的印章(初始化、注入依赖等。

2025-07-17 13:57:50 818

原创 Word 中为什么我的图片一拖就乱跑,怎么精确定位?

完成这一步后,您会发现图片已经可以被自由拖动到页面的大概位置了,不会再引起文字的大规模“溃败”。但要实现“精确定位”,还需要更进一步。完成以上步骤后,您的图片就已经被精确地“钉”在了页面的指定位置,无论您如何拖动或编辑文档的其他部分,它都不会再“乱跑”了。要精确定位,首先要改变它的环绕方式,让它从文字流中“解放”出来。问题的根源在于图片的**“文字环绕”**设置。这是实现像素级精准控制的终极方法。

2025-07-17 11:52:05 536

原创 我想让文章像报纸一样分成两栏或三栏,怎么做?

通常情况下,我们可能只需要将文档的某一部分(例如正文)进行分栏,而标题等部分仍然保持通栏。如果您想更精确地控制分栏效果,比如调整栏的宽度或添加分隔线,可以使用高级选项。在Word中将文章设置为像报纸或杂志那样的多栏布局非常简单,有如下几种方法。这样,只有您选中的那部分文字会变成多栏格式,文档的其余部分则保持不变。点击后,您的整个文档就会立刻按照所选的栏数进行重新排版。如果您希望整篇文档都采用多栏布局,这是最快捷的方式。

2025-07-17 11:46:38 304

原创 如何让每一页下面都有页码,页码能自动变吗?

在许多正式文档中(如报告、论文),封面和目录是不需要显示页码的,正文需要从第1页开始。这需要用到Word的“分节”功能。通过这些步骤,您就可以灵活地控制文档的页码,使其完全符合您的排版要求,并且所有页码都能随着内容的增删自动准确更新。在Word中为每一页的底部添加能自动更新的页码非常简单。这是最直接的方法,适用于整个文档采用统一页码格式的情况。

2025-07-16 17:56:06 327

原创 如何自动生成一个漂亮的目录,而且页码能自动更新?

如果您不喜欢“标题样式”的默认外观(如字体、颜色),可以直接在样式上右键选择“修改”,进行个性化设置。通过以上步骤,您不仅能创建一个能自动更新的实用目录,还能让它的外观与您的文档风格完美匹配,大大提升文档的专业性和可读性。Word自动生成的目录虽然方便,但可能不完全符合您的审美或格式要求。当您修改了文档内容,比如增删了章节或导致页码变化时,更新目录非常简单。完成以上两步,一个包含标题和对应页码的目录就自动生成了。通过这种方式修改的格式,在您下次更新目录时不会丢失。您也可以直接选中目录,然后按键盘上的。

2025-07-16 17:52:38 239

原创 在Word文章里插入一张图片,怎么让文字绕着图片走?

如果您不希望在增删文字时图片位置发生变动,可以选择图片,然后通过“图片格式”或“格式”菜单中的“环绕文字”,选择“在页面上固定位置”。这样,无论文本如何编辑,图片都会保持在页面上的固定地方。对于不规则形状的图片,如果您希望文字环绕得更具个性化,可以选择“紧密型”环绕后,再使用“编辑环绕顶点”功能。这允许您手动调整文字环绕的边界,实现更精细的图文混排效果。在Word中让文字环绕图片,我们可以轻松通过以下几种方式实现。

2025-07-16 17:48:02 170

原创 Starter 提供的 RestTemplate 或 DataSource 也是 Bean 吗?

Bean 类型如何成为 Bean?谁负责创建和配置?你的角色你的@Service类通过@Component注解 + 组件扫描Spring 容器(实例化)声明它是候选人DataSource通过@Bean方法(在自动配置类中)Spring Boot 自动配置提供pom.xml和通过@Bean方法(在你自己的配置类中)你(借助 Spring Boot 提供的定义@Bean方法,完成最终创建所以,Starter 的真正魔力在于:它不仅能通过自动配置直接提供“成品”Bean(如DataSource。

2025-07-16 15:30:25 1015

原创 我写的 @Service 类就是一个 Bean 吗?

所以,对“我写的@Service类就是一个 Bean 吗?是的,只要你的@Service类位于主启动类所在的包或其子包下,它就会被 Spring Boot 的默认组件扫描机制发现,并自动实例化和注册为一个由 IoC 容器管理的 Bean。

2025-07-16 15:22:11 800

原创 Spring Boot 项目中数据同步之binlog和MQ

如果写数据库成功了,但应用在发送 MQ 前宕机了,消息就会丢失。反之,如果消息发送成功了,但数据库事务回滚了,就会产生一个“虚假”的事件。任何对数据库的修改都能被捕获,无论是来自你的 Spring Boot 应用、另一个微服务、数据订正脚本,还是DBA的直接操作。对于一个已经存在的庞大系统,想增加数据同步功能,使用 Canal 是一个绝佳选择,因为它不需要去修改成百上千个已经在线上运行的业务代码。如果你想通知另一个服务“去执行某个动作”,binlog 模式就不合适了,因为它传递的是“状态”而不是“意图”。

2025-07-16 15:17:01 688

原创 Spring Ioc Bean 到底是什么

Spring Bean 不是一个神秘的东西,它就是一个被 Spring IoC 容器接管了“生老病死”和“社会关系”的普通 Java 对象。这种“接管”带来了巨大的架构优势,使得我们的代码更加灵活、可维护,并能轻松获得事务、安全等强大的企业级服务。

2025-07-15 21:19:17 891

原创 Starter 的魔力: 为什么我只是在 pom.xml 中加入了 spring-boot-starter-web,就能直接注入 TomcatWebServer 等复杂的对象?

你做的(You Do)Spring Boot 做的(Spring Boot Does)1. 在pom.xml中添加。1.传递性依赖:下载等一系列 JAR 包到 classpath。2. 运行带有的主类。2.启用自动配置开始工作。3.加载配置清单:读取文件,得到一个候选配置列表。4.条件化判断:逐一检查候选配置。发现 classpath 上有 Tomcat 的类,且用户没有自定义服务器工厂,于是中的条件成立。5.创建和注册 Bean:执行@Bean方法,创建。

2025-07-15 18:40:03 656

原创 为什么我只要在类上写一个 @Service 或 @Component,它就能被 Spring 管理,Spring Boot 是如何找到这些类的?

Spring Boot 启动时:启动-> 看到主启动类上的。发现-> 从中发现内置的。确定扫描路径-> 将主启动类所在的包作为根路径。执行扫描-> 在这个路径及其子路径下,寻找所有被@Component(及其衍生注解@Service等) 标注的类。实例化和注册-> 将找到的类通过反射创建成实例(Bean),并放入 IoC 容器中。依赖注入-> 在创建 Bean 的过程中,如果发现@Autowired注解,就从容器中找到匹配的 Bean 并注入进去,完成对象之间的“自动装配”。

2025-07-14 12:41:35 1067

原创 python 字典(Dictionary) vs. 集合(Set):它们是如何做到快速查找的?为什么字典的键(key)必须是不可变的?

偶尔,两个不同的键可能会计算出相同的桶索引,这被称为“哈希冲突”。Python 有高效的机制来解决这个问题(通常是在同一个桶里用一个类似链表的结构来存储冲突的元素),所以即使发生冲突,性能也依然非常高。如果要找一个单词,你只能从第一页翻到最后一页,这就是列表的查找方式,效率很低(时间复杂度为 O(n))。来访问元素,而字典和集合能够实现闪电般快速查找的秘密武器,就是它们的底层数据结构——哈希表的整个体系都建立在一个基本前提上:一个对象的哈希值在它的生命周期内必须是。答案直接与哈希表的工作原理挂钩。

2025-07-13 20:41:03 882

原创 python 列表(List) vs. 元组(Tuple):什么时候该用不可变的元组?它们在性能和用途上有什么区别?

特性列表 (List)元组 (Tuple)可变性可变 (Mutable)不可变 (Immutable)语法[1, 2, 3](1, 2, 3)性能相对较慢,内存占用稍大速度稍快,内存更紧凑用途动态的、会发生变化的元素集合固定的、不会改变的数据结构作为字典键不行(不可哈希)可以(可哈希)常见场景待办事项列表、用户列表、数据缓冲区坐标点、RGB值、数据库记录、函数返回值核心选择原则:如果你需要一个会变化的集合,请使用列表。如果你的数据是固定的,或者需要把它用作字典的键,请使用元组。

2025-07-13 20:36:41 945

消息中间件常见面试题汇总

消息中间件常见面试题汇总

2025-03-12

RocketMQ 的安装与源码调试指南

RocketMQ 的安装与源码调试指南

2025-03-12

RocketMQ5安装与集群搭建

RocketMQ5安装与集群搭建

2025-03-12

年终述职模版合集(简约风格)

年终述职模版合集

2025-01-14

毕业论文标准模版使用技巧

毕业论文标准模版

2025-01-14

gradle 8.11版本

gradle 8.11版本

2025-01-13

mongo windows 命令行工具

mongo windows 命令行工具

2025-01-13

DMS windows版本

DMS windows版本

2025-01-07

nacos-server:2.2.3源码

nacos-server:2.2.3源码

2025-01-07

Word排版技巧

对 Word 进行页面调整,通常大家采用的方法是选择“文件→页面设置”,其实还有别的方法

2013-01-17

android 开发中用json解析客户端与服务器端的代码

游戏开发中客户端与服务器端数据的传输, URL url = new URL(path); //创建一个Url对象 //得到打开的链接对象 HttpURLConnection conn = (HttpURLConnection)url.openConnection(); //设置请求超时与请求方式 conn.setReadTimeout(5*1000); conn.setRequestMethod("GET"); //从链接中获取一个输入流对象 InputStream inStream = conn.getInputStream(); //调用数据流处理方法 byte[] data = StreamTool.readInputStream(inStream); String json = new String(data); //构建Json数组对象 JSONArray array = new JSONArray(json); //从Json数组对象读取数据

2011-09-26

android 中 ViewPager 与scrollView 冲突的解决

获取ViewPager 与 ScrollView 冲突事件的解决

2014-04-18

jackson-all-1.8.1.jar 包的下载

可以方便的把java 对象转换成json格式的数据

2013-11-25

andorid 开发USB 延长线与结点通信PC驱动

android 开发中,USB延长线连接开发板与PC之间的驱动

2013-01-17

androidasync-1.2.4.jar

使用androidasync-1.2.4.jar 包可方便的解析一些服务器端的数据格式

2014-02-17

fastjson-1.1.33.jar 下载

利用fastjson-1.1.33.jar 解析 json 数据

2014-01-11

android .9png 去黑边工具

android .9png 去黑边工具 xUltimate-d9pc-x86

2013-11-29

android switch 组件 4.0 以下的使用

android switch 组件 4.0 以下的使用

2014-01-11

三星pad(p6200)驱动

开发时一直找不到驱动,现在给大家分享一下,三星pad(p6200)驱动

2013-01-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除