JAVA安全

Java 安全主要在于‘反射’。

Java语言动态性一直以来都比较差,并不像PHP那样灵活。在Java中的动态性往往需要使用一些曲折的方式来实现.这里简单列举了Java十余种动态性相关技术:

  1. Java反射机制
  2. MethodHandle
  3. JDK动态代理
  4. 使用JVM上的动态语言(如:Groovy、JRuby、Jython)
  5. 表达式库(如:OGNL、MVEL、SpEL、EL)
  6. JSP、JSPX、Quercus(Resin容器提供了PHP5支持)
  7. 字节码库(如:Asm、Javassist、Cglib、BCEL)
  8. ScriptEngineManager(脚本引擎)。
  9. 动态编译(如:JDT、JavaCompiler)
  10. ClassLoader、URLClassLoader
  11. 模版引擎(如:Freemarker、Velocity)
  12. 序列化、反序列化(包含Java 对象序列化、XML、JSON等)
  13. JNI、JNA(Java调用C/C++)
  14. OSGi(Open Service Gateway Initiative)
  15. RMI(Java远程方法调用,基于对象序列化机制实现)
  16. WebService
  17. JDWP(Java Platform Debugger Architecture Java调试协议)
  18. JMX(Java Management Extensions)

参考链接:

https://www.zhihu.com/question/29396506/answer/735521858

https://xz.aliyun.com/t/1633