Java知识体系最强总结(2020版)8 H& G1 i. {- z$ ]5 A2 _0 U o
3 |; B. i$ \. `! w) H9 C
本人从事Java开发已多年,平时有记录问题解决方案和总结知识点的习惯,整理了一些有关Java的知识体系,这不是最终版,会不定期的更新。也算是记录自己在从事编程工作的成长足迹,通过博客可以促进博主与阅读者的共同进步,结交更多志同道合的朋友。特此分享给大家,本人见识有限,写的博客难免有错误或者疏忽的地方,还望各位大佬指点,在此表示感激不尽。+ u, f5 ?% q$ @, p f* ^4 U
, o4 a* i4 G; I/ L
整理的Java知识体系主要包括基础知识,工具,并发编程,数据结构与算法,数据库,JVM,架构设计,应用框架,中间件,微服务架构,分布式架构,程序员的一些思考,项目管理,运维,权限,推荐书籍,云计算,区块链等,包含了作为一个Java工程师在开发工作学习中需要用到或者可能用到的绝大部分知识。千里之行始于足下,希望大家根据自己的薄弱点,查缺补漏,根据自己感兴趣的方面多学习,学的精通一点,从现在开始行动起来。路漫漫其修远兮,吾将上下而求索,不管编程开发的路有多么难走,多么艰辛,我们都将百折不挠,不遗余力地去追求和探索。9 i0 L& t+ [7 ~; Y
' ]8 W8 Q4 Z! X( f8 H: E % M+ ]7 @7 C$ f X' o# X7 t& K5 u' m1 C0 |
文章目录4 @- n8 Z- G3 M% J
# ]1 z3 l' ^6 W! f5 S0 E5 |: x1 K" R; L
Java面试总结 # n8 b) X" R$ e' }基础知识 ' Q7 C, I, x8 D8 vJava概述1 V! Q. N+ Z" F5 y! a ? {
基础语法 7 A6 `# b; d" ^+ u. N6 p面向对象5 _% e3 I& ]2 B! X1 b
集合框架, b* ?* X' I. z; u8 Y z
IO流$ I. E, K% }6 M& \7 j( b
网络编程1 q5 X, u7 j% u& J3 u m! R- [
常用API 4 f8 P( E' ]% Q0 y6 k5 S; _常用工具类库 5 A6 X5 ]0 X2 K' X7 U5 D9 o& n% A单元测试+ @" {8 h0 w$ y$ F9 X% p
异常, G, U0 E. \- Q( T' t
日志) M6 n: T6 t. T
工具 $ Z U7 O9 H5 P7 U$ C. s0 kIDEA; {* q5 E2 d# l1 }: T* [
Eclipse & STS3 m3 ^# m2 G0 }/ ], j
Maven 6 O6 C0 e* t) N( C2 RDocker, `0 |* q L. [
Git : v/ J+ T k( t( yGitLab! W: G g3 [" C
GitKraken 3 k1 E# p, X( lNavicat + e8 U# q+ k/ B# y并发编程 + j2 k3 Z Y0 }3 p( R: O; k基础知识 + h: |- @3 V6 C并发理论! R6 h6 K) B* s% e6 |* t( P
并发关键字5 l& X: G+ c, b- `6 _
Lock体系 3 `& k3 Q6 L' O% A0 q/ ?" a2 O+ q并发容器 9 N- p. P/ o- g线程池/ `; |- f/ ], P% h
原子操作类& n2 H' @" A# J _
并发工具3 ~6 G1 g, I5 f6 g9 H" j2 k8 T
并发实践 ; R" U2 ?% a3 k; d数据结构与算法0 k% H$ ]0 g$ @0 `3 Q8 }
数据结构9 B; n4 a1 Z2 b! x7 t
算法 7 b& O) |$ K6 a- v排序算法2 Q! W9 L( y3 P: } D2 u, ~4 F
LeetCode + l% Q* G4 [4 P8 |数据库* \* x1 f% w0 v. x3 G5 s
Oracle$ ]" p( L2 A( ~# y& d! A1 R; b/ l$ B
MySQL 8 ^. T: z j' t. k# J# C数据库基础知识( a7 D3 F4 P! V9 g( n
数据类型% U2 f9 d: `0 j2 O/ U9 g1 _4 n
引擎 . V# o# m! n E# R) f5 o" i索引 * C( P7 Q8 P/ m. ?5 ^三大范式 v8 s5 }8 D4 D! J4 E0 G常用SQL语句 ' o: {3 Z" J1 g4 I# I# ^存储过程与函数 * b1 s$ |" a1 u g+ f视图' U1 u3 t: R# ~( b# W& U( F( Q( @
MySQL优化 ) F/ X; s2 |, i* Z0 D事务 2 J6 j5 c3 Y0 s4 L7 W数据备份与还原; X$ s' m A5 O0 D1 p% R
Redis3 s4 w6 Y% C8 R& J7 b4 I
Java虚拟机5 S) \3 ~; j4 l
深入理解Java虚拟机 ' m8 a% m+ y* C5 q架构设计 + `! K3 o5 W; x# l+ T设计模式 % N1 }! ]& s+ E创建型模式 6 _" J/ {7 B" }结构型模式 2 B/ q6 F; ^: A: f; \$ W D行为型模式 M$ ]& @( W3 A4 r2 t
J2EE模式 ; P- w8 L' Y3 r. J实践应用 ! W' n( S: V6 l$ I# s/ M7 Z/ W应用框架 " S! o+ A2 L( X0 Y5 j: }Spring& N1 q' X5 r! t7 ~
《Spring实战》读书笔记 % u1 i$ N; `- t" `1 ESpring MVC % k* @. r6 r0 \+ Y( H+ Q `MyBatis ' g7 _* v' u0 ?1 Z3 @! Z8 k; LHibernate& l, q3 z; |6 N' X+ d7 a% E
Shiro + p& S# `- H. l3 G( P; MSpring Security( t/ S5 A ?4 n. y3 h; z" _
Netty 8 l% I3 N0 l$ [+ N( z( c1 X搜索引擎* x% T. k% F% n! o+ b
Lucene/Solr * l: m6 ~. ~% n2 ]# u# DElasticsearch ' I2 F( ~" w, c6 vELK. ?( X* @4 {' F4 H
中间件: y7 V7 W6 z9 l7 E
消息中间件 + X: @2 k' L" d# o' J% bRabbitMQ) v) X2 s' b2 D5 y5 [1 @
RocketMQ ; |3 l7 @; o0 w/ YActiveMQ * E4 \ Z3 I+ W, U" B9 x! H2 d- R& ]; @Kafka$ v* h$ x# O) U8 `" l$ [ k
远程过程调用中间件 / y9 k( T! g; |: C. [: Y fDubbo; f- Q8 V8 B7 ~) Y- h) y. [. Z+ C
数据访问中间件* O) Q W+ ~$ e
Web应用服务器 $ O X7 g- E" j) z1 e5 S) i2 v0 vTomcat! A$ I0 n' p; B$ U' N# p: Q: z
Nginx ) u+ M0 @% e' |1 [缓存 - u4 @+ j6 {" B8 u0 X0 I其他( e7 o4 L( Y' b- d% R; L
Zookeeper 3 y/ H( @& y- x& {! J/ m& h微服务与分布式 2 h6 U% @, N: o: ]7 K4 `Spring Boot1 v% V0 v7 R& V9 g2 T$ s( P
Spring Cloud/ X5 O3 a4 R; L( X
服务注册发现0 A/ m' C4 \: M6 u; m4 } z1 L
服务配置3 _' w" S+ Z' i8 F0 l" D
负载均衡, }$ N8 w; u5 z3 W6 }. m( c3 I
服务调用 7 h$ A* d8 s+ Z2 Y7 c* J服务限流1 N% D" X* Y W& Q- s# p
熔断降级$ N3 w) b! J* [/ r0 `. y9 C
网关路由4 N: ~' f1 W1 r9 Z! v2 e! }
服务权限 3 H7 F; X3 n3 X8 O" l o3 s$ O" K链路追踪% X) N, b: ^0 ^3 q( {# |. v
分布式事务 / h4 t/ M, U4 r6 y# X# H分布式缓存4 `! D/ i' K( v" D
分布式会话 % X T: t+ }. R! E$ @ g日志收集- k8 W# f; @4 o2 T; u# o# u
服务监控1 w- e- X) o% K- P/ b# E
消息驱动% U0 k& C' P- J. i
数据处理流& ^7 [0 I/ B9 J1 w) O
自动化测试与部署! q- e d" u+ F( F2 B
第三方支持 . D6 V/ h2 F+ j M4 Y分布式协调服务Zookeeper0 @3 C2 }) j( K! \8 Y. `
程序员的一些思考 1 R) X5 l$ F a# X9 S0 w0 I- v. l项目管理0 n# H. U* s" w% w# S* R w
需求调研, D# d& S& X0 Y# V" ]
项目管理% z) r8 e* z. D; g! B5 N+ m
代码管理 9 c, h1 A6 @/ _ @: g0 i' s文档管理6 h- ~/ a' J! o7 @
测试2 U/ q# ?) r7 S/ u2 ^& `9 T$ ?
运维; \: |" q7 Y1 Q0 X( g# \" O
操作系统 % D9 r: y" j; @4 J( D4 c5 f' U推荐书籍 5 }9 p; s- f0 p# K; @云计算 * `& e0 m# m. O n( L; V搜索引擎+ Y$ `9 X& u8 q3 X2 g
权限管理 / k. E5 S4 n) l区块链; Q$ M0 C6 U3 Q8 I
Java面试总结 ) A* w) v. P* |7 L! P b c' g9 M1 B9 q3 z
Java面试总结汇总,整理了包括Java基础知识,集合容器,并发编程,JVM,常用开源框架Spring,MyBatis,数据库,中间件等,包含了作为一个Java工程师在面试中需要用到或者可能用到的绝大部分知识。欢迎大家阅读,本人见识有限,写的博客难免有错误或者疏忽的地方,还望各位大佬指点,在此表示感激不尽。文章持续更新中…6 l, L* v5 s- D4 a$ S( T0 P7 H3 V
C9 a) O; }; P" A序号 内容 链接地址 $ L# \# \4 e6 w8 ^% _: M- Y1 Java基础知识面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104390612 ; r7 D9 D+ Y3 E; l# H% \; @2 Java集合容器面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104588551- s6 `8 @9 R8 B5 e* k
3 Java异常面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104390689 " Q4 K6 a- p7 Z h; ~3 m4 并发编程面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104863992 5 u1 H- ~; { f; A5 JVM面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104390752 2 Y6 L9 p" T$ O6 Spring面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104397516 & H: _$ m( `3 m3 [# h" h+ }$ g5 k7 Spring MVC面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104397427 P/ u- E/ N/ D8 Spring Boot面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104397299* U9 {9 y; r; s1 A+ R7 t7 M
9 Spring Cloud面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104397367 j/ {- H1 R, w# q' ~# w" D* I% x6 b10 MyBatis面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/101292950% ^5 \# _& O) {/ t
11 Redis面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/103522351& F! y0 U1 ^7 ^2 K' n
12 MySQL数据库面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104778621* A& k; Q% T. R6 h* i
13 消息中间件MQ与RabbitMQ面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104588612% U6 N: C" n2 e2 r. D
14 Dubbo面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104390006 ' p6 C. z) s4 M3 ]2 A, V& I15 Linux面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104588679 ( D0 G- g4 I- P3 ^16 Tomcat面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104397665 ( x! l$ o# M+ i+ y \* {2 p; z! d0 k17 ZooKeeper面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104397719* L- B; u0 O& D' U2 \7 y/ J
18 Netty面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104391081: D, w$ G! }/ ^/ R5 e/ [
19 架构设计&分布式&数据结构与算法面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/105870730+ Q# P& Y8 W! Q, F5 Q0 @3 J' N
基础知识 7 R* [ M. z7 ~8 w% \; Z$ a: e: A8 t- |/ R
Java概述 ) P( v; L% z1 r% s ( A) ~4 W* R. ?序号 内容 链接地址. ]) |6 _ P% ~, Q' ]
1 Java简介 https://blog.csdn.net/ThinkWon/article/details/94353575 2 z0 a) i6 v& p5 s+ y5 k( t2 Java发展历程 https://blog.csdn.net/ThinkWon/article/details/94353653 " ?# W% }7 P" Y% Q) S' F3 Java语言特点 https://blog.csdn.net/ThinkWon/article/details/94354013 3 E* g7 M0 b# R- `4 JDK安装与环境变量配置 https://blog.csdn.net/ThinkWon/article/details/943539072 ]4 }( h. ~9 m5 ]
5 JVM、JRE和JDK的关系 https://blog.csdn.net/ThinkWon/article/details/1013699735 M( L; G4 f8 p. z
基础语法 7 i- Y, ]9 v/ V6 ^3 f1 N1 G+ N4 m0 g' N3 ~! G
大部分已完成6 { n# M# J, c
* `4 I/ R3 Y' C3 a! a待整理:3 w I" z. ?9 W9 b' S& ^
' O: D" i6 ^' d* I7 m2 L: H
Java开发必会的反编译知识(附支持对Lambda进行反编译的工具) ) d: S# b! X! }: D7 W. e1 r7 v4 E& n0 U, U. y
一文读懂什么是Java中的自动拆装箱 4 {7 I0 V5 a; q$ z* r" L1 Q+ l1 @6 ~# S) \' H5 m& V* [$ p5 O8 y) c
Java的枚举类型用法介绍 6 m7 T* Z O/ Y. S' o+ R$ P8 y3 o+ N
类、枚举、接口、数组、可变参数! \$ T! d" t3 I% F
2 K4 p" t7 {. l6 n( a+ T& S6 V5 ]泛型、序列化' ^/ ~( X% L: R9 y7 W6 X7 a, d4 d' l
& s. O J2 R4 \2 X: [ V
序号 内容 链接地址 : {" a; s% D* L* z! k1 Java标识符 https://blog.csdn.net/ThinkWon/article/details/101637454 , G* |6 p p# |1 H2 Java关键字(Java 8版本) https://blog.csdn.net/ThinkWon/article/details/101642385 ' y* K, Z: e& p0 Q3 I/ n1 p. F5 F4 B3 Java注释 https://blog.csdn.net/ThinkWon/article/details/101643185 + q9 |% O: M: M4 Java访问修饰符 https://blog.csdn.net/ThinkWon/article/details/101643412$ H0 L7 w3 D- a/ _
5 Java分隔符 https://blog.csdn.net/ThinkWon/article/details/101643617 ; M* ~# S1 e& N6 Java转义字符 https://blog.csdn.net/ThinkWon/article/details/1016437691 S0 a& c! V. |7 {! n
7 Java进制 https://blog.csdn.net/ThinkWon/article/details/101643936 # C# X! T6 }; I( ^3 p8 Java流程控制语句 https://blog.csdn.net/ThinkWon/article/details/101645978 6 D. F5 R8 s* ?8 Q" E; g9 Java流程控制语句-顺序结构 https://blog.csdn.net/ThinkWon/article/details/101644820 8 @" H$ T) j) y8 E- c( m10 Java流程控制语句-分支结构 https://blog.csdn.net/ThinkWon/article/details/101645224 % k: L v5 p D9 I% X11 Java流程控制语句-循环结构 https://blog.csdn.net/ThinkWon/article/details/101645757" t W6 ^0 l; q/ k( _9 z Z
12 Java表达式 https://blog.csdn.net/ThinkWon/article/details/1016481145 R' S# Q; X5 D! ^, U! E2 H( t
13 Java运算符 https://blog.csdn.net/ThinkWon/article/details/1016490025 G: z& O1 e( X! t5 A- s
14 Java变量 https://blog.csdn.net/ThinkWon/article/details/101649292 * {2 v H0 l2 q1 ~- K) K& R5 o0 _15 Java常量 https://blog.csdn.net/ThinkWon/article/details/101649446 # f1 g7 J& U# {. c- p16 Java数据类型 https://blog.csdn.net/ThinkWon/article/details/1016495680 E. _: z, p/ _, a5 s8 v# Z% B
17 Java反射 https://blog.csdn.net/ThinkWon/article/details/1001283612 W/ [5 q6 B0 D( U6 P" K8 k" V- \
18 Java语法糖 https://blog.csdn.net/ThinkWon/article/details/100103689/ I5 g; I# L! t# O) O9 ^
19 Java注解 https://blog.csdn.net/ThinkWon/article/details/100178709* h, |, Q8 v. w2 W7 e: A, Y3 }
20 JSON简介 https://blog.csdn.net/ThinkWon/article/details/100642585 ( [) N, {# q+ w21 Properties类简介 https://blog.csdn.net/ThinkWon/article/details/100667783& O+ N. q* w! j7 \
22 XML简介 https://blog.csdn.net/ThinkWon/article/details/100642425; \% |& z; G1 w' `+ _# \
23 YML简介 https://blog.csdn.net/ThinkWon/article/details/100642870 ( b9 ]! j8 B% h24 Java8新特性-Lambda表达式 https://blog.csdn.net/ThinkWon/article/details/100642932 ; @2 ^" ^) ~1 u2 C1 x- i2 u$ v25 Java基础语法 https://blog.csdn.net/ThinkWon/article/details/94354151+ P3 Z# g' z6 {$ F6 @1 z
面向对象6 q% b& w d' E- r0 K' V
8 n; o3 s* c" t/ w9 W t
待整理:8 ~" k; E; `; s. F1 R
8 }5 Q0 a' N& j; X1 Y抽象 ' @% K' X/ G' \- }3 W8 ?) I) c( b1 t+ m1 |
继承、封装、多态 `( h9 ?. A& V8 F3 G! T) |$ g! h) S( H# K& |
接口、抽象类、内部类; a& r' }1 s6 {4 P8 O A, E6 h
- S& ^8 r' n- i, Y& V2 G序号 内容 链接地址1 g9 E8 @! V3 S
1 什么是面向对象 https://blog.csdn.net/ThinkWon/article/details/100667386 ( A2 N! c$ X R3 k/ M集合框架 # S, h- I f& p, f1 g: a4 }: Y5 F0 [* @% f# P
迭代器、增强for、泛型+ v) V: m! p; L. C
# P: U0 c6 @% s0 D序号 内容 链接地址 ; \. g# s3 @8 G. t" i% v% t6 D1 Java集合框架总结 https://blog.csdn.net/ThinkWon/article/details/98844796 5 @7 E) E8 C/ q4 R0 y) c2 ArrayList(JDK1.8)源码解析 https://blog.csdn.net/ThinkWon/article/details/98845119 1 z. a: B8 [! x- x. v) Z3 HashMap(JDK1.8)源码解析 https://blog.csdn.net/ThinkWon/article/details/98845487 + N, m- k4 ^! @- u: y4 LinkedHashMap(JDK1.8)源码解析 https://blog.csdn.net/ThinkWon/article/details/102574293/ R6 V( W1 V5 v) p4 d( J/ E
5 LinkedList(JDK1.8)源码解析 https://blog.csdn.net/ThinkWon/article/details/1025739233 }$ m- _7 U c9 Q: _. f, r1 L2 B
6 TreeMap(JDK1.8)源码解析 https://blog.csdn.net/ThinkWon/article/details/102571883 5 y" `/ ~' F1 N0 Z( dIO流 * Y( B* k' T0 k, S+ y, q: a # G' e: }9 k+ b待整理: 4 e4 c7 D% l9 F5 N7 l2 T, _; r. W/ b" X
File、递归) ~2 Q0 {/ w3 B2 i6 d$ G
5 g2 B+ D* _. o+ s$ ?3 d/ S
字节流、字节缓冲流) d" Q% Q4 Q3 t
6 L/ M" ]. [* ?1 n. d
编码表、编码方式、转换流、序列化、序列化流、打印流、commons-io ! i5 t. s# C, Z7 Q4 b- h 2 V, u7 u- ]/ a# {/ L网络编程 ) r+ N- K5 Z! _ 8 d7 s& B% p( p$ A9 k网络概述、网络模型9 u# J- `- D# X8 H7 i
7 a6 }: \ k6 g( p1 g. u& O/ A3 N
Socket原理机制: b e1 V4 @2 b* _+ l. N
) }5 S6 F& }' \& ^6 i9 |8 J1 q
UDP ' l m7 l2 G7 }& l$ p4 W8 B9 y4 O) O0 D. M# H
TCP/IP7 J! Q( K5 x+ @) k* z9 S
6 `! {# \6 D; I
协议、OSI 七层协议、HTTP、HTTP2.0、HTTPS; d8 t8 m" R) q
: n i( J1 X9 l1 M
网络安全( | s! x- T5 l- O! Z( o
! `" I0 K- f$ {1 V0 g7 c
XSS、CSRF、SQL注入、Hash Dos、脚本注入、漏洞扫描工具、验证码0 t8 b9 t& ^2 T0 V7 U! K
8 R( `9 c/ M! v. b3 H9 B' W' @源码分析,核心类,核心方法,设计模式 i1 z! m$ [# R+ [( ~( k) v% }5 W2 x+ {
发布博客,在开发和实践中,博客反馈中持续改进/ Y# e. n8 a. o- j7 o+ g/ T; p8 r
4 E4 {/ R/ n1 ]. Z
与同事朋友交流,技术论坛,技术分享中持续丰富知识; x& p+ Q: J+ t
/ z6 K% V; O/ C- r9 w# U
常用框架 # m' M' P- x4 v' X( l( [ / x2 M' r8 w) z! K集成开发工具(IDE):Eclipse、MyEclipse、Spring Tool Suite(STS)、Intellij IDEA、NetBeans、JBuilder、JCreator ' _, E- F( D8 p/ G! _1 }4 y7 }
JAVA服务器:tomcat、jboss、websphere、weblogic、resin、jetty、apusic、apache$ d/ m1 N1 F+ f6 ?2 S
& X p) A" a7 N; y
负载均衡:nginx、lvs5 \4 u! F9 O1 @" d' X7 v6 [0 T( K
; [9 X+ `, e. d! s4 C, `5 sweb层框架:Spring MVC、Struts2、Struts1、Google Web Toolkit(GWT)、JQWEB V$ F! c8 R2 E) I' U2 K2 [, b+ o) H0 e- ]; m; B
服务层框架:Spring、EJB % ?. R. B Q' z7 [4 ~/ N4 B. O/ |4 s1 r, R( ~( s- I
持久层框架:Hibernate、MyBatis、JPA、TopLink5 V( D$ d4 U# U6 _1 S" t
2 {& X/ f( B! L1 j- V9 r/ `数据库:Oracle、MySql、MSSQL、Redis9 |* a3 B5 P* |" n
# i" @$ M, M, ]5 S& p7 a. S9 k
项目构建:maven、ant k3 f; i# K$ `
8 a6 z" k$ D F) X% h持续集成:Jenkins : q) H4 m0 V5 d2 T3 d 1 K: `* ^7 m% ] D$ N; w版本控制:SVN、CVS、VSS、GIT5 Y; I) r |* `% E# y6 G
9 d' h/ H$ p3 C, p3 L私服:Nexus ) Q8 e2 ^: E1 _7 k: n. t. W$ N r" I8 K: Z# Q/ R& M4 @5 M
消息组件:IBM MQ、RabbitMQ、ActiveMQ、RocketMq. g- x n+ r$ t. X8 c: A( b( b. d. I
( L# ]" @/ I* q日志框架:Commons Logging、log4j 、slf4j、IOC 5 V Q" l( b" e # _- B. h& |5 M2 B8 h- p缓存框架:memcache、redis、ehcache、jboss cache7 D5 q' V C& W+ x
# p' {. V$ V6 Y- @8 U2 z
RPC框架:Hessian、Dubbo 6 V5 S1 e$ G. ^/ l: \5 L" D! l& b: Q- ~+ N
规则引擎:Drools ) q! u" F1 f9 \/ v' D5 i- e( _# z) I0 Q! z) |
工作流:Activiti1 T7 L: ~0 x* p% s' U$ H5 t
1 z7 ]" _' d) e+ o G! X5 o' x6 V批处理:Spring Batch3 l E' }) f) `+ Z( \" s
' c6 L1 W4 D [$ {0 l n/ Y2 a
通用查询框架:Query DSL ) M& g, S" o) Q# l$ O6 ~ 7 p- S. t4 {4 c( a7 c; zJAVA安全框架:shiro、Spring Security 5 u( k6 ^$ {3 O+ n8 X% O6 w ; _. _( v2 i: A" J/ n% Y6 w0 U F代码静态检查工具:FindBugs、PMD b1 u$ e* n0 a$ I+ X, e: ^( f o0 D7 v" j9 J" a+ f/ Y
Linux操作系统:CentOS、Ubuntu、SUSE Linux、$ U0 e, t+ O% }% b P* \
- n* c' }( E- A6 d5 B常用工具:PLSQL Developer(Oracle)、Navicat(MySql)、FileZilla(FTP)、Xshell(SSH)、putty(SSH)、SecureCRT(SSH)、jd-gui(反编译); _' K- `, D3 U) O9 E8 Q! g