├── .idea ├── .name ├── artifacts │ ├── demo_war.xml │ └── demo_war_exploded.xml ├── compiler.xml ├── libraries │ ├── Maven__antlr_antlr_2_7_7.xml │ ├── Maven__aopalliance_aopalliance_1_0.xml │ ├── Maven__asm_asm_3_3.xml │ ├── Maven__asm_asm_commons_3_3.xml │ ├── Maven__asm_asm_tree_3_3.xml │ ├── Maven__com_alibaba_fastjson_1_1_29.xml │ ├── Maven__com_mchange_c3p0_0_9_5_pre2.xml │ ├── Maven__com_mchange_mchange_commons_java_0_2_5.xml │ ├── Maven__com_sun_mail_javax_mail_1_5_0.xml │ ├── Maven__commons_beanutils_commons_beanutils_1_8_0.xml │ ├── Maven__commons_collections_commons_collections_3_2_1.xml │ ├── Maven__commons_fileupload_commons_fileupload_1_2_2.xml │ ├── Maven__commons_io_commons_io_2_0_1.xml │ ├── Maven__commons_lang_commons_lang_2_5.xml │ ├── Maven__commons_logging_commons_logging_1_1_1.xml │ ├── Maven__dom4j_dom4j_1_6_1.xml │ ├── Maven__javax_activation_activation_1_1.xml │ ├── Maven__javax_javaee_api_7_0.xml │ ├── Maven__javax_servlet_javax_servlet_api_3_0_1.xml │ ├── Maven__junit_junit_4_11.xml │ ├── Maven__log4j_log4j_1_2_17.xml │ ├── Maven__mysql_mysql_connector_java_5_1_24.xml │ ├── Maven__net_sf_ezmorph_ezmorph_1_0_6.xml │ ├── Maven__net_sf_json_lib_json_lib_jdk15_2_4.xml │ ├── Maven__ognl_ognl_3_0_6.xml │ ├── Maven__org_apache_commons_commons_lang3_3_1.xml │ ├── Maven__org_apache_struts_struts2_convention_plugin_2_3_14.xml │ ├── Maven__org_apache_struts_struts2_core_2_3_14.xml │ ├── Maven__org_apache_struts_struts2_spring_plugin_2_3_14.xml │ ├── Maven__org_apache_struts_xwork_xwork_core_2_3_14.xml │ ├── Maven__org_aspectj_aspectjweaver_1_7_2.xml │ ├── Maven__org_freemarker_freemarker_2_3_19.xml │ ├── Maven__org_hamcrest_hamcrest_core_1_3.xml │ ├── Maven__org_hibernate_common_hibernate_commons_annotations_4_0_1_Final.xml │ ├── Maven__org_hibernate_hibernate_core_4_2_0_Final.xml │ ├── Maven__org_hibernate_javax_persistence_hibernate_jpa_2_0_api_1_0_1_Final.xml │ ├── Maven__org_javassist_javassist_3_15_0_GA.xml │ ├── Maven__org_jboss_logging_jboss_logging_3_1_0_GA.xml │ ├── Maven__org_jboss_spec_javax_transaction_jboss_transaction_api_1_1_spec_1_0_0_Final.xml │ ├── Maven__org_junit_jupiter_junit_jupiter_api_5_0_0_M4.xml │ ├── Maven__org_junit_platform_junit_platform_commons_1_0_0_M4.xml │ ├── Maven__org_opentest4j_opentest4j_1_0_0_M2.xml │ ├── Maven__org_springframework_spring_aop_3_2_2_RELEASE.xml │ ├── Maven__org_springframework_spring_beans_3_2_2_RELEASE.xml │ ├── Maven__org_springframework_spring_context_3_2_2_RELEASE.xml │ ├── Maven__org_springframework_spring_context_support_3_2_2_RELEASE.xml │ ├── Maven__org_springframework_spring_core_3_2_2_RELEASE.xml │ ├── Maven__org_springframework_spring_expression_3_2_2_RELEASE.xml │ ├── Maven__org_springframework_spring_jdbc_3_2_2_RELEASE.xml │ ├── Maven__org_springframework_spring_orm_3_2_2_RELEASE.xml │ ├── Maven__org_springframework_spring_tx_3_2_2_RELEASE.xml │ └── Maven__org_springframework_spring_web_3_2_2_RELEASE.xml ├── misc.xml ├── modules.xml └── workspace.xml ├── demo.iml ├── pom.xml ├── src └── main │ ├── java │ ├── Commons │ │ └── Encrypt.java │ ├── servlet │ │ ├── AServlet.java │ │ ├── CheckServlet.java │ │ └── PicServlet.java │ └── websocket │ │ └── WebSocketTest.java │ └── webapp │ ├── Ajax.jsp │ ├── AjaxAddDom.jsp │ ├── Js │ ├── Encrypt.js │ ├── LoadPage.js │ └── jquery-3.2.1.js │ ├── Pic │ └── me.jpg │ ├── WEB-INF │ └── web.xml │ ├── chat.jsp │ └── index.jsp ├── target ├── classes │ ├── Commons │ │ └── Encrypt.class │ ├── servlet │ │ ├── AServlet.class │ │ ├── CheckServlet.class │ │ └── PicServlet.class │ └── websocket │ │ └── WebSocketTest.class └── demo │ ├── Ajax.jsp │ ├── AjaxAddDom.jsp │ ├── Js │ ├── Encrypt.js │ ├── LoadPage.js │ └── jquery-3.2.1.js │ ├── META-INF │ └── MANIFEST.MF │ ├── Pic │ └── me.jpg │ ├── WEB-INF │ ├── classes │ │ ├── Commons │ │ │ └── Encrypt.class │ │ ├── servlet │ │ │ ├── AServlet.class │ │ │ ├── CheckServlet.class │ │ │ └── PicServlet.class │ │ └── websocket │ │ │ └── WebSocketTest.class │ ├── lib │ │ ├── antlr-2.7.7.jar │ │ ├── aopalliance-1.0.jar │ │ ├── asm-3.3.jar │ │ ├── asm-commons-3.3.jar │ │ ├── asm-tree-3.3.jar │ │ ├── aspectjweaver-1.7.2.jar │ │ ├── c3p0-0.9.5-pre2.jar │ │ ├── commons-beanutils-1.8.0.jar │ │ ├── commons-collections-3.2.1.jar │ │ ├── commons-fileupload-1.2.2.jar │ │ ├── commons-io-2.0.1.jar │ │ ├── commons-lang-2.5.jar │ │ ├── commons-lang3-3.1.jar │ │ ├── commons-logging-1.1.1.jar │ │ ├── dom4j-1.6.1.jar │ │ ├── ezmorph-1.0.6.jar │ │ ├── fastjson-1.1.29.jar │ │ ├── freemarker-2.3.19.jar │ │ ├── hibernate-commons-annotations-4.0.1.Final.jar │ │ ├── hibernate-core-4.2.0.Final.jar │ │ ├── hibernate-jpa-2.0-api-1.0.1.Final.jar │ │ ├── javassist-3.15.0-GA.jar │ │ ├── javax.servlet-api-3.0.1.jar │ │ ├── jboss-logging-3.1.0.GA.jar │ │ ├── jboss-transaction-api_1.1_spec-1.0.0.Final.jar │ │ ├── json-lib-2.4-jdk15.jar │ │ ├── junit-jupiter-api-5.0.0-M4.jar │ │ ├── junit-platform-commons-1.0.0-M4.jar │ │ ├── log4j-1.2.17.jar │ │ ├── mchange-commons-java-0.2.5.jar │ │ ├── mysql-connector-java-5.1.24.jar │ │ ├── ognl-3.0.6.jar │ │ ├── opentest4j-1.0.0-M2.jar │ │ ├── spring-aop-3.2.2.RELEASE.jar │ │ ├── spring-beans-3.2.2.RELEASE.jar │ │ ├── spring-context-3.2.2.RELEASE.jar │ │ ├── spring-context-support-3.2.2.RELEASE.jar │ │ ├── spring-core-3.2.2.RELEASE.jar │ │ ├── spring-expression-3.2.2.RELEASE.jar │ │ ├── spring-jdbc-3.2.2.RELEASE.jar │ │ ├── spring-orm-3.2.2.RELEASE.jar │ │ ├── spring-tx-3.2.2.RELEASE.jar │ │ ├── spring-web-3.2.2.RELEASE.jar │ │ ├── struts2-convention-plugin-2.3.14.jar │ │ ├── struts2-core-2.3.14.jar │ │ ├── struts2-spring-plugin-2.3.14.jar │ │ └── xwork-core-2.3.14.jar │ └── web.xml │ ├── chat.jsp │ └── index.jsp └── webSocket.iml /.idea/.name: -------------------------------------------------------------------------------- 1 | demo -------------------------------------------------------------------------------- /.idea/artifacts/demo_war.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | $PROJECT_DIR$/target 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /.idea/artifacts/demo_war_exploded.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | $PROJECT_DIR$/target/demo 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /.idea/compiler.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__antlr_antlr_2_7_7.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__aopalliance_aopalliance_1_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__asm_asm_3_3.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__asm_asm_commons_3_3.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__asm_asm_tree_3_3.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__com_alibaba_fastjson_1_1_29.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__com_mchange_c3p0_0_9_5_pre2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__com_mchange_mchange_commons_java_0_2_5.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__com_sun_mail_javax_mail_1_5_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__commons_beanutils_commons_beanutils_1_8_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__commons_collections_commons_collections_3_2_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__commons_fileupload_commons_fileupload_1_2_2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__commons_io_commons_io_2_0_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__commons_lang_commons_lang_2_5.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__commons_logging_commons_logging_1_1_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__dom4j_dom4j_1_6_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__javax_activation_activation_1_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__javax_javaee_api_7_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__javax_servlet_javax_servlet_api_3_0_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__junit_junit_4_11.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__log4j_log4j_1_2_17.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__mysql_mysql_connector_java_5_1_24.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__net_sf_ezmorph_ezmorph_1_0_6.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__net_sf_json_lib_json_lib_jdk15_2_4.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__ognl_ognl_3_0_6.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_apache_commons_commons_lang3_3_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_apache_struts_struts2_convention_plugin_2_3_14.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_apache_struts_struts2_core_2_3_14.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_apache_struts_struts2_spring_plugin_2_3_14.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_apache_struts_xwork_xwork_core_2_3_14.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_aspectj_aspectjweaver_1_7_2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_freemarker_freemarker_2_3_19.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_hibernate_common_hibernate_commons_annotations_4_0_1_Final.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_hibernate_hibernate_core_4_2_0_Final.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_hibernate_javax_persistence_hibernate_jpa_2_0_api_1_0_1_Final.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_javassist_javassist_3_15_0_GA.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_jboss_logging_jboss_logging_3_1_0_GA.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_jboss_spec_javax_transaction_jboss_transaction_api_1_1_spec_1_0_0_Final.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_junit_jupiter_junit_jupiter_api_5_0_0_M4.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_junit_platform_junit_platform_commons_1_0_0_M4.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_opentest4j_opentest4j_1_0_0_M2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_springframework_spring_aop_3_2_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_springframework_spring_beans_3_2_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_springframework_spring_context_3_2_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_springframework_spring_context_support_3_2_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_springframework_spring_core_3_2_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_springframework_spring_expression_3_2_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_springframework_spring_jdbc_3_2_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_springframework_spring_orm_3_2_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_springframework_spring_tx_3_2_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/libraries/Maven__org_springframework_spring_web_3_2_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /.idea/workspace.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 93 | 94 | 95 | 98 | 99 | 100 | 113 | 114 | 115 | 116 | 117 | true 118 | DEFINITION_ORDER 119 | 120 | 121 | 127 | 128 | 133 | 134 | 135 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 165 | 166 | 169 | 170 | 171 | 172 | 175 | 176 | 179 | 180 | 183 | 184 | 187 | 188 | 191 | 192 | 193 | 194 | 197 | 198 | 201 | 202 | 205 | 206 | 209 | 210 | 213 | 214 | 217 | 218 | 219 | 220 | 223 | 224 | 227 | 228 | 231 | 232 | 235 | 236 | 237 | 238 | 241 | 242 | 245 | 246 | 249 | 250 | 253 | 254 | 257 | 258 | 259 | 260 | 263 | 264 | 267 | 268 | 271 | 272 | 275 | 276 | 279 | 280 | 283 | 284 | 285 | 286 | 289 | 290 | 293 | 294 | 297 | 298 | 301 | 302 | 305 | 306 | 309 | 310 | 311 | 312 | 313 | 314 | 315 | 316 | 317 | 318 | 319 | 320 | 321 | 322 | 323 | 324 | 325 | 326 | 336 | 337 | 338 | 339 | 340 | 341 | 344 | 345 | 346 | 360 | 361 | 362 | 363 | 364 | 365 | 366 | 367 | 368 | 369 | 370 | 371 | 372 | 373 | 374 | 375 | 376 | 377 | 382 | 383 | 384 | 410 | 411 | 412 | 437 | 438 | 445 | 446 | 447 | 460 | 461 | 462 | 463 | 468 | 482 | 483 | 484 | 485 | 486 | 487 | 488 | 489 | 494 | 512 | 519 | 520 | 521 | 522 | 523 | 524 | 541 | 542 | 563 | 576 | 577 | 586 | 590 | 591 | 592 | 599 | 602 | 604 | 605 | 606 | 607 | 608 | 609 | 610 | 611 | 612 | 613 | 614 | 615 | 616 | 617 | 618 | 632 | 633 | 634 | 635 | 636 | 637 | 638 | 639 | 640 | 641 | 642 | 643 | 657 | 658 | 659 | 660 | 661 | 662 | 663 | 664 | 665 | 666 | 667 | 668 | 669 | 670 | 671 | 672 | 673 | 674 | 675 | 686 | 687 | 688 | 698 | 699 | 706 | 707 | 708 | 709 | 710 | 711 | 712 | 713 | 714 | 715 | 733 | 740 | 741 | project 742 | 743 | 744 | 745 | 746 | 747 | 748 | 749 | 750 | 751 | 752 | 753 | 754 | 755 | 756 | 757 | 758 | 759 | 760 | 761 | 762 | 763 | 834 | 835 | 836 | 837 | 838 | 839 | 840 | 841 | 842 | 843 | 844 | 845 | 847 | 848 | 849 | 850 | 1496930460452 851 | 859 | 860 | 861 | 862 | 863 | 864 | 865 | 866 | 867 | 869 | 870 | 871 | 872 | 873 | 874 | 875 | 876 | 877 | 878 | 879 | 880 | 881 | 882 | 883 | 884 | 885 | 886 | 887 | 888 | 889 | 890 | 891 | 892 | 893 | 894 | 895 | 896 | 897 | 898 | 899 | 900 | 901 | 902 | 903 | 904 | 905 | 906 | 907 | 908 | 909 | 910 | 911 | 913 | 914 | 916 | 917 | 918 | 919 | 920 | 921 | 924 | 925 | 926 | 927 | 928 | 929 | 930 | 931 | 932 | 933 | 934 | 935 | 936 | 937 | 938 | 939 | 940 | 941 | 942 | 943 | 944 | 945 | 946 | 947 | 948 | 949 | 950 | 951 | 952 | 953 | 954 | 955 | 956 | 957 | 958 | 959 | 960 | 961 | 962 | 963 | 964 | 965 | 966 | 967 | 968 | 969 | 970 | 971 | 972 | 973 | 974 | 975 | 976 | 977 | 978 | 979 | 980 | 981 | 982 | 983 | 984 | 985 | 986 | 987 | 988 | 989 | 990 | 991 | 992 | 993 | 994 | 995 | 996 | 997 | 998 | 999 | 1000 | 1001 | 1002 | 1003 | 1004 | 1005 | 1006 | 1007 | 1008 | 1009 | 1010 | 1011 | 1012 | 1013 | 1014 | 1015 | 1016 | 1017 | 1018 | 1019 | 1020 | 1021 | 1022 | 1023 | 1024 | 1025 | 1026 | 1027 | 1028 | 1029 | 1030 | 1031 | 1032 | 1033 | 1034 | 1035 | 1036 | 1037 | 1038 | 1039 | 1040 | 1041 | 1042 | 1043 | 1044 | 1045 | 1046 | 1047 | 1048 | 1049 | 1050 | 1051 | 1052 | 1053 | 1054 | 1055 | 1056 | 1057 | 1058 | 1059 | 1060 | 1061 | 1062 | 1063 | 1064 | 1065 | 1066 | 1067 | 1068 | 1069 | 1070 | 1071 | 1072 | 1073 | 1074 | 1075 | 1076 | 1077 | 1078 | 1079 | 1080 | 1081 | 1082 | 1083 | 1084 | 1085 | 1086 | 1087 | 1088 | 1089 | 1090 | 1091 | 1092 | 1093 | 1094 | 1095 | 1096 | 1097 | 1098 | 1099 | 1100 | 1101 | 1102 | 1103 | 1104 | 1105 | 1106 | 1107 | 1108 | 1109 | 1110 | 1111 | 1112 | 1113 | 1114 | 1115 | 1116 | 1117 | 1118 | 1119 | 1120 | 1121 | 1122 | 1123 | 1124 | 1125 | 1126 | 1127 | 1128 | 1129 | 1130 | 1131 | 1132 | 1133 | 1134 | 1135 | 1136 | 1137 | 1138 | 1139 | 1140 | 1141 | 1142 | 1143 | 1144 | 1145 | 1146 | 1147 | 1148 | 1149 | 1150 | 1151 | 1152 | 1153 | 1154 | 1155 | 1156 | 1157 | 1158 | 1159 | 1160 | 1161 | 1162 | 1163 | 1164 | 1165 | 1166 | 1167 | 1168 | 1169 | 1170 | 1171 | 1172 | 1173 | 1174 | 1175 | 1176 | 1177 | 1178 | 1179 | 1180 | 1181 | 1182 | 1183 | 1184 | 1185 | 1186 | 1187 | 1188 | 1189 | 1190 | 1191 | 1192 | 1193 | 1194 | 1195 | 1196 | 1197 | 1198 | 1199 | 1200 | 1201 | 1202 | 1203 | 1204 | 1205 | 1206 | 1207 | 1208 | 1209 | 1210 | 1211 | 1212 | 1213 | 1214 | 1215 | 1216 | 1217 | 1218 | 1219 | 1220 | 1221 | 1222 | 1223 | 1224 | 1225 | 1226 | 1227 | 1228 | -------------------------------------------------------------------------------- /demo.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | -------------------------------------------------------------------------------- /pom.xml: -------------------------------------------------------------------------------- 1 | 3 | 4.0.0 4 | Koali 5 | demo 6 | war 7 | 1.0-SNAPSHOT 8 | demo Maven Webapp 9 | http://maven.apache.org 10 | 11 | 12 | junit 13 | junit 14 | 3.8.1 15 | test 16 | 17 | 18 | 19 | javax 20 | javaee-api 21 | 7.0 22 | provided 23 | 24 | 25 | 26 | javax.servlet 27 | javax.servlet-api 28 | 3.0.1 29 | 30 | 31 | 32 | 33 | log4j 34 | log4j 35 | 1.2.17 36 | 37 | 38 | 39 | mysql 40 | mysql-connector-java 41 | 5.1.24 42 | 43 | 44 | 45 | com.mchange 46 | c3p0 47 | 0.9.5-pre2 48 | 49 | 50 | 51 | junit 52 | junit 53 | 4.11 54 | test 55 | 56 | 57 | 58 | com.alibaba 59 | fastjson 60 | 1.1.29 61 | 62 | 63 | 64 | net.sf.json-lib 65 | json-lib 66 | 2.4 67 | jdk15 68 | 69 | 70 | 71 | org.apache.struts 72 | struts2-core 73 | 2.3.14 74 | 75 | 76 | javassist 77 | javassist 78 | 79 | 80 | 81 | 82 | org.apache.struts 83 | struts2-spring-plugin 84 | 2.3.14 85 | 86 | 87 | org.apache.struts 88 | struts2-convention-plugin 89 | 2.3.14 90 | 91 | 92 | 93 | org.springframework 94 | spring-core 95 | 3.2.2.RELEASE 96 | 97 | 98 | org.springframework 99 | spring-context 100 | 3.2.2.RELEASE 101 | 102 | 103 | org.springframework 104 | spring-context-support 105 | 3.2.2.RELEASE 106 | 107 | 108 | org.springframework 109 | spring-jdbc 110 | 3.2.2.RELEASE 111 | 112 | 113 | org.springframework 114 | spring-beans 115 | 3.2.2.RELEASE 116 | 117 | 118 | org.springframework 119 | spring-web 120 | 3.2.2.RELEASE 121 | 122 | 123 | org.springframework 124 | spring-expression 125 | 3.2.2.RELEASE 126 | 127 | 128 | org.springframework 129 | spring-orm 130 | 3.2.2.RELEASE 131 | 132 | 133 | 134 | org.aspectj 135 | aspectjweaver 136 | 1.7.2 137 | 138 | 139 | 140 | org.hibernate 141 | hibernate-core 142 | 4.2.0.Final 143 | 144 | 145 | org.junit.jupiter 146 | junit-jupiter-api 147 | RELEASE 148 | 149 | 150 | 151 | demo 152 | 153 | 154 | -------------------------------------------------------------------------------- /src/main/java/Commons/Encrypt.java: -------------------------------------------------------------------------------- 1 | package Commons; 2 | 3 | import org.junit.jupiter.api.Test; 4 | 5 | import java.io.UnsupportedEncodingException; 6 | import java.security.MessageDigest; 7 | import java.util.regex.Pattern; 8 | 9 | /** 10 | * Created by Elric on 2017/6/11. 11 | */ 12 | public class Encrypt { 13 | private static final String KEY_MD5 = "MD5"; 14 | // 全局数组 15 | private static final String[] strDigits = { "0", "1", "2", "3", "4", "5", 16 | "6", "7", "8", "9", "a", "b", "c", "d", "e", "f" }; 17 | 18 | // 返回形式为数字跟字符串 19 | private static String byteToArrayString(byte bByte) { 20 | int iRet = bByte; 21 | if (iRet < 0) { 22 | iRet += 256; 23 | } 24 | int iD1 = iRet / 16; 25 | int iD2 = iRet % 16; 26 | return strDigits[iD1] + strDigits[iD2]; 27 | } 28 | 29 | // 转换字节数组为16进制字串 30 | private static String byteToString(byte[] bByte) { 31 | StringBuffer sBuffer = new StringBuffer(); 32 | for (int i = 0; i < bByte.length; i++) { 33 | sBuffer.append(byteToArrayString(bByte[i])); 34 | } 35 | return sBuffer.toString(); 36 | } 37 | /** 38 | * MD5加密 39 | * @param strObj 40 | * @return 41 | * @throws Exception 42 | */ 43 | public static String GetMD5Code(String strObj) throws Exception{ 44 | MessageDigest md = MessageDigest.getInstance(KEY_MD5); 45 | // md.digest() 该函数返回值为存放哈希值结果的byte数组 46 | return byteToString(md.digest(strObj.getBytes())); 47 | } 48 | 49 | } -------------------------------------------------------------------------------- /src/main/java/servlet/AServlet.java: -------------------------------------------------------------------------------- 1 | package servlet; 2 | 3 | import javax.servlet.ServletException; 4 | import javax.servlet.http.HttpServlet; 5 | import javax.servlet.http.HttpServletRequest; 6 | import javax.servlet.http.HttpServletResponse; 7 | import java.io.IOException; 8 | 9 | /** 10 | * Created by Elric on 2017/6/11. 11 | */ 12 | public class AServlet extends HttpServlet { 13 | @Override 14 | protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { 15 | //设置编码 16 | resp.setCharacterEncoding("utf-8"); 17 | resp.setCharacterEncoding("utf-8"); 18 | resp.setContentType("text/html"); 19 | // resp.getWriter().print("请求返回的内容"); 20 | resp.getWriter().print("
\n" + 21 | "

WWF

\n" + 22 | "

\n" + 23 | "The World Wide Fund for Nature (WWF) is an international organization working on issues regarding the conservation, research and restoration of the environment, formerly named the World Wildlife Fund. WWF was founded in 1961.\n" + 24 | "

\n" + 25 | "
\n" + 26 | "\n" + 27 | "
\n" + 28 | "

WWF's Panda symbol

\n" + 29 | "

\n" + 30 | "The Panda has become the symbol of WWF. The well-known panda logo of WWF originated from a panda named Chi Chi that was transferred from the Beijing Zoo to the London Zoo in the same year of the establishment of WWF.\n" + 31 | "

\n" + 32 | "
\n"); 33 | resp.getWriter().flush(); 34 | resp.getWriter().close(); 35 | } 36 | @Override 37 | protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { 38 | this.doGet(req,resp); 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /src/main/java/servlet/CheckServlet.java: -------------------------------------------------------------------------------- 1 | package servlet; 2 | 3 | import javax.servlet.ServletException; 4 | import javax.servlet.annotation.WebServlet; 5 | import javax.servlet.http.HttpServlet; 6 | import javax.servlet.http.HttpServletRequest; 7 | import javax.servlet.http.HttpServletResponse; 8 | import java.io.IOException; 9 | import java.io.PrintWriter; 10 | 11 | /** 12 | * Created by Elric on 2017/3/6. 13 | */ 14 | @WebServlet(name = "CheckServlet") 15 | public class CheckServlet extends HttpServlet { 16 | public void service(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{ 17 | response.setContentType("text/html"); 18 | response.setCharacterEncoding("utf-8"); 19 | PrintWriter out = response.getWriter(); 20 | String uname = request.getParameter("uname"); 21 | if("` ".equals(uname)){ 22 | out.println("用户名输入正确"); 23 | }else{ 24 | out.println("用户名输入不正确"); 25 | } 26 | out.flush(); 27 | out.close(); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /src/main/java/servlet/PicServlet.java: -------------------------------------------------------------------------------- 1 | package servlet; 2 | 3 | import Commons.Encrypt; 4 | 5 | import javax.servlet.ServletException; 6 | import javax.servlet.http.HttpServlet; 7 | import javax.servlet.http.HttpServletRequest; 8 | import javax.servlet.http.HttpServletResponse; 9 | import java.io.IOException; 10 | 11 | /** 12 | * Created by Elric on 2017/6/11. 13 | */ 14 | public class PicServlet extends HttpServlet{ 15 | private String token = "yourToken"; 16 | String params = null; 17 | @Override 18 | protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { 19 | //resp.getWriter().print(params); 20 | this.doPost(req,resp); 21 | } 22 | @Override 23 | protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { 24 | try { 25 | params = Encrypt.GetMD5Code(token); 26 | System.out.println("服务器的params:"+params); 27 | }catch (Exception e){ 28 | e.printStackTrace(); 29 | } 30 | String getToken = req.getParameter("token"); 31 | System.out.println("客户端的params:"+getToken); 32 | if (getToken.equals(params)){ 33 | resp.getWriter().print( "测试图片\n"); 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /src/main/java/websocket/WebSocketTest.java: -------------------------------------------------------------------------------- 1 | package websocket; 2 | 3 | /** 4 | * Created by Elric on 2017/3/3. 5 | */ 6 | import java.io.IOException; 7 | import java.util.concurrent.CopyOnWriteArraySet; 8 | 9 | import javax.servlet.http.HttpServlet; 10 | import javax.websocket.*; 11 | import javax.websocket.server.ServerEndpoint; 12 | 13 | /** 14 | * @ServerEndpoint 注解是一个类层次的注解,它的功能主要是将目前的类定义成一个websocket服务器端, 15 | * 注解的值将被用于监听用户连接的终端访问URL地址,客户端可以通过这个URL来连接到WebSocket服务器端 16 | */ 17 | @ServerEndpoint("/websocket") 18 | public class WebSocketTest { 19 | //静态变量,用来记录当前在线连接数。应该把它设计成线程安全的。 20 | private static int onlineCount = 0; 21 | 22 | //concurrent包的线程安全Set,用来存放每个客户端对应的MyWebSocket对象。若要实现服务端与单一客户端通信的话,可以使用Map来存放,其中Key可以为用户标识 23 | private static CopyOnWriteArraySet webSocketSet = new CopyOnWriteArraySet(); 24 | 25 | //与某个客户端的连接会话,需要通过它来给客户端发送数据 26 | private Session session; 27 | 28 | /** 29 | * 连接建立成功调用的方法 30 | * 31 | * @param session 可选的参数。session为与某个客户端的连接会话,需要通过它来给客户端发送数据 32 | */ 33 | @OnOpen 34 | public void onOpen(Session session) throws IOException { 35 | this.session = session; 36 | webSocketSet.add(this); //加入set中 37 | addOnlineCount(); //在线数加1 38 | System.out.println("有新连接加入!当前在线人数为" + getOnlineCount()); 39 | try { 40 | this.session.getBasicRemote().sendText("当前人数为:"+String.valueOf(getOnlineCount())); 41 | }catch (IOException e){ 42 | e.printStackTrace(); 43 | } 44 | } 45 | 46 | /** 47 | * 连接关闭调用的方法 48 | */ 49 | @OnClose 50 | public void onClose() { 51 | webSocketSet.remove(this); //从set中删除 52 | subOnlineCount(); //在线数减1 53 | System.out.println("有一连接关闭!当前在线人数为" + getOnlineCount()); 54 | } 55 | 56 | /** 57 | * 收到客户端消息后调用的方法 58 | * 59 | * @param message 客户端发送过来的消息 60 | * @param session 可选的参数 61 | */ 62 | @OnMessage 63 | public void onMessage(String message, Session session) { 64 | System.out.println("来自客户端的消息:" + message); 65 | //群发消息 66 | for (WebSocketTest item : webSocketSet) { 67 | try { 68 | item.sendMessage(message); 69 | } catch (IOException e) { 70 | e.printStackTrace(); 71 | continue; 72 | } 73 | } 74 | } 75 | 76 | /** 77 | * 发生错误时调用 78 | * 79 | * @param session 80 | * @param error 81 | */ 82 | @OnError 83 | public void onError(Session session, Throwable error) { 84 | System.out.println("发生错误"); 85 | error.printStackTrace(); 86 | } 87 | 88 | /** 89 | * 这个方法与上面几个方法不一样。没有用注解,是根据自己需要添加的方法。 90 | * 91 | * @param message 92 | * @throws IOException 93 | */ 94 | public void sendMessage(String message) throws IOException { 95 | this.session.getBasicRemote().sendText(message); 96 | //this.session.getAsyncRemote().sendText(message); 97 | } 98 | 99 | public static synchronized int getOnlineCount() { 100 | return onlineCount; 101 | } 102 | 103 | public static synchronized void addOnlineCount() { 104 | WebSocketTest.onlineCount++; 105 | } 106 | 107 | public static synchronized void subOnlineCount() { 108 | WebSocketTest.onlineCount--; 109 | } 110 | } -------------------------------------------------------------------------------- /src/main/webapp/Ajax.jsp: -------------------------------------------------------------------------------- 1 | <%-- 2 | Created by IntelliJ IDEA. 3 | User: Elric 4 | Date: 2017/3/6 5 | Time: 9:33 6 | To change this template use File | Settings | File Templates. 7 | --%> 8 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 9 | 10 | 11 | Ajax 12 | 48 | 49 | 50 | 51 |
52 | 用户名: 53 |
54 | 密 码:
55 | 56 |
57 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /src/main/webapp/AjaxAddDom.jsp: -------------------------------------------------------------------------------- 1 | <%-- 2 | Created by IntelliJ IDEA. 3 | User: Elric 4 | Date: 2017/6/11 5 | Time: 13:05 6 | To change this template use File | Settings | File Templates. 7 | --%> 8 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 9 | 10 | 11 | Ajax Add Html 12 | 13 | 14 | 15 | 16 | 17 |
18 |
19 | 20 | 21 | -------------------------------------------------------------------------------- /src/main/webapp/Js/Encrypt.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by Elric on 2017/6/12. 3 | */ 4 | /* 5 | * A JavaScript implementation of the RSA Data Security, Inc. MD5 Message 6 | * Digest Algorithm, as defined in RFC 1321. 7 | * Version 2.1 Copyright (C) Paul Johnston 1999 - 2002. 8 | * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet 9 | * Distributed under the BSD License 10 | * See http://pajhome.org.uk/crypt/md5 for more info. 11 | */ 12 | 13 | /* 14 | * Configurable variables. You may need to tweak these to be compatible with 15 | * the server-side, but the defaults work in most cases. 16 | */ 17 | var hexcase = 0; /* hex output format. 0 - lowercase; 1 - uppercase */ 18 | var b64pad = ""; /* base-64 pad character. "=" for strict RFC compliance */ 19 | var chrsz = 8; /* bits per input character. 8 - ASCII; 16 - Unicode */ 20 | 21 | /* 22 | * These are the functions you'll usually want to call 23 | * They take string arguments and return either hex or base-64 encoded strings 24 | */ 25 | function hex_md5(s){ return binl2hex(core_md5(str2binl(s), s.length * chrsz));} 26 | function b64_md5(s){ return binl2b64(core_md5(str2binl(s), s.length * chrsz));} 27 | function str_md5(s){ return binl2str(core_md5(str2binl(s), s.length * chrsz));} 28 | function hex_hmac_md5(key, data) { return binl2hex(core_hmac_md5(key, data)); } 29 | function b64_hmac_md5(key, data) { return binl2b64(core_hmac_md5(key, data)); } 30 | function str_hmac_md5(key, data) { return binl2str(core_hmac_md5(key, data)); } 31 | 32 | /* 33 | * Perform a simple self-test to see if the VM is working 34 | */ 35 | function md5_vm_test() 36 | { 37 | return hex_md5("abc") == "900150983cd24fb0d6963f7d28e17f72"; 38 | } 39 | 40 | /* 41 | * Calculate the MD5 of an array of little-endian words, and a bit length 42 | */ 43 | function core_md5(x, len) 44 | { 45 | /* append padding */ 46 | x[len >> 5] |= 0x80 << ((len) % 32); 47 | x[(((len + 64) >>> 9) << 4) + 14] = len; 48 | 49 | var a = 1732584193; 50 | var b = -271733879; 51 | var c = -1732584194; 52 | var d = 271733878; 53 | 54 | for(var i = 0; i < x.length; i += 16) 55 | { 56 | var olda = a; 57 | var oldb = b; 58 | var oldc = c; 59 | var oldd = d; 60 | 61 | a = md5_ff(a, b, c, d, x[i+ 0], 7 , -680876936); 62 | d = md5_ff(d, a, b, c, x[i+ 1], 12, -389564586); 63 | c = md5_ff(c, d, a, b, x[i+ 2], 17, 606105819); 64 | b = md5_ff(b, c, d, a, x[i+ 3], 22, -1044525330); 65 | a = md5_ff(a, b, c, d, x[i+ 4], 7 , -176418897); 66 | d = md5_ff(d, a, b, c, x[i+ 5], 12, 1200080426); 67 | c = md5_ff(c, d, a, b, x[i+ 6], 17, -1473231341); 68 | b = md5_ff(b, c, d, a, x[i+ 7], 22, -45705983); 69 | a = md5_ff(a, b, c, d, x[i+ 8], 7 , 1770035416); 70 | d = md5_ff(d, a, b, c, x[i+ 9], 12, -1958414417); 71 | c = md5_ff(c, d, a, b, x[i+10], 17, -42063); 72 | b = md5_ff(b, c, d, a, x[i+11], 22, -1990404162); 73 | a = md5_ff(a, b, c, d, x[i+12], 7 , 1804603682); 74 | d = md5_ff(d, a, b, c, x[i+13], 12, -40341101); 75 | c = md5_ff(c, d, a, b, x[i+14], 17, -1502002290); 76 | b = md5_ff(b, c, d, a, x[i+15], 22, 1236535329); 77 | 78 | a = md5_gg(a, b, c, d, x[i+ 1], 5 , -165796510); 79 | d = md5_gg(d, a, b, c, x[i+ 6], 9 , -1069501632); 80 | c = md5_gg(c, d, a, b, x[i+11], 14, 643717713); 81 | b = md5_gg(b, c, d, a, x[i+ 0], 20, -373897302); 82 | a = md5_gg(a, b, c, d, x[i+ 5], 5 , -701558691); 83 | d = md5_gg(d, a, b, c, x[i+10], 9 , 38016083); 84 | c = md5_gg(c, d, a, b, x[i+15], 14, -660478335); 85 | b = md5_gg(b, c, d, a, x[i+ 4], 20, -405537848); 86 | a = md5_gg(a, b, c, d, x[i+ 9], 5 , 568446438); 87 | d = md5_gg(d, a, b, c, x[i+14], 9 , -1019803690); 88 | c = md5_gg(c, d, a, b, x[i+ 3], 14, -187363961); 89 | b = md5_gg(b, c, d, a, x[i+ 8], 20, 1163531501); 90 | a = md5_gg(a, b, c, d, x[i+13], 5 , -1444681467); 91 | d = md5_gg(d, a, b, c, x[i+ 2], 9 , -51403784); 92 | c = md5_gg(c, d, a, b, x[i+ 7], 14, 1735328473); 93 | b = md5_gg(b, c, d, a, x[i+12], 20, -1926607734); 94 | 95 | a = md5_hh(a, b, c, d, x[i+ 5], 4 , -378558); 96 | d = md5_hh(d, a, b, c, x[i+ 8], 11, -2022574463); 97 | c = md5_hh(c, d, a, b, x[i+11], 16, 1839030562); 98 | b = md5_hh(b, c, d, a, x[i+14], 23, -35309556); 99 | a = md5_hh(a, b, c, d, x[i+ 1], 4 , -1530992060); 100 | d = md5_hh(d, a, b, c, x[i+ 4], 11, 1272893353); 101 | c = md5_hh(c, d, a, b, x[i+ 7], 16, -155497632); 102 | b = md5_hh(b, c, d, a, x[i+10], 23, -1094730640); 103 | a = md5_hh(a, b, c, d, x[i+13], 4 , 681279174); 104 | d = md5_hh(d, a, b, c, x[i+ 0], 11, -358537222); 105 | c = md5_hh(c, d, a, b, x[i+ 3], 16, -722521979); 106 | b = md5_hh(b, c, d, a, x[i+ 6], 23, 76029189); 107 | a = md5_hh(a, b, c, d, x[i+ 9], 4 , -640364487); 108 | d = md5_hh(d, a, b, c, x[i+12], 11, -421815835); 109 | c = md5_hh(c, d, a, b, x[i+15], 16, 530742520); 110 | b = md5_hh(b, c, d, a, x[i+ 2], 23, -995338651); 111 | 112 | a = md5_ii(a, b, c, d, x[i+ 0], 6 , -198630844); 113 | d = md5_ii(d, a, b, c, x[i+ 7], 10, 1126891415); 114 | c = md5_ii(c, d, a, b, x[i+14], 15, -1416354905); 115 | b = md5_ii(b, c, d, a, x[i+ 5], 21, -57434055); 116 | a = md5_ii(a, b, c, d, x[i+12], 6 , 1700485571); 117 | d = md5_ii(d, a, b, c, x[i+ 3], 10, -1894986606); 118 | c = md5_ii(c, d, a, b, x[i+10], 15, -1051523); 119 | b = md5_ii(b, c, d, a, x[i+ 1], 21, -2054922799); 120 | a = md5_ii(a, b, c, d, x[i+ 8], 6 , 1873313359); 121 | d = md5_ii(d, a, b, c, x[i+15], 10, -30611744); 122 | c = md5_ii(c, d, a, b, x[i+ 6], 15, -1560198380); 123 | b = md5_ii(b, c, d, a, x[i+13], 21, 1309151649); 124 | a = md5_ii(a, b, c, d, x[i+ 4], 6 , -145523070); 125 | d = md5_ii(d, a, b, c, x[i+11], 10, -1120210379); 126 | c = md5_ii(c, d, a, b, x[i+ 2], 15, 718787259); 127 | b = md5_ii(b, c, d, a, x[i+ 9], 21, -343485551); 128 | 129 | a = safe_add(a, olda); 130 | b = safe_add(b, oldb); 131 | c = safe_add(c, oldc); 132 | d = safe_add(d, oldd); 133 | } 134 | return Array(a, b, c, d); 135 | 136 | } 137 | 138 | /* 139 | * These functions implement the four basic operations the algorithm uses. 140 | */ 141 | function md5_cmn(q, a, b, x, s, t) 142 | { 143 | return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s),b); 144 | } 145 | function md5_ff(a, b, c, d, x, s, t) 146 | { 147 | return md5_cmn((b & c) | ((~b) & d), a, b, x, s, t); 148 | } 149 | function md5_gg(a, b, c, d, x, s, t) 150 | { 151 | return md5_cmn((b & d) | (c & (~d)), a, b, x, s, t); 152 | } 153 | function md5_hh(a, b, c, d, x, s, t) 154 | { 155 | return md5_cmn(b ^ c ^ d, a, b, x, s, t); 156 | } 157 | function md5_ii(a, b, c, d, x, s, t) 158 | { 159 | return md5_cmn(c ^ (b | (~d)), a, b, x, s, t); 160 | } 161 | 162 | /* 163 | * Calculate the HMAC-MD5, of a key and some data 164 | */ 165 | function core_hmac_md5(key, data) 166 | { 167 | var bkey = str2binl(key); 168 | if(bkey.length > 16) bkey = core_md5(bkey, key.length * chrsz); 169 | 170 | var ipad = Array(16), opad = Array(16); 171 | for(var i = 0; i < 16; i++) 172 | { 173 | ipad[i] = bkey[i] ^ 0x36363636; 174 | opad[i] = bkey[i] ^ 0x5C5C5C5C; 175 | } 176 | 177 | var hash = core_md5(ipad.concat(str2binl(data)), 512 + data.length * chrsz); 178 | return core_md5(opad.concat(hash), 512 + 128); 179 | } 180 | 181 | /* 182 | * Add integers, wrapping at 2^32. This uses 16-bit operations internally 183 | * to work around bugs in some JS interpreters. 184 | */ 185 | function safe_add(x, y) 186 | { 187 | var lsw = (x & 0xFFFF) + (y & 0xFFFF); 188 | var msw = (x >> 16) + (y >> 16) + (lsw >> 16); 189 | return (msw << 16) | (lsw & 0xFFFF); 190 | } 191 | 192 | /* 193 | * Bitwise rotate a 32-bit number to the left. 194 | */ 195 | function bit_rol(num, cnt) 196 | { 197 | return (num << cnt) | (num >>> (32 - cnt)); 198 | } 199 | 200 | /* 201 | * Convert a string to an array of little-endian words 202 | * If chrsz is ASCII, characters >255 have their hi-byte silently ignored. 203 | */ 204 | function str2binl(str) 205 | { 206 | var bin = Array(); 207 | var mask = (1 << chrsz) - 1; 208 | for(var i = 0; i < str.length * chrsz; i += chrsz) 209 | bin[i>>5] |= (str.charCodeAt(i / chrsz) & mask) << (i%32); 210 | return bin; 211 | } 212 | 213 | /* 214 | * Convert an array of little-endian words to a string 215 | */ 216 | function binl2str(bin) 217 | { 218 | var str = ""; 219 | var mask = (1 << chrsz) - 1; 220 | for(var i = 0; i < bin.length * 32; i += chrsz) 221 | str += String.fromCharCode((bin[i>>5] >>> (i % 32)) & mask); 222 | return str; 223 | } 224 | 225 | /* 226 | * Convert an array of little-endian words to a hex string. 227 | */ 228 | function binl2hex(binarray) 229 | { 230 | var hex_tab = hexcase ? "0123456789ABCDEF" : "0123456789abcdef"; 231 | var str = ""; 232 | for(var i = 0; i < binarray.length * 4; i++) 233 | { 234 | str += hex_tab.charAt((binarray[i>>2] >> ((i%4)*8+4)) & 0xF) + 235 | hex_tab.charAt((binarray[i>>2] >> ((i%4)*8 )) & 0xF); 236 | } 237 | return str; 238 | } 239 | 240 | /* 241 | * Convert an array of little-endian words to a base-64 string 242 | */ 243 | function binl2b64(binarray) 244 | { 245 | var tab = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; 246 | var str = ""; 247 | for(var i = 0; i < binarray.length * 4; i += 3) 248 | { 249 | var triplet = (((binarray[i >> 2] >> 8 * ( i %4)) & 0xFF) << 16) 250 | | (((binarray[i+1 >> 2] >> 8 * ((i+1)%4)) & 0xFF) << 8 ) 251 | | ((binarray[i+2 >> 2] >> 8 * ((i+2)%4)) & 0xFF); 252 | for(var j = 0; j < 4; j++) 253 | { 254 | if(i * 8 + j * 6 > binarray.length * 32) str += b64pad; 255 | else str += tab.charAt((triplet >> 6*(3-j)) & 0x3F); 256 | } 257 | } 258 | return str; 259 | } 260 | -------------------------------------------------------------------------------- /src/main/webapp/Js/LoadPage.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by Elric on 2017/6/11. 3 | */ 4 | $(function () { 5 | //创建XMLHttpRequest对象 6 | var textRequest = new XMLHttpRequest(); 7 | //请求的方式 8 | var Gmethod = "GET"; 9 | //请求的地址 10 | var Texturl = "ajax"; 11 | //初始化请求参数 12 | textRequest.open(Gmethod, Texturl, true); 13 | //发送请求 14 | textRequest.send(null); 15 | //获取请求的结果 16 | textRequest.onreadystatechange = function () { 17 | //如果响应请求 18 | if (textRequest.readyState == 4) { 19 | //如果响应成功 20 | if (textRequest.status == 200 || textRequest.status == 304) { 21 | var text = textRequest.responseText; 22 | var d = document.getElementsByTagName("div")[0]; 23 | d.innerHTML = text; 24 | } 25 | } 26 | }; 27 | var param = getParam("yourToken"); 28 | getPic(param); 29 | function getParam(yourtoken){ 30 | return hex_md5(yourtoken); 31 | } 32 | function getPic(tokenStr){ 33 | var picRequest = new XMLHttpRequest(); 34 | var picUrl = "getPic?token="+tokenStr; 35 | var pMethod = "POST"; 36 | picRequest.open(pMethod,picUrl,true); 37 | picRequest.send(null); 38 | picRequest.onreadystatechange = function () { 39 | if (picRequest.readyState==4){ 40 | if(picRequest.status==200||picRequest.status==302){ 41 | var picTag = picRequest.responseText; 42 | var d2 = document.getElementsByTagName("div")[1]; 43 | d2.innerHTML = picTag; 44 | } 45 | } 46 | } 47 | } 48 | 49 | 50 | }); 51 | -------------------------------------------------------------------------------- /src/main/webapp/Pic/me.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/src/main/webapp/Pic/me.jpg -------------------------------------------------------------------------------- /src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 7 | Archetype Created Web Application 8 | 9 | 10 | check 11 | servlet.CheckServlet 12 | 13 | 14 | 15 | check 16 | /check_user 17 | 18 | 19 | AServlet 20 | servlet.AServlet 21 | 22 | 23 | AServlet 24 | /ajax 25 | 26 | 27 | 28 | PicServlet 29 | servlet.PicServlet 30 | 31 | 32 | 33 | PicServlet 34 | /getPic 35 | 36 | 37 | -------------------------------------------------------------------------------- /src/main/webapp/chat.jsp: -------------------------------------------------------------------------------- 1 | <%-- 2 | Created by IntelliJ IDEA. 3 | User: Elric 4 | Date: 2017/3/3 5 | Time: 10:01 6 | To change this template use File | Settings | File Templates. 7 | --%> 8 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 9 | 10 | 11 | Java后端WebSocket的Tomcat实现 12 | 13 | 14 | Welcome
15 | 16 |
17 | 18 |
19 |
20 | 21 | 22 | 74 | -------------------------------------------------------------------------------- /src/main/webapp/index.jsp: -------------------------------------------------------------------------------- 1 | <%-- 2 | Created by IntelliJ IDEA. 3 | User: Elric 4 | Date: 2017/6/11 5 | Time: 13:05 6 | To change this template use File | Settings | File Templates. 7 | --%> 8 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 9 | 10 | 11 | Ajax Add Html 12 | 13 | 14 |
15 |
16 |

WWF

17 |

The World Wide Fund for Nature (WWF) is an international organization working on issues regarding the 18 | conservation, research and restoration of the environment, formerly named the World Wildlife Fund. WWF was 19 | founded in 1961

20 |
21 |
22 |

WWF's Panda symbol

23 |

The Panda has become the symbol of WWF. The well-known panda logo of WWF originated from a panda named Chi 24 | Chi that was transferred from the Beijing Zoo to the London Zoo in the same year of the establishment of 25 | WWF

26 |
27 |
28 |
29 | testPic 30 |
31 | 32 | 33 | -------------------------------------------------------------------------------- /target/classes/Commons/Encrypt.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/classes/Commons/Encrypt.class -------------------------------------------------------------------------------- /target/classes/servlet/AServlet.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/classes/servlet/AServlet.class -------------------------------------------------------------------------------- /target/classes/servlet/CheckServlet.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/classes/servlet/CheckServlet.class -------------------------------------------------------------------------------- /target/classes/servlet/PicServlet.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/classes/servlet/PicServlet.class -------------------------------------------------------------------------------- /target/classes/websocket/WebSocketTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/classes/websocket/WebSocketTest.class -------------------------------------------------------------------------------- /target/demo/Ajax.jsp: -------------------------------------------------------------------------------- 1 | <%-- 2 | Created by IntelliJ IDEA. 3 | User: Elric 4 | Date: 2017/3/6 5 | Time: 9:33 6 | To change this template use File | Settings | File Templates. 7 | --%> 8 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 9 | 10 | 11 | Ajax 12 | 48 | 49 | 50 | 51 |
52 | 用户名: 53 |
54 | 密 码:
55 | 56 |
57 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /target/demo/AjaxAddDom.jsp: -------------------------------------------------------------------------------- 1 | <%-- 2 | Created by IntelliJ IDEA. 3 | User: Elric 4 | Date: 2017/6/11 5 | Time: 13:05 6 | To change this template use File | Settings | File Templates. 7 | --%> 8 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 9 | 10 | 11 | Ajax Add Html 12 | 13 | 14 | 15 | 16 | 17 |
18 |
19 | 20 | 21 | -------------------------------------------------------------------------------- /target/demo/Js/Encrypt.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by Elric on 2017/6/12. 3 | */ 4 | /* 5 | * A JavaScript implementation of the RSA Data Security, Inc. MD5 Message 6 | * Digest Algorithm, as defined in RFC 1321. 7 | * Version 2.1 Copyright (C) Paul Johnston 1999 - 2002. 8 | * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet 9 | * Distributed under the BSD License 10 | * See http://pajhome.org.uk/crypt/md5 for more info. 11 | */ 12 | 13 | /* 14 | * Configurable variables. You may need to tweak these to be compatible with 15 | * the server-side, but the defaults work in most cases. 16 | */ 17 | var hexcase = 0; /* hex output format. 0 - lowercase; 1 - uppercase */ 18 | var b64pad = ""; /* base-64 pad character. "=" for strict RFC compliance */ 19 | var chrsz = 8; /* bits per input character. 8 - ASCII; 16 - Unicode */ 20 | 21 | /* 22 | * These are the functions you'll usually want to call 23 | * They take string arguments and return either hex or base-64 encoded strings 24 | */ 25 | function hex_md5(s){ return binl2hex(core_md5(str2binl(s), s.length * chrsz));} 26 | function b64_md5(s){ return binl2b64(core_md5(str2binl(s), s.length * chrsz));} 27 | function str_md5(s){ return binl2str(core_md5(str2binl(s), s.length * chrsz));} 28 | function hex_hmac_md5(key, data) { return binl2hex(core_hmac_md5(key, data)); } 29 | function b64_hmac_md5(key, data) { return binl2b64(core_hmac_md5(key, data)); } 30 | function str_hmac_md5(key, data) { return binl2str(core_hmac_md5(key, data)); } 31 | 32 | /* 33 | * Perform a simple self-test to see if the VM is working 34 | */ 35 | function md5_vm_test() 36 | { 37 | return hex_md5("abc") == "900150983cd24fb0d6963f7d28e17f72"; 38 | } 39 | 40 | /* 41 | * Calculate the MD5 of an array of little-endian words, and a bit length 42 | */ 43 | function core_md5(x, len) 44 | { 45 | /* append padding */ 46 | x[len >> 5] |= 0x80 << ((len) % 32); 47 | x[(((len + 64) >>> 9) << 4) + 14] = len; 48 | 49 | var a = 1732584193; 50 | var b = -271733879; 51 | var c = -1732584194; 52 | var d = 271733878; 53 | 54 | for(var i = 0; i < x.length; i += 16) 55 | { 56 | var olda = a; 57 | var oldb = b; 58 | var oldc = c; 59 | var oldd = d; 60 | 61 | a = md5_ff(a, b, c, d, x[i+ 0], 7 , -680876936); 62 | d = md5_ff(d, a, b, c, x[i+ 1], 12, -389564586); 63 | c = md5_ff(c, d, a, b, x[i+ 2], 17, 606105819); 64 | b = md5_ff(b, c, d, a, x[i+ 3], 22, -1044525330); 65 | a = md5_ff(a, b, c, d, x[i+ 4], 7 , -176418897); 66 | d = md5_ff(d, a, b, c, x[i+ 5], 12, 1200080426); 67 | c = md5_ff(c, d, a, b, x[i+ 6], 17, -1473231341); 68 | b = md5_ff(b, c, d, a, x[i+ 7], 22, -45705983); 69 | a = md5_ff(a, b, c, d, x[i+ 8], 7 , 1770035416); 70 | d = md5_ff(d, a, b, c, x[i+ 9], 12, -1958414417); 71 | c = md5_ff(c, d, a, b, x[i+10], 17, -42063); 72 | b = md5_ff(b, c, d, a, x[i+11], 22, -1990404162); 73 | a = md5_ff(a, b, c, d, x[i+12], 7 , 1804603682); 74 | d = md5_ff(d, a, b, c, x[i+13], 12, -40341101); 75 | c = md5_ff(c, d, a, b, x[i+14], 17, -1502002290); 76 | b = md5_ff(b, c, d, a, x[i+15], 22, 1236535329); 77 | 78 | a = md5_gg(a, b, c, d, x[i+ 1], 5 , -165796510); 79 | d = md5_gg(d, a, b, c, x[i+ 6], 9 , -1069501632); 80 | c = md5_gg(c, d, a, b, x[i+11], 14, 643717713); 81 | b = md5_gg(b, c, d, a, x[i+ 0], 20, -373897302); 82 | a = md5_gg(a, b, c, d, x[i+ 5], 5 , -701558691); 83 | d = md5_gg(d, a, b, c, x[i+10], 9 , 38016083); 84 | c = md5_gg(c, d, a, b, x[i+15], 14, -660478335); 85 | b = md5_gg(b, c, d, a, x[i+ 4], 20, -405537848); 86 | a = md5_gg(a, b, c, d, x[i+ 9], 5 , 568446438); 87 | d = md5_gg(d, a, b, c, x[i+14], 9 , -1019803690); 88 | c = md5_gg(c, d, a, b, x[i+ 3], 14, -187363961); 89 | b = md5_gg(b, c, d, a, x[i+ 8], 20, 1163531501); 90 | a = md5_gg(a, b, c, d, x[i+13], 5 , -1444681467); 91 | d = md5_gg(d, a, b, c, x[i+ 2], 9 , -51403784); 92 | c = md5_gg(c, d, a, b, x[i+ 7], 14, 1735328473); 93 | b = md5_gg(b, c, d, a, x[i+12], 20, -1926607734); 94 | 95 | a = md5_hh(a, b, c, d, x[i+ 5], 4 , -378558); 96 | d = md5_hh(d, a, b, c, x[i+ 8], 11, -2022574463); 97 | c = md5_hh(c, d, a, b, x[i+11], 16, 1839030562); 98 | b = md5_hh(b, c, d, a, x[i+14], 23, -35309556); 99 | a = md5_hh(a, b, c, d, x[i+ 1], 4 , -1530992060); 100 | d = md5_hh(d, a, b, c, x[i+ 4], 11, 1272893353); 101 | c = md5_hh(c, d, a, b, x[i+ 7], 16, -155497632); 102 | b = md5_hh(b, c, d, a, x[i+10], 23, -1094730640); 103 | a = md5_hh(a, b, c, d, x[i+13], 4 , 681279174); 104 | d = md5_hh(d, a, b, c, x[i+ 0], 11, -358537222); 105 | c = md5_hh(c, d, a, b, x[i+ 3], 16, -722521979); 106 | b = md5_hh(b, c, d, a, x[i+ 6], 23, 76029189); 107 | a = md5_hh(a, b, c, d, x[i+ 9], 4 , -640364487); 108 | d = md5_hh(d, a, b, c, x[i+12], 11, -421815835); 109 | c = md5_hh(c, d, a, b, x[i+15], 16, 530742520); 110 | b = md5_hh(b, c, d, a, x[i+ 2], 23, -995338651); 111 | 112 | a = md5_ii(a, b, c, d, x[i+ 0], 6 , -198630844); 113 | d = md5_ii(d, a, b, c, x[i+ 7], 10, 1126891415); 114 | c = md5_ii(c, d, a, b, x[i+14], 15, -1416354905); 115 | b = md5_ii(b, c, d, a, x[i+ 5], 21, -57434055); 116 | a = md5_ii(a, b, c, d, x[i+12], 6 , 1700485571); 117 | d = md5_ii(d, a, b, c, x[i+ 3], 10, -1894986606); 118 | c = md5_ii(c, d, a, b, x[i+10], 15, -1051523); 119 | b = md5_ii(b, c, d, a, x[i+ 1], 21, -2054922799); 120 | a = md5_ii(a, b, c, d, x[i+ 8], 6 , 1873313359); 121 | d = md5_ii(d, a, b, c, x[i+15], 10, -30611744); 122 | c = md5_ii(c, d, a, b, x[i+ 6], 15, -1560198380); 123 | b = md5_ii(b, c, d, a, x[i+13], 21, 1309151649); 124 | a = md5_ii(a, b, c, d, x[i+ 4], 6 , -145523070); 125 | d = md5_ii(d, a, b, c, x[i+11], 10, -1120210379); 126 | c = md5_ii(c, d, a, b, x[i+ 2], 15, 718787259); 127 | b = md5_ii(b, c, d, a, x[i+ 9], 21, -343485551); 128 | 129 | a = safe_add(a, olda); 130 | b = safe_add(b, oldb); 131 | c = safe_add(c, oldc); 132 | d = safe_add(d, oldd); 133 | } 134 | return Array(a, b, c, d); 135 | 136 | } 137 | 138 | /* 139 | * These functions implement the four basic operations the algorithm uses. 140 | */ 141 | function md5_cmn(q, a, b, x, s, t) 142 | { 143 | return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s),b); 144 | } 145 | function md5_ff(a, b, c, d, x, s, t) 146 | { 147 | return md5_cmn((b & c) | ((~b) & d), a, b, x, s, t); 148 | } 149 | function md5_gg(a, b, c, d, x, s, t) 150 | { 151 | return md5_cmn((b & d) | (c & (~d)), a, b, x, s, t); 152 | } 153 | function md5_hh(a, b, c, d, x, s, t) 154 | { 155 | return md5_cmn(b ^ c ^ d, a, b, x, s, t); 156 | } 157 | function md5_ii(a, b, c, d, x, s, t) 158 | { 159 | return md5_cmn(c ^ (b | (~d)), a, b, x, s, t); 160 | } 161 | 162 | /* 163 | * Calculate the HMAC-MD5, of a key and some data 164 | */ 165 | function core_hmac_md5(key, data) 166 | { 167 | var bkey = str2binl(key); 168 | if(bkey.length > 16) bkey = core_md5(bkey, key.length * chrsz); 169 | 170 | var ipad = Array(16), opad = Array(16); 171 | for(var i = 0; i < 16; i++) 172 | { 173 | ipad[i] = bkey[i] ^ 0x36363636; 174 | opad[i] = bkey[i] ^ 0x5C5C5C5C; 175 | } 176 | 177 | var hash = core_md5(ipad.concat(str2binl(data)), 512 + data.length * chrsz); 178 | return core_md5(opad.concat(hash), 512 + 128); 179 | } 180 | 181 | /* 182 | * Add integers, wrapping at 2^32. This uses 16-bit operations internally 183 | * to work around bugs in some JS interpreters. 184 | */ 185 | function safe_add(x, y) 186 | { 187 | var lsw = (x & 0xFFFF) + (y & 0xFFFF); 188 | var msw = (x >> 16) + (y >> 16) + (lsw >> 16); 189 | return (msw << 16) | (lsw & 0xFFFF); 190 | } 191 | 192 | /* 193 | * Bitwise rotate a 32-bit number to the left. 194 | */ 195 | function bit_rol(num, cnt) 196 | { 197 | return (num << cnt) | (num >>> (32 - cnt)); 198 | } 199 | 200 | /* 201 | * Convert a string to an array of little-endian words 202 | * If chrsz is ASCII, characters >255 have their hi-byte silently ignored. 203 | */ 204 | function str2binl(str) 205 | { 206 | var bin = Array(); 207 | var mask = (1 << chrsz) - 1; 208 | for(var i = 0; i < str.length * chrsz; i += chrsz) 209 | bin[i>>5] |= (str.charCodeAt(i / chrsz) & mask) << (i%32); 210 | return bin; 211 | } 212 | 213 | /* 214 | * Convert an array of little-endian words to a string 215 | */ 216 | function binl2str(bin) 217 | { 218 | var str = ""; 219 | var mask = (1 << chrsz) - 1; 220 | for(var i = 0; i < bin.length * 32; i += chrsz) 221 | str += String.fromCharCode((bin[i>>5] >>> (i % 32)) & mask); 222 | return str; 223 | } 224 | 225 | /* 226 | * Convert an array of little-endian words to a hex string. 227 | */ 228 | function binl2hex(binarray) 229 | { 230 | var hex_tab = hexcase ? "0123456789ABCDEF" : "0123456789abcdef"; 231 | var str = ""; 232 | for(var i = 0; i < binarray.length * 4; i++) 233 | { 234 | str += hex_tab.charAt((binarray[i>>2] >> ((i%4)*8+4)) & 0xF) + 235 | hex_tab.charAt((binarray[i>>2] >> ((i%4)*8 )) & 0xF); 236 | } 237 | return str; 238 | } 239 | 240 | /* 241 | * Convert an array of little-endian words to a base-64 string 242 | */ 243 | function binl2b64(binarray) 244 | { 245 | var tab = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; 246 | var str = ""; 247 | for(var i = 0; i < binarray.length * 4; i += 3) 248 | { 249 | var triplet = (((binarray[i >> 2] >> 8 * ( i %4)) & 0xFF) << 16) 250 | | (((binarray[i+1 >> 2] >> 8 * ((i+1)%4)) & 0xFF) << 8 ) 251 | | ((binarray[i+2 >> 2] >> 8 * ((i+2)%4)) & 0xFF); 252 | for(var j = 0; j < 4; j++) 253 | { 254 | if(i * 8 + j * 6 > binarray.length * 32) str += b64pad; 255 | else str += tab.charAt((triplet >> 6*(3-j)) & 0x3F); 256 | } 257 | } 258 | return str; 259 | } 260 | -------------------------------------------------------------------------------- /target/demo/Js/LoadPage.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by Elric on 2017/6/11. 3 | */ 4 | $(function () { 5 | //创建XMLHttpRequest对象 6 | var textRequest = new XMLHttpRequest(); 7 | //请求的方式 8 | var Gmethod = "GET"; 9 | //请求的地址 10 | var Texturl = "ajax"; 11 | //初始化请求参数 12 | textRequest.open(Gmethod, Texturl, true); 13 | //发送请求 14 | textRequest.send(null); 15 | //获取请求的结果 16 | textRequest.onreadystatechange = function () { 17 | //如果响应请求 18 | if (textRequest.readyState == 4) { 19 | //如果响应成功 20 | if (textRequest.status == 200 || textRequest.status == 304) { 21 | var text = textRequest.responseText; 22 | var d = document.getElementsByTagName("div")[0]; 23 | d.innerHTML = text; 24 | } 25 | } 26 | }; 27 | var param = getParam("yourToken"); 28 | getPic(param); 29 | function getParam(yourtoken){ 30 | return hex_md5(yourtoken); 31 | } 32 | function getPic(tokenStr){ 33 | var picRequest = new XMLHttpRequest(); 34 | var picUrl = "getPic?token="+tokenStr; 35 | var pMethod = "POST"; 36 | picRequest.open(pMethod,picUrl,true); 37 | picRequest.send(null); 38 | picRequest.onreadystatechange = function () { 39 | if (picRequest.readyState==4){ 40 | if(picRequest.status==200||picRequest.status==302){ 41 | var picTag = picRequest.responseText; 42 | var d2 = document.getElementsByTagName("div")[1]; 43 | d2.innerHTML = picTag; 44 | } 45 | } 46 | } 47 | } 48 | 49 | 50 | }); 51 | -------------------------------------------------------------------------------- /target/demo/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Built-By: Elric 3 | Created-By: IntelliJ IDEA 4 | Build-Jdk: 1.8.0_101 5 | 6 | -------------------------------------------------------------------------------- /target/demo/Pic/me.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/Pic/me.jpg -------------------------------------------------------------------------------- /target/demo/WEB-INF/classes/Commons/Encrypt.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/classes/Commons/Encrypt.class -------------------------------------------------------------------------------- /target/demo/WEB-INF/classes/servlet/AServlet.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/classes/servlet/AServlet.class -------------------------------------------------------------------------------- /target/demo/WEB-INF/classes/servlet/CheckServlet.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/classes/servlet/CheckServlet.class -------------------------------------------------------------------------------- /target/demo/WEB-INF/classes/servlet/PicServlet.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/classes/servlet/PicServlet.class -------------------------------------------------------------------------------- /target/demo/WEB-INF/classes/websocket/WebSocketTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/classes/websocket/WebSocketTest.class -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/antlr-2.7.7.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/antlr-2.7.7.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/aopalliance-1.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/aopalliance-1.0.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/asm-3.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/asm-3.3.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/asm-commons-3.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/asm-commons-3.3.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/asm-tree-3.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/asm-tree-3.3.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/aspectjweaver-1.7.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/aspectjweaver-1.7.2.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/c3p0-0.9.5-pre2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/c3p0-0.9.5-pre2.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/commons-beanutils-1.8.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/commons-beanutils-1.8.0.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/commons-collections-3.2.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/commons-collections-3.2.1.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/commons-fileupload-1.2.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/commons-fileupload-1.2.2.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/commons-io-2.0.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/commons-io-2.0.1.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/commons-lang-2.5.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/commons-lang-2.5.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/commons-lang3-3.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/commons-lang3-3.1.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/commons-logging-1.1.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/commons-logging-1.1.1.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/dom4j-1.6.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/dom4j-1.6.1.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/ezmorph-1.0.6.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/ezmorph-1.0.6.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/fastjson-1.1.29.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/fastjson-1.1.29.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/freemarker-2.3.19.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/freemarker-2.3.19.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/hibernate-commons-annotations-4.0.1.Final.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/hibernate-commons-annotations-4.0.1.Final.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/hibernate-core-4.2.0.Final.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/hibernate-core-4.2.0.Final.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/hibernate-jpa-2.0-api-1.0.1.Final.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/hibernate-jpa-2.0-api-1.0.1.Final.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/javassist-3.15.0-GA.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/javassist-3.15.0-GA.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/javax.servlet-api-3.0.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/javax.servlet-api-3.0.1.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/jboss-logging-3.1.0.GA.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/jboss-logging-3.1.0.GA.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/jboss-transaction-api_1.1_spec-1.0.0.Final.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/jboss-transaction-api_1.1_spec-1.0.0.Final.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/json-lib-2.4-jdk15.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/json-lib-2.4-jdk15.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/junit-jupiter-api-5.0.0-M4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/junit-jupiter-api-5.0.0-M4.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/junit-platform-commons-1.0.0-M4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/junit-platform-commons-1.0.0-M4.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/log4j-1.2.17.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/log4j-1.2.17.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/mchange-commons-java-0.2.5.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/mchange-commons-java-0.2.5.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/mysql-connector-java-5.1.24.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/mysql-connector-java-5.1.24.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/ognl-3.0.6.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/ognl-3.0.6.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/opentest4j-1.0.0-M2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/opentest4j-1.0.0-M2.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/spring-aop-3.2.2.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/spring-aop-3.2.2.RELEASE.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/spring-beans-3.2.2.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/spring-beans-3.2.2.RELEASE.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/spring-context-3.2.2.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/spring-context-3.2.2.RELEASE.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/spring-context-support-3.2.2.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/spring-context-support-3.2.2.RELEASE.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/spring-core-3.2.2.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/spring-core-3.2.2.RELEASE.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/spring-expression-3.2.2.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/spring-expression-3.2.2.RELEASE.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/spring-jdbc-3.2.2.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/spring-jdbc-3.2.2.RELEASE.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/spring-orm-3.2.2.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/spring-orm-3.2.2.RELEASE.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/spring-tx-3.2.2.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/spring-tx-3.2.2.RELEASE.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/spring-web-3.2.2.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/spring-web-3.2.2.RELEASE.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/struts2-convention-plugin-2.3.14.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/struts2-convention-plugin-2.3.14.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/struts2-core-2.3.14.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/struts2-core-2.3.14.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/struts2-spring-plugin-2.3.14.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/struts2-spring-plugin-2.3.14.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/lib/xwork-core-2.3.14.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linzhangtong/PreventSpider/9094fa2edf452bf5b64888df0831cb9aeea034dd/target/demo/WEB-INF/lib/xwork-core-2.3.14.jar -------------------------------------------------------------------------------- /target/demo/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 7 | Archetype Created Web Application 8 | 9 | 10 | check 11 | servlet.CheckServlet 12 | 13 | 14 | 15 | check 16 | /check_user 17 | 18 | 19 | AServlet 20 | servlet.AServlet 21 | 22 | 23 | AServlet 24 | /ajax 25 | 26 | 27 | 28 | PicServlet 29 | servlet.PicServlet 30 | 31 | 32 | 33 | PicServlet 34 | /getPic 35 | 36 | 37 | -------------------------------------------------------------------------------- /target/demo/chat.jsp: -------------------------------------------------------------------------------- 1 | <%-- 2 | Created by IntelliJ IDEA. 3 | User: Elric 4 | Date: 2017/3/3 5 | Time: 10:01 6 | To change this template use File | Settings | File Templates. 7 | --%> 8 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 9 | 10 | 11 | Java后端WebSocket的Tomcat实现 12 | 13 | 14 | Welcome
15 | 16 |
17 | 18 |
19 |
20 | 21 | 22 | 74 | -------------------------------------------------------------------------------- /target/demo/index.jsp: -------------------------------------------------------------------------------- 1 | <%-- 2 | Created by IntelliJ IDEA. 3 | User: Elric 4 | Date: 2017/6/11 5 | Time: 13:05 6 | To change this template use File | Settings | File Templates. 7 | --%> 8 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 9 | 10 | 11 | Ajax Add Html 12 | 13 | 14 |
15 |
16 |

WWF

17 |

The World Wide Fund for Nature (WWF) is an international organization working on issues regarding the 18 | conservation, research and restoration of the environment, formerly named the World Wildlife Fund. WWF was 19 | founded in 1961

20 |
21 |
22 |

WWF's Panda symbol

23 |

The Panda has become the symbol of WWF. The well-known panda logo of WWF originated from a panda named Chi 24 | Chi that was transferred from the Beijing Zoo to the London Zoo in the same year of the establishment of 25 | WWF

26 |
27 |
28 |
29 | testPic 30 |
31 | 32 | 33 | -------------------------------------------------------------------------------- /webSocket.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | --------------------------------------------------------------------------------