自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(1131)
  • 资源 (11)
  • 收藏
  • 关注

原创 一次无脑的 `SELECT *` 报表导出,是如何引发线上 JVM 疯狂 STW 的?

月底财务结算日,下午 15:00。:后台管理与报表微服务。前端群里炸锅了:“报表系统怎么一抽一抽的?点个查询,平时 50 毫秒,现在要转圈 8 秒钟才出来!这是极其典型的症状!整个世界被强行暂停了。

2026-04-27 07:41:35 379

原创 Spring 事务的致命陷阱:一个缓慢的 HTTP 请求,是如何耗尽数据库连接池的?

周五晚 18:30,打车/外卖/电商晚高峰。:核心交易微服务。前端疯狂反馈页面一直转圈,最后提示“网络超时”。Exception整个系统就像一个植物人,除了微弱的呼吸,对外界没有任何反应。这叫作**“系统假死”**。

2026-04-26 07:03:26 509

原创 一条慢 SQL,是如何引发 Kafka 全站“假死”的?

Kafka Rebalance 的演进史,就是一部活生生的分布式一致性算法血泪史。从简单粗暴的 Eager 模式,到认祖归宗的静态成员机制,再到精雕细琢的增量协作模式。在分布式系统里,“全局锁”和“全局屏障 (STW)”是万恶之源。最极致的性能,永远来自于将全局冲突降维成局部协同。下一次,当线上的监控大盘再次出现消费曲线断崖式跌零时,不要慌张。查一查是不是某个新来的实习生,在消费者代码里写了一个没有设置 Timeout 的 HTTP 同步请求。

2026-04-26 06:58:25 457

原创 1000 万未支付订单,如何用 10 台机器在 5 分钟内扫完并取消?

在真实的业务战场上,没有绝对的碾压,只有最合适的选择。XXL-JOB (实用主义者):自带 Web UI 管理后台,轻量级,支持动态改 Cron 表达式,能满足 90% 互联网公司的日常需求。虽然它也支持分片广播,但底层重度依赖数据库锁。ElasticJob (重型装甲车):重度依赖 Zookeeper,缺少花里胡哨的管理后台,但它的去中心化设计和极致的分片模型,是处理金融级、海量级批处理任务的绝对王者。一句话总结:当你只面对几十万数据时,请用 XXL-JOB 享受开发的便捷;

2026-04-25 07:26:31 363

原创 突破单节点 10 万 QPS 物理极限!揭秘秒杀系统底层的“库存分片”与降维打击

当流量小的时候,系统拼的是代码规范和算法复杂度;当流量大到一定程度,系统拼的就成了物理学常识。Redis 的“单线程高性能”神话,在百万级并发写面前依然会被打破。通过“库存分片”,我们将系统对 CPU 单核的时钟周期压榨,转化为了对多台机器网卡和多核 CPU 的整体调度。配合精妙的 Failover 轮询机制,我们在性能极限与数据严谨性之间,找到了最美的平衡。

2026-04-25 07:23:01 453

原创 为什么大厂都在去 Spring Cloud 化?

在讲 Service Mesh 之前,我们必须先认清 Spring Cloud / Dubbo 这类传统微服务框架的pom.xml业务开发人员的目标是写好“计算购物车总价”的代码,他们凭什么要关心网络怎么路由、流量怎么限流?

2026-04-24 06:55:48 629

原创 为什么哈希槽是 16384 而不是 65536?

这是一个在面试中能直接绝杀的考点。既然公式用的是CRC16算法,它产生的数字范围明明是0∼655350∼65535(也就是 65536 个数)。那为什么 Redis 强行取模16384(只用 1/4),白白浪费了算法的精度?这个问题当年在 Github 上引发了激烈的讨论,Antirez 亲自下场回复,道出了底层极其残酷的网络 I/O 权衡:因为 Redis Cluster 是没有中心节点(没有 Zookeeper)的,节点之间如何知道对方是死是活?如何知道槽位怎么分配的?

2026-04-24 06:53:25 485

原创 如果光缆被挖断导致 Redis 出现两个 Master,怎么防止数据丢失?

Redis 脑裂,是一场由于“网络光缆”和“异步复制机制”共同上演的黑色幽默。当我们享受 Redis 单机数十万并发写入的极速快感时,我们实际上是把“数据一致性”作为筹码,换取了这种极致的速度。配置就像是给这辆狂奔的跑车装上了一个安全气囊:当系统发现自己驶入未知的浓雾(网络分区)时,强制踩死刹车,牺牲掉这段时间的可用性,换取车毁人亡前的最后生机。

2026-04-23 07:33:21 604

原创 从 ThreadLocal 到 HTTP Header:一文看懂分布式日志串联的 3 道鬼门关

过去的架构师谈论监控,看的是 CPU 利用率、内存消耗,这叫“监控物理机”。现在的云原生架构师谈论可观测性 (Observability),看的是Metrics(指标)、Logs(日志)、Traces(链路)这三驾马车。当 TraceId 把这三者彻底打通时,微服务架构的“黑盒”才真正变成了“白盒”。

2026-04-23 07:30:48 503

原创 Docker 明明很好用,K8s 为什么要多此一举发明 Pod ?

如果你把 JVM 当作是单机时代的巅峰,那么 K8s 就是分布式集群时代的操作系统。构建了绝对可靠的中枢神经。Pod解决了多容器协同调度的落地难题。声明式 YAML + 和解循环彻底解放了生产力,实现了系统的自动愈合与弹性伸缩。当你懂得了如何用 YAML 定义世界,你才真正跨入了大厂“云原生架构师”的大门。

2026-04-22 06:52:23 416

原创 Redis 分布式限流的四大算法与终极形态

从INCR的固定窗口,到 ZSet 的滑动窗口,再到数学逻辑极度紧凑的令牌桶。分布式限流的演进,本质上是在**“请求精准度”与“内存空间消耗”**之间寻找极限平衡的过程。在这个充满恶意攻击和突发流量的互联网黑暗森林中,没有限流的系统就像一台没有刹车的跑车。而掌握了基于 Redis Lua 的令牌桶魔法,你就在网关的最前线,立起了一面永远不会被轻易击穿的叹息之墙。

2026-04-22 06:50:12 570

原创 从 CMS 到 ZGC,JVM 是如何将停顿时间压缩到 1 毫秒的?

纵观 JVM GC 的演进史,其实是一场旷日持久的**“吞吐量 (Throughput)” 与 “延迟 (Latency)” 的零和博弈**。Parallel (吃苦耐劳的老黄牛):吞吐量极高,适合在后台跑离线数据批处理,不在乎卡顿几秒钟。CMS (老兵不死):Web 时代的第一代功臣,但败给了内存碎片引起的退化。G1 (中流砥柱):目前 JDK 8+ 生产环境的绝对主力,用 Region 划分完美平衡了吞吐量与停顿时间。ZGC (未来之光)

2026-04-21 08:45:00 373

原创 为什么你的 `ORDER BY` 拖垮了数据库?谈谈高频实时排序场景下的架构取舍

想象一下,你面前有一条单向链表,里面按从小到大的顺序排着 1 万个数字。你想找数字8900。在普通链表里,你只能从头开始,顺着指针一个一个往后摸,需要遍历 8900 次,时间复杂度是极其缓慢的ONO(N)ON。跳表的“开挂”逻辑:建高架桥!最底层的链表,包含了所有的 1 万个节点。我们从 L0 层里随机挑出一部分节点,提拔到 L1 层,并用指针连起来。再从 L1 层里随机挑出一部分节点,提拔到 L2 层。…… 以此类推。当你要找8900时,你不再走拥堵的“地面道路”(L0)。

2026-04-20 08:30:00 223

原创 为什么 ConcurrentHashMap 1.8 重新用回了笨重的 synchronized 锁?

看完源码,你会对空桶无锁,有桶加锁(CAS + Synchronized,极限压榨锁粒度)。多线程协同搬砖(把扩容的性能损耗均摊给了所有线程)。分散计数(解决高并发下单一计数器的热点问题)。理解了它,你再去理解分布式系统架构中的分片、限流、热点打散,其实都是在运用同一套底层哲学。

2026-04-19 08:30:00 189

原创 在微服务里造一个微缩版 Kafka:Spring Boot 整合 Redis Stream 全指南

Redis 从未停止过向更广阔的计算领域扩张。List只是一个简陋的玩具管子,Pub/Sub只是一个没有记忆的大喇叭。而Stream则是 Redis 真正向成熟的事件驱动架构(EDA)交出的一份完美答卷。通过XGROUP和XACK构建起护城河,利用PEL兜底故障,Redis 用极简的 C 语言代码和逆天的内存压缩率,硬生生在自己的地盘里,为开发者搭建了一座微缩版的 Kafka。

2026-04-18 07:02:09 468

原创 ThreadLocal 为什么会引发内存泄漏?揭秘底层“弱引用”的致命陷阱

在多线程环境下,为了保证线程安全,我们通常会加锁。但加锁会导致线程排队,极其消耗性能。有没有一种方法,既能保证线程安全,又不需要加锁呢?有,那就是**“一人发一份,各玩各的”**。这就是。像 Spring 的事务管理(保证同一个事务用同一个数据库连接)、用户登录的 Session 信息传递,底层全都是靠实现的。听起来很完美,但只要你用了线程池,就会化身为隐藏在 JVM 里的“内存刺客”。

2026-04-18 06:59:55 371

原创 Redis 6.0 客户端缓存如何终结“百万级热点 Key”战争?

微博突然爆出惊天大瓜。吃瓜群众疯狂刷新,某个大 V 的个人主页(单 Key)每秒承受的GET请求。你的 Redis 集群有 100 台机器,但因为这是一个单 Key,按照 Hash 路由,这 200 万次请求全打在了上。哪怕 CPU 扛得住,服务器的万兆网卡(10Gbps)也早就被这每秒几百 MB 的出站流量打得千疮百孔,直接瘫痪。你在应用层加了 Guava/Caffeine 本地缓存。请求全挡在了应用服务器内存里,Redis 压力清零,网卡恢复。5 分钟后,大 V 删除了那条动态(数据变更)。

2026-04-17 07:41:15 409

原创 从 CAS 到 CLH 队列,通俗易懂推演 AQS 抢锁大战

用volatile+ CAS 保证了极限性能下的无锁状态切换。用 CLH 队列管理海量线程,避免了群集效应。用实现了精准的线程挂起与唤醒。在 Java 并发领域,我们今天能够如此轻松地写出千万并发的微服务,全靠 AQS 在底层默默承受着所有线程的争抢与蹂躏。

2026-04-17 07:38:05 579

原创 大模型只会胡说八道?一文看懂向量数据库与 RAG 的底层魔法

不要把 AI 当成抢饭碗的敌人,要把大模型当成系统中计算资源的一个特殊组件(推理引擎)。传统的 Controller 层接收 HTTP 请求。未来的 AI 应用层接收人类的自然语言。大模型负责理解意图并规划任务。向量数据库提供精准的知识召回。我们写好的底层微服务接口,化身成为 AI 随时调用的“武器库”。一句话总结:大模型只是硅谷大佬们提供的一个超级大脑,但如何把这个大脑接上神经网络,让它在复杂的业务系统里跑起来,这依然是我们后端架构师的天下!

2026-04-16 07:09:40 396

原创 Redis 变成多线程了,那我的 SETNX 和 Lua 脚本还需要加锁吗?

Redis 6.0 的多线程,是一场克制且精准的“微创手术”。它保留了单线程模型在内存操作上的绝对纯粹与极速,同时又无情地剥离了网络协议解析的 CPU 负担。真正的极客,从不会为了追逐新概念而盲目重构,他们永远只在系统最痛的那个物理瓶颈上动刀。

2026-04-16 07:06:04 557

原创 除了 LRU,你还知道 Redis 4.0 引入的 LFU(最不经常使用)算法吗?

Redis 内存淘汰机制的演进史,就是一部与“内存开销”和“业务边缘场景”死磕的极客史。从拒绝笨重的双向链表,发明随机抽样的近似 LRU;再到为了抵御全表扫描,将 24 bit 掰成两半,用对数函数和时间衰减硬生生造出LFU。

2026-04-15 07:08:24 375

原创 极简的“绝对优先级”队列:一行代码搞定 VIP 用户插队特权

在追求极简架构的路上,深入理解基础命令的潜规则,往往能省下数十行的复杂代码和沉重的中间件部署。BRPOP对多键从左至右的偏心监听,就是这样一个被设计好的底层彩蛋。它极其适合业务复杂度不高、优先级阶梯固定的插队场景。用最简单的机制,解决最棘手的商业化痛点,这就是资深后端工程师的代码艺术。

2026-04-14 17:30:18 453

原创 加了分布式锁,为什么用户还是被扣了两次钱?

分布式锁只能解决“性能”问题(防止大家一拥而上),不能解决“正确性”问题。当网络不可靠、时间不可靠时,锁随时会背叛你。只有把数据库当成最后一道防线,通过幂等设计让系统无视重试,你才能在深夜里睡个安稳觉。

2026-04-13 08:30:00 627

原创 你以为写个 SETNX 就是分布式锁了?揭秘死锁危机与 Redisson 续期魔法

分布式锁的演进,是一场与并发、网络、宕机时间进行极限博弈的战争。从裸奔的SETNX,到带过期时间的SET EX NX;从 Lua 脚本防误删,再到 Redisson WatchDog 的自动续期守护。我们穷尽了工程学的智慧。使用 Redisson 时,如果你不懂底层原理,千万不要画蛇添足地给lock()方法传过期时间参数。相信那只默默无闻的看门狗,它比你更懂什么时候该放手。

2026-04-13 08:30:00 382

原创 删了 5GB 数据,内存却一点没降?揭开 Redis 内存碎片的“幽灵”面纱

当 5GB 内存凭空消失时,不要慌张,它只是变成了 Linux 内存页里的“幽灵”。理解了jemalloc的分配机制和的诊断指标,你就能自信地对运维说出:“不是代码内存泄露,是碎片率到了 1.8”。打开的开关,调整好 CPU 油门,看着奇迹般地一点点降下来,这是属于资深服务端架构师的独特浪漫。

2026-04-12 06:34:42 402

原创 为什么阿里开发手册强制要求 Long 类型必须转 String 传给前端?

数据交换不是白给的。每一次序列化都是对 CPU 的一次压榨,每一次反序列化都是对信任的一次挑战。

2026-04-12 06:32:00 491

原创 发现超级大 Key 怎么办?千万别敲 DEL!揭秘 UNLINK 异步删除魔法

从DEL的同步阻塞,到UNLINK的异步分离。这表面上是一个简单命令的替换,背后其实是架构师对**“临界区与后台任务分离”**设计思想的深刻理解。下一次,当你通过监控抓住了那个让服务器瑟瑟发抖的“超级大 Key”时,请收起你准备敲击D-E-L的手指,优雅地输入UNLINK,然后深藏功与名。

2026-04-11 07:42:07 426

原创 为什么加了 100 台服务器还是崩了?聊聊高并发下的“连环车祸”

因为在这个混乱、无序、充满 Bug 的数字宇宙里,我们是唯一的守望者。我们享受那种**“泰山崩于前而代码不乱”的镇定,享受那种“在废墟中重建秩序”**的成就感。

2026-04-11 07:38:33 470

原创 一核有难,九核围观?打爆 Redis 集群的“数据倾斜”与热点追踪实战

Redis Cluster 是一张极具弹性的网,但 Hash Tag 就像是绑在这张网上的铅块。我们在享受它带来的“多 Key 事务”便利时,必须时刻监控流量的倾斜。真正的高并发架构师,不在于能写出多复杂的 Lua 脚本,而在于能在流量洪峰到来前,凭借敏锐的嗅觉识别出“热点”与“大 Key”,用本地缓存和分片打散机制,化解单机物理瓶颈于无形。

2026-03-16 08:30:00 326

原创 “TODO:以后重构”,这是程序员在这个世界上撒过最大的谎

当你还是个新手时,你觉得编程是魔法。你敲下回车,屏幕上亮起,你觉得自己无所不能。当你成为老手时,你发现编程是拆弹。你战战兢兢地看着满屏的警告,知道哪怕少写一个,整个世界都会崩溃。但当你真正登顶编程,是一门关于“妥协与平衡”的哲学。你懂得在“完美的架构”和“明天必须上线”之间找到平衡。你懂得在“无尽的性能优化”和“高昂的服务器成本”之间做出取舍。你懂得承认自己的无知,写下详尽的注释,因为你知道几个月后的自己也会变成个傻瓜。你不再追求写出没有任何 Bug 的神级代码。

2026-03-16 08:30:00 397

原创 单机切 Redis Cluster 后,为何满屏都是 CROSSSLOT 报错?

从单机走向集群,意味着你必须放弃一部分“为所欲为”的便利性,去拥抱分布式的物理法则。Hash Tag ({}) 是对这条法则的合法“欺骗”。它让你在享受集群海量吞吐力的同时,保留了局部操作的原子性和极致性能。但记住,物理法则不可违抗。过度使用 Hash Tag 捆绑数据,就是在亲手拆毁你的集群,把它重新变回一个脆弱的单点系统。

2026-03-15 08:45:00 520

原创 订单表拆成 100 张后,那些要命的查询该怎么做?

分库分表是关系型数据库被逼到悬崖边上的无奈之举。它用极度复杂的“路由与聚合”逻辑,换取了存储容量和并发写入的上限。非分片键查询:用“基因法”把路由信息刻在 ID 里,或者用 Binlog 异构同步到 Elasticsearch。跨库深分页:坚决对产品经理说不,改用“游标法 (Cursor)”,或者交由专业的搜索引擎来处理。

2026-03-15 08:45:00 506

原创 打包 100 万条命令进 Pipeline 会怎样?

很多技术灾难的起源,并不是因为我们不懂高阶工具,而是因为我们把高阶工具当成了没有边界的银弹。Pipeline 的本质是用本地内存去换取网络时间。当你妄图在一个网络请求里塞入无尽的数据时,操作系统的缓冲区和 JVM 的垃圾回收器一定会让你付出惨痛的代价。

2026-03-14 08:30:00 473

原创 Java Agent 字节码增强技术到底有多野?

Java Agent(Java 代理)不是什么第三方框架,而是 JVM 亲生的底层机制。它的本质是一个特殊的 Jar 包。当你启动 Java 程序时,JVM 会在执行你写的main()方法之前,先去执行这个 Agent 里的特殊方法。这就好比在程序的“受精卵”阶段,你就把一个“间谍”植入了进去。Java Agent 字节码增强技术,赋予了架构师“运行时上帝视角”。优势:绝对的零侵入,业务团队毫无感知;能力通天,可以监控、诊断、甚至热修复线上 Bug(Arthasredefine指令)。代价。

2026-03-14 08:30:00 563

原创 如果不用 Pipeline,MGET 查 5 万个 Key 会怎样?

架构优化从来不是靠死记硬背几个命令,而是对计算机底层物理法则(网络 I/O、CPU 周期、内存模型)的敬畏。如果你需要异构命令的网络提速,请拥抱Pipeline。如果你需要单一数据的极速获取,请使用MGET/MSET。当你面对海量大盘数据,请用Chunked 切片 + 混合双打,这才是兼顾吞吐量与系统稳定性的宗师级手法。

2026-03-13 08:30:00 282

原创 如何从零手写一个 Maven 插件 (Plugin)?

自动化测试强管控:写一个插件,在test阶段扫描代码覆盖率,低于 80% 直接,强行阻断团队打包。字节码防篡改:在package阶段,自动为所有 class 文件打上公司专属的水印或进行代码混淆。零侵入生成:基于数据库表结构,在阶段瞬间生成全套的 Controller、Service 和 Mapper。

2026-03-13 08:30:00 329

原创 如果 Canal 跑得比 MySQL 主从同步还快,脏数据怎么防?

在架构的世界里,所有的高并发问题,归根结底都是时间差的问题。当我们引入了 Canal 和 MQ 追求极速解耦时,千万不要忘了底层 MySQL 主从复制那蹒跚的脚步。通过**“MQ 延迟二次删除”去等待它,或者通过“路由标记法”**去绕过它,都是系统走向成熟、经得起双十一流量重锤的必修课。

2026-03-12 08:30:00 1040

原创 如何从零手写一个企业级 Spring Boot Starter?

封装 Starter 的过程,其实就是面向对象编程中“高内聚、低耦合”思想的巅峰体现。高内聚:短信发送的所有底层复杂逻辑、API 签名、重试机制,全部在这个 Starter 内部解决。低耦合:业务团队的开发人员,只需要在pom.xml里加一行代码,@Autowired一下,就能拥有神级能力。

2026-03-12 08:30:00 401

原创 为什么所有大牛都建议“删除”缓存,而不是“更新”缓存?

无论是双删还是 Canal,最后一步的操作都是Delete,而不是Set。为什么?如果你改了 100 次价格,但在此期间没有任何人访问这个商品。如果你每次都去 Update 缓存,就是白白浪费 CPU。直接 Delete,等下一次真实用户访问时再查库回写,效率最高。线程 A 把价格更新为 80,线程 B 把价格更新为 90。由于网络延迟,线程 B 先执行了,线程 A 后执行了。数据库里是最新的 90,缓存里却被错误覆盖成了旧的 80。Delete 操作天然免疫这种顺序覆盖问题。

2026-03-11 08:30:00 997 1

原创 自动装配:干掉 XML 的幕后黑手是谁?扒开 @SpringBootApplication 的底裤

触发点:执行main()方法,触发。拿名单去各个 jar 包里读取.imports或文件,把官方写好的 100 多个配置类名单全拿出来。过安检:Spring 挨个检查这 100 多个类头上的条件注解。按需装配:因为你只引入了,所以只有 Web 相关的条件成立。其余 90 多个无关组件的配置类全部被无情丢弃。大功告成:最终通过安检的几个配置类被实例化,Tomcat 启动,DispatcherServlet 就绪。一句话总结:Spring Boot 就是一个带了 100 多份合同(配置类)的万能中介。

2026-03-11 08:15:00 957

jquery autocomplete下载

教程地址:http://blog.csdn.net/dandandeshangni/article/details/47320973

2015-08-06

gradle+spring+springmvc+springjdbc

采用IDE idea 创建的gradle项目,项目框架为 spring+springMVC+springJDBC 实现单表的insert,update,delete ,getList等操作,一个小小的demo()

2015-09-14

JAVA工具类

原文:https://github.com/yangchenjava/com.yangc.utils cache EhCacheUtils - 基于ehcache的工具类 LruCacheUtils - 基于LinkedHashMap实现LRU缓存的工具类 MemcachedUtils - 基于memcached的工具类 RedisUtils - 基于redis的工具类,与redis的集群配置无缝结合 db JdbcUtils - 操作jdbc的工具类 MongodbUtils - 操作mongodb的工具类 email EmailUtils - 邮件工具类,支持发送带附件的邮件 encryption AesUtils - 实现AES加密解密 Base64Utils - 实现Base64加密解密 Md5Utils - 获取字符串或文件的md5 excel ReadExcel2003 - 以model方式读2003版Excel(大数据) ReadExcel2007 - 以sax方式读2007版Excel(大数据) WriteExcel - 写Excel image CaptchaUtils - 生成验证码 ImageUtils - 图片压缩、截图 QRCodeUtils - 生成二维码、解析二维码 io SerializeUtils - 序列化、反序列化对象 ZipUtils - 压缩、解压文件 json JsonUtils - json格式转换 lang CharsetDetectorUtils - 获取文本文件编码格式 ChineseCalendar - 农历日历 ConvertUtils - 高低字节转换 DateUtils - 日期工具类 HtmlFilterUtils - 过滤html标签 JsoupUtils - 基于jsoup过滤html标签 MoneyUtils - 获取大写金额 NumberUtils - 数字工具类 PinyinUtils - 汉字转拼音 media MediaUtils - 基于ffmpeg,qtfaststart,yamdi的多媒体工具类 net AttachmentUtils - HTTP文件下载防止中文乱码 FastDFSUtils - 操作FastDFS的工具类 FtpUtils - 操作FTP的工具类(基于sun自家的包,jdk7以后不建议使用) FtpUtilsApache - 基于apache操作FTP的工具类 HttpUtils - 发送HTTP请求 IpUtils - 获取IP SFtpUtils - 操作SFTP的工具类 prop PropertiesUtils - 操作properties配置文件

2015-08-18

elastic-job-lite-console-3.0.0.M1-SNAPSHOT.tar.gz

elastic-job-lite-console 控制面板

2020-05-13

左手画圆,右手画方

java 利用多线程 实现两个面板上 一个画圆 一个画方 源码的噢

2014-02-22

dubbo-admin-0.0.1-SNAPSHOT.jar

dubbo-admin-0.0.1-SNAPSHOT 修改zookeeper连接地址 jar -jar dubbo-admin-0.0.1-SNAPSHOT

2020-05-28

human_resources

oracle 10 g 中hr用户需要单独安装,很麻烦,上传资料是HR用户的所有创建语句 ,下载后释放到$ORACLE_HOME/demo/schema/human_resources/目录下,在SYS用户下运行$ORACLE_HOME/demo/schema/human_resources/hr_main.sql来创建就可以,希望能帮到大家。 如有不懂打开这个http://blog.csdn.net/dandandeshangni/article/details/45244855

2015-04-24

java 猜数字游戏源码

利用随机数产生的数字 ,接收键盘录入,实现才数字游戏!

2014-02-22

全屏雪花飘落

此软件使用vb编写的!谢谢打开全屏化飘落花瓣!

2013-03-13

jquery.validationEngine校验插件

jquery 校验插件、不用写坑爹的 取值和正则比较了 http://blog.csdn.net/dandandeshangni/article/details/47339781

2015-08-07

gralde+spring+springmvc+springjdbc+mysql

idea+gralde+spring+springmvc+springjdbc+mysql实现单表的增删改查

2015-09-16

空空如也

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

TA关注的人

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