-
- ThreadLocal 是什么?有哪些使用场景?
- ThreadLocal通过为每个线程提供独立的变量副本实现线程隔离,其内部通过ThreadLocalMap以线程为键存储数据,确保线程间不共享变量,避免竞争。每个线程通过自身的threadLocals字段操作数据,实现数据隔离。典型应用场景包括数据库连接管理、Session管理、事务上下文维护、请求上下文信息存储及解决SimpleDateFormat等非线程安全类的并发问题。为避免内存泄漏,因ThreadLocalMap的键为弱引用,值在无强引用后仍可能残留,需在使用后显式调用remove()方
- Java面试题 . Java 128 2025-10-20 09:18:02
-
- 什么是 ORM 框架?
- ORM框架通过对象关系映射将数据库表转为编程语言中的类,行转为对象,字段转为属性,使开发者能用面向对象的方式操作数据库,如user.save()替代SQL语句,提升开发效率、降低SQL注入风险,并缓解对象与关系模型间的阻抗失配问题。
- Java面试题 . Java 928 2025-10-20 08:33:01
-
- 说一下 mysql 常用的引擎?
- InnoDB是MySQL最常用引擎,因支持事务、行级锁、崩溃恢复和外键,适用于高并发、数据一致性要求高的场景;MyISAM仅适用于读密集、低并发、无事务需求的简单应用,整体趋势以InnoDB为主。
- Java面试题 . Java 905 2025-10-19 08:56:01
-
- java 中ArrayList 和 LinkedList 的区别是什么?
- ArrayList基于动态数组,内存连续,支持O(1)随机访问,但插入删除需移动元素,最坏O(n);LinkedList基于双向链表,内存非连续,访问O(n),插入删除O(1),但内存开销大;频繁查询选ArrayList,频繁增删选LinkedList。
- Java面试题 . Java 847 2025-10-19 08:02:02
-
- mysql 问题排查都有哪些手段?
- 排查MySQL问题需从日志、状态、慢查询、锁和系统资源入手:先查错误日志定位异常,分析慢查询日志结合EXPLAIN优化SQL,通过SHOWSTATUS和sysschema监控关键指标,用SHOWENGINEINNODBSTATUS排查死锁,检查连接池配置与应用连接管理,避免连接耗尽,综合系统工具判断资源瓶颈。
- Java面试题 . Java 580 2025-10-18 09:10:02
-
- notify()和 notifyAII()有什么区别?
- notify()唤醒一个等待线程,适用于只需通知单个线程的场景;notifyAll()唤醒所有等待线程,确保所有线程有机会检查条件,适用于多线程依赖同一条件变化的场景。
- Java面试题 . Java 433 2025-10-18 08:32:02
-
- spring 支持几种 bean 的作用域?
- SpringBean的作用域包括singleton、prototype、request、session、application和websocket。其中singleton为默认作用域,容器中仅存在一个实例,适用于无状态的Bean;prototype每次请求都会创建新实例,适用于有状态的Bean,其销毁由客户端负责;request、session、application分别对应HTTP请求、会话和应用生命周期,仅在Web环境中有效;websocket作用域对应WebSocket会话。可通过XML的
- Java面试题 . Java 530 2025-10-17 10:33:02
-
- 创建线程池有哪几种方式?
- 手动创建线程池通过ThreadPoolExecutor配置核心参数,如corePoolSize、maximumPoolSize、workQueue等,实现灵活控制;而Executors工具类提供newFixedThreadPool、newCachedThreadPool等快捷方式,但可能因使用无界队列或无限线程数导致OOM。推荐手动创建以避免资源耗尽风险,并根据CPU核心数、任务类型(CPU或IO密集型)合理设置线程池大小,结合压力测试调整参数。关闭线程池时应先调用shutdown(),再通过a
- Java面试题 . Java 687 2025-10-17 08:54:01
-
- java 中创建线程有哪几种方式?
- 继承Thread类可直接定义线程任务,但受限于单继承;2.实现Runnable接口更灵活,支持多线程共享任务;3.Callable结合FutureTask能获取返回值和异常,适用于需结果的场景。
- Java面试题 . Java 494 2025-10-16 09:41:01
-
- 说一下乐观锁和悲观锁?
- 乐观锁适用于读多写少、冲突较少的场景,如社交网络帖子浏览,通过版本号或时间戳在提交时检查冲突,避免频繁加锁,提升并发性能。
- Java面试题 . Java 643 2025-10-16 09:30:01
-
- java 中都有哪些引用类型?
- Java的四种引用类型按强度递减依次为:强引用、软引用、弱引用和虚引用。强引用确保对象不被回收;软引用在内存不足时回收,适合缓存;弱引用在GC时随时回收,用于避免内存泄漏;虚引用无法获取对象,仅与ReferenceQueue配合使用,用于对象回收前的资源清理,如释放直接内存。
- Java面试题 . Java 335 2025-10-15 11:06:02
-
- java 中守护线程是什么?
- 守护线程是为其他线程服务的后台线程,当所有用户线程结束后,JVM会自动退出,无需等待守护线程完成。默认新线程为用户线程,可通过setDaemon(true)在线程启动前设置为守护线程,常用于垃圾回收、监控等无需干预的任务,确保程序正常关闭。
- Java面试题 . Java 421 2025-10-15 09:12:02
-
- 说一下jvm 的主要组成部分?及其作用?
- JVM由类加载器、运行时数据区、执行引擎和本地库接口组成,理解其结构有助于诊断内存溢出、性能瓶颈等问题,提升Java程序的稳定性与效率。
- Java面试题 . Java 158 2025-10-14 08:34:01
-
- http 响应码301 和302代表的是什么?有什么区别?
- 301为永久重定向,用于网站迁移等长期变更,可传递SEO权重并被浏览器缓存;302为临时重定向,适用于维护或测试场景,不传递权重且每次需请求服务器;错误使用会影响SEO和用户体验;307和308分别对应302和301,但严格保持请求方法不变。
- Java面试题 . Java 851 2025-10-13 08:12:01
-
- 什么是spring cloud?
- SpringCloud是基于SpringBoot的微服务工具集,提供服务发现、配置管理、熔断、网关等组件,简化分布式系统开发。
- Java面试题 . Java 584 2025-10-12 08:04:01

PHP讨论组
组员:3305人话题:1500
PHP一种被广泛应用的开放源代码的多用途脚本语言,和其他技术相比,php本身开源免费; 可以将程序嵌入于HTML中去执行, 执行效率比完全生成htmL标记的CGI要高许多,它运行在服务器端,消耗的系统资源相当少,具有跨平台强、效率高的特性,而且php支持几乎所有流行的数据库以及操作系统,最重要的是