diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a1c2a23 --- /dev/null +++ b/.gitignore @@ -0,0 +1,23 @@ +# Compiled class file +*.class + +# Log file +*.log + +# BlueJ files +*.ctxt + +# Mobile Tools for Java (J2ME) +.mtj.tmp/ + +# Package Files # +*.jar +*.war +*.nar +*.ear +*.zip +*.tar.gz +*.rar + +# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml +hs_err_pid* diff --git a/20210413/.gradle/6.7/fileChanges/last-build.bin b/20210413/.gradle/6.7/fileChanges/last-build.bin deleted file mode 100644 index f76dd23..0000000 Binary files a/20210413/.gradle/6.7/fileChanges/last-build.bin and /dev/null differ diff --git a/20210413/.gradle/6.7/fileHashes/fileHashes.lock b/20210413/.gradle/6.7/fileHashes/fileHashes.lock deleted file mode 100644 index 6bf113d..0000000 Binary files a/20210413/.gradle/6.7/fileHashes/fileHashes.lock and /dev/null differ diff --git a/20210413/.gradle/6.7/gc.properties b/20210413/.gradle/6.7/gc.properties deleted file mode 100644 index e69de29..0000000 diff --git a/20210413/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/20210413/.gradle/buildOutputCleanup/buildOutputCleanup.lock deleted file mode 100644 index 4ad1971..0000000 Binary files a/20210413/.gradle/buildOutputCleanup/buildOutputCleanup.lock and /dev/null differ diff --git a/20210413/.gradle/buildOutputCleanup/cache.properties b/20210413/.gradle/buildOutputCleanup/cache.properties deleted file mode 100644 index 7b53cf3..0000000 --- a/20210413/.gradle/buildOutputCleanup/cache.properties +++ /dev/null @@ -1,2 +0,0 @@ -#Wed Apr 14 18:36:05 CST 2021 -gradle.version=6.7 diff --git a/20210413/.gradle/checksums/checksums.lock b/20210413/.gradle/checksums/checksums.lock deleted file mode 100644 index 3478743..0000000 Binary files a/20210413/.gradle/checksums/checksums.lock and /dev/null differ diff --git a/20210413/.gradle/configuration-cache/gc.properties b/20210413/.gradle/configuration-cache/gc.properties deleted file mode 100644 index e69de29..0000000 diff --git a/20210413/.gradle/vcs-1/gc.properties b/20210413/.gradle/vcs-1/gc.properties deleted file mode 100644 index e69de29..0000000 diff --git a/20210413/.idea/.gitignore b/20210413/.idea/.gitignore deleted file mode 100644 index c944980..0000000 --- a/20210413/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/../../../../:\code\20210413\.idea/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/20210413/.idea/.name b/20210413/.idea/.name deleted file mode 100644 index 5ab2f8a..0000000 --- a/20210413/.idea/.name +++ /dev/null @@ -1 +0,0 @@ -Hello \ No newline at end of file diff --git a/20210413/.idea/misc.xml b/20210413/.idea/misc.xml deleted file mode 100644 index 0548357..0000000 --- a/20210413/.idea/misc.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/20210413/.idea/modules.xml b/20210413/.idea/modules.xml deleted file mode 100644 index bde8540..0000000 --- a/20210413/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/20210413/20210413.iml b/20210413/20210413.iml deleted file mode 100644 index c90834f..0000000 --- a/20210413/20210413.iml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/20210413/Hello.class b/20210413/Hello.class deleted file mode 100644 index 752a350..0000000 Binary files a/20210413/Hello.class and /dev/null differ diff --git a/20210413/Hello.java b/20210413/Hello.java deleted file mode 100644 index 799b76b..0000000 --- a/20210413/Hello.java +++ /dev/null @@ -1,5 +0,0 @@ -public class Hello{ - public static void main(String[] args){ - System.out.print("Hello,World!"); - } -} \ No newline at end of file diff --git a/20210413/out/production/20210413/Hello.class b/20210413/out/production/20210413/Hello.class deleted file mode 100644 index fa39d1f..0000000 Binary files a/20210413/out/production/20210413/Hello.class and /dev/null differ diff --git a/20210413/src/Hello.java b/20210413/src/Hello.java deleted file mode 100644 index 4c7dfcf..0000000 --- a/20210413/src/Hello.java +++ /dev/null @@ -1,5 +0,0 @@ -public class Hello { - public static void main(String[] args) { - System.out.println("Hello World!"); - } -} diff --git a/20210414/.gradle/6.7/fileChanges/last-build.bin b/20210414/.gradle/6.7/fileChanges/last-build.bin deleted file mode 100644 index f76dd23..0000000 Binary files a/20210414/.gradle/6.7/fileChanges/last-build.bin and /dev/null differ diff --git a/20210414/.gradle/6.7/fileHashes/fileHashes.lock b/20210414/.gradle/6.7/fileHashes/fileHashes.lock deleted file mode 100644 index 76734c5..0000000 Binary files a/20210414/.gradle/6.7/fileHashes/fileHashes.lock and /dev/null differ diff --git a/20210414/.gradle/6.7/gc.properties b/20210414/.gradle/6.7/gc.properties deleted file mode 100644 index e69de29..0000000 diff --git a/20210414/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/20210414/.gradle/buildOutputCleanup/buildOutputCleanup.lock deleted file mode 100644 index 5a25357..0000000 Binary files a/20210414/.gradle/buildOutputCleanup/buildOutputCleanup.lock and /dev/null differ diff --git a/20210414/.gradle/buildOutputCleanup/cache.properties b/20210414/.gradle/buildOutputCleanup/cache.properties deleted file mode 100644 index e7967f1..0000000 --- a/20210414/.gradle/buildOutputCleanup/cache.properties +++ /dev/null @@ -1,2 +0,0 @@ -#Sun May 16 16:38:51 CST 2021 -gradle.version=6.7 diff --git a/20210414/.gradle/checksums/checksums.lock b/20210414/.gradle/checksums/checksums.lock deleted file mode 100644 index d8e9b75..0000000 Binary files a/20210414/.gradle/checksums/checksums.lock and /dev/null differ diff --git a/20210414/.gradle/configuration-cache/gc.properties b/20210414/.gradle/configuration-cache/gc.properties deleted file mode 100644 index e69de29..0000000 diff --git a/20210414/.gradle/vcs-1/gc.properties b/20210414/.gradle/vcs-1/gc.properties deleted file mode 100644 index e69de29..0000000 diff --git a/20210414/.idea/.gitignore b/20210414/.idea/.gitignore deleted file mode 100644 index aed29c1..0000000 --- a/20210414/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/../../../../:\code\20210414\.idea/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/20210414/.idea/inspectionProfiles/Project_Default.xml b/20210414/.idea/inspectionProfiles/Project_Default.xml deleted file mode 100644 index cbc068e..0000000 --- a/20210414/.idea/inspectionProfiles/Project_Default.xml +++ /dev/null @@ -1,36 +0,0 @@ - - - - \ No newline at end of file diff --git a/20210414/.idea/misc.xml b/20210414/.idea/misc.xml deleted file mode 100644 index 318ed03..0000000 --- a/20210414/.idea/misc.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/20210414/.idea/modules.xml b/20210414/.idea/modules.xml deleted file mode 100644 index b908c28..0000000 --- a/20210414/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/20210414/.idea/uiDesigner.xml b/20210414/.idea/uiDesigner.xml deleted file mode 100644 index e96534f..0000000 --- a/20210414/.idea/uiDesigner.xml +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/20210414/.idea/vcs.xml b/20210414/.idea/vcs.xml deleted file mode 100644 index 237a746..0000000 --- a/20210414/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/Test.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/Test.class" deleted file mode 100644 index 98abb40..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/Test.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/TestString/Demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/TestString/Demo01.class" deleted file mode 100644 index a09f1b4..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/TestString/Demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/TestString/Demo02.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/TestString/Demo02.class" deleted file mode 100644 index 4b9eb87..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/TestString/Demo02.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/TestString/Demo03.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/TestString/Demo03.class" deleted file mode 100644 index 51bd49f..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/TestString/Demo03.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/TestString/Demo04.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/TestString/Demo04.class" deleted file mode 100644 index 7b6be2b..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/TestString/Demo04.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/TestString/Demo05.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/TestString/Demo05.class" deleted file mode 100644 index a67686d..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/TestString/Demo05.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/TestString/TestStringBuilder01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/TestString/TestStringBuilder01.class" deleted file mode 100644 index e73c937..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/TestString/TestStringBuilder01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/DateFormat.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/DateFormat.class" deleted file mode 100644 index 6f3fd54..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/DateFormat.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/NewDate.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/NewDate.class" deleted file mode 100644 index c97905f..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/NewDate.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/Printf.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/Printf.class" deleted file mode 100644 index 36ee4b5..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/Printf.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/Printf2.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/Printf2.class" deleted file mode 100644 index 3705520..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/Printf2.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/Sleep.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/Sleep.class" deleted file mode 100644 index f178434..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/Sleep.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/TestCalendar.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/TestCalendar.class" deleted file mode 100644 index 20e156b..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/TestCalendar.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/TestCalendar2.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/TestCalendar2.class" deleted file mode 100644 index 9e1839a..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/TestCalendar2.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/TestCalendar3.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/TestCalendar3.class" deleted file mode 100644 index 7f203a2..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/date/TestCalendar3.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/file/Demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/file/Demo01.class" deleted file mode 100644 index db8433d..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/file/Demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/math/demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/math/demo01.class" deleted file mode 100644 index e294870..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/math/demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/clone/Clone.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/clone/Clone.class" deleted file mode 100644 index afbeb4a..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/clone/Clone.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/clone/Employee.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/clone/Employee.class" deleted file mode 100644 index 955e9be..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/clone/Employee.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/clone/Person.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/clone/Person.class" deleted file mode 100644 index 3dd1b31..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/clone/Person.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/pack/demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/pack/demo01.class" deleted file mode 100644 index c0e6ebb..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/pack/demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/pack/demo02.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/pack/demo02.class" deleted file mode 100644 index 90ad670..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/pack/demo02.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/pack/demo03.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/pack/demo03.class" deleted file mode 100644 index 6f0de02..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/pack/demo03.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/pack/demo04.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/pack/demo04.class" deleted file mode 100644 index 521424d..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/pack/demo04.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/toString/demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/toString/demo01.class" deleted file mode 100644 index eee77ec..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/object/toString/demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/random/demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/random/demo01.class" deleted file mode 100644 index 7d2eb74..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/classtest/random/demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/Employee.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/Employee.class" deleted file mode 100644 index ac46fb2..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/Employee.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/Test01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/Test01.class" deleted file mode 100644 index ab81bfd..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/Test01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/Demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/Demo01.class" deleted file mode 100644 index f9748e3..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/Demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/Dog.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/Dog.class" deleted file mode 100644 index 823bfab..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/Dog.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/Student.txt" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/Student.txt" deleted file mode 100644 index 978ac47..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/Student.txt" +++ /dev/null @@ -1,100 +0,0 @@ -0.43361519039711616 -0.6616795586361217 -0.7564605272434136 -0.06722344528809998 -0.6014339024148708 -0.8681269074568515 -0.9800353791412754 -0.32258834585361773 -0.964244923754186 -0.9110694517631818 -0.44541143770224445 -0.3751043213723897 -0.5194467918101 -0.9529985430700955 -0.4276505426212429 -0.9644551733263713 -0.7315174338895452 -0.05379173073370125 -0.47611748162306855 -0.5722837379219753 -0.4698104573458217 -0.0855762641973038 -0.713517228026924 -0.04395753197365471 -0.2014948942378706 -0.6041291247395892 -0.30415311644376886 -0.18409794041276129 -0.2641311089836228 -0.9517459863339714 -0.787481407892603 -0.36691879401337013 -0.6058535841815335 -0.5315513722307713 -0.3021391295556136 -0.25808507644529566 -0.7258566862031675 -0.8895109399360828 -0.33597395023851173 -0.3317153623281387 -0.6738565102421861 -0.9679457079931966 -0.529206112378893 -0.9843169823242545 -0.8744286366949632 -0.6531376549149858 -0.23070397922174912 -0.6968557412758551 -0.23059803744070917 -0.5296546409258361 -0.961456690766635 -0.8768270940371542 -0.4307835858948279 -0.5753119938028515 -0.6746786665006775 -0.7241089578606591 -0.6341769301281678 -0.3832270050524702 -0.7185821855387682 -0.7075409243101185 -0.7418614102840648 -0.3812117320772226 -0.7057061944108266 -0.013588516034473197 -0.27445351986230226 -0.43378859785489965 -0.07179067707540843 -0.634115044504339 -0.4717759777848969 -0.15840202394567326 -0.967537741705961 -0.5971981153280341 -0.6060479137222647 -0.26493891745460074 -0.26820209561757113 -0.21309121419673038 -0.6573046434920742 -0.23645961877973387 -0.9088048529827357 -0.10684563695653437 -0.43823507239483783 -0.7090797092324317 -0.4568669312243755 -0.23977154505435483 -0.9753529503347202 -0.9802326656880026 -0.819908571533815 -0.08383115921222084 -0.45439294871852665 -0.17708213888721336 -0.2515647885320721 -0.6062211704827649 -0.3200505558541057 -0.7506416510426306 -0.36801637637291473 -0.7458157213559078 -0.18366041753901197 -0.12619854839195277 -0.715538910877383 -0.6188046280328041 diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/Student1.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/Student1.class" deleted file mode 100644 index cb12fef..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/Student1.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/TestArrayList.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/TestArrayList.class" deleted file mode 100644 index 7111355..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/TestArrayList.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/char.txt" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/char.txt" deleted file mode 100644 index 7f31a4c..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/char.txt" +++ /dev/null @@ -1 +0,0 @@ -MircosoftsunIBMOracleAppletMircosoftsunIBMOracleApplet \ No newline at end of file diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/log.txt" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/log.txt" deleted file mode 100644 index 729bdaf..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/arraylistTest/log.txt" +++ /dev/null @@ -1 +0,0 @@ -0 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 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 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 912 913 914 915 916 917 918 919 920 921 922 923 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 \ No newline at end of file diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectionstest/Demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectionstest/Demo01.class" deleted file mode 100644 index aa9d6a5..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectionstest/Demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectionstest/Demo02.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectionstest/Demo02.class" deleted file mode 100644 index 7b07304..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectionstest/Demo02.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectionstest/Demo03.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectionstest/Demo03.class" deleted file mode 100644 index 75d6c14..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectionstest/Demo03.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectionstest/Demo04.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectionstest/Demo04.class" deleted file mode 100644 index b73bd56..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectionstest/Demo04.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectiontest/Demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectiontest/Demo01.class" deleted file mode 100644 index 8eac46a..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectiontest/Demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectiontest/Demo02.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectiontest/Demo02.class" deleted file mode 100644 index a2b20f7..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectiontest/Demo02.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectiontest/Student.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectiontest/Student.class" deleted file mode 100644 index acd9ee8..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/collectiontest/Student.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/generic/MyGenericMethod.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/generic/MyGenericMethod.class" deleted file mode 100644 index c8631a5..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/generic/MyGenericMethod.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/generic/MyInterface.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/generic/MyInterface.class" deleted file mode 100644 index 60af0db..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/generic/MyInterface.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/generic/MyInterfaceImpl.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/generic/MyInterfaceImpl.class" deleted file mode 100644 index 126ab7e..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/generic/MyInterfaceImpl.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/generic/MyInterfaceImpl2.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/generic/MyInterfaceImpl2.class" deleted file mode 100644 index 7a53b4d..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/generic/MyInterfaceImpl2.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/generic/myGeneric.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/generic/myGeneric.class" deleted file mode 100644 index ca04115..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/generic/myGeneric.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/generic/testGeneric.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/generic/testGeneric.class" deleted file mode 100644 index 0e28bdd..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/generic/testGeneric.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/hashmaptest/Demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/hashmaptest/Demo01.class" deleted file mode 100644 index 6ca7c62..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/hashmaptest/Demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/hashmaptest/Demo02.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/hashmaptest/Demo02.class" deleted file mode 100644 index 5cd18b1..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/hashmaptest/Demo02.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/hashmaptest/Demo03.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/hashmaptest/Demo03.class" deleted file mode 100644 index f2c223c..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/hashmaptest/Demo03.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/hashmaptest/Student.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/hashmaptest/Student.class" deleted file mode 100644 index cf15b50..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/hashmaptest/Student.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/linkedlisttest/Demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/linkedlisttest/Demo01.class" deleted file mode 100644 index 0884c83..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/linkedlisttest/Demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/listtest/Demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/listtest/Demo01.class" deleted file mode 100644 index ac43698..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/listtest/Demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/listtest/Demo02.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/listtest/Demo02.class" deleted file mode 100644 index 3d04331..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/listtest/Demo02.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Demo01.class" deleted file mode 100644 index 14fb0ef..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Demo02$1.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Demo02$1.class" deleted file mode 100644 index 1d44a3d..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Demo02$1.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Demo02.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Demo02.class" deleted file mode 100644 index 1905dbe..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Demo02.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Demo03.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Demo03.class" deleted file mode 100644 index a651232..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Demo03.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Demo04$1.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Demo04$1.class" deleted file mode 100644 index e87f867..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Demo04$1.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Demo04.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Demo04.class" deleted file mode 100644 index f54991c..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Demo04.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Person.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Person.class" deleted file mode 100644 index bf9e3d4..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/settest/Person.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/treemaptest/Demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/treemaptest/Demo01.class" deleted file mode 100644 index 16da41e..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/treemaptest/Demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/vectortest/Demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/vectortest/Demo01.class" deleted file mode 100644 index b0f1fa9..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/collection/vectortest/Demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/exception/demo01/TestException.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/exception/demo01/TestException.class" deleted file mode 100644 index 5325a93..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/exception/demo01/TestException.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/exception/demo02/NestTry.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/exception/demo02/NestTry.class" deleted file mode 100644 index 62966e9..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/exception/demo02/NestTry.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/exception/demo02/TestThrow.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/exception/demo02/TestThrow.class" deleted file mode 100644 index 05a36b7..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/exception/demo02/TestThrow.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/exception/demo03/MyExcrption.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/exception/demo03/MyExcrption.class" deleted file mode 100644 index 3a420d8..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/exception/demo03/MyExcrption.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/exception/demo03/TestMyException.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/exception/demo03/TestMyException.class" deleted file mode 100644 index eb61666..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/exception/demo03/TestMyException.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/BufferReaderTest.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/BufferReaderTest.class" deleted file mode 100644 index c9d5554..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/BufferReaderTest.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/T.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/T.class" deleted file mode 100644 index 96ea6ab..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/T.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestBufferStream.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestBufferStream.class" deleted file mode 100644 index b6b161b..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestBufferStream.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestDateStream.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestDateStream.class" deleted file mode 100644 index 3ee2105..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestDateStream.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestFileInputStream.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestFileInputStream.class" deleted file mode 100644 index dce0b0d..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestFileInputStream.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestFileOutputStream.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestFileOutputStream.class" deleted file mode 100644 index 8d8b8ce..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestFileOutputStream.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestFileWriter.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestFileWriter.class" deleted file mode 100644 index a0390af..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestFileWriter.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestObjectIO.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestObjectIO.class" deleted file mode 100644 index 8035a44..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestObjectIO.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestPrintStream.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestPrintStream.class" deleted file mode 100644 index c18d0a4..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestPrintStream.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestTransform1.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestTransform1.class" deleted file mode 100644 index 85b4276..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestTransform1.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestTransform2.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestTransform2.class" deleted file mode 100644 index 98c867a..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/iotest/TestTransform2.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/Application.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/Application.class" deleted file mode 100644 index 5ddb1e0..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/Application.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/Student2.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/Student2.class" deleted file mode 100644 index d661f92..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/Student2.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo01/Demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo01/Demo01.class" deleted file mode 100644 index d5c6994..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo01/Demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo01/Demo02.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo01/Demo02.class" deleted file mode 100644 index cc3913d..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo01/Demo02.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo01/Demo03.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo01/Demo03.class" deleted file mode 100644 index 218829b..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo01/Demo03.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo01/Student.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo01/Student.class" deleted file mode 100644 index d45c0cf..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo01/Student.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo02/Application.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo02/Application.class" deleted file mode 100644 index 7fea01d..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo02/Application.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo02/Demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo02/Demo01.class" deleted file mode 100644 index 45f22bb..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo02/Demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo02/Demo02.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo02/Demo02.class" deleted file mode 100644 index 7ebdfb7..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo02/Demo02.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo02/Student.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo02/Student.class" deleted file mode 100644 index 4c12fc9..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo02/Student.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo03/Student.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo03/Student.class" deleted file mode 100644 index 1bf7708..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo03/Student.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo03/Test.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo03/Test.class" deleted file mode 100644 index 50a825c..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo03/Test.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo04/Person.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo04/Person.class" deleted file mode 100644 index 8342337..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo04/Person.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo04/Student.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo04/Student.class" deleted file mode 100644 index c9b59e2..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo04/Student.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo04/Test.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo04/Test.class" deleted file mode 100644 index 14c5de1..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo04/Test.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo05/Person.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo05/Person.class" deleted file mode 100644 index f969996..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo05/Person.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo05/Student.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo05/Student.class" deleted file mode 100644 index 7336203..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo05/Student.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo05/Teacher.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo05/Teacher.class" deleted file mode 100644 index 0b5fabf..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo05/Teacher.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo05/Test.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo05/Test.class" deleted file mode 100644 index 744465d..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo05/Test.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo06/Person.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo06/Person.class" deleted file mode 100644 index 8bbc8e3..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo06/Person.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo06/Student.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo06/Student.class" deleted file mode 100644 index 28a4d90..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo06/Student.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo06/Teacher.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo06/Teacher.class" deleted file mode 100644 index c7cfdd1..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo06/Teacher.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo06/Test.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo06/Test.class" deleted file mode 100644 index 69a8f2e..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo06/Test.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo07/Action.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo07/Action.class" deleted file mode 100644 index 47361ad..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo07/Action.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo07/Eat.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo07/Eat.class" deleted file mode 100644 index 7348733..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo07/Eat.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Action.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Action.class" deleted file mode 100644 index f924aec..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Action.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Person.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Person.class" deleted file mode 100644 index a4cf9e1..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Person.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Person2.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Person2.class" deleted file mode 100644 index 312c532..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Person2.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Person3.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Person3.class" deleted file mode 100644 index a2d15f2..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Person3.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Person4.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Person4.class" deleted file mode 100644 index 5aaa22c..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Person4.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Student.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Student.class" deleted file mode 100644 index 2215ff5..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Student.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Test.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Test.class" deleted file mode 100644 index c396613..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo08/Test.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo09/Duck.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo09/Duck.class" deleted file mode 100644 index f077a0f..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo09/Duck.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo09/Fish.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo09/Fish.class" deleted file mode 100644 index fbeac0e..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo09/Fish.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo09/Goldfish.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo09/Goldfish.class" deleted file mode 100644 index a145435..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo09/Goldfish.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo09/InterfaceDemo.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo09/InterfaceDemo.class" deleted file mode 100644 index bde0ac5..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo09/InterfaceDemo.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo09/SmallDuck.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo09/SmallDuck.class" deleted file mode 100644 index 0fb1119..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo09/SmallDuck.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo09/SwimInterface.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo09/SwimInterface.class" deleted file mode 100644 index 47edc42..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo09/SwimInterface.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo10/Outer$Inter$1Inter2.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo10/Outer$Inter$1Inter2.class" deleted file mode 100644 index a09cc61..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo10/Outer$Inter$1Inter2.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo10/Outer$Inter.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo10/Outer$Inter.class" deleted file mode 100644 index d98f18d..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo10/Outer$Inter.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo10/Outer.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo10/Outer.class" deleted file mode 100644 index 34d16db..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo10/Outer.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo10/Test.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo10/Test.class" deleted file mode 100644 index 043275e..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo10/Test.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo11/Demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo11/Demo01.class" deleted file mode 100644 index 25d9645..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo11/Demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo11/Test$1.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo11/Test$1.class" deleted file mode 100644 index 44c2bab..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo11/Test$1.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo11/Test.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo11/Test.class" deleted file mode 100644 index da2e6c2..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo11/Test.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo11/Test1.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo11/Test1.class" deleted file mode 100644 index dbf0ea3..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo11/Test1.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo11/Test2.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo11/Test2.class" deleted file mode 100644 index 60718b3..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/oop/demo11/Test2.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo01.class" deleted file mode 100644 index 397b070..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo02.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo02.class" deleted file mode 100644 index 9850978..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo02.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo03.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo03.class" deleted file mode 100644 index 5077261..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo03.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo04.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo04.class" deleted file mode 100644 index 59516c7..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo04.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo05.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo05.class" deleted file mode 100644 index 307f87d..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo05.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo06.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo06.class" deleted file mode 100644 index bbdfb14..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo06.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo07.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo07.class" deleted file mode 100644 index a02204b..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo07.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo08.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo08.class" deleted file mode 100644 index f93016d..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/array/ArrayDemo08.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/DateCharge.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/DateCharge.class" deleted file mode 100644 index eef3020..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/DateCharge.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/DateType.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/DateType.class" deleted file mode 100644 index 66ea3a2..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/DateType.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/DateType2.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/DateType2.class" deleted file mode 100644 index 8634752..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/DateType2.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/Demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/Demo01.class" deleted file mode 100644 index cf2a0f2..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/Demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/Demo02.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/Demo02.class" deleted file mode 100644 index 5212cae..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/Demo02.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/Hello.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/Hello.class" deleted file mode 100644 index e6dc4d1..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/Hello.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/JavaDocTest$HelloWorld.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/JavaDocTest$HelloWorld.class" deleted file mode 100644 index e08d8c8..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/JavaDocTest$HelloWorld.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/JavaDocTest.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/JavaDocTest.class" deleted file mode 100644 index 6c5d4c9..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/JavaDocTest.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/allclasses-frame.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/allclasses-frame.html" deleted file mode 100644 index 10933ce..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/allclasses-frame.html" +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - -所有类 - - - - - -

所有类

-
- -
- - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/allclasses-noframe.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/allclasses-noframe.html" deleted file mode 100644 index 2c7dbe0..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/allclasses-noframe.html" +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - -所有类 - - - - - -

所有类

-
- -
- - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/com/xiaokai/test/base/JavaDocTest.HelloWorld.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/com/xiaokai/test/base/JavaDocTest.HelloWorld.html" deleted file mode 100644 index 209082d..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/com/xiaokai/test/base/JavaDocTest.HelloWorld.html" +++ /dev/null @@ -1,317 +0,0 @@ - - - - - - -JavaDocTest.HelloWorld - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - - -
-
com.xiaokai.test.base
-

类 JavaDocTest.HelloWorld

-
-
- -
- -
-
- -
-
- -
-
- - -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/com/xiaokai/test/base/JavaDocTest.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/com/xiaokai/test/base/JavaDocTest.html" deleted file mode 100644 index 98b48e1..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/com/xiaokai/test/base/JavaDocTest.html" +++ /dev/null @@ -1,292 +0,0 @@ - - - - - - -JavaDocTest - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - - -
-
com.xiaokai.test.base
-

类 JavaDocTest

-
-
- -
- -
-
- -
-
- -
-
- - -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/com/xiaokai/test/base/package-frame.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/com/xiaokai/test/base/package-frame.html" deleted file mode 100644 index 662691b..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/com/xiaokai/test/base/package-frame.html" +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - -com.xiaokai.test.base - - - - - -

com.xiaokai.test.base

-
-

- -
- - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/com/xiaokai/test/base/package-summary.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/com/xiaokai/test/base/package-summary.html" deleted file mode 100644 index 3538aa8..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/com/xiaokai/test/base/package-summary.html" +++ /dev/null @@ -1,141 +0,0 @@ - - - - - - -com.xiaokai.test.base - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

程序包 com.xiaokai.test.base

-
-
- -
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/com/xiaokai/test/base/package-tree.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/com/xiaokai/test/base/package-tree.html" deleted file mode 100644 index b5b622c..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/com/xiaokai/test/base/package-tree.html" +++ /dev/null @@ -1,131 +0,0 @@ - - - - - - -com.xiaokai.test.base 类分层结构 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

程序包com.xiaokai.test.base的分层结构

-
-
-

类分层结构

- -
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/constant-values.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/constant-values.html" deleted file mode 100644 index 2e07d61..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/constant-values.html" +++ /dev/null @@ -1,121 +0,0 @@ - - - - - - -常量字段值 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

常量字段值

-

目录

-
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/deprecated-list.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/deprecated-list.html" deleted file mode 100644 index e82dc3d..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/deprecated-list.html" +++ /dev/null @@ -1,121 +0,0 @@ - - - - - - -已过时的列表 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

已过时的 API

-

目录

-
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/help-doc.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/help-doc.html" deleted file mode 100644 index 66e2705..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/help-doc.html" +++ /dev/null @@ -1,218 +0,0 @@ - - - - - - -API 帮助 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

此 API 文档的组织方式

-
此 API (应用程序编程接口) 文档包含对应于导航栏中的项目的页面, 如下所述。
-
-
- -此帮助文件适用于使用标准 doclet 生成的 API 文档。
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/index-all.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/index-all.html" deleted file mode 100644 index cb48770..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/index-all.html" +++ /dev/null @@ -1,172 +0,0 @@ - - - - - - -索引 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
C F H J M N  - - -

C

-
-
com.xiaokai.test.base - 程序包 com.xiaokai.test.base
-
 
-
- - - -

F

-
-
function(String) - 类 中的方法com.xiaokai.test.base.JavaDocTest.HelloWorld
-
 
-
- - - -

H

-
-
HelloWorld() - 类 的构造器com.xiaokai.test.base.JavaDocTest.HelloWorld
-
 
-
- - - -

J

-
-
JavaDocTest - com.xiaokai.test.base中的类
-
-
这是一个JavaDoc测试小程序
-
-
JavaDocTest() - 类 的构造器com.xiaokai.test.base.JavaDocTest
-
 
-
JavaDocTest.HelloWorld - com.xiaokai.test.base中的类
-
 
-
- - - -

M

-
-
main(String[]) - 类 中的静态方法com.xiaokai.test.base.JavaDocTest
-
 
-
- - - -

N

-
-
name - 类 中的变量com.xiaokai.test.base.JavaDocTest.HelloWorld
-
 
-
-C F H J M N 
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/index.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/index.html" deleted file mode 100644 index 8e42126..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/index.html" +++ /dev/null @@ -1,73 +0,0 @@ - - - - - - -生成的文档 (无标题) - - - - - - -<noscript> -<div>您的浏览器已禁用 JavaScript。</div> -</noscript> -<h2>框架预警</h2> -<p>请使用框架功能查看此文档。如果看到此消息, 则表明您使用的是不支持框架的 Web 客户机。链接到<a href="com/xiaokai/test/base/package-summary.html">非框架版本</a>。</p> - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/overview-tree.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/overview-tree.html" deleted file mode 100644 index c54c603..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/overview-tree.html" +++ /dev/null @@ -1,135 +0,0 @@ - - - - - - -类分层结构 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

所有程序包的分层结构

-程序包分层结构: - -
-
-

类分层结构

- -
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/package-list" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/package-list" deleted file mode 100644 index 48d3449..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/package-list" +++ /dev/null @@ -1 +0,0 @@ -com.xiaokai.test.base diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/script.js" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/script.js" deleted file mode 100644 index b346356..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/script.js" +++ /dev/null @@ -1,30 +0,0 @@ -function show(type) -{ - count = 0; - for (var key in methods) { - var row = document.getElementById(key); - if ((methods[key] & type) != 0) { - row.style.display = ''; - row.className = (count++ % 2) ? rowColor : altColor; - } - else - row.style.display = 'none'; - } - updateTabs(type); -} - -function updateTabs(type) -{ - for (var value in tabs) { - var sNode = document.getElementById(tabs[value][0]); - var spanNode = sNode.firstChild; - if (value == type) { - sNode.className = activeTableTab; - spanNode.innerHTML = tabs[value][1]; - } - else { - sNode.className = tableTab; - spanNode.innerHTML = "" + tabs[value][1] + ""; - } - } -} diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/stylesheet.css" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/stylesheet.css" deleted file mode 100644 index 98055b2..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/base/stylesheet.css" +++ /dev/null @@ -1,574 +0,0 @@ -/* Javadoc style sheet */ -/* -Overall document style -*/ - -@import url('resources/fonts/dejavu.css'); - -body { - background-color:#ffffff; - color:#353833; - font-family:'DejaVu Sans', Arial, Helvetica, sans-serif; - font-size:14px; - margin:0; -} -a:link, a:visited { - text-decoration:none; - color:#4A6782; -} -a:hover, a:focus { - text-decoration:none; - color:#bb7a2a; -} -a:active { - text-decoration:none; - color:#4A6782; -} -a[name] { - color:#353833; -} -a[name]:hover { - text-decoration:none; - color:#353833; -} -pre { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; -} -h1 { - font-size:20px; -} -h2 { - font-size:18px; -} -h3 { - font-size:16px; - font-style:italic; -} -h4 { - font-size:13px; -} -h5 { - font-size:12px; -} -h6 { - font-size:11px; -} -ul { - list-style-type:disc; -} -code, tt { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; - padding-top:4px; - margin-top:8px; - line-height:1.4em; -} -dt code { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; - padding-top:4px; -} -table tr td dt code { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; - vertical-align:top; - padding-top:4px; -} -sup { - font-size:8px; -} -/* -Document title and Copyright styles -*/ -.clear { - clear:both; - height:0px; - overflow:hidden; -} -.aboutLanguage { - float:right; - padding:0px 21px; - font-size:11px; - z-index:200; - margin-top:-9px; -} -.legalCopy { - margin-left:.5em; -} -.bar a, .bar a:link, .bar a:visited, .bar a:active { - color:#FFFFFF; - text-decoration:none; -} -.bar a:hover, .bar a:focus { - color:#bb7a2a; -} -.tab { - background-color:#0066FF; - color:#ffffff; - padding:8px; - width:5em; - font-weight:bold; -} -/* -Navigation bar styles -*/ -.bar { - background-color:#4D7A97; - color:#FFFFFF; - padding:.8em .5em .4em .8em; - height:auto;/*height:1.8em;*/ - font-size:11px; - margin:0; -} -.topNav { - background-color:#4D7A97; - color:#FFFFFF; - float:left; - padding:0; - width:100%; - clear:right; - height:2.8em; - padding-top:10px; - overflow:hidden; - font-size:12px; -} -.bottomNav { - margin-top:10px; - background-color:#4D7A97; - color:#FFFFFF; - float:left; - padding:0; - width:100%; - clear:right; - height:2.8em; - padding-top:10px; - overflow:hidden; - font-size:12px; -} -.subNav { - background-color:#dee3e9; - float:left; - width:100%; - overflow:hidden; - font-size:12px; -} -.subNav div { - clear:left; - float:left; - padding:0 0 5px 6px; - text-transform:uppercase; -} -ul.navList, ul.subNavList { - float:left; - margin:0 25px 0 0; - padding:0; -} -ul.navList li{ - list-style:none; - float:left; - padding: 5px 6px; - text-transform:uppercase; -} -ul.subNavList li{ - list-style:none; - float:left; -} -.topNav a:link, .topNav a:active, .topNav a:visited, .bottomNav a:link, .bottomNav a:active, .bottomNav a:visited { - color:#FFFFFF; - text-decoration:none; - text-transform:uppercase; -} -.topNav a:hover, .bottomNav a:hover { - text-decoration:none; - color:#bb7a2a; - text-transform:uppercase; -} -.navBarCell1Rev { - background-color:#F8981D; - color:#253441; - margin: auto 5px; -} -.skipNav { - position:absolute; - top:auto; - left:-9999px; - overflow:hidden; -} -/* -Page header and footer styles -*/ -.header, .footer { - clear:both; - margin:0 20px; - padding:5px 0 0 0; -} -.indexHeader { - margin:10px; - position:relative; -} -.indexHeader span{ - margin-right:15px; -} -.indexHeader h1 { - font-size:13px; -} -.title { - color:#2c4557; - margin:10px 0; -} -.subTitle { - margin:5px 0 0 0; -} -.header ul { - margin:0 0 15px 0; - padding:0; -} -.footer ul { - margin:20px 0 5px 0; -} -.header ul li, .footer ul li { - list-style:none; - font-size:13px; -} -/* -Heading styles -*/ -div.details ul.blockList ul.blockList ul.blockList li.blockList h4, div.details ul.blockList ul.blockList ul.blockListLast li.blockList h4 { - background-color:#dee3e9; - border:1px solid #d0d9e0; - margin:0 0 6px -8px; - padding:7px 5px; -} -ul.blockList ul.blockList ul.blockList li.blockList h3 { - background-color:#dee3e9; - border:1px solid #d0d9e0; - margin:0 0 6px -8px; - padding:7px 5px; -} -ul.blockList ul.blockList li.blockList h3 { - padding:0; - margin:15px 0; -} -ul.blockList li.blockList h2 { - padding:0px 0 20px 0; -} -/* -Page layout container styles -*/ -.contentContainer, .sourceContainer, .classUseContainer, .serializedFormContainer, .constantValuesContainer { - clear:both; - padding:10px 20px; - position:relative; -} -.indexContainer { - margin:10px; - position:relative; - font-size:12px; -} -.indexContainer h2 { - font-size:13px; - padding:0 0 3px 0; -} -.indexContainer ul { - margin:0; - padding:0; -} -.indexContainer ul li { - list-style:none; - padding-top:2px; -} -.contentContainer .description dl dt, .contentContainer .details dl dt, .serializedFormContainer dl dt { - font-size:12px; - font-weight:bold; - margin:10px 0 0 0; - color:#4E4E4E; -} -.contentContainer .description dl dd, .contentContainer .details dl dd, .serializedFormContainer dl dd { - margin:5px 0 10px 0px; - font-size:14px; - font-family:'DejaVu Sans Mono',monospace; -} -.serializedFormContainer dl.nameValue dt { - margin-left:1px; - font-size:1.1em; - display:inline; - font-weight:bold; -} -.serializedFormContainer dl.nameValue dd { - margin:0 0 0 1px; - font-size:1.1em; - display:inline; -} -/* -List styles -*/ -ul.horizontal li { - display:inline; - font-size:0.9em; -} -ul.inheritance { - margin:0; - padding:0; -} -ul.inheritance li { - display:inline; - list-style:none; -} -ul.inheritance li ul.inheritance { - margin-left:15px; - padding-left:15px; - padding-top:1px; -} -ul.blockList, ul.blockListLast { - margin:10px 0 10px 0; - padding:0; -} -ul.blockList li.blockList, ul.blockListLast li.blockList { - list-style:none; - margin-bottom:15px; - line-height:1.4; -} -ul.blockList ul.blockList li.blockList, ul.blockList ul.blockListLast li.blockList { - padding:0px 20px 5px 10px; - border:1px solid #ededed; - background-color:#f8f8f8; -} -ul.blockList ul.blockList ul.blockList li.blockList, ul.blockList ul.blockList ul.blockListLast li.blockList { - padding:0 0 5px 8px; - background-color:#ffffff; - border:none; -} -ul.blockList ul.blockList ul.blockList ul.blockList li.blockList { - margin-left:0; - padding-left:0; - padding-bottom:15px; - border:none; -} -ul.blockList ul.blockList ul.blockList ul.blockList li.blockListLast { - list-style:none; - border-bottom:none; - padding-bottom:0; -} -table tr td dl, table tr td dl dt, table tr td dl dd { - margin-top:0; - margin-bottom:1px; -} -/* -Table styles -*/ -.overviewSummary, .memberSummary, .typeSummary, .useSummary, .constantsSummary, .deprecatedSummary { - width:100%; - border-left:1px solid #EEE; - border-right:1px solid #EEE; - border-bottom:1px solid #EEE; -} -.overviewSummary, .memberSummary { - padding:0px; -} -.overviewSummary caption, .memberSummary caption, .typeSummary caption, -.useSummary caption, .constantsSummary caption, .deprecatedSummary caption { - position:relative; - text-align:left; - background-repeat:no-repeat; - color:#253441; - font-weight:bold; - clear:none; - overflow:hidden; - padding:0px; - padding-top:10px; - padding-left:1px; - margin:0px; - white-space:pre; -} -.overviewSummary caption a:link, .memberSummary caption a:link, .typeSummary caption a:link, -.useSummary caption a:link, .constantsSummary caption a:link, .deprecatedSummary caption a:link, -.overviewSummary caption a:hover, .memberSummary caption a:hover, .typeSummary caption a:hover, -.useSummary caption a:hover, .constantsSummary caption a:hover, .deprecatedSummary caption a:hover, -.overviewSummary caption a:active, .memberSummary caption a:active, .typeSummary caption a:active, -.useSummary caption a:active, .constantsSummary caption a:active, .deprecatedSummary caption a:active, -.overviewSummary caption a:visited, .memberSummary caption a:visited, .typeSummary caption a:visited, -.useSummary caption a:visited, .constantsSummary caption a:visited, .deprecatedSummary caption a:visited { - color:#FFFFFF; -} -.overviewSummary caption span, .memberSummary caption span, .typeSummary caption span, -.useSummary caption span, .constantsSummary caption span, .deprecatedSummary caption span { - white-space:nowrap; - padding-top:5px; - padding-left:12px; - padding-right:12px; - padding-bottom:7px; - display:inline-block; - float:left; - background-color:#F8981D; - border: none; - height:16px; -} -.memberSummary caption span.activeTableTab span { - white-space:nowrap; - padding-top:5px; - padding-left:12px; - padding-right:12px; - margin-right:3px; - display:inline-block; - float:left; - background-color:#F8981D; - height:16px; -} -.memberSummary caption span.tableTab span { - white-space:nowrap; - padding-top:5px; - padding-left:12px; - padding-right:12px; - margin-right:3px; - display:inline-block; - float:left; - background-color:#4D7A97; - height:16px; -} -.memberSummary caption span.tableTab, .memberSummary caption span.activeTableTab { - padding-top:0px; - padding-left:0px; - padding-right:0px; - background-image:none; - float:none; - display:inline; -} -.overviewSummary .tabEnd, .memberSummary .tabEnd, .typeSummary .tabEnd, -.useSummary .tabEnd, .constantsSummary .tabEnd, .deprecatedSummary .tabEnd { - display:none; - width:5px; - position:relative; - float:left; - background-color:#F8981D; -} -.memberSummary .activeTableTab .tabEnd { - display:none; - width:5px; - margin-right:3px; - position:relative; - float:left; - background-color:#F8981D; -} -.memberSummary .tableTab .tabEnd { - display:none; - width:5px; - margin-right:3px; - position:relative; - background-color:#4D7A97; - float:left; - -} -.overviewSummary td, .memberSummary td, .typeSummary td, -.useSummary td, .constantsSummary td, .deprecatedSummary td { - text-align:left; - padding:0px 0px 12px 10px; -} -th.colOne, th.colFirst, th.colLast, .useSummary th, .constantsSummary th, -td.colOne, td.colFirst, td.colLast, .useSummary td, .constantsSummary td{ - vertical-align:top; - padding-right:0px; - padding-top:8px; - padding-bottom:3px; -} -th.colFirst, th.colLast, th.colOne, .constantsSummary th { - background:#dee3e9; - text-align:left; - padding:8px 3px 3px 7px; -} -td.colFirst, th.colFirst { - white-space:nowrap; - font-size:13px; -} -td.colLast, th.colLast { - font-size:13px; -} -td.colOne, th.colOne { - font-size:13px; -} -.overviewSummary td.colFirst, .overviewSummary th.colFirst, -.useSummary td.colFirst, .useSummary th.colFirst, -.overviewSummary td.colOne, .overviewSummary th.colOne, -.memberSummary td.colFirst, .memberSummary th.colFirst, -.memberSummary td.colOne, .memberSummary th.colOne, -.typeSummary td.colFirst{ - width:25%; - vertical-align:top; -} -td.colOne a:link, td.colOne a:active, td.colOne a:visited, td.colOne a:hover, td.colFirst a:link, td.colFirst a:active, td.colFirst a:visited, td.colFirst a:hover, td.colLast a:link, td.colLast a:active, td.colLast a:visited, td.colLast a:hover, .constantValuesContainer td a:link, .constantValuesContainer td a:active, .constantValuesContainer td a:visited, .constantValuesContainer td a:hover { - font-weight:bold; -} -.tableSubHeadingColor { - background-color:#EEEEFF; -} -.altColor { - background-color:#FFFFFF; -} -.rowColor { - background-color:#EEEEEF; -} -/* -Content styles -*/ -.description pre { - margin-top:0; -} -.deprecatedContent { - margin:0; - padding:10px 0; -} -.docSummary { - padding:0; -} - -ul.blockList ul.blockList ul.blockList li.blockList h3 { - font-style:normal; -} - -div.block { - font-size:14px; - font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; -} - -td.colLast div { - padding-top:0px; -} - - -td.colLast a { - padding-bottom:3px; -} -/* -Formatting effect styles -*/ -.sourceLineNo { - color:green; - padding:0 30px 0 0; -} -h1.hidden { - visibility:hidden; - overflow:hidden; - font-size:10px; -} -.block { - display:block; - margin:3px 10px 2px 0px; - color:#474747; -} -.deprecatedLabel, .descfrmTypeLabel, .memberNameLabel, .memberNameLink, -.overrideSpecifyLabel, .packageHierarchyLabel, .paramLabel, .returnLabel, -.seeLabel, .simpleTagLabel, .throwsLabel, .typeNameLabel, .typeNameLink { - font-weight:bold; -} -.deprecationComment, .emphasizedPhrase, .interfaceName { - font-style:italic; -} - -div.block div.block span.deprecationComment, div.block div.block span.emphasizedPhrase, -div.block div.block span.interfaceName { - font-style:normal; -} - -div.contentContainer ul.blockList li.blockList h2{ - padding-bottom:0px; -} diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/Demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/Demo01.class" deleted file mode 100644 index f8831bb..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/Demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/Demo02.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/Demo02.class" deleted file mode 100644 index e540ac4..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/Demo02.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/Demo03.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/Demo03.class" deleted file mode 100644 index 467f6b4..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/Demo03.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/Demo04.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/Demo04.class" deleted file mode 100644 index da374e7..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/Demo04.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/Demo05.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/Demo05.class" deleted file mode 100644 index 7f203e3..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/Demo05.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/Demo06.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/Demo06.class" deleted file mode 100644 index 636e8aa..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/Demo06.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/easycomputer01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/easycomputer01.class" deleted file mode 100644 index ffa12e7..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/easycomputer01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/easycomputer02.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/easycomputer02.class" deleted file mode 100644 index bb525d3..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/method/easycomputer02.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/Demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/Demo01.class" deleted file mode 100644 index a1d7b58..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/Demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/Demo02.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/Demo02.class" deleted file mode 100644 index 54bb99a..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/Demo02.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/Demo03.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/Demo03.class" deleted file mode 100644 index dd6cf6c..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/Demo03.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/Demo04.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/Demo04.class" deleted file mode 100644 index 66f3cc0..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/Demo04.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/Demo05.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/Demo05.class" deleted file mode 100644 index a0ac3d2..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/Demo05.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/allclasses-frame.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/allclasses-frame.html" deleted file mode 100644 index c33a28d..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/allclasses-frame.html" +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - -所有类 - - - - - -

所有类

-
- -
- - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/allclasses-noframe.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/allclasses-noframe.html" deleted file mode 100644 index 93dbdfe..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/allclasses-noframe.html" +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - -所有类 - - - - - -

所有类

-
- -
- - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/DateCharge.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/DateCharge.html" deleted file mode 100644 index 38220b5..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/DateCharge.html" +++ /dev/null @@ -1,272 +0,0 @@ - - - - - - -DateCharge - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - - -
-
com.xiaokai.test.base
-

类 DateCharge

-
-
- -
- -
-
- -
-
- -
-
- - -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/DateType.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/DateType.html" deleted file mode 100644 index 0adf458..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/DateType.html" +++ /dev/null @@ -1,272 +0,0 @@ - - - - - - -DateType - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - - -
-
com.xiaokai.test.base
-

类 DateType

-
-
- -
- -
-
- -
-
- -
-
- - -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/DateType2.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/DateType2.html" deleted file mode 100644 index ed342ba..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/DateType2.html" +++ /dev/null @@ -1,272 +0,0 @@ - - - - - - -DateType2 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - - -
-
com.xiaokai.test.base
-

类 DateType2

-
-
- -
- -
-
- -
-
- -
-
- - -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/Demo01.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/Demo01.html" deleted file mode 100644 index f805a4e..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/Demo01.html" +++ /dev/null @@ -1,285 +0,0 @@ - - - - - - -Demo01 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - - -
-
com.xiaokai.test.base
-

类 Demo01

-
-
- -
- -
-
- -
-
- -
-
- - -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/Demo02.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/Demo02.html" deleted file mode 100644 index 0eec921..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/Demo02.html" +++ /dev/null @@ -1,312 +0,0 @@ - - - - - - -Demo02 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - - -
-
com.xiaokai.test.base
-

类 Demo02

-
-
- -
- -
-
- -
-
- -
-
- - -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/Hello.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/Hello.html" deleted file mode 100644 index 96cc704..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/Hello.html" +++ /dev/null @@ -1,276 +0,0 @@ - - - - - - -Hello - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - - -
-
com.xiaokai.test.base
-

类 Hello

-
-
- -
- -
-
- -
-
- -
-
- - -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/JavaDocTest.HelloWorld.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/JavaDocTest.HelloWorld.html" deleted file mode 100644 index bc3a9d2..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/JavaDocTest.HelloWorld.html" +++ /dev/null @@ -1,321 +0,0 @@ - - - - - - -JavaDocTest.HelloWorld - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - - -
-
com.xiaokai.test.base
-

类 JavaDocTest.HelloWorld

-
-
- -
- -
-
- -
-
- -
-
- - -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/JavaDocTest.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/JavaDocTest.html" deleted file mode 100644 index ddeade7..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/JavaDocTest.html" +++ /dev/null @@ -1,300 +0,0 @@ - - - - - - -JavaDocTest - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - - -
-
com.xiaokai.test.base
-

类 JavaDocTest

-
-
- -
- -
-
- -
-
- -
-
- - -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/DateCharge.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/DateCharge.html" deleted file mode 100644 index 672d557..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/DateCharge.html" +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - -类 com.xiaokai.test.base.DateCharge的使用 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

类的使用
com.xiaokai.test.base.DateCharge

-
-
没有com.xiaokai.test.base.DateCharge的用法
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/DateType.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/DateType.html" deleted file mode 100644 index d23ebb4..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/DateType.html" +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - -类 com.xiaokai.test.base.DateType的使用 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

类的使用
com.xiaokai.test.base.DateType

-
-
没有com.xiaokai.test.base.DateType的用法
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/DateType2.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/DateType2.html" deleted file mode 100644 index 51d9c16..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/DateType2.html" +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - -类 com.xiaokai.test.base.DateType2的使用 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

类的使用
com.xiaokai.test.base.DateType2

-
-
没有com.xiaokai.test.base.DateType2的用法
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/Demo01.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/Demo01.html" deleted file mode 100644 index 1e46814..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/Demo01.html" +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - -类 com.xiaokai.test.base.Demo01的使用 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

类的使用
com.xiaokai.test.base.Demo01

-
-
没有com.xiaokai.test.base.Demo01的用法
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/Demo02.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/Demo02.html" deleted file mode 100644 index 4d6c5a2..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/Demo02.html" +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - -类 com.xiaokai.test.base.Demo02的使用 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

类的使用
com.xiaokai.test.base.Demo02

-
-
没有com.xiaokai.test.base.Demo02的用法
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/Hello.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/Hello.html" deleted file mode 100644 index cbfbd06..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/Hello.html" +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - -类 com.xiaokai.test.base.Hello的使用 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

类的使用
com.xiaokai.test.base.Hello

-
-
没有com.xiaokai.test.base.Hello的用法
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/JavaDocTest.HelloWorld.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/JavaDocTest.HelloWorld.html" deleted file mode 100644 index e8b2237..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/JavaDocTest.HelloWorld.html" +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - -类 com.xiaokai.test.base.JavaDocTest.HelloWorld的使用 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

类的使用
com.xiaokai.test.base.JavaDocTest.HelloWorld

-
-
没有com.xiaokai.test.base.JavaDocTest.HelloWorld的用法
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/JavaDocTest.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/JavaDocTest.html" deleted file mode 100644 index 20c3ef9..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/class-use/JavaDocTest.html" +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - -类 com.xiaokai.test.base.JavaDocTest的使用 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

类的使用
com.xiaokai.test.base.JavaDocTest

-
-
没有com.xiaokai.test.base.JavaDocTest的用法
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/package-frame.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/package-frame.html" deleted file mode 100644 index 13dbbc8..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/package-frame.html" +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - -com.xiaokai.test.base - - - - - -

com.xiaokai.test.base

-
-

- -
- - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/package-summary.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/package-summary.html" deleted file mode 100644 index 86d9488..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/package-summary.html" +++ /dev/null @@ -1,169 +0,0 @@ - - - - - - -com.xiaokai.test.base - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

程序包 com.xiaokai.test.base

-
-
- -
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/package-tree.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/package-tree.html" deleted file mode 100644 index 02e858f..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/package-tree.html" +++ /dev/null @@ -1,145 +0,0 @@ - - - - - - -com.xiaokai.test.base 类分层结构 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

程序包com.xiaokai.test.base的分层结构

-程序包分层结构: - -
-
-

类分层结构

- -
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/package-use.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/package-use.html" deleted file mode 100644 index a98bc06..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/base/package-use.html" +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - -程序包 com.xiaokai.test.base的使用 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

程序包的使用
com.xiaokai.test.base

-
-
没有com.xiaokai.test.base的用法
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/Demo01.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/Demo01.html" deleted file mode 100644 index dc8a027..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/Demo01.html" +++ /dev/null @@ -1,272 +0,0 @@ - - - - - - -Demo01 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - - -
-
com.xiaokai.test.operator
-

类 Demo01

-
-
- -
- -
-
- -
-
- -
-
- - -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/Demo02.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/Demo02.html" deleted file mode 100644 index d42db63..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/Demo02.html" +++ /dev/null @@ -1,272 +0,0 @@ - - - - - - -Demo02 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - - -
-
com.xiaokai.test.operator
-

类 Demo02

-
-
- -
- -
-
- -
-
- -
-
- - -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/Demo03.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/Demo03.html" deleted file mode 100644 index 6dee780..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/Demo03.html" +++ /dev/null @@ -1,272 +0,0 @@ - - - - - - -Demo03 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - - -
-
com.xiaokai.test.operator
-

类 Demo03

-
-
- -
- -
-
- -
-
- -
-
- - -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/Demo04.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/Demo04.html" deleted file mode 100644 index 0934ffa..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/Demo04.html" +++ /dev/null @@ -1,272 +0,0 @@ - - - - - - -Demo04 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - - -
-
com.xiaokai.test.operator
-

类 Demo04

-
-
- -
- -
-
- -
-
- -
-
- - -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/Demo05.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/Demo05.html" deleted file mode 100644 index fb01bb9..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/Demo05.html" +++ /dev/null @@ -1,272 +0,0 @@ - - - - - - -Demo05 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - - -
-
com.xiaokai.test.operator
-

类 Demo05

-
-
- -
- -
-
- -
-
- -
-
- - -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/class-use/Demo01.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/class-use/Demo01.html" deleted file mode 100644 index 12aa0c4..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/class-use/Demo01.html" +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - -类 com.xiaokai.test.operator.Demo01的使用 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

类的使用
com.xiaokai.test.operator.Demo01

-
-
没有com.xiaokai.test.operator.Demo01的用法
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/class-use/Demo02.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/class-use/Demo02.html" deleted file mode 100644 index 2af2006..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/class-use/Demo02.html" +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - -类 com.xiaokai.test.operator.Demo02的使用 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

类的使用
com.xiaokai.test.operator.Demo02

-
-
没有com.xiaokai.test.operator.Demo02的用法
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/class-use/Demo03.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/class-use/Demo03.html" deleted file mode 100644 index ae2a9b9..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/class-use/Demo03.html" +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - -类 com.xiaokai.test.operator.Demo03的使用 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

类的使用
com.xiaokai.test.operator.Demo03

-
-
没有com.xiaokai.test.operator.Demo03的用法
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/class-use/Demo04.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/class-use/Demo04.html" deleted file mode 100644 index 3814f38..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/class-use/Demo04.html" +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - -类 com.xiaokai.test.operator.Demo04的使用 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

类的使用
com.xiaokai.test.operator.Demo04

-
-
没有com.xiaokai.test.operator.Demo04的用法
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/class-use/Demo05.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/class-use/Demo05.html" deleted file mode 100644 index fd81f75..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/class-use/Demo05.html" +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - -类 com.xiaokai.test.operator.Demo05的使用 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

类的使用
com.xiaokai.test.operator.Demo05

-
-
没有com.xiaokai.test.operator.Demo05的用法
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/package-frame.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/package-frame.html" deleted file mode 100644 index cf0cefc..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/package-frame.html" +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - -com.xiaokai.test.operator - - - - - -

com.xiaokai.test.operator

-
-

- -
- - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/package-summary.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/package-summary.html" deleted file mode 100644 index 2a1b52c..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/package-summary.html" +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - -com.xiaokai.test.operator - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

程序包 com.xiaokai.test.operator

-
-
- -
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/package-tree.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/package-tree.html" deleted file mode 100644 index d9f6da2..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/package-tree.html" +++ /dev/null @@ -1,142 +0,0 @@ - - - - - - -com.xiaokai.test.operator 类分层结构 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

程序包com.xiaokai.test.operator的分层结构

-程序包分层结构: - -
-
-

类分层结构

- -
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/package-use.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/package-use.html" deleted file mode 100644 index 632de05..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/com/xiaokai/test/operator/package-use.html" +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - -程序包 com.xiaokai.test.operator的使用 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

程序包的使用
com.xiaokai.test.operator

-
-
没有com.xiaokai.test.operator的用法
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/constant-values.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/constant-values.html" deleted file mode 100644 index 37ccafe..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/constant-values.html" +++ /dev/null @@ -1,154 +0,0 @@ - - - - - - -常量字段值 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

常量字段值

-

目录

- -
-
- - -

com.xiaokai.*

- -
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/deprecated-list.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/deprecated-list.html" deleted file mode 100644 index 097103c..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/deprecated-list.html" +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - -已过时的列表 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

已过时的 API

-

目录

-
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/help-doc.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/help-doc.html" deleted file mode 100644 index d04f975..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/help-doc.html" +++ /dev/null @@ -1,230 +0,0 @@ - - - - - - -API 帮助 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

此 API 文档的组织方式

-
此 API (应用程序编程接口) 文档包含对应于导航栏中的项目的页面, 如下所述。
-
-
- -此帮助文件适用于使用标准 doclet 生成的 API 文档。
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-1.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-1.html" deleted file mode 100644 index 08cac52..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-1.html" +++ /dev/null @@ -1,132 +0,0 @@ - - - - - - -C - 索引 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
C D F H J M N  - - -

C

-
-
com.xiaokai.test.base - 程序包 com.xiaokai.test.base
-
 
-
com.xiaokai.test.operator - 程序包 com.xiaokai.test.operator
-
 
-
-C D F H J M N 
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-2.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-2.html" deleted file mode 100644 index 2b12312..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-2.html" +++ /dev/null @@ -1,170 +0,0 @@ - - - - - - -D - 索引 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
C D F H J M N  - - -

D

-
-
DateCharge - com.xiaokai.test.base中的类
-
 
-
DateCharge() - 类 的构造器com.xiaokai.test.base.DateCharge
-
 
-
DateType - com.xiaokai.test.base中的类
-
 
-
DateType() - 类 的构造器com.xiaokai.test.base.DateType
-
 
-
DateType2 - com.xiaokai.test.base中的类
-
 
-
DateType2() - 类 的构造器com.xiaokai.test.base.DateType2
-
 
-
Demo01 - com.xiaokai.test.base中的类
-
 
-
Demo01() - 类 的构造器com.xiaokai.test.base.Demo01
-
 
-
Demo01 - com.xiaokai.test.operator中的类
-
 
-
Demo01() - 类 的构造器com.xiaokai.test.operator.Demo01
-
 
-
Demo02 - com.xiaokai.test.base中的类
-
 
-
Demo02() - 类 的构造器com.xiaokai.test.base.Demo02
-
 
-
Demo02 - com.xiaokai.test.operator中的类
-
 
-
Demo02() - 类 的构造器com.xiaokai.test.operator.Demo02
-
 
-
Demo03 - com.xiaokai.test.operator中的类
-
 
-
Demo03() - 类 的构造器com.xiaokai.test.operator.Demo03
-
 
-
Demo04 - com.xiaokai.test.operator中的类
-
 
-
Demo04() - 类 的构造器com.xiaokai.test.operator.Demo04
-
 
-
Demo05 - com.xiaokai.test.operator中的类
-
 
-
Demo05() - 类 的构造器com.xiaokai.test.operator.Demo05
-
 
-
DEPARTMENT - 类 中的静态变量com.xiaokai.test.base.Demo02
-
 
-
-C D F H J M N 
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-3.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-3.html" deleted file mode 100644 index 83d7442..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-3.html" +++ /dev/null @@ -1,130 +0,0 @@ - - - - - - -F - 索引 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
C D F H J M N  - - -

F

-
-
function(String) - 类 中的方法com.xiaokai.test.base.JavaDocTest.HelloWorld
-
 
-
-C D F H J M N 
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-4.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-4.html" deleted file mode 100644 index 9416e9f..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-4.html" +++ /dev/null @@ -1,134 +0,0 @@ - - - - - - -H - 索引 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
C D F H J M N  - - -

H

-
-
Hello - com.xiaokai.test.base中的类
-
 
-
Hello() - 类 的构造器com.xiaokai.test.base.Hello
-
 
-
HelloWorld() - 类 的构造器com.xiaokai.test.base.JavaDocTest.HelloWorld
-
 
-
-C D F H J M N 
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-5.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-5.html" deleted file mode 100644 index f26f32d..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-5.html" +++ /dev/null @@ -1,136 +0,0 @@ - - - - - - -J - 索引 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
C D F H J M N  - - -

J

-
-
JavaDocTest - com.xiaokai.test.base中的类
-
-
这是一个JavaDoc测试小程序
-
-
JavaDocTest() - 类 的构造器com.xiaokai.test.base.JavaDocTest
-
 
-
JavaDocTest.HelloWorld - com.xiaokai.test.base中的类
-
 
-
-C D F H J M N 
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-6.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-6.html" deleted file mode 100644 index 8ab123b..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-6.html" +++ /dev/null @@ -1,154 +0,0 @@ - - - - - - -M - 索引 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
C D F H J M N  - - -

M

-
-
main(String[]) - 类 中的静态方法com.xiaokai.test.base.DateCharge
-
 
-
main(String[]) - 类 中的静态方法com.xiaokai.test.base.DateType
-
 
-
main(String[]) - 类 中的静态方法com.xiaokai.test.base.DateType2
-
 
-
main(String[]) - 类 中的静态方法com.xiaokai.test.base.Demo01
-
 
-
main(String[]) - 类 中的静态方法com.xiaokai.test.base.Demo02
-
 
-
main(String[]) - 类 中的静态方法com.xiaokai.test.base.Hello
-
 
-
main(String[]) - 类 中的静态方法com.xiaokai.test.base.JavaDocTest
-
 
-
main(String[]) - 类 中的静态方法com.xiaokai.test.operator.Demo01
-
 
-
main(String[]) - 类 中的静态方法com.xiaokai.test.operator.Demo02
-
 
-
main(String[]) - 类 中的静态方法com.xiaokai.test.operator.Demo03
-
 
-
main(String[]) - 类 中的静态方法com.xiaokai.test.operator.Demo04
-
 
-
main(String[]) - 类 中的静态方法com.xiaokai.test.operator.Demo05
-
 
-
method() - 类 中的方法com.xiaokai.test.base.Demo01
-
 
-
-C D F H J M N 
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-7.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-7.html" deleted file mode 100644 index 05ef989..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index-files/index-7.html" +++ /dev/null @@ -1,130 +0,0 @@ - - - - - - -N - 索引 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
C D F H J M N  - - -

N

-
-
name - 类 中的变量com.xiaokai.test.base.JavaDocTest.HelloWorld
-
 
-
-C D F H J M N 
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index.html" deleted file mode 100644 index af60920..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/index.html" +++ /dev/null @@ -1,76 +0,0 @@ - - - - - - -生成的文档 (无标题) - - - - - - - - - -<noscript> -<div>您的浏览器已禁用 JavaScript。</div> -</noscript> -<h2>框架预警</h2> -<p>请使用框架功能查看此文档。如果看到此消息, 则表明您使用的是不支持框架的 Web 客户机。链接到<a href="overview-summary.html">非框架版本</a>。</p> - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/overview-frame.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/overview-frame.html" deleted file mode 100644 index d5b7931..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/overview-frame.html" +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - -概览列表 - - - - - -
所有类
-
-

程序包

- -
-

 

- - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/overview-summary.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/overview-summary.html" deleted file mode 100644 index 88c4ee6..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/overview-summary.html" +++ /dev/null @@ -1,140 +0,0 @@ - - - - - - -概览 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
- - - - - - - - - - - - - - - - -
程序包 
程序包说明
com.xiaokai.test.base 
com.xiaokai.test.operator 
-
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/overview-tree.html" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/overview-tree.html" deleted file mode 100644 index a6a5b37..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/overview-tree.html" +++ /dev/null @@ -1,151 +0,0 @@ - - - - - - -类分层结构 - - - - - - - - -
- - -
跳过导航链接
- - - - -
- - -
-

所有程序包的分层结构

-程序包分层结构: - -
-
-

类分层结构

- -
- -
- - -
跳过导航链接
- - - - -
- - - - diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/package-list" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/package-list" deleted file mode 100644 index 17066f2..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/package-list" +++ /dev/null @@ -1,2 +0,0 @@ -com.xiaokai.test.base -com.xiaokai.test.operator diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/script.js" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/script.js" deleted file mode 100644 index b346356..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/script.js" +++ /dev/null @@ -1,30 +0,0 @@ -function show(type) -{ - count = 0; - for (var key in methods) { - var row = document.getElementById(key); - if ((methods[key] & type) != 0) { - row.style.display = ''; - row.className = (count++ % 2) ? rowColor : altColor; - } - else - row.style.display = 'none'; - } - updateTabs(type); -} - -function updateTabs(type) -{ - for (var value in tabs) { - var sNode = document.getElementById(tabs[value][0]); - var spanNode = sNode.firstChild; - if (value == type) { - sNode.className = activeTableTab; - spanNode.innerHTML = tabs[value][1]; - } - else { - sNode.className = tableTab; - spanNode.innerHTML = "" + tabs[value][1] + ""; - } - } -} diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/stylesheet.css" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/stylesheet.css" deleted file mode 100644 index 98055b2..0000000 --- "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/operator/doc/stylesheet.css" +++ /dev/null @@ -1,574 +0,0 @@ -/* Javadoc style sheet */ -/* -Overall document style -*/ - -@import url('resources/fonts/dejavu.css'); - -body { - background-color:#ffffff; - color:#353833; - font-family:'DejaVu Sans', Arial, Helvetica, sans-serif; - font-size:14px; - margin:0; -} -a:link, a:visited { - text-decoration:none; - color:#4A6782; -} -a:hover, a:focus { - text-decoration:none; - color:#bb7a2a; -} -a:active { - text-decoration:none; - color:#4A6782; -} -a[name] { - color:#353833; -} -a[name]:hover { - text-decoration:none; - color:#353833; -} -pre { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; -} -h1 { - font-size:20px; -} -h2 { - font-size:18px; -} -h3 { - font-size:16px; - font-style:italic; -} -h4 { - font-size:13px; -} -h5 { - font-size:12px; -} -h6 { - font-size:11px; -} -ul { - list-style-type:disc; -} -code, tt { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; - padding-top:4px; - margin-top:8px; - line-height:1.4em; -} -dt code { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; - padding-top:4px; -} -table tr td dt code { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; - vertical-align:top; - padding-top:4px; -} -sup { - font-size:8px; -} -/* -Document title and Copyright styles -*/ -.clear { - clear:both; - height:0px; - overflow:hidden; -} -.aboutLanguage { - float:right; - padding:0px 21px; - font-size:11px; - z-index:200; - margin-top:-9px; -} -.legalCopy { - margin-left:.5em; -} -.bar a, .bar a:link, .bar a:visited, .bar a:active { - color:#FFFFFF; - text-decoration:none; -} -.bar a:hover, .bar a:focus { - color:#bb7a2a; -} -.tab { - background-color:#0066FF; - color:#ffffff; - padding:8px; - width:5em; - font-weight:bold; -} -/* -Navigation bar styles -*/ -.bar { - background-color:#4D7A97; - color:#FFFFFF; - padding:.8em .5em .4em .8em; - height:auto;/*height:1.8em;*/ - font-size:11px; - margin:0; -} -.topNav { - background-color:#4D7A97; - color:#FFFFFF; - float:left; - padding:0; - width:100%; - clear:right; - height:2.8em; - padding-top:10px; - overflow:hidden; - font-size:12px; -} -.bottomNav { - margin-top:10px; - background-color:#4D7A97; - color:#FFFFFF; - float:left; - padding:0; - width:100%; - clear:right; - height:2.8em; - padding-top:10px; - overflow:hidden; - font-size:12px; -} -.subNav { - background-color:#dee3e9; - float:left; - width:100%; - overflow:hidden; - font-size:12px; -} -.subNav div { - clear:left; - float:left; - padding:0 0 5px 6px; - text-transform:uppercase; -} -ul.navList, ul.subNavList { - float:left; - margin:0 25px 0 0; - padding:0; -} -ul.navList li{ - list-style:none; - float:left; - padding: 5px 6px; - text-transform:uppercase; -} -ul.subNavList li{ - list-style:none; - float:left; -} -.topNav a:link, .topNav a:active, .topNav a:visited, .bottomNav a:link, .bottomNav a:active, .bottomNav a:visited { - color:#FFFFFF; - text-decoration:none; - text-transform:uppercase; -} -.topNav a:hover, .bottomNav a:hover { - text-decoration:none; - color:#bb7a2a; - text-transform:uppercase; -} -.navBarCell1Rev { - background-color:#F8981D; - color:#253441; - margin: auto 5px; -} -.skipNav { - position:absolute; - top:auto; - left:-9999px; - overflow:hidden; -} -/* -Page header and footer styles -*/ -.header, .footer { - clear:both; - margin:0 20px; - padding:5px 0 0 0; -} -.indexHeader { - margin:10px; - position:relative; -} -.indexHeader span{ - margin-right:15px; -} -.indexHeader h1 { - font-size:13px; -} -.title { - color:#2c4557; - margin:10px 0; -} -.subTitle { - margin:5px 0 0 0; -} -.header ul { - margin:0 0 15px 0; - padding:0; -} -.footer ul { - margin:20px 0 5px 0; -} -.header ul li, .footer ul li { - list-style:none; - font-size:13px; -} -/* -Heading styles -*/ -div.details ul.blockList ul.blockList ul.blockList li.blockList h4, div.details ul.blockList ul.blockList ul.blockListLast li.blockList h4 { - background-color:#dee3e9; - border:1px solid #d0d9e0; - margin:0 0 6px -8px; - padding:7px 5px; -} -ul.blockList ul.blockList ul.blockList li.blockList h3 { - background-color:#dee3e9; - border:1px solid #d0d9e0; - margin:0 0 6px -8px; - padding:7px 5px; -} -ul.blockList ul.blockList li.blockList h3 { - padding:0; - margin:15px 0; -} -ul.blockList li.blockList h2 { - padding:0px 0 20px 0; -} -/* -Page layout container styles -*/ -.contentContainer, .sourceContainer, .classUseContainer, .serializedFormContainer, .constantValuesContainer { - clear:both; - padding:10px 20px; - position:relative; -} -.indexContainer { - margin:10px; - position:relative; - font-size:12px; -} -.indexContainer h2 { - font-size:13px; - padding:0 0 3px 0; -} -.indexContainer ul { - margin:0; - padding:0; -} -.indexContainer ul li { - list-style:none; - padding-top:2px; -} -.contentContainer .description dl dt, .contentContainer .details dl dt, .serializedFormContainer dl dt { - font-size:12px; - font-weight:bold; - margin:10px 0 0 0; - color:#4E4E4E; -} -.contentContainer .description dl dd, .contentContainer .details dl dd, .serializedFormContainer dl dd { - margin:5px 0 10px 0px; - font-size:14px; - font-family:'DejaVu Sans Mono',monospace; -} -.serializedFormContainer dl.nameValue dt { - margin-left:1px; - font-size:1.1em; - display:inline; - font-weight:bold; -} -.serializedFormContainer dl.nameValue dd { - margin:0 0 0 1px; - font-size:1.1em; - display:inline; -} -/* -List styles -*/ -ul.horizontal li { - display:inline; - font-size:0.9em; -} -ul.inheritance { - margin:0; - padding:0; -} -ul.inheritance li { - display:inline; - list-style:none; -} -ul.inheritance li ul.inheritance { - margin-left:15px; - padding-left:15px; - padding-top:1px; -} -ul.blockList, ul.blockListLast { - margin:10px 0 10px 0; - padding:0; -} -ul.blockList li.blockList, ul.blockListLast li.blockList { - list-style:none; - margin-bottom:15px; - line-height:1.4; -} -ul.blockList ul.blockList li.blockList, ul.blockList ul.blockListLast li.blockList { - padding:0px 20px 5px 10px; - border:1px solid #ededed; - background-color:#f8f8f8; -} -ul.blockList ul.blockList ul.blockList li.blockList, ul.blockList ul.blockList ul.blockListLast li.blockList { - padding:0 0 5px 8px; - background-color:#ffffff; - border:none; -} -ul.blockList ul.blockList ul.blockList ul.blockList li.blockList { - margin-left:0; - padding-left:0; - padding-bottom:15px; - border:none; -} -ul.blockList ul.blockList ul.blockList ul.blockList li.blockListLast { - list-style:none; - border-bottom:none; - padding-bottom:0; -} -table tr td dl, table tr td dl dt, table tr td dl dd { - margin-top:0; - margin-bottom:1px; -} -/* -Table styles -*/ -.overviewSummary, .memberSummary, .typeSummary, .useSummary, .constantsSummary, .deprecatedSummary { - width:100%; - border-left:1px solid #EEE; - border-right:1px solid #EEE; - border-bottom:1px solid #EEE; -} -.overviewSummary, .memberSummary { - padding:0px; -} -.overviewSummary caption, .memberSummary caption, .typeSummary caption, -.useSummary caption, .constantsSummary caption, .deprecatedSummary caption { - position:relative; - text-align:left; - background-repeat:no-repeat; - color:#253441; - font-weight:bold; - clear:none; - overflow:hidden; - padding:0px; - padding-top:10px; - padding-left:1px; - margin:0px; - white-space:pre; -} -.overviewSummary caption a:link, .memberSummary caption a:link, .typeSummary caption a:link, -.useSummary caption a:link, .constantsSummary caption a:link, .deprecatedSummary caption a:link, -.overviewSummary caption a:hover, .memberSummary caption a:hover, .typeSummary caption a:hover, -.useSummary caption a:hover, .constantsSummary caption a:hover, .deprecatedSummary caption a:hover, -.overviewSummary caption a:active, .memberSummary caption a:active, .typeSummary caption a:active, -.useSummary caption a:active, .constantsSummary caption a:active, .deprecatedSummary caption a:active, -.overviewSummary caption a:visited, .memberSummary caption a:visited, .typeSummary caption a:visited, -.useSummary caption a:visited, .constantsSummary caption a:visited, .deprecatedSummary caption a:visited { - color:#FFFFFF; -} -.overviewSummary caption span, .memberSummary caption span, .typeSummary caption span, -.useSummary caption span, .constantsSummary caption span, .deprecatedSummary caption span { - white-space:nowrap; - padding-top:5px; - padding-left:12px; - padding-right:12px; - padding-bottom:7px; - display:inline-block; - float:left; - background-color:#F8981D; - border: none; - height:16px; -} -.memberSummary caption span.activeTableTab span { - white-space:nowrap; - padding-top:5px; - padding-left:12px; - padding-right:12px; - margin-right:3px; - display:inline-block; - float:left; - background-color:#F8981D; - height:16px; -} -.memberSummary caption span.tableTab span { - white-space:nowrap; - padding-top:5px; - padding-left:12px; - padding-right:12px; - margin-right:3px; - display:inline-block; - float:left; - background-color:#4D7A97; - height:16px; -} -.memberSummary caption span.tableTab, .memberSummary caption span.activeTableTab { - padding-top:0px; - padding-left:0px; - padding-right:0px; - background-image:none; - float:none; - display:inline; -} -.overviewSummary .tabEnd, .memberSummary .tabEnd, .typeSummary .tabEnd, -.useSummary .tabEnd, .constantsSummary .tabEnd, .deprecatedSummary .tabEnd { - display:none; - width:5px; - position:relative; - float:left; - background-color:#F8981D; -} -.memberSummary .activeTableTab .tabEnd { - display:none; - width:5px; - margin-right:3px; - position:relative; - float:left; - background-color:#F8981D; -} -.memberSummary .tableTab .tabEnd { - display:none; - width:5px; - margin-right:3px; - position:relative; - background-color:#4D7A97; - float:left; - -} -.overviewSummary td, .memberSummary td, .typeSummary td, -.useSummary td, .constantsSummary td, .deprecatedSummary td { - text-align:left; - padding:0px 0px 12px 10px; -} -th.colOne, th.colFirst, th.colLast, .useSummary th, .constantsSummary th, -td.colOne, td.colFirst, td.colLast, .useSummary td, .constantsSummary td{ - vertical-align:top; - padding-right:0px; - padding-top:8px; - padding-bottom:3px; -} -th.colFirst, th.colLast, th.colOne, .constantsSummary th { - background:#dee3e9; - text-align:left; - padding:8px 3px 3px 7px; -} -td.colFirst, th.colFirst { - white-space:nowrap; - font-size:13px; -} -td.colLast, th.colLast { - font-size:13px; -} -td.colOne, th.colOne { - font-size:13px; -} -.overviewSummary td.colFirst, .overviewSummary th.colFirst, -.useSummary td.colFirst, .useSummary th.colFirst, -.overviewSummary td.colOne, .overviewSummary th.colOne, -.memberSummary td.colFirst, .memberSummary th.colFirst, -.memberSummary td.colOne, .memberSummary th.colOne, -.typeSummary td.colFirst{ - width:25%; - vertical-align:top; -} -td.colOne a:link, td.colOne a:active, td.colOne a:visited, td.colOne a:hover, td.colFirst a:link, td.colFirst a:active, td.colFirst a:visited, td.colFirst a:hover, td.colLast a:link, td.colLast a:active, td.colLast a:visited, td.colLast a:hover, .constantValuesContainer td a:link, .constantValuesContainer td a:active, .constantValuesContainer td a:visited, .constantValuesContainer td a:hover { - font-weight:bold; -} -.tableSubHeadingColor { - background-color:#EEEEFF; -} -.altColor { - background-color:#FFFFFF; -} -.rowColor { - background-color:#EEEEEF; -} -/* -Content styles -*/ -.description pre { - margin-top:0; -} -.deprecatedContent { - margin:0; - padding:10px 0; -} -.docSummary { - padding:0; -} - -ul.blockList ul.blockList ul.blockList li.blockList h3 { - font-style:normal; -} - -div.block { - font-size:14px; - font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; -} - -td.colLast div { - padding-top:0px; -} - - -td.colLast a { - padding-bottom:3px; -} -/* -Formatting effect styles -*/ -.sourceLineNo { - color:green; - padding:0 30px 0 0; -} -h1.hidden { - visibility:hidden; - overflow:hidden; - font-size:10px; -} -.block { - display:block; - margin:3px 10px 2px 0px; - color:#474747; -} -.deprecatedLabel, .descfrmTypeLabel, .memberNameLabel, .memberNameLink, -.overrideSpecifyLabel, .packageHierarchyLabel, .paramLabel, .returnLabel, -.seeLabel, .simpleTagLabel, .throwsLabel, .typeNameLabel, .typeNameLink { - font-weight:bold; -} -.deprecationComment, .emphasizedPhrase, .interfaceName { - font-style:italic; -} - -div.block div.block span.deprecationComment, div.block div.block span.emphasizedPhrase, -div.block div.block span.interfaceName { - font-style:normal; -} - -div.contentContainer ul.blockList li.blockList h2{ - padding-bottom:0px; -} diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/scanner/Demo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/scanner/Demo01.class" deleted file mode 100644 index fa4adf5..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/scanner/Demo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/scanner/Demo02.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/scanner/Demo02.class" deleted file mode 100644 index dd8731d..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/scanner/Demo02.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/scanner/Demo03.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/scanner/Demo03.class" deleted file mode 100644 index e73bc74..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/scanner/Demo03.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/scanner/Demo04.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/scanner/Demo04.class" deleted file mode 100644 index 43c92d5..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/scanner/Demo04.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/scanner/Demo05.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/scanner/Demo05.class" deleted file mode 100644 index 2948bad..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/scanner/Demo05.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/BreakAndContinueDemo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/BreakAndContinueDemo01.class" deleted file mode 100644 index b06898f..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/BreakAndContinueDemo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/ForDemo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/ForDemo01.class" deleted file mode 100644 index 0a112e2..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/ForDemo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/ForDemo02.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/ForDemo02.class" deleted file mode 100644 index 205201b..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/ForDemo02.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/ForDemo03.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/ForDemo03.class" deleted file mode 100644 index 027dc28..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/ForDemo03.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/ForDemo04.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/ForDemo04.class" deleted file mode 100644 index d90a2dd..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/ForDemo04.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/ForDemo05.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/ForDemo05.class" deleted file mode 100644 index be6cb77..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/ForDemo05.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/IfDemo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/IfDemo01.class" deleted file mode 100644 index d51530d..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/IfDemo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/IfDemo02.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/IfDemo02.class" deleted file mode 100644 index 2b09c3e..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/IfDemo02.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/IfDemo03.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/IfDemo03.class" deleted file mode 100644 index 9fbf5c4..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/IfDemo03.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/LabelDemo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/LabelDemo01.class" deleted file mode 100644 index eeb789b..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/LabelDemo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/SequenceDemo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/SequenceDemo01.class" deleted file mode 100644 index fc7c0ee..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/SequenceDemo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/SwitchDemo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/SwitchDemo01.class" deleted file mode 100644 index e2c2ca4..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/SwitchDemo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/TestDemo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/TestDemo01.class" deleted file mode 100644 index d8d4bc0..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/TestDemo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/WhileDemo01.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/WhileDemo01.class" deleted file mode 100644 index 8463faf..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/WhileDemo01.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/WhileDemo02.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/WhileDemo02.class" deleted file mode 100644 index 176ea49..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/WhileDemo02.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/WhileDemo03.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/WhileDemo03.class" deleted file mode 100644 index ca58822..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/WhileDemo03.class" and /dev/null differ diff --git "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/WhileDemo04.class" "b/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/WhileDemo04.class" deleted file mode 100644 index 697e314..0000000 Binary files "a/20210414/out/production/\345\237\272\347\241\200\350\257\255\346\263\225/com/xiaokai/test/struct/WhileDemo04.class" and /dev/null differ diff --git "a/20210414/\345\237\272\347\241\200\350\257\255\346\263\225" "b/20210414/\345\237\272\347\241\200\350\257\255\346\263\225" deleted file mode 160000 index 4cf53e2..0000000 --- "a/20210414/\345\237\272\347\241\200\350\257\255\346\263\225" +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 4cf53e27cbbadc5718c6395f5687903a5834d7b1 diff --git a/HTMLTest/.idea/.gitignore b/HTMLTest/.idea/.gitignore deleted file mode 100644 index f295746..0000000 --- a/HTMLTest/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/../../../../:\code\HTMLTest\.idea/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/HTMLTest/.idea/misc.xml b/HTMLTest/.idea/misc.xml deleted file mode 100644 index 0548357..0000000 --- a/HTMLTest/.idea/misc.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/HTMLTest/.idea/modules.xml b/HTMLTest/.idea/modules.xml deleted file mode 100644 index bcbd929..0000000 --- a/HTMLTest/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git "a/HTMLTest/HTML/\345\206\205\350\201\224\346\241\206\346\236\266.html" "b/HTMLTest/HTML/\345\206\205\350\201\224\346\241\206\346\236\266.html" deleted file mode 100644 index a17c08e..0000000 --- "a/HTMLTest/HTML/\345\206\205\350\201\224\346\241\206\346\236\266.html" +++ /dev/null @@ -1,11 +0,0 @@ - - - - - 单页面内联 - - - - - - \ No newline at end of file diff --git "a/HTMLTest/HTML/\345\206\205\350\201\224\346\241\206\346\236\2662.html" "b/HTMLTest/HTML/\345\206\205\350\201\224\346\241\206\346\236\2662.html" deleted file mode 100644 index 49fc467..0000000 --- "a/HTMLTest/HTML/\345\206\205\350\201\224\346\241\206\346\236\2662.html" +++ /dev/null @@ -1,14 +0,0 @@ - - - - - 页面间跳转 - - - - - - -点击搜索 - - \ No newline at end of file diff --git "a/HTMLTest/HTML/\345\212\237\350\203\275\346\200\247\351\223\276\346\216\245.html" "b/HTMLTest/HTML/\345\212\237\350\203\275\346\200\247\351\223\276\346\216\245.html" deleted file mode 100644 index 3f19b58..0000000 --- "a/HTMLTest/HTML/\345\212\237\350\203\275\346\200\247\351\223\276\346\216\245.html" +++ /dev/null @@ -1,17 +0,0 @@ - - - - - 功能性链接 - - -

- - 点我聊天 - -

-

- 联系我 -

- - \ No newline at end of file diff --git "a/HTMLTest/HTML/\345\233\276\345\203\217\346\240\207\347\255\276.html" "b/HTMLTest/HTML/\345\233\276\345\203\217\346\240\207\347\255\276.html" deleted file mode 100644 index 0a69369..0000000 --- "a/HTMLTest/HTML/\345\233\276\345\203\217\346\240\207\347\255\276.html" +++ /dev/null @@ -1,27 +0,0 @@ - - - - - 图像标签 - - -多啦头像 -

- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
-

-down
- - \ No newline at end of file diff --git "a/HTMLTest/HTML/\345\237\272\346\234\254\344\277\241\346\201\257.html" "b/HTMLTest/HTML/\345\237\272\346\234\254\344\277\241\346\201\257.html" deleted file mode 100644 index ee1399a..0000000 --- "a/HTMLTest/HTML/\345\237\272\346\234\254\344\277\241\346\201\257.html" +++ /dev/null @@ -1,12 +0,0 @@ - - - - - 学习H5 - - - - - - - \ No newline at end of file diff --git "a/HTMLTest/HTML/\345\255\227\344\275\223\346\240\267\345\274\217\346\240\207\347\255\276.html" "b/HTMLTest/HTML/\345\255\227\344\275\223\346\240\267\345\274\217\346\240\207\347\255\276.html" deleted file mode 100644 index d47496b..0000000 --- "a/HTMLTest/HTML/\345\255\227\344\275\223\346\240\267\345\274\217\346\240\207\347\255\276.html" +++ /dev/null @@ -1,14 +0,0 @@ - - - - - 字体样式标签 - - -测试字体样式 -

- 这是斜体
- 这是粗体
-

- - \ No newline at end of file diff --git "a/HTMLTest/HTML/\346\210\221\347\232\204\347\254\254\344\270\200\344\270\252HTML5.html" "b/HTMLTest/HTML/\346\210\221\347\232\204\347\254\254\344\270\200\344\270\252HTML5.html" deleted file mode 100644 index fd46b9e..0000000 --- "a/HTMLTest/HTML/\346\210\221\347\232\204\347\254\254\344\270\200\344\270\252HTML5.html" +++ /dev/null @@ -1,10 +0,0 @@ - - - - - Hello HTML! - - - - - \ No newline at end of file diff --git "a/HTMLTest/HTML/\346\215\242\350\241\214\346\240\207\347\255\276.html" "b/HTMLTest/HTML/\346\215\242\350\241\214\346\240\207\347\255\276.html" deleted file mode 100644 index cbcbd35..0000000 --- "a/HTMLTest/HTML/\346\215\242\350\241\214\346\240\207\347\255\276.html" +++ /dev/null @@ -1,16 +0,0 @@ - - - - - 换行标签 - - -

北京欢迎你

-

- 北京欢迎你
- 有梦想谁都了不起
- 有勇气就会有奇迹
-

- - - \ No newline at end of file diff --git "a/HTMLTest/HTML/\346\227\240\345\272\217\345\210\227\350\241\250.html" "b/HTMLTest/HTML/\346\227\240\345\272\217\345\210\227\350\241\250.html" deleted file mode 100644 index 3e46c7f..0000000 --- "a/HTMLTest/HTML/\346\227\240\345\272\217\345\210\227\350\241\250.html" +++ /dev/null @@ -1,17 +0,0 @@ - - - - - 无序列表 - - - - - - \ No newline at end of file diff --git "a/HTMLTest/HTML/\346\234\211\345\272\217\345\210\227\350\241\250.html" "b/HTMLTest/HTML/\346\234\211\345\272\217\345\210\227\350\241\250.html" deleted file mode 100644 index f6bd38c..0000000 --- "a/HTMLTest/HTML/\346\234\211\345\272\217\345\210\227\350\241\250.html" +++ /dev/null @@ -1,15 +0,0 @@ - - - - - 有序列表 - - -
    -
  1. 语文
  2. -
  3. 数学
  4. -
  5. 英语
  6. -
  7. 计算机
  8. -
- - \ No newline at end of file diff --git "a/HTMLTest/HTML/\346\240\207\351\242\230\346\240\207\347\255\276.html" "b/HTMLTest/HTML/\346\240\207\351\242\230\346\240\207\347\255\276.html" deleted file mode 100644 index fe3b6ef..0000000 --- "a/HTMLTest/HTML/\346\240\207\351\242\230\346\240\207\347\255\276.html" +++ /dev/null @@ -1,16 +0,0 @@ - - - - - 标题标签 - - -

1111

-

2222

-

3333

-

4444

-
5555
-
6666
-top
- - \ No newline at end of file diff --git "a/HTMLTest/HTML/\346\256\265\350\220\275\346\240\207\347\255\276.html" "b/HTMLTest/HTML/\346\256\265\350\220\275\346\240\207\347\255\276.html" deleted file mode 100644 index 6a8c30c..0000000 --- "a/HTMLTest/HTML/\346\256\265\350\220\275\346\240\207\347\255\276.html" +++ /dev/null @@ -1,13 +0,0 @@ - - - - - 段落标签 - - -

北京欢迎你

-

北京欢迎你,有梦想谁都了不起

-

有勇气就会有奇迹

- - - \ No newline at end of file diff --git "a/HTMLTest/HTML/\346\260\264\345\271\263\347\272\277\346\240\207\347\255\276.html" "b/HTMLTest/HTML/\346\260\264\345\271\263\347\272\277\346\240\207\347\255\276.html" deleted file mode 100644 index aa6407c..0000000 --- "a/HTMLTest/HTML/\346\260\264\345\271\263\347\272\277\346\240\207\347\255\276.html" +++ /dev/null @@ -1,16 +0,0 @@ - - - - - 水平线标签 - - -

北京欢迎你

-
-

- 北京欢迎你
- 有梦想谁都了不起
- 有勇气就会有奇迹
-

- - \ No newline at end of file diff --git "a/HTMLTest/HTML/\346\263\250\351\207\212\345\222\214\347\211\271\346\256\212\347\254\246\345\217\267.html" "b/HTMLTest/HTML/\346\263\250\351\207\212\345\222\214\347\211\271\346\256\212\347\254\246\345\217\267.html" deleted file mode 100644 index ea2b5cf..0000000 --- "a/HTMLTest/HTML/\346\263\250\351\207\212\345\222\214\347\211\271\346\256\212\347\254\246\345\217\267.html" +++ /dev/null @@ -1,23 +0,0 @@ - - - - - 注释和特殊符号 - - - - - - - - - -

- 关晓凯
- 关 晓 凯
- 关   晓   凯   
- ©关晓凯
- -

- - \ No newline at end of file diff --git "a/HTMLTest/HTML/\350\207\252\345\256\232\344\271\211\345\210\227\350\241\250.html" "b/HTMLTest/HTML/\350\207\252\345\256\232\344\271\211\345\210\227\350\241\250.html" deleted file mode 100644 index e523479..0000000 --- "a/HTMLTest/HTML/\350\207\252\345\256\232\344\271\211\345\210\227\350\241\250.html" +++ /dev/null @@ -1,17 +0,0 @@ - - - - - 自定义列表 - - -
- -
水果
- -
苹果
-
桃子
-
香蕉
-
- - \ No newline at end of file diff --git "a/HTMLTest/HTML/\350\241\250\345\215\225.html" "b/HTMLTest/HTML/\350\241\250\345\215\225.html" deleted file mode 100644 index e4701a4..0000000 --- "a/HTMLTest/HTML/\350\241\250\345\215\225.html" +++ /dev/null @@ -1,17 +0,0 @@ - - - - - 表单 - - -
-

名字:

-

密码:

-

- - -

-
- - \ No newline at end of file diff --git "a/HTMLTest/HTML/\350\241\250\345\215\225\345\205\203\347\264\240.html" "b/HTMLTest/HTML/\350\241\250\345\215\225\345\205\203\347\264\240.html" deleted file mode 100644 index 6fde61d..0000000 --- "a/HTMLTest/HTML/\350\241\250\345\215\225\345\205\203\347\264\240.html" +++ /dev/null @@ -1,82 +0,0 @@ - - - - - 13种表单元素 - - -
-

名字:

-

密码:

-

- - -

-

- - 用户名: -

-

- - 密   码: -

-

- - 男 - 女 -

-

- - 运动 - 聊天 - 玩游戏 -

-

- - 下拉列表: -

-

- - - -
- -

-

- - 文本域: -

-

- - 选择文件: - -

-

- - 邮箱: -

-

- - 网址: -

-

- - 数字: -

-

- - -

-

- - -

-
- - - - \ No newline at end of file diff --git "a/HTMLTest/HTML/\350\241\250\345\215\225\345\242\236\345\274\272\345\272\224\347\224\250.html" "b/HTMLTest/HTML/\350\241\250\345\215\225\345\242\236\345\274\272\345\272\224\347\224\250.html" deleted file mode 100644 index 6fe653a..0000000 --- "a/HTMLTest/HTML/\350\241\250\345\215\225\345\242\236\345\274\272\345\272\224\347\224\250.html" +++ /dev/null @@ -1,26 +0,0 @@ - - - - - 表单补充 - - -
-

- - -

-

- - - -

-

- - 标注的文本 - -

-
- - - \ No newline at end of file diff --git "a/HTMLTest/HTML/\350\241\250\345\215\225\351\252\214\350\257\201.html" "b/HTMLTest/HTML/\350\241\250\345\215\225\351\252\214\350\257\201.html" deleted file mode 100644 index 5b041c0..0000000 --- "a/HTMLTest/HTML/\350\241\250\345\215\225\351\252\214\350\257\201.html" +++ /dev/null @@ -1,23 +0,0 @@ - - - - - 表单验证 - - -
-

- - -

-

- - -

-

- - 邮箱: -

-
- - \ No newline at end of file diff --git "a/HTMLTest/HTML/\350\241\250\346\240\274.html" "b/HTMLTest/HTML/\350\241\250\346\240\274.html" deleted file mode 100644 index c5e0d7a..0000000 --- "a/HTMLTest/HTML/\350\241\250\346\240\274.html" +++ /dev/null @@ -1,30 +0,0 @@ - - - - - 表格 - - - - - - - - - - - - - - - - - - - - - - -
1-12-13-1
2-12-22-3
3-13-23-3
- - \ No newline at end of file diff --git "a/HTMLTest/HTML/\350\241\250\346\240\274\350\267\250\345\210\227.html" "b/HTMLTest/HTML/\350\241\250\346\240\274\350\267\250\345\210\227.html" deleted file mode 100644 index 5692893..0000000 --- "a/HTMLTest/HTML/\350\241\250\346\240\274\350\267\250\345\210\227.html" +++ /dev/null @@ -1,30 +0,0 @@ - - - - - 表格跨列 - - - - - - - - - - - - - - - - - - - - - - -
1-1
2-12-22-3
3-13-23-3
- - \ No newline at end of file diff --git "a/HTMLTest/HTML/\350\241\250\346\240\274\350\267\250\350\241\214.html" "b/HTMLTest/HTML/\350\241\250\346\240\274\350\267\250\350\241\214.html" deleted file mode 100644 index 8756efc..0000000 --- "a/HTMLTest/HTML/\350\241\250\346\240\274\350\267\250\350\241\214.html" +++ /dev/null @@ -1,31 +0,0 @@ - - - - - 表格跨行 - - - - - - - - - - - - - - - - - - - - - - - -
1-1
2-12-22-3
3-23-3
- - \ No newline at end of file diff --git "a/HTMLTest/HTML/\350\247\206\351\242\221\346\240\207\347\255\276.html" "b/HTMLTest/HTML/\350\247\206\351\242\221\346\240\207\347\255\276.html" deleted file mode 100644 index e3e48f9..0000000 --- "a/HTMLTest/HTML/\350\247\206\351\242\221\346\240\207\347\255\276.html" +++ /dev/null @@ -1,12 +0,0 @@ - - - - - 视频标签 - - - - - - - \ No newline at end of file diff --git "a/HTMLTest/HTML/\351\223\276\346\216\245\346\240\207\347\255\276.html" "b/HTMLTest/HTML/\351\223\276\346\216\245\346\240\207\347\255\276.html" deleted file mode 100644 index c356e15..0000000 --- "a/HTMLTest/HTML/\351\223\276\346\216\245\346\240\207\347\255\276.html" +++ /dev/null @@ -1,16 +0,0 @@ - - - - - 链接标签 - - - -点击在新页面显示图片
-点击刷新本页面显示图片
- - - 测试图片 - - - \ No newline at end of file diff --git "a/HTMLTest/HTML/\351\224\232\351\223\276\346\216\245\346\240\207\347\255\276.html" "b/HTMLTest/HTML/\351\224\232\351\223\276\346\216\245\346\240\207\347\255\276.html" deleted file mode 100644 index 6e0b87e..0000000 --- "a/HTMLTest/HTML/\351\224\232\351\223\276\346\216\245\346\240\207\347\255\276.html" +++ /dev/null @@ -1,32 +0,0 @@ - - - - - 锚链接标签 - - - -top
- -

- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
- 多啦头像
-

- - -点击回到顶部
-点击跳转 - - \ No newline at end of file diff --git "a/HTMLTest/HTML/\351\235\231\345\244\234\346\200\235\346\265\213\350\257\225.html" "b/HTMLTest/HTML/\351\235\231\345\244\234\346\200\235\346\265\213\350\257\225.html" deleted file mode 100644 index af1f80e..0000000 --- "a/HTMLTest/HTML/\351\235\231\345\244\234\346\200\235\346\265\213\350\257\225.html" +++ /dev/null @@ -1,19 +0,0 @@ - - - - - 静夜思 - - -

静夜思

-朝代:唐   作者:李白
-
-原文: -

- 床前明月光,
- 疑似地上霜。
- 举头望明月,
- 低头思故乡。
-

- - \ No newline at end of file diff --git a/HTMLTest/HTMLTest.iml b/HTMLTest/HTMLTest.iml deleted file mode 100644 index c90834f..0000000 --- a/HTMLTest/HTMLTest.iml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/HTMLTest/resources/image/test1.jpg b/HTMLTest/resources/image/test1.jpg deleted file mode 100644 index 3f66462..0000000 Binary files a/HTMLTest/resources/image/test1.jpg and /dev/null differ diff --git a/HTMLTest/resources/video/test2.mp4 b/HTMLTest/resources/video/test2.mp4 deleted file mode 100644 index e8fd163..0000000 Binary files a/HTMLTest/resources/video/test2.mp4 and /dev/null differ diff --git a/Mybatis-Study/.idea/compiler.xml b/Mybatis-Study/.idea/compiler.xml deleted file mode 100644 index c9e6be6..0000000 --- a/Mybatis-Study/.idea/compiler.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/.idea/dataSources.local.xml b/Mybatis-Study/.idea/dataSources.local.xml deleted file mode 100644 index f9485e6..0000000 --- a/Mybatis-Study/.idea/dataSources.local.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - #@ - ` - - - master_key - root - - - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/.idea/dataSources.xml b/Mybatis-Study/.idea/dataSources.xml deleted file mode 100644 index 3bd29a3..0000000 --- a/Mybatis-Study/.idea/dataSources.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - mysql.8 - true - com.mysql.cj.jdbc.Driver - jdbc:mysql://localhost:3306 - $ProjectFileDir$ - - - \ No newline at end of file diff --git a/Mybatis-Study/.idea/dataSources/83e0fa85-1b59-4c16-aad5-dec48c229b67.xml b/Mybatis-Study/.idea/dataSources/83e0fa85-1b59-4c16-aad5-dec48c229b67.xml deleted file mode 100644 index af30187..0000000 --- a/Mybatis-Study/.idea/dataSources/83e0fa85-1b59-4c16-aad5-dec48c229b67.xml +++ /dev/null @@ -1,855 +0,0 @@ - - - - - 5.7.19 - |root||root|localhost|ALTER|G -|root||root|localhost|ALTER ROUTINE|G -|root||root|localhost|CREATE|G -|root||root|localhost|CREATE ROUTINE|G -|root||root|localhost|CREATE TABLESPACE|G -|root||root|localhost|CREATE TEMPORARY TABLES|G -|root||root|localhost|CREATE USER|G -|root||root|localhost|CREATE VIEW|G -|root||root|localhost|DELETE|G -|root||root|localhost|DROP|G -|root||root|localhost|EVENT|G -|root||root|localhost|EXECUTE|G -|root||root|localhost|FILE|G -|root||root|localhost|INDEX|G -|root||root|localhost|INSERT|G -|root||root|localhost|LOCK TABLES|G -|root||root|localhost|PROCESS|G -|root||root|localhost|REFERENCES|G -|root||root|localhost|RELOAD|G -|root||root|localhost|REPLICATION CLIENT|G -|root||root|localhost|REPLICATION SLAVE|G -|root||root|localhost|SELECT|G -|root||root|localhost|SHOW DATABASES|G -|root||root|localhost|SHOW VIEW|G -|root||root|localhost|SHUTDOWN|G -|root||mysql.session|localhost|SUPER|G -|root||root|localhost|SUPER|G -|root||root|localhost|TRIGGER|G -|root||root|localhost|UPDATE|G -|root||root|localhost|grant option|G -performance_schema|schema||mysql.session|localhost|SELECT|G -sys|schema||mysql.sys|localhost|TRIGGER|G - InnoDB - InnoDB - lower/lower - - - 1 - utf8_general_ci - - - utf8_general_ci - - - latin1_swedish_ci - - - latin1_swedish_ci - - - utf8_general_ci - - - utf8_general_ci - - - utf8_general_ci - - - utf8_general_ci - - - utf8_general_ci - - - armscii8 - - - armscii8 - 1 - - - ascii - - - ascii - 1 - - - big5 - - - big5 - 1 - - - binary - 1 - - - cp1250 - - - cp1250 - - - cp1250 - - - cp1250 - 1 - - - cp1250 - - - cp1251 - - - cp1251 - - - cp1251 - 1 - - - cp1251 - - - cp1251 - - - cp1256 - - - cp1256 - 1 - - - cp1257 - - - cp1257 - 1 - - - cp1257 - - - cp850 - - - cp850 - 1 - - - cp852 - - - cp852 - 1 - - - cp866 - - - cp866 - 1 - - - cp932 - - - cp932 - 1 - - - dec8 - - - dec8 - 1 - - - eucjpms - - - eucjpms - 1 - - - euckr - - - euckr - 1 - - - gb18030 - - - gb18030 - 1 - - - gb18030 - - - gb2312 - - - gb2312 - 1 - - - gbk - - - gbk - 1 - - - geostd8 - - - geostd8 - 1 - - - greek - - - greek - 1 - - - hebrew - - - hebrew - 1 - - - hp8 - - - hp8 - 1 - - - keybcs2 - - - keybcs2 - 1 - - - koi8r - - - koi8r - 1 - - - koi8u - - - koi8u - 1 - - - latin1 - - - latin1 - - - latin1 - - - latin1 - - - latin1 - - - latin1 - - - latin1 - - - latin1 - 1 - - - latin2 - - - latin2 - - - latin2 - - - latin2 - 1 - - - latin2 - - - latin5 - - - latin5 - 1 - - - latin7 - - - latin7 - - - latin7 - 1 - - - latin7 - - - macce - - - macce - 1 - - - macroman - - - macroman - 1 - - - sjis - - - sjis - 1 - - - swe7 - - - swe7 - 1 - - - tis620 - - - tis620 - 1 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - 1 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ujis - - - ujis - 1 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - 1 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16le - - - utf16le - 1 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - 1 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - 1 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - 1 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - localhost - - - localhost - - - localhost - - - utf8_general_ci -
- - utf8_general_ci -
- - utf8_general_ci -
- - 1 - int(10)|0s - 1 - - - 2 - varchar(30)|0s - - - 3 - int(10)|0s - - - tid - btree - - - 1 - id - 1 - - - tid - teacher - id - - - 1 - int(10)|0s - 1 - - - 2 - varchar(30)|0s - - - 1 - id - 1 - - - 1 - int(20)|0s - 1 - - - 2 - varchar(30)|0s - - - 3 - varchar(30)|0s - - - 1 - id - 1 - -
-
\ No newline at end of file diff --git a/Mybatis-Study/.idea/dataSources/83e0fa85-1b59-4c16-aad5-dec48c229b67/storage_v2/_src_/schema/information_schema.FNRwLQ.meta b/Mybatis-Study/.idea/dataSources/83e0fa85-1b59-4c16-aad5-dec48c229b67/storage_v2/_src_/schema/information_schema.FNRwLQ.meta deleted file mode 100644 index 1ff3db2..0000000 --- a/Mybatis-Study/.idea/dataSources/83e0fa85-1b59-4c16-aad5-dec48c229b67/storage_v2/_src_/schema/information_schema.FNRwLQ.meta +++ /dev/null @@ -1,2 +0,0 @@ -#n:information_schema -! [null, 0, null, null, -2147483648, -2147483648] diff --git a/Mybatis-Study/.idea/dataSources/83e0fa85-1b59-4c16-aad5-dec48c229b67/storage_v2/_src_/schema/mysql.osA4Bg.meta b/Mybatis-Study/.idea/dataSources/83e0fa85-1b59-4c16-aad5-dec48c229b67/storage_v2/_src_/schema/mysql.osA4Bg.meta deleted file mode 100644 index 86a53f1..0000000 --- a/Mybatis-Study/.idea/dataSources/83e0fa85-1b59-4c16-aad5-dec48c229b67/storage_v2/_src_/schema/mysql.osA4Bg.meta +++ /dev/null @@ -1,2 +0,0 @@ -#n:mysql -! [null, 0, null, null, -2147483648, -2147483648] diff --git a/Mybatis-Study/.idea/dataSources/83e0fa85-1b59-4c16-aad5-dec48c229b67/storage_v2/_src_/schema/performance_schema.kIw0nw.meta b/Mybatis-Study/.idea/dataSources/83e0fa85-1b59-4c16-aad5-dec48c229b67/storage_v2/_src_/schema/performance_schema.kIw0nw.meta deleted file mode 100644 index 9394db1..0000000 --- a/Mybatis-Study/.idea/dataSources/83e0fa85-1b59-4c16-aad5-dec48c229b67/storage_v2/_src_/schema/performance_schema.kIw0nw.meta +++ /dev/null @@ -1,2 +0,0 @@ -#n:performance_schema -! [null, 0, null, null, -2147483648, -2147483648] diff --git a/Mybatis-Study/.idea/dataSources/83e0fa85-1b59-4c16-aad5-dec48c229b67/storage_v2/_src_/schema/sys.zb4BAA.meta b/Mybatis-Study/.idea/dataSources/83e0fa85-1b59-4c16-aad5-dec48c229b67/storage_v2/_src_/schema/sys.zb4BAA.meta deleted file mode 100644 index 2f4470b..0000000 --- a/Mybatis-Study/.idea/dataSources/83e0fa85-1b59-4c16-aad5-dec48c229b67/storage_v2/_src_/schema/sys.zb4BAA.meta +++ /dev/null @@ -1,2 +0,0 @@ -#n:sys -! [null, 0, null, null, -2147483648, -2147483648] diff --git a/Mybatis-Study/.idea/jarRepositories.xml b/Mybatis-Study/.idea/jarRepositories.xml deleted file mode 100644 index 980588c..0000000 --- a/Mybatis-Study/.idea/jarRepositories.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/.idea/misc.xml b/Mybatis-Study/.idea/misc.xml deleted file mode 100644 index 132404b..0000000 --- a/Mybatis-Study/.idea/misc.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/.idea/sqldialects.xml b/Mybatis-Study/.idea/sqldialects.xml deleted file mode 100644 index c82fd10..0000000 --- a/Mybatis-Study/.idea/sqldialects.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/.idea/vcs.xml b/Mybatis-Study/.idea/vcs.xml deleted file mode 100644 index 6c0b863..0000000 --- a/Mybatis-Study/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/.idea/workspace.xml b/Mybatis-Study/.idea/workspace.xml deleted file mode 100644 index 840a5ee..0000000 --- a/Mybatis-Study/.idea/workspace.xml +++ /dev/null @@ -1,451 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1626928834911 - - - - - - - - - - - - - file://$PROJECT_DIR$/mybatis-05/src/test/java/com/xiaokai/dao/UserMapperTest.java - 87 - - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-01/pom.xml b/Mybatis-Study/mybatis-01/pom.xml deleted file mode 100644 index 4221c48..0000000 --- a/Mybatis-Study/mybatis-01/pom.xml +++ /dev/null @@ -1,39 +0,0 @@ - - - - Mybatis-Study - com.xiaokai - 1.0-SNAPSHOT - - 4.0.0 - - mybatis-01 - - - 8 - 8 - - - - - - src/main/java - - **/*.properties - **/*.xml - - false - - - src/main/resources - - **/*.properties - **/*.xml - - false - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-01/src/main/java/com/xiaokai/dao/UserMapper.java b/Mybatis-Study/mybatis-01/src/main/java/com/xiaokai/dao/UserMapper.java deleted file mode 100644 index 83f7549..0000000 --- a/Mybatis-Study/mybatis-01/src/main/java/com/xiaokai/dao/UserMapper.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.xiaokai.dao; - -import com.xiaokai.pojo.User; - -import java.util.List; -import java.util.Map; - -public interface UserMapper { - List getUserList(); - - User getUserById(int id); - - int addUser(User user); - - int deleteById(int id); - - int updateUser(User user); - - User getUserByIdName(Map map); -} diff --git a/Mybatis-Study/mybatis-01/src/main/java/com/xiaokai/dao/UserMapper.xml b/Mybatis-Study/mybatis-01/src/main/java/com/xiaokai/dao/UserMapper.xml deleted file mode 100644 index 0f500ae..0000000 --- a/Mybatis-Study/mybatis-01/src/main/java/com/xiaokai/dao/UserMapper.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - insert into user (id,name,pwd) values (#{id},#{name},#{pwd}) - - - - delete from user where id = #{id}; - - - - update user set name = #{name}, pwd = #{pwd} where id = #{id} - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-01/src/main/java/com/xiaokai/pojo/User.java b/Mybatis-Study/mybatis-01/src/main/java/com/xiaokai/pojo/User.java deleted file mode 100644 index 6749e65..0000000 --- a/Mybatis-Study/mybatis-01/src/main/java/com/xiaokai/pojo/User.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.xiaokai.pojo; - -public class User { - private int id; - private String name; - private String pwd; - - public User() {} - - public User(int id, String name, String pwd) { - this.id = id; - this.name = name; - this.pwd = pwd; - } - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getPwd() { - return pwd; - } - - public void setPwd(String pwd) { - this.pwd = pwd; - } - - @Override - public String toString() { - return "User{" + - "id=" + id + - ", name='" + name + '\'' + - ", pwd='" + pwd + '\'' + - '}'; - } -} diff --git a/Mybatis-Study/mybatis-01/src/main/java/com/xiaokai/utils/MybatisUtils.java b/Mybatis-Study/mybatis-01/src/main/java/com/xiaokai/utils/MybatisUtils.java deleted file mode 100644 index 5e8b954..0000000 --- a/Mybatis-Study/mybatis-01/src/main/java/com/xiaokai/utils/MybatisUtils.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.xiaokai.utils; - -import org.apache.ibatis.io.Resources; -import org.apache.ibatis.session.SqlSession; -import org.apache.ibatis.session.SqlSessionFactory; -import org.apache.ibatis.session.SqlSessionFactoryBuilder; - -import java.io.IOException; -import java.io.InputStream; - -//获取SqlSessionFactory -----> SqlSession -public class MybatisUtils { - private static SqlSessionFactory sqlSessionFactory; - static{ - try { - String resource = "mybatis-config.xml"; - InputStream inputStream = Resources.getResourceAsStream(resource); - sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); - } catch (IOException e) { - e.printStackTrace(); - } - } - - //获取sqlSession连接 - public static SqlSession getSession(){ - return sqlSessionFactory.openSession(); - } -} diff --git a/Mybatis-Study/mybatis-01/src/main/resources/mybatis-config.xml b/Mybatis-Study/mybatis-01/src/main/resources/mybatis-config.xml deleted file mode 100644 index 9e1a6f9..0000000 --- a/Mybatis-Study/mybatis-01/src/main/resources/mybatis-config.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-01/src/test/java/com/xiaokai/dao/UserMapperTest.java b/Mybatis-Study/mybatis-01/src/test/java/com/xiaokai/dao/UserMapperTest.java deleted file mode 100644 index 2438a1f..0000000 --- a/Mybatis-Study/mybatis-01/src/test/java/com/xiaokai/dao/UserMapperTest.java +++ /dev/null @@ -1,101 +0,0 @@ -package com.xiaokai.dao; - -import com.xiaokai.pojo.User; -import com.xiaokai.utils.MybatisUtils; -import org.apache.ibatis.session.SqlSession; -import org.junit.Test; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -public class UserMapperTest { - @Test - public void selectUser(){ - //第一步:获取sqlSession对象 - SqlSession sqlSession = null; - try { - sqlSession = MybatisUtils.getSession(); - //执行sql - UserMapper mapper = sqlSession.getMapper(UserMapper.class); - List userList = mapper.getUserList(); - for (User user : userList) { - System.out.println(user); - } - } finally { - sqlSession.close(); - } - } - - @Test - public void getUserById(){ - SqlSession sqlSession = null; - try { - sqlSession = MybatisUtils.getSession(); - UserMapper mapper = sqlSession.getMapper(UserMapper.class); - User user = mapper.getUserById(1); - System.out.println(user); - }finally { - sqlSession.close(); - } - } - - @Test - public void addUser(){ - SqlSession sqlSession = null; - try { - sqlSession = MybatisUtils.getSession(); - UserMapper mapper = sqlSession.getMapper(UserMapper.class); - int add = mapper.addUser(new User(6, "abcd", "123123")); - sqlSession.commit(); - System.out.println(add); - } finally { - sqlSession.close(); - } - } - - @Test - public void deleteById(){ - SqlSession sqlSession = null; - try { - sqlSession = MybatisUtils.getSession(); - UserMapper mapper = sqlSession.getMapper(UserMapper.class); - int delete = mapper.deleteById(5); - sqlSession.commit(); - System.out.println(delete); - } finally { - sqlSession.close(); - } - } - - @Test - public void updateUser(){ - SqlSession sqlSession = null; - try { - sqlSession = MybatisUtils.getSession(); - UserMapper mapper = sqlSession.getMapper(UserMapper.class); - int flag = mapper.updateUser(new User(4, "dadada", "111111")); - sqlSession.commit(); - System.out.println(flag); - } finally { - sqlSession.close(); - } - } - - @Test - public void getUserByIdName(){ - SqlSession sqlSession = null; - Map map = new HashMap<>(); - try { - sqlSession = MybatisUtils.getSession(); - UserMapper mapper = sqlSession.getMapper(UserMapper.class); - map.put("name","dadada"); - map.put("pwd","111111"); - User user = mapper.getUserByIdName(map); - System.out.println(user); - } finally { - sqlSession.close(); - } - - } -} diff --git a/Mybatis-Study/mybatis-01/target/classes/com/xiaokai/dao/UserMapper.class b/Mybatis-Study/mybatis-01/target/classes/com/xiaokai/dao/UserMapper.class deleted file mode 100644 index abd7502..0000000 Binary files a/Mybatis-Study/mybatis-01/target/classes/com/xiaokai/dao/UserMapper.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-01/target/classes/com/xiaokai/dao/UserMapper.xml b/Mybatis-Study/mybatis-01/target/classes/com/xiaokai/dao/UserMapper.xml deleted file mode 100644 index 0f500ae..0000000 --- a/Mybatis-Study/mybatis-01/target/classes/com/xiaokai/dao/UserMapper.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - insert into user (id,name,pwd) values (#{id},#{name},#{pwd}) - - - - delete from user where id = #{id}; - - - - update user set name = #{name}, pwd = #{pwd} where id = #{id} - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-01/target/classes/com/xiaokai/pojo/User.class b/Mybatis-Study/mybatis-01/target/classes/com/xiaokai/pojo/User.class deleted file mode 100644 index dee6166..0000000 Binary files a/Mybatis-Study/mybatis-01/target/classes/com/xiaokai/pojo/User.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-01/target/classes/com/xiaokai/utils/MybatisUtils.class b/Mybatis-Study/mybatis-01/target/classes/com/xiaokai/utils/MybatisUtils.class deleted file mode 100644 index 30c4ec1..0000000 Binary files a/Mybatis-Study/mybatis-01/target/classes/com/xiaokai/utils/MybatisUtils.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-01/target/classes/mybatis-config.xml b/Mybatis-Study/mybatis-01/target/classes/mybatis-config.xml deleted file mode 100644 index 9e1a6f9..0000000 --- a/Mybatis-Study/mybatis-01/target/classes/mybatis-config.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-01/target/test-classes/com/xiaokai/dao/UserMapperTest.class b/Mybatis-Study/mybatis-01/target/test-classes/com/xiaokai/dao/UserMapperTest.class deleted file mode 100644 index 53fc49d..0000000 Binary files a/Mybatis-Study/mybatis-01/target/test-classes/com/xiaokai/dao/UserMapperTest.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-02/pom.xml b/Mybatis-Study/mybatis-02/pom.xml deleted file mode 100644 index 90cf734..0000000 --- a/Mybatis-Study/mybatis-02/pom.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - Mybatis-Study - com.xiaokai - 1.0-SNAPSHOT - - 4.0.0 - - mybatis-02 - - - 8 - 8 - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-02/src/main/java/com/xiaokai/dao/UserMapper.java b/Mybatis-Study/mybatis-02/src/main/java/com/xiaokai/dao/UserMapper.java deleted file mode 100644 index 1c423a6..0000000 --- a/Mybatis-Study/mybatis-02/src/main/java/com/xiaokai/dao/UserMapper.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.xiaokai.dao; - -import com.xiaokai.pojo.User; - -import java.util.List; -import java.util.Map; - -public interface UserMapper { - List getUserList(); - - User getUserById(int id); - - int addUser(User user); - - int deleteById(int id); - - int updateUser(User user); - -} diff --git a/Mybatis-Study/mybatis-02/src/main/java/com/xiaokai/dao/UserMapper.xml b/Mybatis-Study/mybatis-02/src/main/java/com/xiaokai/dao/UserMapper.xml deleted file mode 100644 index 0c7387c..0000000 --- a/Mybatis-Study/mybatis-02/src/main/java/com/xiaokai/dao/UserMapper.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - insert into mybatis.user (id,name,pwd) values (#{id},#{name},#{pwd}) - - - - delete from mybatis.user where id = #{id}; - - - - update mybatis.user set name = #{name}, pwd = #{pwd} where id = #{id} - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-02/src/main/java/com/xiaokai/pojo/User.java b/Mybatis-Study/mybatis-02/src/main/java/com/xiaokai/pojo/User.java deleted file mode 100644 index 5d745d9..0000000 --- a/Mybatis-Study/mybatis-02/src/main/java/com/xiaokai/pojo/User.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.xiaokai.pojo; - -import org.apache.ibatis.type.Alias; - -@Alias("user") -public class User { - private int id; - private String name; - private String pwd; - - public User() {} - - public User(int id, String name, String pwd) { - this.id = id; - this.name = name; - this.pwd = pwd; - } - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getPwd() { - return pwd; - } - - public void setPwd(String pwd) { - this.pwd = pwd; - } - - @Override - public String toString() { - return "User{" + - "id=" + id + - ", name='" + name + '\'' + - ", pwd='" + pwd + '\'' + - '}'; - } -} diff --git a/Mybatis-Study/mybatis-02/src/main/java/com/xiaokai/utils/MybatisUtils.java b/Mybatis-Study/mybatis-02/src/main/java/com/xiaokai/utils/MybatisUtils.java deleted file mode 100644 index 5e8b954..0000000 --- a/Mybatis-Study/mybatis-02/src/main/java/com/xiaokai/utils/MybatisUtils.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.xiaokai.utils; - -import org.apache.ibatis.io.Resources; -import org.apache.ibatis.session.SqlSession; -import org.apache.ibatis.session.SqlSessionFactory; -import org.apache.ibatis.session.SqlSessionFactoryBuilder; - -import java.io.IOException; -import java.io.InputStream; - -//获取SqlSessionFactory -----> SqlSession -public class MybatisUtils { - private static SqlSessionFactory sqlSessionFactory; - static{ - try { - String resource = "mybatis-config.xml"; - InputStream inputStream = Resources.getResourceAsStream(resource); - sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); - } catch (IOException e) { - e.printStackTrace(); - } - } - - //获取sqlSession连接 - public static SqlSession getSession(){ - return sqlSessionFactory.openSession(); - } -} diff --git a/Mybatis-Study/mybatis-02/src/main/resources/db.properties b/Mybatis-Study/mybatis-02/src/main/resources/db.properties deleted file mode 100644 index bce1a8a..0000000 --- a/Mybatis-Study/mybatis-02/src/main/resources/db.properties +++ /dev/null @@ -1,4 +0,0 @@ -driver=com.mysql.jdbc.Driver -url=jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=true&characterEncoding=utf8 -username=root -password=123456 \ No newline at end of file diff --git a/Mybatis-Study/mybatis-02/src/main/resources/mybatis-config.xml b/Mybatis-Study/mybatis-02/src/main/resources/mybatis-config.xml deleted file mode 100644 index 5a8e534..0000000 --- a/Mybatis-Study/mybatis-02/src/main/resources/mybatis-config.xml +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-02/src/test/java/com/xiaokai/dao/UserMapperTest.java b/Mybatis-Study/mybatis-02/src/test/java/com/xiaokai/dao/UserMapperTest.java deleted file mode 100644 index 043f56d..0000000 --- a/Mybatis-Study/mybatis-02/src/test/java/com/xiaokai/dao/UserMapperTest.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.xiaokai.dao; - -import com.xiaokai.pojo.User; -import com.xiaokai.utils.MybatisUtils; -import org.apache.ibatis.session.SqlSession; -import org.junit.Test; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -public class UserMapperTest { - @Test - public void selectUserTest(){ - //第一步:获取sqlSession对象 - SqlSession sqlSession = null; - try { - sqlSession = MybatisUtils.getSession(); - //执行sql - UserMapper mapper = sqlSession.getMapper(UserMapper.class); - List userList = mapper.getUserList(); - for (User user : userList) { - System.out.println(user); - } - } finally { - sqlSession.close(); - } - } -} diff --git a/Mybatis-Study/mybatis-02/target/classes/com/xiaokai/dao/UserMapper.class b/Mybatis-Study/mybatis-02/target/classes/com/xiaokai/dao/UserMapper.class deleted file mode 100644 index 67282c2..0000000 Binary files a/Mybatis-Study/mybatis-02/target/classes/com/xiaokai/dao/UserMapper.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-02/target/classes/com/xiaokai/dao/UserMapper.xml b/Mybatis-Study/mybatis-02/target/classes/com/xiaokai/dao/UserMapper.xml deleted file mode 100644 index 0c7387c..0000000 --- a/Mybatis-Study/mybatis-02/target/classes/com/xiaokai/dao/UserMapper.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - insert into mybatis.user (id,name,pwd) values (#{id},#{name},#{pwd}) - - - - delete from mybatis.user where id = #{id}; - - - - update mybatis.user set name = #{name}, pwd = #{pwd} where id = #{id} - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-02/target/classes/com/xiaokai/pojo/User.class b/Mybatis-Study/mybatis-02/target/classes/com/xiaokai/pojo/User.class deleted file mode 100644 index 764a569..0000000 Binary files a/Mybatis-Study/mybatis-02/target/classes/com/xiaokai/pojo/User.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-02/target/classes/com/xiaokai/utils/MybatisUtils.class b/Mybatis-Study/mybatis-02/target/classes/com/xiaokai/utils/MybatisUtils.class deleted file mode 100644 index 30c4ec1..0000000 Binary files a/Mybatis-Study/mybatis-02/target/classes/com/xiaokai/utils/MybatisUtils.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-02/target/classes/db.properties b/Mybatis-Study/mybatis-02/target/classes/db.properties deleted file mode 100644 index bce1a8a..0000000 --- a/Mybatis-Study/mybatis-02/target/classes/db.properties +++ /dev/null @@ -1,4 +0,0 @@ -driver=com.mysql.jdbc.Driver -url=jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=true&characterEncoding=utf8 -username=root -password=123456 \ No newline at end of file diff --git a/Mybatis-Study/mybatis-02/target/classes/mybatis-config.xml b/Mybatis-Study/mybatis-02/target/classes/mybatis-config.xml deleted file mode 100644 index 5a8e534..0000000 --- a/Mybatis-Study/mybatis-02/target/classes/mybatis-config.xml +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-02/target/test-classes/com/xiaokai/dao/UserMapperTest.class b/Mybatis-Study/mybatis-02/target/test-classes/com/xiaokai/dao/UserMapperTest.class deleted file mode 100644 index e81091c..0000000 Binary files a/Mybatis-Study/mybatis-02/target/test-classes/com/xiaokai/dao/UserMapperTest.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-03/pom.xml b/Mybatis-Study/mybatis-03/pom.xml deleted file mode 100644 index cdb1e4b..0000000 --- a/Mybatis-Study/mybatis-03/pom.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - Mybatis-Study - com.xiaokai - 1.0-SNAPSHOT - - 4.0.0 - - mybatis-03 - - - 8 - 8 - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-03/src/main/java/com/xiaokai/dao/UserMapper.java b/Mybatis-Study/mybatis-03/src/main/java/com/xiaokai/dao/UserMapper.java deleted file mode 100644 index 4841d08..0000000 --- a/Mybatis-Study/mybatis-03/src/main/java/com/xiaokai/dao/UserMapper.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.xiaokai.dao; - -import com.xiaokai.pojo.User; - -import java.util.List; - -public interface UserMapper { - List getUserList(); - - User getUserById(int id); - - int addUser(User user); - - int deleteById(int id); - - int updateUser(User user); - -} diff --git a/Mybatis-Study/mybatis-03/src/main/java/com/xiaokai/dao/UserMapper.xml b/Mybatis-Study/mybatis-03/src/main/java/com/xiaokai/dao/UserMapper.xml deleted file mode 100644 index f4dc185..0000000 --- a/Mybatis-Study/mybatis-03/src/main/java/com/xiaokai/dao/UserMapper.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - - - - - - - - insert into mybatis.user (id,name,pwd) values (#{id},#{name},#{pwd}) - - - - delete from mybatis.user where id = #{id}; - - - - update mybatis.user set name = #{name}, pwd = #{pwd} where id = #{id} - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-03/src/main/java/com/xiaokai/pojo/User.java b/Mybatis-Study/mybatis-03/src/main/java/com/xiaokai/pojo/User.java deleted file mode 100644 index fcfe227..0000000 --- a/Mybatis-Study/mybatis-03/src/main/java/com/xiaokai/pojo/User.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.xiaokai.pojo; - -import org.apache.ibatis.type.Alias; - -@Alias("user") -public class User { - private int id; - private String name; - private String password; - - public User() {} - - public User(int id, String name, String password) { - this.id = id; - this.name = name; - this.password = password; - } - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getPassword() { - return password; - } - - public void setPassword(String password) { - this.password = password; - } - - @Override - public String toString() { - return "User{" + - "id=" + id + - ", name='" + name + '\'' + - ", password='" + password + '\'' + - '}'; - } -} diff --git a/Mybatis-Study/mybatis-03/src/main/java/com/xiaokai/utils/MybatisUtils.java b/Mybatis-Study/mybatis-03/src/main/java/com/xiaokai/utils/MybatisUtils.java deleted file mode 100644 index 5e8b954..0000000 --- a/Mybatis-Study/mybatis-03/src/main/java/com/xiaokai/utils/MybatisUtils.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.xiaokai.utils; - -import org.apache.ibatis.io.Resources; -import org.apache.ibatis.session.SqlSession; -import org.apache.ibatis.session.SqlSessionFactory; -import org.apache.ibatis.session.SqlSessionFactoryBuilder; - -import java.io.IOException; -import java.io.InputStream; - -//获取SqlSessionFactory -----> SqlSession -public class MybatisUtils { - private static SqlSessionFactory sqlSessionFactory; - static{ - try { - String resource = "mybatis-config.xml"; - InputStream inputStream = Resources.getResourceAsStream(resource); - sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); - } catch (IOException e) { - e.printStackTrace(); - } - } - - //获取sqlSession连接 - public static SqlSession getSession(){ - return sqlSessionFactory.openSession(); - } -} diff --git a/Mybatis-Study/mybatis-03/src/main/resources/db.properties b/Mybatis-Study/mybatis-03/src/main/resources/db.properties deleted file mode 100644 index bce1a8a..0000000 --- a/Mybatis-Study/mybatis-03/src/main/resources/db.properties +++ /dev/null @@ -1,4 +0,0 @@ -driver=com.mysql.jdbc.Driver -url=jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=true&characterEncoding=utf8 -username=root -password=123456 \ No newline at end of file diff --git a/Mybatis-Study/mybatis-03/src/main/resources/mybatis-config.xml b/Mybatis-Study/mybatis-03/src/main/resources/mybatis-config.xml deleted file mode 100644 index 5a8e534..0000000 --- a/Mybatis-Study/mybatis-03/src/main/resources/mybatis-config.xml +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-03/src/test/java/com/xiaokai/dao/UserMapperTest.java b/Mybatis-Study/mybatis-03/src/test/java/com/xiaokai/dao/UserMapperTest.java deleted file mode 100644 index 1597939..0000000 --- a/Mybatis-Study/mybatis-03/src/test/java/com/xiaokai/dao/UserMapperTest.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.xiaokai.dao; - -import com.xiaokai.pojo.User; -import com.xiaokai.utils.MybatisUtils; -import org.apache.ibatis.session.SqlSession; -import org.junit.Test; - -import java.util.List; - -public class UserMapperTest { - @Test - public void testGetUserById(){ - SqlSession sqlSession = null; - try { - sqlSession = MybatisUtils.getSession(); - UserMapper mapper = sqlSession.getMapper(UserMapper.class); - User user = mapper.getUserById(4); - System.out.println(user); - } finally { - sqlSession.close(); - } - } -} diff --git a/Mybatis-Study/mybatis-03/target/classes/com/xiaokai/dao/UserMapper.class b/Mybatis-Study/mybatis-03/target/classes/com/xiaokai/dao/UserMapper.class deleted file mode 100644 index 67282c2..0000000 Binary files a/Mybatis-Study/mybatis-03/target/classes/com/xiaokai/dao/UserMapper.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-03/target/classes/com/xiaokai/dao/UserMapper.xml b/Mybatis-Study/mybatis-03/target/classes/com/xiaokai/dao/UserMapper.xml deleted file mode 100644 index f4dc185..0000000 --- a/Mybatis-Study/mybatis-03/target/classes/com/xiaokai/dao/UserMapper.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - - - - - - - - insert into mybatis.user (id,name,pwd) values (#{id},#{name},#{pwd}) - - - - delete from mybatis.user where id = #{id}; - - - - update mybatis.user set name = #{name}, pwd = #{pwd} where id = #{id} - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-03/target/classes/com/xiaokai/pojo/User.class b/Mybatis-Study/mybatis-03/target/classes/com/xiaokai/pojo/User.class deleted file mode 100644 index 2cde503..0000000 Binary files a/Mybatis-Study/mybatis-03/target/classes/com/xiaokai/pojo/User.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-03/target/classes/com/xiaokai/utils/MybatisUtils.class b/Mybatis-Study/mybatis-03/target/classes/com/xiaokai/utils/MybatisUtils.class deleted file mode 100644 index 30c4ec1..0000000 Binary files a/Mybatis-Study/mybatis-03/target/classes/com/xiaokai/utils/MybatisUtils.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-03/target/classes/db.properties b/Mybatis-Study/mybatis-03/target/classes/db.properties deleted file mode 100644 index bce1a8a..0000000 --- a/Mybatis-Study/mybatis-03/target/classes/db.properties +++ /dev/null @@ -1,4 +0,0 @@ -driver=com.mysql.jdbc.Driver -url=jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=true&characterEncoding=utf8 -username=root -password=123456 \ No newline at end of file diff --git a/Mybatis-Study/mybatis-03/target/classes/mybatis-config.xml b/Mybatis-Study/mybatis-03/target/classes/mybatis-config.xml deleted file mode 100644 index 5a8e534..0000000 --- a/Mybatis-Study/mybatis-03/target/classes/mybatis-config.xml +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-03/target/test-classes/com/xiaokai/dao/UserMapperTest.class b/Mybatis-Study/mybatis-03/target/test-classes/com/xiaokai/dao/UserMapperTest.class deleted file mode 100644 index f9f1f2a..0000000 Binary files a/Mybatis-Study/mybatis-03/target/test-classes/com/xiaokai/dao/UserMapperTest.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-04/log/xiaokai.log b/Mybatis-Study/mybatis-04/log/xiaokai.log deleted file mode 100644 index 24a03e5..0000000 Binary files a/Mybatis-Study/mybatis-04/log/xiaokai.log and /dev/null differ diff --git a/Mybatis-Study/mybatis-04/pom.xml b/Mybatis-Study/mybatis-04/pom.xml deleted file mode 100644 index 8c75fb6..0000000 --- a/Mybatis-Study/mybatis-04/pom.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - Mybatis-Study - com.xiaokai - 1.0-SNAPSHOT - - 4.0.0 - - mybatis-04 - - - 8 - 8 - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-04/src/main/java/com/xiaokai/dao/UserMapper.java b/Mybatis-Study/mybatis-04/src/main/java/com/xiaokai/dao/UserMapper.java deleted file mode 100644 index 7197e3c..0000000 --- a/Mybatis-Study/mybatis-04/src/main/java/com/xiaokai/dao/UserMapper.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.xiaokai.dao; - -import com.xiaokai.pojo.User; - -import java.util.List; -import java.util.Map; - -public interface UserMapper { - List getUserList(); - - User getUserById(int id); - - int addUser(User user); - - int deleteById(int id); - - int updateUser(User user); - - List getUserListLimit(Map map); - - List getUserListRowBounds(); - -} diff --git a/Mybatis-Study/mybatis-04/src/main/java/com/xiaokai/dao/UserMapper.xml b/Mybatis-Study/mybatis-04/src/main/java/com/xiaokai/dao/UserMapper.xml deleted file mode 100644 index 340471b..0000000 --- a/Mybatis-Study/mybatis-04/src/main/java/com/xiaokai/dao/UserMapper.xml +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - insert into mybatis.user (id,name,pwd) values (#{id},#{name},#{pwd}) - - - - delete from mybatis.user where id = #{id}; - - - - update mybatis.user set name = #{name}, pwd = #{pwd} where id = #{id} - - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-04/src/main/java/com/xiaokai/pojo/User.java b/Mybatis-Study/mybatis-04/src/main/java/com/xiaokai/pojo/User.java deleted file mode 100644 index fcfe227..0000000 --- a/Mybatis-Study/mybatis-04/src/main/java/com/xiaokai/pojo/User.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.xiaokai.pojo; - -import org.apache.ibatis.type.Alias; - -@Alias("user") -public class User { - private int id; - private String name; - private String password; - - public User() {} - - public User(int id, String name, String password) { - this.id = id; - this.name = name; - this.password = password; - } - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getPassword() { - return password; - } - - public void setPassword(String password) { - this.password = password; - } - - @Override - public String toString() { - return "User{" + - "id=" + id + - ", name='" + name + '\'' + - ", password='" + password + '\'' + - '}'; - } -} diff --git a/Mybatis-Study/mybatis-04/src/main/java/com/xiaokai/utils/MybatisUtils.java b/Mybatis-Study/mybatis-04/src/main/java/com/xiaokai/utils/MybatisUtils.java deleted file mode 100644 index 5e8b954..0000000 --- a/Mybatis-Study/mybatis-04/src/main/java/com/xiaokai/utils/MybatisUtils.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.xiaokai.utils; - -import org.apache.ibatis.io.Resources; -import org.apache.ibatis.session.SqlSession; -import org.apache.ibatis.session.SqlSessionFactory; -import org.apache.ibatis.session.SqlSessionFactoryBuilder; - -import java.io.IOException; -import java.io.InputStream; - -//获取SqlSessionFactory -----> SqlSession -public class MybatisUtils { - private static SqlSessionFactory sqlSessionFactory; - static{ - try { - String resource = "mybatis-config.xml"; - InputStream inputStream = Resources.getResourceAsStream(resource); - sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); - } catch (IOException e) { - e.printStackTrace(); - } - } - - //获取sqlSession连接 - public static SqlSession getSession(){ - return sqlSessionFactory.openSession(); - } -} diff --git a/Mybatis-Study/mybatis-04/src/main/resources/db.properties b/Mybatis-Study/mybatis-04/src/main/resources/db.properties deleted file mode 100644 index bce1a8a..0000000 --- a/Mybatis-Study/mybatis-04/src/main/resources/db.properties +++ /dev/null @@ -1,4 +0,0 @@ -driver=com.mysql.jdbc.Driver -url=jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=true&characterEncoding=utf8 -username=root -password=123456 \ No newline at end of file diff --git a/Mybatis-Study/mybatis-04/src/main/resources/log4j.properties b/Mybatis-Study/mybatis-04/src/main/resources/log4j.properties deleted file mode 100644 index d40865c..0000000 --- a/Mybatis-Study/mybatis-04/src/main/resources/log4j.properties +++ /dev/null @@ -1,24 +0,0 @@ -#将等级为DEBUG的日志信息输出到console和file这两个目的地,console和file的定义在下面的代码 -log4j.rootLogger=DEBUG,console,file - -#控制台输出的相关设置 -log4j.appender.console = org.apache.log4j.ConsoleAppender -log4j.appender.console.Target = System.out -log4j.appender.console.Threshold=DEBUG -log4j.appender.console.layout = org.apache.log4j.PatternLayout -log4j.appender.console.layout.ConversionPattern=[%c]-%m%n - -#文件输出的相关设置 -log4j.appender.file = org.apache.log4j.RollingFileAppender -log4j.appender.file.File=./log/xiaokai.log -log4j.appender.file.MaxFileSize=10mb -log4j.appender.file.Threshold=DEBUG -log4j.appender.file.layout=org.apache.log4j.PatternLayout -log4j.appender.file.layout.ConversionPattern=[%p][%d{yy-MM-dd}][%c]%m%n - -#日志输出级别 -log4j.logger.org.mybatis=DEBUG -log4j.logger.java.sql=DEBUG -log4j.logger.java.sql.Statement=DEBUG -log4j.logger.java.sql.ResultSet=DEBUG -log4j.logger.java.sql.PreparedStatement=DEBUG \ No newline at end of file diff --git a/Mybatis-Study/mybatis-04/src/main/resources/mybatis-config.xml b/Mybatis-Study/mybatis-04/src/main/resources/mybatis-config.xml deleted file mode 100644 index ed0b58f..0000000 --- a/Mybatis-Study/mybatis-04/src/main/resources/mybatis-config.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-04/src/test/java/com/xiaokai/dao/UserMapperTest.java b/Mybatis-Study/mybatis-04/src/test/java/com/xiaokai/dao/UserMapperTest.java deleted file mode 100644 index eea1a67..0000000 --- a/Mybatis-Study/mybatis-04/src/test/java/com/xiaokai/dao/UserMapperTest.java +++ /dev/null @@ -1,79 +0,0 @@ -package com.xiaokai.dao; - -import com.xiaokai.pojo.User; -import com.xiaokai.utils.MybatisUtils; -import org.apache.ibatis.session.RowBounds; -import org.apache.ibatis.session.SqlSession; -import org.apache.log4j.Logger; -import org.junit.Test; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -public class UserMapperTest { - static Logger logger = Logger.getLogger(UserMapperTest.class); - @Test - public void testGetUserById(){ - SqlSession sqlSession = null; - try { - sqlSession = MybatisUtils.getSession(); - logger.info("info:"+sqlSession); - UserMapper mapper = sqlSession.getMapper(UserMapper.class); - User user = mapper.getUserById(4); - System.out.println(user); - } finally { - sqlSession.close(); - } - } - - @Test - public void testLog4j(){ - logger.info("info:xiaokai"); - logger.debug("debug:xiaokai"); - logger.error("error:xiaokai"); - } - - @Test - public void getUserListLimit(){ - SqlSession sqlSession = null; - Map map = new HashMap<>(); - try { - sqlSession = MybatisUtils.getSession(); - logger.info("获得sqlsession连接"); - UserMapper mapper = sqlSession.getMapper(UserMapper.class); - logger.info("mapper:"+mapper); - int startIndex = 1;//第几页 - int pageSize = 2;//每页显示几个 - map.put("pageCount",(startIndex-1)*pageSize); - map.put("pageSize",pageSize); - List userList = mapper.getUserListLimit(map); - for (User user : userList) { - System.out.println(user); - } - } finally { - sqlSession.close(); - logger.info("数据库连接关闭"); - } - } - - @Test - public void getUserListRowBounds(){ - SqlSession sqlSession = null; - try { - sqlSession = MybatisUtils.getSession(); - - int currentPage = 2; - int pageSize = 2; - RowBounds rowBounds = new RowBounds((currentPage - 1) * pageSize, pageSize); - - //通过session方法传递(不推荐) - List users = sqlSession.selectList("com.xiaokai.dao.UserMapper.getUserListRowBounds", null, rowBounds); - for (Object user : users) { - System.out.println(user); - } - } finally { - sqlSession.close(); - } - } -} diff --git a/Mybatis-Study/mybatis-04/target/classes/com/xiaokai/dao/UserMapper.class b/Mybatis-Study/mybatis-04/target/classes/com/xiaokai/dao/UserMapper.class deleted file mode 100644 index c2a42d6..0000000 Binary files a/Mybatis-Study/mybatis-04/target/classes/com/xiaokai/dao/UserMapper.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-04/target/classes/com/xiaokai/dao/UserMapper.xml b/Mybatis-Study/mybatis-04/target/classes/com/xiaokai/dao/UserMapper.xml deleted file mode 100644 index 340471b..0000000 --- a/Mybatis-Study/mybatis-04/target/classes/com/xiaokai/dao/UserMapper.xml +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - insert into mybatis.user (id,name,pwd) values (#{id},#{name},#{pwd}) - - - - delete from mybatis.user where id = #{id}; - - - - update mybatis.user set name = #{name}, pwd = #{pwd} where id = #{id} - - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-04/target/classes/com/xiaokai/pojo/User.class b/Mybatis-Study/mybatis-04/target/classes/com/xiaokai/pojo/User.class deleted file mode 100644 index 2cde503..0000000 Binary files a/Mybatis-Study/mybatis-04/target/classes/com/xiaokai/pojo/User.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-04/target/classes/com/xiaokai/utils/MybatisUtils.class b/Mybatis-Study/mybatis-04/target/classes/com/xiaokai/utils/MybatisUtils.class deleted file mode 100644 index 30c4ec1..0000000 Binary files a/Mybatis-Study/mybatis-04/target/classes/com/xiaokai/utils/MybatisUtils.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-04/target/classes/db.properties b/Mybatis-Study/mybatis-04/target/classes/db.properties deleted file mode 100644 index bce1a8a..0000000 --- a/Mybatis-Study/mybatis-04/target/classes/db.properties +++ /dev/null @@ -1,4 +0,0 @@ -driver=com.mysql.jdbc.Driver -url=jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=true&characterEncoding=utf8 -username=root -password=123456 \ No newline at end of file diff --git a/Mybatis-Study/mybatis-04/target/classes/log4j.properties b/Mybatis-Study/mybatis-04/target/classes/log4j.properties deleted file mode 100644 index d40865c..0000000 --- a/Mybatis-Study/mybatis-04/target/classes/log4j.properties +++ /dev/null @@ -1,24 +0,0 @@ -#将等级为DEBUG的日志信息输出到console和file这两个目的地,console和file的定义在下面的代码 -log4j.rootLogger=DEBUG,console,file - -#控制台输出的相关设置 -log4j.appender.console = org.apache.log4j.ConsoleAppender -log4j.appender.console.Target = System.out -log4j.appender.console.Threshold=DEBUG -log4j.appender.console.layout = org.apache.log4j.PatternLayout -log4j.appender.console.layout.ConversionPattern=[%c]-%m%n - -#文件输出的相关设置 -log4j.appender.file = org.apache.log4j.RollingFileAppender -log4j.appender.file.File=./log/xiaokai.log -log4j.appender.file.MaxFileSize=10mb -log4j.appender.file.Threshold=DEBUG -log4j.appender.file.layout=org.apache.log4j.PatternLayout -log4j.appender.file.layout.ConversionPattern=[%p][%d{yy-MM-dd}][%c]%m%n - -#日志输出级别 -log4j.logger.org.mybatis=DEBUG -log4j.logger.java.sql=DEBUG -log4j.logger.java.sql.Statement=DEBUG -log4j.logger.java.sql.ResultSet=DEBUG -log4j.logger.java.sql.PreparedStatement=DEBUG \ No newline at end of file diff --git a/Mybatis-Study/mybatis-04/target/classes/mybatis-config.xml b/Mybatis-Study/mybatis-04/target/classes/mybatis-config.xml deleted file mode 100644 index ed0b58f..0000000 --- a/Mybatis-Study/mybatis-04/target/classes/mybatis-config.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-04/target/test-classes/com/xiaokai/dao/UserMapperTest.class b/Mybatis-Study/mybatis-04/target/test-classes/com/xiaokai/dao/UserMapperTest.class deleted file mode 100644 index c57d1c1..0000000 Binary files a/Mybatis-Study/mybatis-04/target/test-classes/com/xiaokai/dao/UserMapperTest.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-05/log/xiaokai.log b/Mybatis-Study/mybatis-05/log/xiaokai.log deleted file mode 100644 index 7c786c2..0000000 --- a/Mybatis-Study/mybatis-05/log/xiaokai.log +++ /dev/null @@ -1,67 +0,0 @@ -[DEBUG][21-07-24][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-24][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-24][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-24][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-24][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-24][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-24][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Opening JDBC Connection -[DEBUG][21-07-24][org.apache.ibatis.datasource.pooled.PooledDataSource]Created connection 1543974463. -[DEBUG][21-07-24][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Setting autocommit to false on JDBC Connection [com.mysql.jdbc.JDBC4Connection@5c072e3f] -[DEBUG][21-07-24][com.xiaokai.dao.UserMapper.getUserList]==> Preparing: select * from user -[DEBUG][21-07-24][com.xiaokai.dao.UserMapper.getUserList]==> Parameters: -[DEBUG][21-07-24][com.xiaokai.dao.UserMapper.getUserList]<== Total: 4 -[DEBUG][21-07-24][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Resetting autocommit to true on JDBC Connection [com.mysql.jdbc.JDBC4Connection@5c072e3f] -[DEBUG][21-07-24][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@5c072e3f] -[DEBUG][21-07-24][org.apache.ibatis.datasource.pooled.PooledDataSource]Returned connection 1543974463 to pool. -[DEBUG][21-07-24][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-24][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-24][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-24][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-24][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-24][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Opening JDBC Connection -[DEBUG][21-07-25][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-25][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Opening JDBC Connection -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]Created connection 1543974463. -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Setting autocommit to false on JDBC Connection [com.mysql.jdbc.JDBC4Connection@5c072e3f] -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.getUserList]==> Preparing: select * from user -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.getUserList]==> Parameters: -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.getUserList]<== Total: 4 -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Resetting autocommit to true on JDBC Connection [com.mysql.jdbc.JDBC4Connection@5c072e3f] -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@5c072e3f] -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]Returned connection 1543974463 to pool. -[DEBUG][21-07-25][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-25][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Opening JDBC Connection -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]Created connection 1498438472. -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Setting autocommit to false on JDBC Connection [com.mysql.jdbc.JDBC4Connection@59505b48] -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.getUserList]==> Preparing: select * from user -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.getUserList]==> Parameters: -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.getUserList]<== Total: 4 -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Resetting autocommit to true on JDBC Connection [com.mysql.jdbc.JDBC4Connection@59505b48] -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@59505b48] -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]Returned connection 1498438472 to pool. -[DEBUG][21-07-25][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-25][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Opening JDBC Connection -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]Created connection 1116094714. -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Setting autocommit to false on JDBC Connection [com.mysql.jdbc.JDBC4Connection@428640fa] -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.getUserList]==> Preparing: select * from user -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.getUserList]==> Parameters: -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.getUserList]<== Total: 4 -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Resetting autocommit to true on JDBC Connection [com.mysql.jdbc.JDBC4Connection@428640fa] -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@428640fa] -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]Returned connection 1116094714 to pool. diff --git a/Mybatis-Study/mybatis-05/pom.xml b/Mybatis-Study/mybatis-05/pom.xml deleted file mode 100644 index ac9f2c4..0000000 --- a/Mybatis-Study/mybatis-05/pom.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - Mybatis-Study - com.xiaokai - 1.0-SNAPSHOT - - 4.0.0 - - mybatis-05 - - - 8 - 8 - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-05/src/main/java/com/xiaokai/dao/UserMapper.java b/Mybatis-Study/mybatis-05/src/main/java/com/xiaokai/dao/UserMapper.java deleted file mode 100644 index c15f196..0000000 --- a/Mybatis-Study/mybatis-05/src/main/java/com/xiaokai/dao/UserMapper.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.xiaokai.dao; - -import com.xiaokai.pojo.User; -import org.apache.ibatis.annotations.Select; - -import java.util.List; -import java.util.Map; - -public interface UserMapper { - @Select("select * from user") - List getUserList(); - - User getUserById(int id); - - int addUser(User user); - - int deleteById(int id); - - int updateUser(User user); - - List getUserListLimit(Map map); - - List getUserListRowBounds(); - -} diff --git a/Mybatis-Study/mybatis-05/src/main/java/com/xiaokai/pojo/User.java b/Mybatis-Study/mybatis-05/src/main/java/com/xiaokai/pojo/User.java deleted file mode 100644 index fcfe227..0000000 --- a/Mybatis-Study/mybatis-05/src/main/java/com/xiaokai/pojo/User.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.xiaokai.pojo; - -import org.apache.ibatis.type.Alias; - -@Alias("user") -public class User { - private int id; - private String name; - private String password; - - public User() {} - - public User(int id, String name, String password) { - this.id = id; - this.name = name; - this.password = password; - } - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getPassword() { - return password; - } - - public void setPassword(String password) { - this.password = password; - } - - @Override - public String toString() { - return "User{" + - "id=" + id + - ", name='" + name + '\'' + - ", password='" + password + '\'' + - '}'; - } -} diff --git a/Mybatis-Study/mybatis-05/src/main/java/com/xiaokai/utils/MybatisUtils.java b/Mybatis-Study/mybatis-05/src/main/java/com/xiaokai/utils/MybatisUtils.java deleted file mode 100644 index 5e8b954..0000000 --- a/Mybatis-Study/mybatis-05/src/main/java/com/xiaokai/utils/MybatisUtils.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.xiaokai.utils; - -import org.apache.ibatis.io.Resources; -import org.apache.ibatis.session.SqlSession; -import org.apache.ibatis.session.SqlSessionFactory; -import org.apache.ibatis.session.SqlSessionFactoryBuilder; - -import java.io.IOException; -import java.io.InputStream; - -//获取SqlSessionFactory -----> SqlSession -public class MybatisUtils { - private static SqlSessionFactory sqlSessionFactory; - static{ - try { - String resource = "mybatis-config.xml"; - InputStream inputStream = Resources.getResourceAsStream(resource); - sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); - } catch (IOException e) { - e.printStackTrace(); - } - } - - //获取sqlSession连接 - public static SqlSession getSession(){ - return sqlSessionFactory.openSession(); - } -} diff --git a/Mybatis-Study/mybatis-05/src/main/resources/db.properties b/Mybatis-Study/mybatis-05/src/main/resources/db.properties deleted file mode 100644 index bce1a8a..0000000 --- a/Mybatis-Study/mybatis-05/src/main/resources/db.properties +++ /dev/null @@ -1,4 +0,0 @@ -driver=com.mysql.jdbc.Driver -url=jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=true&characterEncoding=utf8 -username=root -password=123456 \ No newline at end of file diff --git a/Mybatis-Study/mybatis-05/src/main/resources/log4j.properties b/Mybatis-Study/mybatis-05/src/main/resources/log4j.properties deleted file mode 100644 index d40865c..0000000 --- a/Mybatis-Study/mybatis-05/src/main/resources/log4j.properties +++ /dev/null @@ -1,24 +0,0 @@ -#将等级为DEBUG的日志信息输出到console和file这两个目的地,console和file的定义在下面的代码 -log4j.rootLogger=DEBUG,console,file - -#控制台输出的相关设置 -log4j.appender.console = org.apache.log4j.ConsoleAppender -log4j.appender.console.Target = System.out -log4j.appender.console.Threshold=DEBUG -log4j.appender.console.layout = org.apache.log4j.PatternLayout -log4j.appender.console.layout.ConversionPattern=[%c]-%m%n - -#文件输出的相关设置 -log4j.appender.file = org.apache.log4j.RollingFileAppender -log4j.appender.file.File=./log/xiaokai.log -log4j.appender.file.MaxFileSize=10mb -log4j.appender.file.Threshold=DEBUG -log4j.appender.file.layout=org.apache.log4j.PatternLayout -log4j.appender.file.layout.ConversionPattern=[%p][%d{yy-MM-dd}][%c]%m%n - -#日志输出级别 -log4j.logger.org.mybatis=DEBUG -log4j.logger.java.sql=DEBUG -log4j.logger.java.sql.Statement=DEBUG -log4j.logger.java.sql.ResultSet=DEBUG -log4j.logger.java.sql.PreparedStatement=DEBUG \ No newline at end of file diff --git a/Mybatis-Study/mybatis-05/src/main/resources/mybatis-config.xml b/Mybatis-Study/mybatis-05/src/main/resources/mybatis-config.xml deleted file mode 100644 index bffb549..0000000 --- a/Mybatis-Study/mybatis-05/src/main/resources/mybatis-config.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-05/src/test/java/com/xiaokai/dao/UserMapperTest.java b/Mybatis-Study/mybatis-05/src/test/java/com/xiaokai/dao/UserMapperTest.java deleted file mode 100644 index 08fd639..0000000 --- a/Mybatis-Study/mybatis-05/src/test/java/com/xiaokai/dao/UserMapperTest.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.xiaokai.dao; - -import com.xiaokai.pojo.User; -import com.xiaokai.utils.MybatisUtils; -import org.apache.ibatis.session.RowBounds; -import org.apache.ibatis.session.SqlSession; -import org.apache.log4j.Logger; -import org.junit.Test; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -public class UserMapperTest { - static Logger logger = Logger.getLogger(UserMapperTest.class); - @Test - public void testGetUserById(){ - SqlSession sqlSession = null; - try { - sqlSession = MybatisUtils.getSession(); - logger.info("info:"+sqlSession); - UserMapper mapper = sqlSession.getMapper(UserMapper.class); - User user = mapper.getUserById(4); - System.out.println(user); - } finally { - sqlSession.close(); - } - } - - @Test - public void testLog4j(){ - logger.info("info:xiaokai"); - logger.debug("debug:xiaokai"); - logger.error("error:xiaokai"); - } - - @Test - public void getUserListLimit(){ - SqlSession sqlSession = null; - Map map = new HashMap<>(); - try { - sqlSession = MybatisUtils.getSession(); - logger.info("获得sqlsession连接"); - UserMapper mapper = sqlSession.getMapper(UserMapper.class); - logger.info("mapper:"+mapper); - int startIndex = 1;//第几页 - int pageSize = 2;//每页显示几个 - map.put("pageCount",(startIndex-1)*pageSize); - map.put("pageSize",pageSize); - List userList = mapper.getUserListLimit(map); - for (User user : userList) { - System.out.println(user); - } - } finally { - sqlSession.close(); - logger.info("数据库连接关闭"); - } - } - - @Test - public void getUserListRowBounds(){ - SqlSession sqlSession = null; - try { - sqlSession = MybatisUtils.getSession(); - - int currentPage = 2; - int pageSize = 2; - RowBounds rowBounds = new RowBounds((currentPage - 1) * pageSize, pageSize); - - //通过session方法传递(不推荐) - List users = sqlSession.selectList("com.xiaokai.dao.UserMapper.getUserListRowBounds", null, rowBounds); - for (Object user : users) { - System.out.println(user); - } - } finally { - sqlSession.close(); - } - } - - @Test - public void testGetUsers(){ - SqlSession sqlSession = null; - try { - sqlSession = MybatisUtils.getSession(); - UserMapper mapper = sqlSession.getMapper(UserMapper.class); - List userList = mapper.getUserList(); - for (User user : userList) { - System.out.println(user); - } - } finally { - sqlSession.close(); - } - } -} diff --git a/Mybatis-Study/mybatis-05/target/classes/com/xiaokai/dao/UserMapper.class b/Mybatis-Study/mybatis-05/target/classes/com/xiaokai/dao/UserMapper.class deleted file mode 100644 index ed9a275..0000000 Binary files a/Mybatis-Study/mybatis-05/target/classes/com/xiaokai/dao/UserMapper.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-05/target/classes/com/xiaokai/pojo/User.class b/Mybatis-Study/mybatis-05/target/classes/com/xiaokai/pojo/User.class deleted file mode 100644 index 2cde503..0000000 Binary files a/Mybatis-Study/mybatis-05/target/classes/com/xiaokai/pojo/User.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-05/target/classes/com/xiaokai/utils/MybatisUtils.class b/Mybatis-Study/mybatis-05/target/classes/com/xiaokai/utils/MybatisUtils.class deleted file mode 100644 index 30c4ec1..0000000 Binary files a/Mybatis-Study/mybatis-05/target/classes/com/xiaokai/utils/MybatisUtils.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-05/target/classes/db.properties b/Mybatis-Study/mybatis-05/target/classes/db.properties deleted file mode 100644 index bce1a8a..0000000 --- a/Mybatis-Study/mybatis-05/target/classes/db.properties +++ /dev/null @@ -1,4 +0,0 @@ -driver=com.mysql.jdbc.Driver -url=jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=true&characterEncoding=utf8 -username=root -password=123456 \ No newline at end of file diff --git a/Mybatis-Study/mybatis-05/target/classes/log4j.properties b/Mybatis-Study/mybatis-05/target/classes/log4j.properties deleted file mode 100644 index d40865c..0000000 --- a/Mybatis-Study/mybatis-05/target/classes/log4j.properties +++ /dev/null @@ -1,24 +0,0 @@ -#将等级为DEBUG的日志信息输出到console和file这两个目的地,console和file的定义在下面的代码 -log4j.rootLogger=DEBUG,console,file - -#控制台输出的相关设置 -log4j.appender.console = org.apache.log4j.ConsoleAppender -log4j.appender.console.Target = System.out -log4j.appender.console.Threshold=DEBUG -log4j.appender.console.layout = org.apache.log4j.PatternLayout -log4j.appender.console.layout.ConversionPattern=[%c]-%m%n - -#文件输出的相关设置 -log4j.appender.file = org.apache.log4j.RollingFileAppender -log4j.appender.file.File=./log/xiaokai.log -log4j.appender.file.MaxFileSize=10mb -log4j.appender.file.Threshold=DEBUG -log4j.appender.file.layout=org.apache.log4j.PatternLayout -log4j.appender.file.layout.ConversionPattern=[%p][%d{yy-MM-dd}][%c]%m%n - -#日志输出级别 -log4j.logger.org.mybatis=DEBUG -log4j.logger.java.sql=DEBUG -log4j.logger.java.sql.Statement=DEBUG -log4j.logger.java.sql.ResultSet=DEBUG -log4j.logger.java.sql.PreparedStatement=DEBUG \ No newline at end of file diff --git a/Mybatis-Study/mybatis-05/target/classes/mybatis-config.xml b/Mybatis-Study/mybatis-05/target/classes/mybatis-config.xml deleted file mode 100644 index bffb549..0000000 --- a/Mybatis-Study/mybatis-05/target/classes/mybatis-config.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-05/target/test-classes/com/xiaokai/dao/UserMapperTest.class b/Mybatis-Study/mybatis-05/target/test-classes/com/xiaokai/dao/UserMapperTest.class deleted file mode 100644 index 130de6a..0000000 Binary files a/Mybatis-Study/mybatis-05/target/test-classes/com/xiaokai/dao/UserMapperTest.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-06/log/xiaokai.log b/Mybatis-Study/mybatis-06/log/xiaokai.log deleted file mode 100644 index 7ebeb56..0000000 --- a/Mybatis-Study/mybatis-06/log/xiaokai.log +++ /dev/null @@ -1,78 +0,0 @@ -[DEBUG][21-07-25][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-25][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Opening JDBC Connection -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]Created connection 1545087375. -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.getUserById]==> Preparing: select * from user where id = ? -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.getUserById]==> Parameters: 1(Integer) -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.getUserById]<== Total: 1 -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@5c18298f] -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]Returned connection 1545087375 to pool. -[DEBUG][21-07-25][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-25][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Opening JDBC Connection -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]Created connection 832279283. -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.addUser]==> Preparing: insert into user (id,name,pwd) values (?,?,?) -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.addUser]==> Parameters: 5(Integer), adad(String), 111222(String) -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.addUser]<== Updates: 1 -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@319b92f3] -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]Returned connection 832279283 to pool. -[DEBUG][21-07-25][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-25][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Opening JDBC Connection -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]Created connection 265119009. -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.updateUser]==> Preparing: update user set name=?, pwd=? where id = ? -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.updateUser]==> Parameters: kakak(String), 222111(String), 5(Integer) -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.updateUser]<== Updates: 1 -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@fcd6521] -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]Returned connection 265119009 to pool. -[DEBUG][21-07-25][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-25][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Opening JDBC Connection -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]Created connection 668210649. -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.deleteById]==> Preparing: delete from user where id = ? -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.deleteById]==> Parameters: 5(Integer) -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.deleteById]<== Updates: 1 -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@27d415d9] -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]Returned connection 668210649 to pool. -[DEBUG][21-07-25][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-25][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Opening JDBC Connection -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]Created connection 371619938. -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.deleteById]==> Preparing: delete from user where id = 5 -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.deleteById]==> Parameters: -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.deleteById]<== Updates: 0 -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@16267862] -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]Returned connection 371619938 to pool. -[DEBUG][21-07-25][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-25][org.apache.ibatis.logging.LogFactory]Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]PooledDataSource forcefully closed/removed all connections. -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Opening JDBC Connection -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]Created connection 1898220577. -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.deleteById]==> Preparing: delete from user where id = 5 -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.deleteById]==> Parameters: -[DEBUG][21-07-25][com.xiaokai.dao.UserMapper.deleteById]<== Updates: 0 -[DEBUG][21-07-25][org.apache.ibatis.transaction.jdbc.JdbcTransaction]Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@71248c21] -[DEBUG][21-07-25][org.apache.ibatis.datasource.pooled.PooledDataSource]Returned connection 1898220577 to pool. diff --git a/Mybatis-Study/mybatis-06/pom.xml b/Mybatis-Study/mybatis-06/pom.xml deleted file mode 100644 index 1120424..0000000 --- a/Mybatis-Study/mybatis-06/pom.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - Mybatis-Study - com.xiaokai - 1.0-SNAPSHOT - - 4.0.0 - - mybatis-06 - - - 8 - 8 - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/dao/StudentMapper.java b/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/dao/StudentMapper.java deleted file mode 100644 index 580938b..0000000 --- a/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/dao/StudentMapper.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.xiaokai.dao; - -import com.xiaokai.pojo.Student; - -import java.util.List; - -public interface StudentMapper { - List getStudents(); -} diff --git a/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/dao/StudentMapper.xml b/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/dao/StudentMapper.xml deleted file mode 100644 index 3b99f43..0000000 --- a/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/dao/StudentMapper.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/dao/TeacherMapper.java b/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/dao/TeacherMapper.java deleted file mode 100644 index a62c780..0000000 --- a/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/dao/TeacherMapper.java +++ /dev/null @@ -1,4 +0,0 @@ -package com.xiaokai.dao; - -public interface TeacherMapper { -} diff --git a/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/dao/TeacherMapper.xml b/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/dao/TeacherMapper.xml deleted file mode 100644 index 6a9feb5..0000000 --- a/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/dao/TeacherMapper.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/dao/UserMapper.java b/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/dao/UserMapper.java deleted file mode 100644 index 879a0a3..0000000 --- a/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/dao/UserMapper.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.xiaokai.dao; - -import com.xiaokai.pojo.User; -import org.apache.ibatis.annotations.Delete; -import org.apache.ibatis.annotations.Insert; -import org.apache.ibatis.annotations.Select; -import org.apache.ibatis.annotations.Update; - -import java.util.List; -import java.util.Map; - -public interface UserMapper { - @Select("select * from user") - List getUserList(); - - @Select("select * from user where id = #{id}") - User getUserById(int id); - - @Insert("insert into user (id,name,pwd) values (#{id},#{name},#{pwd})") - int addUser(User user); - - @Delete("delete from user where id = ${id}") - int deleteById(int id); - - @Update("update user set name=#{name}, pwd=#{pwd} where id = #{id}") - int updateUser(User user); - - List getUserListLimit(Map map); - - List getUserListRowBounds(); - -} diff --git a/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/dao/UserMapper.xml b/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/dao/UserMapper.xml deleted file mode 100644 index 340471b..0000000 --- a/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/dao/UserMapper.xml +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - insert into mybatis.user (id,name,pwd) values (#{id},#{name},#{pwd}) - - - - delete from mybatis.user where id = #{id}; - - - - update mybatis.user set name = #{name}, pwd = #{pwd} where id = #{id} - - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/pojo/Student.java b/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/pojo/Student.java deleted file mode 100644 index 2d2f8e9..0000000 --- a/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/pojo/Student.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.xiaokai.pojo; - -import lombok.Data; - -@Data -public class Student { - private int id; - private String name; - //学生需要关联一个老师 - private Teacher teacher; -} diff --git a/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/pojo/Teacher.java b/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/pojo/Teacher.java deleted file mode 100644 index aad7883..0000000 --- a/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/pojo/Teacher.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.xiaokai.pojo; - -import lombok.Data; - -@Data -public class Teacher { - private int id; - private String name; -} diff --git a/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/pojo/User.java b/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/pojo/User.java deleted file mode 100644 index ade7bb8..0000000 --- a/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/pojo/User.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.xiaokai.pojo; - -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; -import org.apache.ibatis.type.Alias; - -@Alias("user") -@Data -@AllArgsConstructor -@NoArgsConstructor -public class User { - private int id; - private String name; - private String pwd; - -} diff --git a/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/utils/MybatisUtils.java b/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/utils/MybatisUtils.java deleted file mode 100644 index faeaa76..0000000 --- a/Mybatis-Study/mybatis-06/src/main/java/com/xiaokai/utils/MybatisUtils.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.xiaokai.utils; - -import org.apache.ibatis.io.Resources; -import org.apache.ibatis.session.SqlSession; -import org.apache.ibatis.session.SqlSessionFactory; -import org.apache.ibatis.session.SqlSessionFactoryBuilder; - -import java.io.IOException; -import java.io.InputStream; - -//获取SqlSessionFactory -----> SqlSession -public class MybatisUtils { - private static SqlSessionFactory sqlSessionFactory; - static{ - try { - String resource = "mybatis-config.xml"; - InputStream inputStream = Resources.getResourceAsStream(resource); - sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); - } catch (IOException e) { - e.printStackTrace(); - } - } - - //获取sqlSession连接 - public static SqlSession getSession(){return getSession(true);} - public static SqlSession getSession(boolean flag){ - return sqlSessionFactory.openSession(flag); - } -} diff --git a/Mybatis-Study/mybatis-06/src/main/resources/db.properties b/Mybatis-Study/mybatis-06/src/main/resources/db.properties deleted file mode 100644 index bce1a8a..0000000 --- a/Mybatis-Study/mybatis-06/src/main/resources/db.properties +++ /dev/null @@ -1,4 +0,0 @@ -driver=com.mysql.jdbc.Driver -url=jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=true&characterEncoding=utf8 -username=root -password=123456 \ No newline at end of file diff --git a/Mybatis-Study/mybatis-06/src/main/resources/log4j.properties b/Mybatis-Study/mybatis-06/src/main/resources/log4j.properties deleted file mode 100644 index d40865c..0000000 --- a/Mybatis-Study/mybatis-06/src/main/resources/log4j.properties +++ /dev/null @@ -1,24 +0,0 @@ -#将等级为DEBUG的日志信息输出到console和file这两个目的地,console和file的定义在下面的代码 -log4j.rootLogger=DEBUG,console,file - -#控制台输出的相关设置 -log4j.appender.console = org.apache.log4j.ConsoleAppender -log4j.appender.console.Target = System.out -log4j.appender.console.Threshold=DEBUG -log4j.appender.console.layout = org.apache.log4j.PatternLayout -log4j.appender.console.layout.ConversionPattern=[%c]-%m%n - -#文件输出的相关设置 -log4j.appender.file = org.apache.log4j.RollingFileAppender -log4j.appender.file.File=./log/xiaokai.log -log4j.appender.file.MaxFileSize=10mb -log4j.appender.file.Threshold=DEBUG -log4j.appender.file.layout=org.apache.log4j.PatternLayout -log4j.appender.file.layout.ConversionPattern=[%p][%d{yy-MM-dd}][%c]%m%n - -#日志输出级别 -log4j.logger.org.mybatis=DEBUG -log4j.logger.java.sql=DEBUG -log4j.logger.java.sql.Statement=DEBUG -log4j.logger.java.sql.ResultSet=DEBUG -log4j.logger.java.sql.PreparedStatement=DEBUG \ No newline at end of file diff --git a/Mybatis-Study/mybatis-06/src/main/resources/mybatis-config.xml b/Mybatis-Study/mybatis-06/src/main/resources/mybatis-config.xml deleted file mode 100644 index bffb549..0000000 --- a/Mybatis-Study/mybatis-06/src/main/resources/mybatis-config.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-06/src/test/java/com/xiaokai/dao/UserMapperTest.java b/Mybatis-Study/mybatis-06/src/test/java/com/xiaokai/dao/UserMapperTest.java deleted file mode 100644 index 894c54b..0000000 --- a/Mybatis-Study/mybatis-06/src/test/java/com/xiaokai/dao/UserMapperTest.java +++ /dev/null @@ -1,145 +0,0 @@ -package com.xiaokai.dao; - -import com.xiaokai.pojo.User; -import com.xiaokai.utils.MybatisUtils; -import org.apache.ibatis.session.RowBounds; -import org.apache.ibatis.session.SqlSession; -import org.apache.log4j.Logger; -import org.junit.Test; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -public class UserMapperTest { - static Logger logger = Logger.getLogger(UserMapperTest.class); - @Test - public void testGetUserById(){ - SqlSession sqlSession = null; - try { - sqlSession = MybatisUtils.getSession(); - logger.info("info:"+sqlSession); - UserMapper mapper = sqlSession.getMapper(UserMapper.class); - User user = mapper.getUserById(4); - System.out.println(user); - } finally { - sqlSession.close(); - } - } - - @Test - public void testLog4j(){ - logger.info("info:xiaokai"); - logger.debug("debug:xiaokai"); - logger.error("error:xiaokai"); - } - - @Test - public void getUserListLimit(){ - SqlSession sqlSession = null; - Map map = new HashMap<>(); - try { - sqlSession = MybatisUtils.getSession(); - logger.info("获得sqlsession连接"); - UserMapper mapper = sqlSession.getMapper(UserMapper.class); - logger.info("mapper:"+mapper); - int startIndex = 1;//第几页 - int pageSize = 2;//每页显示几个 - map.put("pageCount",(startIndex-1)*pageSize); - map.put("pageSize",pageSize); - List userList = mapper.getUserListLimit(map); - for (User user : userList) { - System.out.println(user); - } - } finally { - sqlSession.close(); - logger.info("数据库连接关闭"); - } - } - - @Test - public void getUserListRowBounds(){ - SqlSession sqlSession = null; - try { - sqlSession = MybatisUtils.getSession(); - - int currentPage = 2; - int pageSize = 2; - RowBounds rowBounds = new RowBounds((currentPage - 1) * pageSize, pageSize); - - //通过session方法传递(不推荐) - List users = sqlSession.selectList("com.xiaokai.dao.UserMapper.getUserListRowBounds", null, rowBounds); - for (Object user : users) { - System.out.println(user); - } - } finally { - sqlSession.close(); - } - } - - @Test - public void testGetUsers(){ - SqlSession sqlSession = null; - try { - sqlSession = MybatisUtils.getSession(); - UserMapper mapper = sqlSession.getMapper(UserMapper.class); - List userList = mapper.getUserList(); - for (User user : userList) { - System.out.println(user); - } - } finally { - sqlSession.close(); - } - } - - @Test - public void testSelectUserById(){ - SqlSession sqlSession = null; - try { - sqlSession = MybatisUtils.getSession(); - UserMapper mapper = sqlSession.getMapper(UserMapper.class); - User userById = mapper.getUserById(1); - System.out.println(userById); - } finally { - sqlSession.close(); - } - } - @Test - public void testAddUser(){ - SqlSession sqlSession = null; - try { - sqlSession = MybatisUtils.getSession(); - UserMapper mapper = sqlSession.getMapper(UserMapper.class); - User user = new User(5, "adad", "111222"); - int i = mapper.addUser(user); - System.out.println(i); - } finally { - sqlSession.close(); - } - } - @Test - public void testUpdateById(){ - SqlSession sqlSession = null; - try { - sqlSession = MybatisUtils.getSession(); - UserMapper mapper = sqlSession.getMapper(UserMapper.class); - User user = new User(5, "kakak", "222111"); - int i = mapper.updateUser(user); - System.out.println(i); - } finally { - sqlSession.close(); - } - } - @Test - public void testDeleteById(){ - SqlSession sqlSession = null; - try { - sqlSession = MybatisUtils.getSession(); - UserMapper mapper = sqlSession.getMapper(UserMapper.class); - int i = mapper.deleteById(5); - System.out.println(i); - } finally { - sqlSession.close(); - } - } -} diff --git a/Mybatis-Study/mybatis-06/target/classes/com/xiaokai/dao/UserMapper.class b/Mybatis-Study/mybatis-06/target/classes/com/xiaokai/dao/UserMapper.class deleted file mode 100644 index 2dd3134..0000000 Binary files a/Mybatis-Study/mybatis-06/target/classes/com/xiaokai/dao/UserMapper.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-06/target/classes/com/xiaokai/pojo/User.class b/Mybatis-Study/mybatis-06/target/classes/com/xiaokai/pojo/User.class deleted file mode 100644 index e2f049e..0000000 Binary files a/Mybatis-Study/mybatis-06/target/classes/com/xiaokai/pojo/User.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-06/target/classes/com/xiaokai/utils/MybatisUtils.class b/Mybatis-Study/mybatis-06/target/classes/com/xiaokai/utils/MybatisUtils.class deleted file mode 100644 index 797d8aa..0000000 Binary files a/Mybatis-Study/mybatis-06/target/classes/com/xiaokai/utils/MybatisUtils.class and /dev/null differ diff --git a/Mybatis-Study/mybatis-06/target/classes/db.properties b/Mybatis-Study/mybatis-06/target/classes/db.properties deleted file mode 100644 index bce1a8a..0000000 --- a/Mybatis-Study/mybatis-06/target/classes/db.properties +++ /dev/null @@ -1,4 +0,0 @@ -driver=com.mysql.jdbc.Driver -url=jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=true&characterEncoding=utf8 -username=root -password=123456 \ No newline at end of file diff --git a/Mybatis-Study/mybatis-06/target/classes/log4j.properties b/Mybatis-Study/mybatis-06/target/classes/log4j.properties deleted file mode 100644 index d40865c..0000000 --- a/Mybatis-Study/mybatis-06/target/classes/log4j.properties +++ /dev/null @@ -1,24 +0,0 @@ -#将等级为DEBUG的日志信息输出到console和file这两个目的地,console和file的定义在下面的代码 -log4j.rootLogger=DEBUG,console,file - -#控制台输出的相关设置 -log4j.appender.console = org.apache.log4j.ConsoleAppender -log4j.appender.console.Target = System.out -log4j.appender.console.Threshold=DEBUG -log4j.appender.console.layout = org.apache.log4j.PatternLayout -log4j.appender.console.layout.ConversionPattern=[%c]-%m%n - -#文件输出的相关设置 -log4j.appender.file = org.apache.log4j.RollingFileAppender -log4j.appender.file.File=./log/xiaokai.log -log4j.appender.file.MaxFileSize=10mb -log4j.appender.file.Threshold=DEBUG -log4j.appender.file.layout=org.apache.log4j.PatternLayout -log4j.appender.file.layout.ConversionPattern=[%p][%d{yy-MM-dd}][%c]%m%n - -#日志输出级别 -log4j.logger.org.mybatis=DEBUG -log4j.logger.java.sql=DEBUG -log4j.logger.java.sql.Statement=DEBUG -log4j.logger.java.sql.ResultSet=DEBUG -log4j.logger.java.sql.PreparedStatement=DEBUG \ No newline at end of file diff --git a/Mybatis-Study/mybatis-06/target/classes/mybatis-config.xml b/Mybatis-Study/mybatis-06/target/classes/mybatis-config.xml deleted file mode 100644 index bffb549..0000000 --- a/Mybatis-Study/mybatis-06/target/classes/mybatis-config.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Mybatis-Study/mybatis-06/target/test-classes/com/xiaokai/dao/UserMapperTest.class b/Mybatis-Study/mybatis-06/target/test-classes/com/xiaokai/dao/UserMapperTest.class deleted file mode 100644 index b91839b..0000000 Binary files a/Mybatis-Study/mybatis-06/target/test-classes/com/xiaokai/dao/UserMapperTest.class and /dev/null differ diff --git a/Mybatis-Study/pom.xml b/Mybatis-Study/pom.xml deleted file mode 100644 index b43c417..0000000 --- a/Mybatis-Study/pom.xml +++ /dev/null @@ -1,82 +0,0 @@ - - - 4.0.0 - - com.xiaokai - Mybatis-Study - pom - 1.0-SNAPSHOT - - mybatis-01 - mybatis-02 - mybatis-03 - mybatis-04 - mybatis-05 - mybatis-06 - - - - 8 - 8 - - - - - - - - mysql - mysql-connector-java - 5.1.47 - - - - org.mybatis - mybatis - 3.5.2 - - - - junit - junit - 4.12 - - - - log4j - log4j - 1.2.17 - - - - - org.projectlombok - lombok - 1.18.10 - - - - - - - - src/main/java - - **/*.properties - **/*.xml - - false - - - src/main/resources - - **/*.properties - **/*.xml - - false - - - - \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..7110d2c --- /dev/null +++ b/README.md @@ -0,0 +1,2 @@ +# javaStudy +javaStudy同步代码及资源 diff --git a/WebMail/.idea/.gitignore b/WebMail/.idea/.gitignore deleted file mode 100644 index 73f69e0..0000000 --- a/WebMail/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/WebMail/.idea/artifacts/WebMail_war_exploded.xml b/WebMail/.idea/artifacts/WebMail_war_exploded.xml deleted file mode 100644 index f021d55..0000000 --- a/WebMail/.idea/artifacts/WebMail_war_exploded.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - $PROJECT_DIR$/out/artifacts/WebMail_war_exploded - - - - - - - - - - \ No newline at end of file diff --git a/WebMail/.idea/compiler.xml b/WebMail/.idea/compiler.xml deleted file mode 100644 index 910eb1e..0000000 --- a/WebMail/.idea/compiler.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/WebMail/.idea/jarRepositories.xml b/WebMail/.idea/jarRepositories.xml deleted file mode 100644 index 980588c..0000000 --- a/WebMail/.idea/jarRepositories.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/WebMail/.idea/misc.xml b/WebMail/.idea/misc.xml deleted file mode 100644 index 132404b..0000000 --- a/WebMail/.idea/misc.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/WebMail/.idea/vcs.xml b/WebMail/.idea/vcs.xml deleted file mode 100644 index 6c0b863..0000000 --- a/WebMail/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/WebMail/WebMail.iml b/WebMail/WebMail.iml deleted file mode 100644 index ae25cf0..0000000 --- a/WebMail/WebMail.iml +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/WebMail/out/artifacts/WebMail_war_exploded/META-INF/MANIFEST.MF b/WebMail/out/artifacts/WebMail_war_exploded/META-INF/MANIFEST.MF deleted file mode 100644 index 1d10c5b..0000000 --- a/WebMail/out/artifacts/WebMail_war_exploded/META-INF/MANIFEST.MF +++ /dev/null @@ -1,5 +0,0 @@ -Manifest-Version: 1.0 -Created-By: IntelliJ IDEA -Built-By: guanxiaokai -Build-Jdk: version 1.8.0_281 - diff --git a/WebMail/out/artifacts/WebMail_war_exploded/WEB-INF/web.xml b/WebMail/out/artifacts/WebMail_war_exploded/WEB-INF/web.xml deleted file mode 100644 index 1ea0c4c..0000000 --- a/WebMail/out/artifacts/WebMail_war_exploded/WEB-INF/web.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - RegisterServlet - com.xiaokai.servlet.RegisterServlet - - - RegisterServlet - /RegisterServlet.do - - \ No newline at end of file diff --git a/WebMail/out/artifacts/WebMail_war_exploded/index.jsp b/WebMail/out/artifacts/WebMail_war_exploded/index.jsp deleted file mode 100644 index b2c609b..0000000 --- a/WebMail/out/artifacts/WebMail_war_exploded/index.jsp +++ /dev/null @@ -1,16 +0,0 @@ - -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - 注册 - - -
- 用户名:
- 密 码:
- 邮 箱:
- | - -
- - diff --git a/WebMail/pom.xml b/WebMail/pom.xml deleted file mode 100644 index 5d37cc5..0000000 --- a/WebMail/pom.xml +++ /dev/null @@ -1,70 +0,0 @@ - - - 4.0.0 - - com.xiaokai - WebMail - 1.0-SNAPSHOT - - - 8 - 8 - - - - - - junit - junit - 4.12 - test - - - - javax.servlet - javax.servlet-api - 4.0.1 - - - - javax.servlet.jsp - javax.servlet.jsp-api - 2.3.3 - - - - - javax.servlet.jsp.jstl - jstl-api - 1.2 - - - - - taglibs - standard - 1.1.2 - - - - mysql - mysql-connector-java - 5.1.47 - - - junit - junit - 4.13 - - - - - com.alibaba - fastjson - 1.2.76 - - - - \ No newline at end of file diff --git a/WebMail/src/main/java/com/xiaokai/servlet/RegisterServlet.java b/WebMail/src/main/java/com/xiaokai/servlet/RegisterServlet.java deleted file mode 100644 index f4e77fd..0000000 --- a/WebMail/src/main/java/com/xiaokai/servlet/RegisterServlet.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.xiaokai.servlet; - -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; - -public class RegisterServlet extends HttpServlet { - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - String username = req.getParameter("username"); - String password = req.getParameter("password"); - String email = req.getParameter("email"); - System.out.println("username="+username+"\n"+"password="+password+"\n"+"email="+email+"\n"); - } -} diff --git a/WebMail/web/WEB-INF/web.xml b/WebMail/web/WEB-INF/web.xml deleted file mode 100644 index 1ea0c4c..0000000 --- a/WebMail/web/WEB-INF/web.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - RegisterServlet - com.xiaokai.servlet.RegisterServlet - - - RegisterServlet - /RegisterServlet.do - - \ No newline at end of file diff --git a/WebMail/web/index.jsp b/WebMail/web/index.jsp deleted file mode 100644 index b2c609b..0000000 --- a/WebMail/web/index.jsp +++ /dev/null @@ -1,16 +0,0 @@ - -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - 注册 - - -
- 用户名:
- 密 码:
- 邮 箱:
- | - -
- - diff --git a/beifen.sql b/beifen.sql deleted file mode 100644 index da868cf..0000000 --- a/beifen.sql +++ /dev/null @@ -1,4 +0,0 @@ -Usage: mysqldump [OPTIONS] database [tables] -OR mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...] -OR mysqldump [OPTIONS] --all-databases [OPTIONS] -For more options, use mysqldump --help diff --git a/csstest/.idea/.gitignore b/csstest/.idea/.gitignore deleted file mode 100644 index 42b2764..0000000 --- a/csstest/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/../../../../:\code\csstest\.idea/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/csstest/.idea/misc.xml b/csstest/.idea/misc.xml deleted file mode 100644 index 0548357..0000000 --- a/csstest/.idea/misc.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/csstest/.idea/modules.xml b/csstest/.idea/modules.xml deleted file mode 100644 index 2dc5444..0000000 --- a/csstest/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/csstest/csstest.iml b/csstest/csstest.iml deleted file mode 100644 index c90834f..0000000 --- a/csstest/csstest.iml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/csstest/lesson01/JavaScript/Demo01/jQuery.html b/csstest/lesson01/JavaScript/Demo01/jQuery.html deleted file mode 100644 index f22c32e..0000000 --- a/csstest/lesson01/JavaScript/Demo01/jQuery.html +++ /dev/null @@ -1,23 +0,0 @@ - - - - - Title - - - - - - -点我试试 - - - \ No newline at end of file diff --git a/csstest/lesson01/JavaScript/Demo01/lib/jquery-3.6.0.js b/csstest/lesson01/JavaScript/Demo01/lib/jquery-3.6.0.js deleted file mode 100644 index fc6c299..0000000 --- a/csstest/lesson01/JavaScript/Demo01/lib/jquery-3.6.0.js +++ /dev/null @@ -1,10881 +0,0 @@ -/*! - * jQuery JavaScript Library v3.6.0 - * https://jquery.com/ - * - * Includes Sizzle.js - * https://sizzlejs.com/ - * - * Copyright OpenJS Foundation and other contributors - * Released under the MIT license - * https://jquery.org/license - * - * Date: 2021-03-02T17:08Z - */ -( function( global, factory ) { - - "use strict"; - - if ( typeof module === "object" && typeof module.exports === "object" ) { - - // For CommonJS and CommonJS-like environments where a proper `window` - // is present, execute the factory and get jQuery. - // For environments that do not have a `window` with a `document` - // (such as Node.js), expose a factory as module.exports. - // This accentuates the need for the creation of a real `window`. - // e.g. var jQuery = require("jquery")(window); - // See ticket #14549 for more info. - module.exports = global.document ? - factory( global, true ) : - function( w ) { - if ( !w.document ) { - throw new Error( "jQuery requires a window with a document" ); - } - return factory( w ); - }; - } else { - factory( global ); - } - -// Pass this if window is not defined yet -} )( typeof window !== "undefined" ? window : this, function( window, noGlobal ) { - -// Edge <= 12 - 13+, Firefox <=18 - 45+, IE 10 - 11, Safari 5.1 - 9+, iOS 6 - 9.1 -// throw exceptions when non-strict code (e.g., ASP.NET 4.5) accesses strict mode -// arguments.callee.caller (trac-13335). But as of jQuery 3.0 (2016), strict mode should be common -// enough that all such attempts are guarded in a try block. -"use strict"; - -var arr = []; - -var getProto = Object.getPrototypeOf; - -var slice = arr.slice; - -var flat = arr.flat ? function( array ) { - return arr.flat.call( array ); -} : function( array ) { - return arr.concat.apply( [], array ); -}; - - -var push = arr.push; - -var indexOf = arr.indexOf; - -var class2type = {}; - -var toString = class2type.toString; - -var hasOwn = class2type.hasOwnProperty; - -var fnToString = hasOwn.toString; - -var ObjectFunctionString = fnToString.call( Object ); - -var support = {}; - -var isFunction = function isFunction( obj ) { - - // Support: Chrome <=57, Firefox <=52 - // In some browsers, typeof returns "function" for HTML elements - // (i.e., `typeof document.createElement( "object" ) === "function"`). - // We don't want to classify *any* DOM node as a function. - // Support: QtWeb <=3.8.5, WebKit <=534.34, wkhtmltopdf tool <=0.12.5 - // Plus for old WebKit, typeof returns "function" for HTML collections - // (e.g., `typeof document.getElementsByTagName("div") === "function"`). (gh-4756) - return typeof obj === "function" && typeof obj.nodeType !== "number" && - typeof obj.item !== "function"; - }; - - -var isWindow = function isWindow( obj ) { - return obj != null && obj === obj.window; - }; - - -var document = window.document; - - - - var preservedScriptAttributes = { - type: true, - src: true, - nonce: true, - noModule: true - }; - - function DOMEval( code, node, doc ) { - doc = doc || document; - - var i, val, - script = doc.createElement( "script" ); - - script.text = code; - if ( node ) { - for ( i in preservedScriptAttributes ) { - - // Support: Firefox 64+, Edge 18+ - // Some browsers don't support the "nonce" property on scripts. - // On the other hand, just using `getAttribute` is not enough as - // the `nonce` attribute is reset to an empty string whenever it - // becomes browsing-context connected. - // See https://github.com/whatwg/html/issues/2369 - // See https://html.spec.whatwg.org/#nonce-attributes - // The `node.getAttribute` check was added for the sake of - // `jQuery.globalEval` so that it can fake a nonce-containing node - // via an object. - val = node[ i ] || node.getAttribute && node.getAttribute( i ); - if ( val ) { - script.setAttribute( i, val ); - } - } - } - doc.head.appendChild( script ).parentNode.removeChild( script ); - } - - -function toType( obj ) { - if ( obj == null ) { - return obj + ""; - } - - // Support: Android <=2.3 only (functionish RegExp) - return typeof obj === "object" || typeof obj === "function" ? - class2type[ toString.call( obj ) ] || "object" : - typeof obj; -} -/* global Symbol */ -// Defining this global in .eslintrc.json would create a danger of using the global -// unguarded in another place, it seems safer to define global only for this module - - - -var - version = "3.6.0", - - // Define a local copy of jQuery - jQuery = function( selector, context ) { - - // The jQuery object is actually just the init constructor 'enhanced' - // Need init if jQuery is called (just allow error to be thrown if not included) - return new jQuery.fn.init( selector, context ); - }; - -jQuery.fn = jQuery.prototype = { - - // The current version of jQuery being used - jquery: version, - - constructor: jQuery, - - // The default length of a jQuery object is 0 - length: 0, - - toArray: function() { - return slice.call( this ); - }, - - // Get the Nth element in the matched element set OR - // Get the whole matched element set as a clean array - get: function( num ) { - - // Return all the elements in a clean array - if ( num == null ) { - return slice.call( this ); - } - - // Return just the one element from the set - return num < 0 ? this[ num + this.length ] : this[ num ]; - }, - - // Take an array of elements and push it onto the stack - // (returning the new matched element set) - pushStack: function( elems ) { - - // Build a new jQuery matched element set - var ret = jQuery.merge( this.constructor(), elems ); - - // Add the old object onto the stack (as a reference) - ret.prevObject = this; - - // Return the newly-formed element set - return ret; - }, - - // Execute a callback for every element in the matched set. - each: function( callback ) { - return jQuery.each( this, callback ); - }, - - map: function( callback ) { - return this.pushStack( jQuery.map( this, function( elem, i ) { - return callback.call( elem, i, elem ); - } ) ); - }, - - slice: function() { - return this.pushStack( slice.apply( this, arguments ) ); - }, - - first: function() { - return this.eq( 0 ); - }, - - last: function() { - return this.eq( -1 ); - }, - - even: function() { - return this.pushStack( jQuery.grep( this, function( _elem, i ) { - return ( i + 1 ) % 2; - } ) ); - }, - - odd: function() { - return this.pushStack( jQuery.grep( this, function( _elem, i ) { - return i % 2; - } ) ); - }, - - eq: function( i ) { - var len = this.length, - j = +i + ( i < 0 ? len : 0 ); - return this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] ); - }, - - end: function() { - return this.prevObject || this.constructor(); - }, - - // For internal use only. - // Behaves like an Array's method, not like a jQuery method. - push: push, - sort: arr.sort, - splice: arr.splice -}; - -jQuery.extend = jQuery.fn.extend = function() { - var options, name, src, copy, copyIsArray, clone, - target = arguments[ 0 ] || {}, - i = 1, - length = arguments.length, - deep = false; - - // Handle a deep copy situation - if ( typeof target === "boolean" ) { - deep = target; - - // Skip the boolean and the target - target = arguments[ i ] || {}; - i++; - } - - // Handle case when target is a string or something (possible in deep copy) - if ( typeof target !== "object" && !isFunction( target ) ) { - target = {}; - } - - // Extend jQuery itself if only one argument is passed - if ( i === length ) { - target = this; - i--; - } - - for ( ; i < length; i++ ) { - - // Only deal with non-null/undefined values - if ( ( options = arguments[ i ] ) != null ) { - - // Extend the base object - for ( name in options ) { - copy = options[ name ]; - - // Prevent Object.prototype pollution - // Prevent never-ending loop - if ( name === "__proto__" || target === copy ) { - continue; - } - - // Recurse if we're merging plain objects or arrays - if ( deep && copy && ( jQuery.isPlainObject( copy ) || - ( copyIsArray = Array.isArray( copy ) ) ) ) { - src = target[ name ]; - - // Ensure proper type for the source value - if ( copyIsArray && !Array.isArray( src ) ) { - clone = []; - } else if ( !copyIsArray && !jQuery.isPlainObject( src ) ) { - clone = {}; - } else { - clone = src; - } - copyIsArray = false; - - // Never move original objects, clone them - target[ name ] = jQuery.extend( deep, clone, copy ); - - // Don't bring in undefined values - } else if ( copy !== undefined ) { - target[ name ] = copy; - } - } - } - } - - // Return the modified object - return target; -}; - -jQuery.extend( { - - // Unique for each copy of jQuery on the page - expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ), - - // Assume jQuery is ready without the ready module - isReady: true, - - error: function( msg ) { - throw new Error( msg ); - }, - - noop: function() {}, - - isPlainObject: function( obj ) { - var proto, Ctor; - - // Detect obvious negatives - // Use toString instead of jQuery.type to catch host objects - if ( !obj || toString.call( obj ) !== "[object Object]" ) { - return false; - } - - proto = getProto( obj ); - - // Objects with no prototype (e.g., `Object.create( null )`) are plain - if ( !proto ) { - return true; - } - - // Objects with prototype are plain iff they were constructed by a global Object function - Ctor = hasOwn.call( proto, "constructor" ) && proto.constructor; - return typeof Ctor === "function" && fnToString.call( Ctor ) === ObjectFunctionString; - }, - - isEmptyObject: function( obj ) { - var name; - - for ( name in obj ) { - return false; - } - return true; - }, - - // Evaluates a script in a provided context; falls back to the global one - // if not specified. - globalEval: function( code, options, doc ) { - DOMEval( code, { nonce: options && options.nonce }, doc ); - }, - - each: function( obj, callback ) { - var length, i = 0; - - if ( isArrayLike( obj ) ) { - length = obj.length; - for ( ; i < length; i++ ) { - if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { - break; - } - } - } else { - for ( i in obj ) { - if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { - break; - } - } - } - - return obj; - }, - - // results is for internal usage only - makeArray: function( arr, results ) { - var ret = results || []; - - if ( arr != null ) { - if ( isArrayLike( Object( arr ) ) ) { - jQuery.merge( ret, - typeof arr === "string" ? - [ arr ] : arr - ); - } else { - push.call( ret, arr ); - } - } - - return ret; - }, - - inArray: function( elem, arr, i ) { - return arr == null ? -1 : indexOf.call( arr, elem, i ); - }, - - // Support: Android <=4.0 only, PhantomJS 1 only - // push.apply(_, arraylike) throws on ancient WebKit - merge: function( first, second ) { - var len = +second.length, - j = 0, - i = first.length; - - for ( ; j < len; j++ ) { - first[ i++ ] = second[ j ]; - } - - first.length = i; - - return first; - }, - - grep: function( elems, callback, invert ) { - var callbackInverse, - matches = [], - i = 0, - length = elems.length, - callbackExpect = !invert; - - // Go through the array, only saving the items - // that pass the validator function - for ( ; i < length; i++ ) { - callbackInverse = !callback( elems[ i ], i ); - if ( callbackInverse !== callbackExpect ) { - matches.push( elems[ i ] ); - } - } - - return matches; - }, - - // arg is for internal usage only - map: function( elems, callback, arg ) { - var length, value, - i = 0, - ret = []; - - // Go through the array, translating each of the items to their new values - if ( isArrayLike( elems ) ) { - length = elems.length; - for ( ; i < length; i++ ) { - value = callback( elems[ i ], i, arg ); - - if ( value != null ) { - ret.push( value ); - } - } - - // Go through every key on the object, - } else { - for ( i in elems ) { - value = callback( elems[ i ], i, arg ); - - if ( value != null ) { - ret.push( value ); - } - } - } - - // Flatten any nested arrays - return flat( ret ); - }, - - // A global GUID counter for objects - guid: 1, - - // jQuery.support is not used in Core but other projects attach their - // properties to it so it needs to exist. - support: support -} ); - -if ( typeof Symbol === "function" ) { - jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ]; -} - -// Populate the class2type map -jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ), - function( _i, name ) { - class2type[ "[object " + name + "]" ] = name.toLowerCase(); - } ); - -function isArrayLike( obj ) { - - // Support: real iOS 8.2 only (not reproducible in simulator) - // `in` check used to prevent JIT error (gh-2145) - // hasOwn isn't used here due to false negatives - // regarding Nodelist length in IE - var length = !!obj && "length" in obj && obj.length, - type = toType( obj ); - - if ( isFunction( obj ) || isWindow( obj ) ) { - return false; - } - - return type === "array" || length === 0 || - typeof length === "number" && length > 0 && ( length - 1 ) in obj; -} -var Sizzle = -/*! - * Sizzle CSS Selector Engine v2.3.6 - * https://sizzlejs.com/ - * - * Copyright JS Foundation and other contributors - * Released under the MIT license - * https://js.foundation/ - * - * Date: 2021-02-16 - */ -( function( window ) { -var i, - support, - Expr, - getText, - isXML, - tokenize, - compile, - select, - outermostContext, - sortInput, - hasDuplicate, - - // Local document vars - setDocument, - document, - docElem, - documentIsHTML, - rbuggyQSA, - rbuggyMatches, - matches, - contains, - - // Instance-specific data - expando = "sizzle" + 1 * new Date(), - preferredDoc = window.document, - dirruns = 0, - done = 0, - classCache = createCache(), - tokenCache = createCache(), - compilerCache = createCache(), - nonnativeSelectorCache = createCache(), - sortOrder = function( a, b ) { - if ( a === b ) { - hasDuplicate = true; - } - return 0; - }, - - // Instance methods - hasOwn = ( {} ).hasOwnProperty, - arr = [], - pop = arr.pop, - pushNative = arr.push, - push = arr.push, - slice = arr.slice, - - // Use a stripped-down indexOf as it's faster than native - // https://jsperf.com/thor-indexof-vs-for/5 - indexOf = function( list, elem ) { - var i = 0, - len = list.length; - for ( ; i < len; i++ ) { - if ( list[ i ] === elem ) { - return i; - } - } - return -1; - }, - - booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|" + - "ismap|loop|multiple|open|readonly|required|scoped", - - // Regular expressions - - // http://www.w3.org/TR/css3-selectors/#whitespace - whitespace = "[\\x20\\t\\r\\n\\f]", - - // https://www.w3.org/TR/css-syntax-3/#ident-token-diagram - identifier = "(?:\\\\[\\da-fA-F]{1,6}" + whitespace + - "?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+", - - // Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors - attributes = "\\[" + whitespace + "*(" + identifier + ")(?:" + whitespace + - - // Operator (capture 2) - "*([*^$|!~]?=)" + whitespace + - - // "Attribute values must be CSS identifiers [capture 5] - // or strings [capture 3 or capture 4]" - "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + - whitespace + "*\\]", - - pseudos = ":(" + identifier + ")(?:\\((" + - - // To reduce the number of selectors needing tokenize in the preFilter, prefer arguments: - // 1. quoted (capture 3; capture 4 or capture 5) - "('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" + - - // 2. simple (capture 6) - "((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" + - - // 3. anything else (capture 2) - ".*" + - ")\\)|)", - - // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter - rwhitespace = new RegExp( whitespace + "+", "g" ), - rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + - whitespace + "+$", "g" ), - - rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ), - rcombinators = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + - "*" ), - rdescend = new RegExp( whitespace + "|>" ), - - rpseudo = new RegExp( pseudos ), - ridentifier = new RegExp( "^" + identifier + "$" ), - - matchExpr = { - "ID": new RegExp( "^#(" + identifier + ")" ), - "CLASS": new RegExp( "^\\.(" + identifier + ")" ), - "TAG": new RegExp( "^(" + identifier + "|[*])" ), - "ATTR": new RegExp( "^" + attributes ), - "PSEUDO": new RegExp( "^" + pseudos ), - "CHILD": new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + - whitespace + "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + - whitespace + "*(\\d+)|))" + whitespace + "*\\)|)", "i" ), - "bool": new RegExp( "^(?:" + booleans + ")$", "i" ), - - // For use in libraries implementing .is() - // We use this for POS matching in `select` - "needsContext": new RegExp( "^" + whitespace + - "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + whitespace + - "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" ) - }, - - rhtml = /HTML$/i, - rinputs = /^(?:input|select|textarea|button)$/i, - rheader = /^h\d$/i, - - rnative = /^[^{]+\{\s*\[native \w/, - - // Easily-parseable/retrievable ID or TAG or CLASS selectors - rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, - - rsibling = /[+~]/, - - // CSS escapes - // http://www.w3.org/TR/CSS21/syndata.html#escaped-characters - runescape = new RegExp( "\\\\[\\da-fA-F]{1,6}" + whitespace + "?|\\\\([^\\r\\n\\f])", "g" ), - funescape = function( escape, nonHex ) { - var high = "0x" + escape.slice( 1 ) - 0x10000; - - return nonHex ? - - // Strip the backslash prefix from a non-hex escape sequence - nonHex : - - // Replace a hexadecimal escape sequence with the encoded Unicode code point - // Support: IE <=11+ - // For values outside the Basic Multilingual Plane (BMP), manually construct a - // surrogate pair - high < 0 ? - String.fromCharCode( high + 0x10000 ) : - String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 ); - }, - - // CSS string/identifier serialization - // https://drafts.csswg.org/cssom/#common-serializing-idioms - rcssescape = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g, - fcssescape = function( ch, asCodePoint ) { - if ( asCodePoint ) { - - // U+0000 NULL becomes U+FFFD REPLACEMENT CHARACTER - if ( ch === "\0" ) { - return "\uFFFD"; - } - - // Control characters and (dependent upon position) numbers get escaped as code points - return ch.slice( 0, -1 ) + "\\" + - ch.charCodeAt( ch.length - 1 ).toString( 16 ) + " "; - } - - // Other potentially-special ASCII characters get backslash-escaped - return "\\" + ch; - }, - - // Used for iframes - // See setDocument() - // Removing the function wrapper causes a "Permission Denied" - // error in IE - unloadHandler = function() { - setDocument(); - }, - - inDisabledFieldset = addCombinator( - function( elem ) { - return elem.disabled === true && elem.nodeName.toLowerCase() === "fieldset"; - }, - { dir: "parentNode", next: "legend" } - ); - -// Optimize for push.apply( _, NodeList ) -try { - push.apply( - ( arr = slice.call( preferredDoc.childNodes ) ), - preferredDoc.childNodes - ); - - // Support: Android<4.0 - // Detect silently failing push.apply - // eslint-disable-next-line no-unused-expressions - arr[ preferredDoc.childNodes.length ].nodeType; -} catch ( e ) { - push = { apply: arr.length ? - - // Leverage slice if possible - function( target, els ) { - pushNative.apply( target, slice.call( els ) ); - } : - - // Support: IE<9 - // Otherwise append directly - function( target, els ) { - var j = target.length, - i = 0; - - // Can't trust NodeList.length - while ( ( target[ j++ ] = els[ i++ ] ) ) {} - target.length = j - 1; - } - }; -} - -function Sizzle( selector, context, results, seed ) { - var m, i, elem, nid, match, groups, newSelector, - newContext = context && context.ownerDocument, - - // nodeType defaults to 9, since context defaults to document - nodeType = context ? context.nodeType : 9; - - results = results || []; - - // Return early from calls with invalid selector or context - if ( typeof selector !== "string" || !selector || - nodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) { - - return results; - } - - // Try to shortcut find operations (as opposed to filters) in HTML documents - if ( !seed ) { - setDocument( context ); - context = context || document; - - if ( documentIsHTML ) { - - // If the selector is sufficiently simple, try using a "get*By*" DOM method - // (excepting DocumentFragment context, where the methods don't exist) - if ( nodeType !== 11 && ( match = rquickExpr.exec( selector ) ) ) { - - // ID selector - if ( ( m = match[ 1 ] ) ) { - - // Document context - if ( nodeType === 9 ) { - if ( ( elem = context.getElementById( m ) ) ) { - - // Support: IE, Opera, Webkit - // TODO: identify versions - // getElementById can match elements by name instead of ID - if ( elem.id === m ) { - results.push( elem ); - return results; - } - } else { - return results; - } - - // Element context - } else { - - // Support: IE, Opera, Webkit - // TODO: identify versions - // getElementById can match elements by name instead of ID - if ( newContext && ( elem = newContext.getElementById( m ) ) && - contains( context, elem ) && - elem.id === m ) { - - results.push( elem ); - return results; - } - } - - // Type selector - } else if ( match[ 2 ] ) { - push.apply( results, context.getElementsByTagName( selector ) ); - return results; - - // Class selector - } else if ( ( m = match[ 3 ] ) && support.getElementsByClassName && - context.getElementsByClassName ) { - - push.apply( results, context.getElementsByClassName( m ) ); - return results; - } - } - - // Take advantage of querySelectorAll - if ( support.qsa && - !nonnativeSelectorCache[ selector + " " ] && - ( !rbuggyQSA || !rbuggyQSA.test( selector ) ) && - - // Support: IE 8 only - // Exclude object elements - ( nodeType !== 1 || context.nodeName.toLowerCase() !== "object" ) ) { - - newSelector = selector; - newContext = context; - - // qSA considers elements outside a scoping root when evaluating child or - // descendant combinators, which is not what we want. - // In such cases, we work around the behavior by prefixing every selector in the - // list with an ID selector referencing the scope context. - // The technique has to be used as well when a leading combinator is used - // as such selectors are not recognized by querySelectorAll. - // Thanks to Andrew Dupont for this technique. - if ( nodeType === 1 && - ( rdescend.test( selector ) || rcombinators.test( selector ) ) ) { - - // Expand context for sibling selectors - newContext = rsibling.test( selector ) && testContext( context.parentNode ) || - context; - - // We can use :scope instead of the ID hack if the browser - // supports it & if we're not changing the context. - if ( newContext !== context || !support.scope ) { - - // Capture the context ID, setting it first if necessary - if ( ( nid = context.getAttribute( "id" ) ) ) { - nid = nid.replace( rcssescape, fcssescape ); - } else { - context.setAttribute( "id", ( nid = expando ) ); - } - } - - // Prefix every selector in the list - groups = tokenize( selector ); - i = groups.length; - while ( i-- ) { - groups[ i ] = ( nid ? "#" + nid : ":scope" ) + " " + - toSelector( groups[ i ] ); - } - newSelector = groups.join( "," ); - } - - try { - push.apply( results, - newContext.querySelectorAll( newSelector ) - ); - return results; - } catch ( qsaError ) { - nonnativeSelectorCache( selector, true ); - } finally { - if ( nid === expando ) { - context.removeAttribute( "id" ); - } - } - } - } - } - - // All others - return select( selector.replace( rtrim, "$1" ), context, results, seed ); -} - -/** - * Create key-value caches of limited size - * @returns {function(string, object)} Returns the Object data after storing it on itself with - * property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength) - * deleting the oldest entry - */ -function createCache() { - var keys = []; - - function cache( key, value ) { - - // Use (key + " ") to avoid collision with native prototype properties (see Issue #157) - if ( keys.push( key + " " ) > Expr.cacheLength ) { - - // Only keep the most recent entries - delete cache[ keys.shift() ]; - } - return ( cache[ key + " " ] = value ); - } - return cache; -} - -/** - * Mark a function for special use by Sizzle - * @param {Function} fn The function to mark - */ -function markFunction( fn ) { - fn[ expando ] = true; - return fn; -} - -/** - * Support testing using an element - * @param {Function} fn Passed the created element and returns a boolean result - */ -function assert( fn ) { - var el = document.createElement( "fieldset" ); - - try { - return !!fn( el ); - } catch ( e ) { - return false; - } finally { - - // Remove from its parent by default - if ( el.parentNode ) { - el.parentNode.removeChild( el ); - } - - // release memory in IE - el = null; - } -} - -/** - * Adds the same handler for all of the specified attrs - * @param {String} attrs Pipe-separated list of attributes - * @param {Function} handler The method that will be applied - */ -function addHandle( attrs, handler ) { - var arr = attrs.split( "|" ), - i = arr.length; - - while ( i-- ) { - Expr.attrHandle[ arr[ i ] ] = handler; - } -} - -/** - * Checks document order of two siblings - * @param {Element} a - * @param {Element} b - * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b - */ -function siblingCheck( a, b ) { - var cur = b && a, - diff = cur && a.nodeType === 1 && b.nodeType === 1 && - a.sourceIndex - b.sourceIndex; - - // Use IE sourceIndex if available on both nodes - if ( diff ) { - return diff; - } - - // Check if b follows a - if ( cur ) { - while ( ( cur = cur.nextSibling ) ) { - if ( cur === b ) { - return -1; - } - } - } - - return a ? 1 : -1; -} - -/** - * Returns a function to use in pseudos for input types - * @param {String} type - */ -function createInputPseudo( type ) { - return function( elem ) { - var name = elem.nodeName.toLowerCase(); - return name === "input" && elem.type === type; - }; -} - -/** - * Returns a function to use in pseudos for buttons - * @param {String} type - */ -function createButtonPseudo( type ) { - return function( elem ) { - var name = elem.nodeName.toLowerCase(); - return ( name === "input" || name === "button" ) && elem.type === type; - }; -} - -/** - * Returns a function to use in pseudos for :enabled/:disabled - * @param {Boolean} disabled true for :disabled; false for :enabled - */ -function createDisabledPseudo( disabled ) { - - // Known :disabled false positives: fieldset[disabled] > legend:nth-of-type(n+2) :can-disable - return function( elem ) { - - // Only certain elements can match :enabled or :disabled - // https://html.spec.whatwg.org/multipage/scripting.html#selector-enabled - // https://html.spec.whatwg.org/multipage/scripting.html#selector-disabled - if ( "form" in elem ) { - - // Check for inherited disabledness on relevant non-disabled elements: - // * listed form-associated elements in a disabled fieldset - // https://html.spec.whatwg.org/multipage/forms.html#category-listed - // https://html.spec.whatwg.org/multipage/forms.html#concept-fe-disabled - // * option elements in a disabled optgroup - // https://html.spec.whatwg.org/multipage/forms.html#concept-option-disabled - // All such elements have a "form" property. - if ( elem.parentNode && elem.disabled === false ) { - - // Option elements defer to a parent optgroup if present - if ( "label" in elem ) { - if ( "label" in elem.parentNode ) { - return elem.parentNode.disabled === disabled; - } else { - return elem.disabled === disabled; - } - } - - // Support: IE 6 - 11 - // Use the isDisabled shortcut property to check for disabled fieldset ancestors - return elem.isDisabled === disabled || - - // Where there is no isDisabled, check manually - /* jshint -W018 */ - elem.isDisabled !== !disabled && - inDisabledFieldset( elem ) === disabled; - } - - return elem.disabled === disabled; - - // Try to winnow out elements that can't be disabled before trusting the disabled property. - // Some victims get caught in our net (label, legend, menu, track), but it shouldn't - // even exist on them, let alone have a boolean value. - } else if ( "label" in elem ) { - return elem.disabled === disabled; - } - - // Remaining elements are neither :enabled nor :disabled - return false; - }; -} - -/** - * Returns a function to use in pseudos for positionals - * @param {Function} fn - */ -function createPositionalPseudo( fn ) { - return markFunction( function( argument ) { - argument = +argument; - return markFunction( function( seed, matches ) { - var j, - matchIndexes = fn( [], seed.length, argument ), - i = matchIndexes.length; - - // Match elements found at the specified indexes - while ( i-- ) { - if ( seed[ ( j = matchIndexes[ i ] ) ] ) { - seed[ j ] = !( matches[ j ] = seed[ j ] ); - } - } - } ); - } ); -} - -/** - * Checks a node for validity as a Sizzle context - * @param {Element|Object=} context - * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value - */ -function testContext( context ) { - return context && typeof context.getElementsByTagName !== "undefined" && context; -} - -// Expose support vars for convenience -support = Sizzle.support = {}; - -/** - * Detects XML nodes - * @param {Element|Object} elem An element or a document - * @returns {Boolean} True iff elem is a non-HTML XML node - */ -isXML = Sizzle.isXML = function( elem ) { - var namespace = elem && elem.namespaceURI, - docElem = elem && ( elem.ownerDocument || elem ).documentElement; - - // Support: IE <=8 - // Assume HTML when documentElement doesn't yet exist, such as inside loading iframes - // https://bugs.jquery.com/ticket/4833 - return !rhtml.test( namespace || docElem && docElem.nodeName || "HTML" ); -}; - -/** - * Sets document-related variables once based on the current document - * @param {Element|Object} [doc] An element or document object to use to set the document - * @returns {Object} Returns the current document - */ -setDocument = Sizzle.setDocument = function( node ) { - var hasCompare, subWindow, - doc = node ? node.ownerDocument || node : preferredDoc; - - // Return early if doc is invalid or already selected - // Support: IE 11+, Edge 17 - 18+ - // IE/Edge sometimes throw a "Permission denied" error when strict-comparing - // two documents; shallow comparisons work. - // eslint-disable-next-line eqeqeq - if ( doc == document || doc.nodeType !== 9 || !doc.documentElement ) { - return document; - } - - // Update global variables - document = doc; - docElem = document.documentElement; - documentIsHTML = !isXML( document ); - - // Support: IE 9 - 11+, Edge 12 - 18+ - // Accessing iframe documents after unload throws "permission denied" errors (jQuery #13936) - // Support: IE 11+, Edge 17 - 18+ - // IE/Edge sometimes throw a "Permission denied" error when strict-comparing - // two documents; shallow comparisons work. - // eslint-disable-next-line eqeqeq - if ( preferredDoc != document && - ( subWindow = document.defaultView ) && subWindow.top !== subWindow ) { - - // Support: IE 11, Edge - if ( subWindow.addEventListener ) { - subWindow.addEventListener( "unload", unloadHandler, false ); - - // Support: IE 9 - 10 only - } else if ( subWindow.attachEvent ) { - subWindow.attachEvent( "onunload", unloadHandler ); - } - } - - // Support: IE 8 - 11+, Edge 12 - 18+, Chrome <=16 - 25 only, Firefox <=3.6 - 31 only, - // Safari 4 - 5 only, Opera <=11.6 - 12.x only - // IE/Edge & older browsers don't support the :scope pseudo-class. - // Support: Safari 6.0 only - // Safari 6.0 supports :scope but it's an alias of :root there. - support.scope = assert( function( el ) { - docElem.appendChild( el ).appendChild( document.createElement( "div" ) ); - return typeof el.querySelectorAll !== "undefined" && - !el.querySelectorAll( ":scope fieldset div" ).length; - } ); - - /* Attributes - ---------------------------------------------------------------------- */ - - // Support: IE<8 - // Verify that getAttribute really returns attributes and not properties - // (excepting IE8 booleans) - support.attributes = assert( function( el ) { - el.className = "i"; - return !el.getAttribute( "className" ); - } ); - - /* getElement(s)By* - ---------------------------------------------------------------------- */ - - // Check if getElementsByTagName("*") returns only elements - support.getElementsByTagName = assert( function( el ) { - el.appendChild( document.createComment( "" ) ); - return !el.getElementsByTagName( "*" ).length; - } ); - - // Support: IE<9 - support.getElementsByClassName = rnative.test( document.getElementsByClassName ); - - // Support: IE<10 - // Check if getElementById returns elements by name - // The broken getElementById methods don't pick up programmatically-set names, - // so use a roundabout getElementsByName test - support.getById = assert( function( el ) { - docElem.appendChild( el ).id = expando; - return !document.getElementsByName || !document.getElementsByName( expando ).length; - } ); - - // ID filter and find - if ( support.getById ) { - Expr.filter[ "ID" ] = function( id ) { - var attrId = id.replace( runescape, funescape ); - return function( elem ) { - return elem.getAttribute( "id" ) === attrId; - }; - }; - Expr.find[ "ID" ] = function( id, context ) { - if ( typeof context.getElementById !== "undefined" && documentIsHTML ) { - var elem = context.getElementById( id ); - return elem ? [ elem ] : []; - } - }; - } else { - Expr.filter[ "ID" ] = function( id ) { - var attrId = id.replace( runescape, funescape ); - return function( elem ) { - var node = typeof elem.getAttributeNode !== "undefined" && - elem.getAttributeNode( "id" ); - return node && node.value === attrId; - }; - }; - - // Support: IE 6 - 7 only - // getElementById is not reliable as a find shortcut - Expr.find[ "ID" ] = function( id, context ) { - if ( typeof context.getElementById !== "undefined" && documentIsHTML ) { - var node, i, elems, - elem = context.getElementById( id ); - - if ( elem ) { - - // Verify the id attribute - node = elem.getAttributeNode( "id" ); - if ( node && node.value === id ) { - return [ elem ]; - } - - // Fall back on getElementsByName - elems = context.getElementsByName( id ); - i = 0; - while ( ( elem = elems[ i++ ] ) ) { - node = elem.getAttributeNode( "id" ); - if ( node && node.value === id ) { - return [ elem ]; - } - } - } - - return []; - } - }; - } - - // Tag - Expr.find[ "TAG" ] = support.getElementsByTagName ? - function( tag, context ) { - if ( typeof context.getElementsByTagName !== "undefined" ) { - return context.getElementsByTagName( tag ); - - // DocumentFragment nodes don't have gEBTN - } else if ( support.qsa ) { - return context.querySelectorAll( tag ); - } - } : - - function( tag, context ) { - var elem, - tmp = [], - i = 0, - - // By happy coincidence, a (broken) gEBTN appears on DocumentFragment nodes too - results = context.getElementsByTagName( tag ); - - // Filter out possible comments - if ( tag === "*" ) { - while ( ( elem = results[ i++ ] ) ) { - if ( elem.nodeType === 1 ) { - tmp.push( elem ); - } - } - - return tmp; - } - return results; - }; - - // Class - Expr.find[ "CLASS" ] = support.getElementsByClassName && function( className, context ) { - if ( typeof context.getElementsByClassName !== "undefined" && documentIsHTML ) { - return context.getElementsByClassName( className ); - } - }; - - /* QSA/matchesSelector - ---------------------------------------------------------------------- */ - - // QSA and matchesSelector support - - // matchesSelector(:active) reports false when true (IE9/Opera 11.5) - rbuggyMatches = []; - - // qSa(:focus) reports false when true (Chrome 21) - // We allow this because of a bug in IE8/9 that throws an error - // whenever `document.activeElement` is accessed on an iframe - // So, we allow :focus to pass through QSA all the time to avoid the IE error - // See https://bugs.jquery.com/ticket/13378 - rbuggyQSA = []; - - if ( ( support.qsa = rnative.test( document.querySelectorAll ) ) ) { - - // Build QSA regex - // Regex strategy adopted from Diego Perini - assert( function( el ) { - - var input; - - // Select is set to empty string on purpose - // This is to test IE's treatment of not explicitly - // setting a boolean content attribute, - // since its presence should be enough - // https://bugs.jquery.com/ticket/12359 - docElem.appendChild( el ).innerHTML = "" + - ""; - - // Support: IE8, Opera 11-12.16 - // Nothing should be selected when empty strings follow ^= or $= or *= - // The test attribute must be unknown in Opera but "safe" for WinRT - // https://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section - if ( el.querySelectorAll( "[msallowcapture^='']" ).length ) { - rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:''|\"\")" ); - } - - // Support: IE8 - // Boolean attributes and "value" are not treated correctly - if ( !el.querySelectorAll( "[selected]" ).length ) { - rbuggyQSA.push( "\\[" + whitespace + "*(?:value|" + booleans + ")" ); - } - - // Support: Chrome<29, Android<4.4, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.8+ - if ( !el.querySelectorAll( "[id~=" + expando + "-]" ).length ) { - rbuggyQSA.push( "~=" ); - } - - // Support: IE 11+, Edge 15 - 18+ - // IE 11/Edge don't find elements on a `[name='']` query in some cases. - // Adding a temporary attribute to the document before the selection works - // around the issue. - // Interestingly, IE 10 & older don't seem to have the issue. - input = document.createElement( "input" ); - input.setAttribute( "name", "" ); - el.appendChild( input ); - if ( !el.querySelectorAll( "[name='']" ).length ) { - rbuggyQSA.push( "\\[" + whitespace + "*name" + whitespace + "*=" + - whitespace + "*(?:''|\"\")" ); - } - - // Webkit/Opera - :checked should return selected option elements - // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked - // IE8 throws error here and will not see later tests - if ( !el.querySelectorAll( ":checked" ).length ) { - rbuggyQSA.push( ":checked" ); - } - - // Support: Safari 8+, iOS 8+ - // https://bugs.webkit.org/show_bug.cgi?id=136851 - // In-page `selector#id sibling-combinator selector` fails - if ( !el.querySelectorAll( "a#" + expando + "+*" ).length ) { - rbuggyQSA.push( ".#.+[+~]" ); - } - - // Support: Firefox <=3.6 - 5 only - // Old Firefox doesn't throw on a badly-escaped identifier. - el.querySelectorAll( "\\\f" ); - rbuggyQSA.push( "[\\r\\n\\f]" ); - } ); - - assert( function( el ) { - el.innerHTML = "" + - ""; - - // Support: Windows 8 Native Apps - // The type and name attributes are restricted during .innerHTML assignment - var input = document.createElement( "input" ); - input.setAttribute( "type", "hidden" ); - el.appendChild( input ).setAttribute( "name", "D" ); - - // Support: IE8 - // Enforce case-sensitivity of name attribute - if ( el.querySelectorAll( "[name=d]" ).length ) { - rbuggyQSA.push( "name" + whitespace + "*[*^$|!~]?=" ); - } - - // FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled) - // IE8 throws error here and will not see later tests - if ( el.querySelectorAll( ":enabled" ).length !== 2 ) { - rbuggyQSA.push( ":enabled", ":disabled" ); - } - - // Support: IE9-11+ - // IE's :disabled selector does not pick up the children of disabled fieldsets - docElem.appendChild( el ).disabled = true; - if ( el.querySelectorAll( ":disabled" ).length !== 2 ) { - rbuggyQSA.push( ":enabled", ":disabled" ); - } - - // Support: Opera 10 - 11 only - // Opera 10-11 does not throw on post-comma invalid pseudos - el.querySelectorAll( "*,:x" ); - rbuggyQSA.push( ",.*:" ); - } ); - } - - if ( ( support.matchesSelector = rnative.test( ( matches = docElem.matches || - docElem.webkitMatchesSelector || - docElem.mozMatchesSelector || - docElem.oMatchesSelector || - docElem.msMatchesSelector ) ) ) ) { - - assert( function( el ) { - - // Check to see if it's possible to do matchesSelector - // on a disconnected node (IE 9) - support.disconnectedMatch = matches.call( el, "*" ); - - // This should fail with an exception - // Gecko does not error, returns false instead - matches.call( el, "[s!='']:x" ); - rbuggyMatches.push( "!=", pseudos ); - } ); - } - - rbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join( "|" ) ); - rbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join( "|" ) ); - - /* Contains - ---------------------------------------------------------------------- */ - hasCompare = rnative.test( docElem.compareDocumentPosition ); - - // Element contains another - // Purposefully self-exclusive - // As in, an element does not contain itself - contains = hasCompare || rnative.test( docElem.contains ) ? - function( a, b ) { - var adown = a.nodeType === 9 ? a.documentElement : a, - bup = b && b.parentNode; - return a === bup || !!( bup && bup.nodeType === 1 && ( - adown.contains ? - adown.contains( bup ) : - a.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16 - ) ); - } : - function( a, b ) { - if ( b ) { - while ( ( b = b.parentNode ) ) { - if ( b === a ) { - return true; - } - } - } - return false; - }; - - /* Sorting - ---------------------------------------------------------------------- */ - - // Document order sorting - sortOrder = hasCompare ? - function( a, b ) { - - // Flag for duplicate removal - if ( a === b ) { - hasDuplicate = true; - return 0; - } - - // Sort on method existence if only one input has compareDocumentPosition - var compare = !a.compareDocumentPosition - !b.compareDocumentPosition; - if ( compare ) { - return compare; - } - - // Calculate position if both inputs belong to the same document - // Support: IE 11+, Edge 17 - 18+ - // IE/Edge sometimes throw a "Permission denied" error when strict-comparing - // two documents; shallow comparisons work. - // eslint-disable-next-line eqeqeq - compare = ( a.ownerDocument || a ) == ( b.ownerDocument || b ) ? - a.compareDocumentPosition( b ) : - - // Otherwise we know they are disconnected - 1; - - // Disconnected nodes - if ( compare & 1 || - ( !support.sortDetached && b.compareDocumentPosition( a ) === compare ) ) { - - // Choose the first element that is related to our preferred document - // Support: IE 11+, Edge 17 - 18+ - // IE/Edge sometimes throw a "Permission denied" error when strict-comparing - // two documents; shallow comparisons work. - // eslint-disable-next-line eqeqeq - if ( a == document || a.ownerDocument == preferredDoc && - contains( preferredDoc, a ) ) { - return -1; - } - - // Support: IE 11+, Edge 17 - 18+ - // IE/Edge sometimes throw a "Permission denied" error when strict-comparing - // two documents; shallow comparisons work. - // eslint-disable-next-line eqeqeq - if ( b == document || b.ownerDocument == preferredDoc && - contains( preferredDoc, b ) ) { - return 1; - } - - // Maintain original order - return sortInput ? - ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) : - 0; - } - - return compare & 4 ? -1 : 1; - } : - function( a, b ) { - - // Exit early if the nodes are identical - if ( a === b ) { - hasDuplicate = true; - return 0; - } - - var cur, - i = 0, - aup = a.parentNode, - bup = b.parentNode, - ap = [ a ], - bp = [ b ]; - - // Parentless nodes are either documents or disconnected - if ( !aup || !bup ) { - - // Support: IE 11+, Edge 17 - 18+ - // IE/Edge sometimes throw a "Permission denied" error when strict-comparing - // two documents; shallow comparisons work. - /* eslint-disable eqeqeq */ - return a == document ? -1 : - b == document ? 1 : - /* eslint-enable eqeqeq */ - aup ? -1 : - bup ? 1 : - sortInput ? - ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) : - 0; - - // If the nodes are siblings, we can do a quick check - } else if ( aup === bup ) { - return siblingCheck( a, b ); - } - - // Otherwise we need full lists of their ancestors for comparison - cur = a; - while ( ( cur = cur.parentNode ) ) { - ap.unshift( cur ); - } - cur = b; - while ( ( cur = cur.parentNode ) ) { - bp.unshift( cur ); - } - - // Walk down the tree looking for a discrepancy - while ( ap[ i ] === bp[ i ] ) { - i++; - } - - return i ? - - // Do a sibling check if the nodes have a common ancestor - siblingCheck( ap[ i ], bp[ i ] ) : - - // Otherwise nodes in our document sort first - // Support: IE 11+, Edge 17 - 18+ - // IE/Edge sometimes throw a "Permission denied" error when strict-comparing - // two documents; shallow comparisons work. - /* eslint-disable eqeqeq */ - ap[ i ] == preferredDoc ? -1 : - bp[ i ] == preferredDoc ? 1 : - /* eslint-enable eqeqeq */ - 0; - }; - - return document; -}; - -Sizzle.matches = function( expr, elements ) { - return Sizzle( expr, null, null, elements ); -}; - -Sizzle.matchesSelector = function( elem, expr ) { - setDocument( elem ); - - if ( support.matchesSelector && documentIsHTML && - !nonnativeSelectorCache[ expr + " " ] && - ( !rbuggyMatches || !rbuggyMatches.test( expr ) ) && - ( !rbuggyQSA || !rbuggyQSA.test( expr ) ) ) { - - try { - var ret = matches.call( elem, expr ); - - // IE 9's matchesSelector returns false on disconnected nodes - if ( ret || support.disconnectedMatch || - - // As well, disconnected nodes are said to be in a document - // fragment in IE 9 - elem.document && elem.document.nodeType !== 11 ) { - return ret; - } - } catch ( e ) { - nonnativeSelectorCache( expr, true ); - } - } - - return Sizzle( expr, document, null, [ elem ] ).length > 0; -}; - -Sizzle.contains = function( context, elem ) { - - // Set document vars if needed - // Support: IE 11+, Edge 17 - 18+ - // IE/Edge sometimes throw a "Permission denied" error when strict-comparing - // two documents; shallow comparisons work. - // eslint-disable-next-line eqeqeq - if ( ( context.ownerDocument || context ) != document ) { - setDocument( context ); - } - return contains( context, elem ); -}; - -Sizzle.attr = function( elem, name ) { - - // Set document vars if needed - // Support: IE 11+, Edge 17 - 18+ - // IE/Edge sometimes throw a "Permission denied" error when strict-comparing - // two documents; shallow comparisons work. - // eslint-disable-next-line eqeqeq - if ( ( elem.ownerDocument || elem ) != document ) { - setDocument( elem ); - } - - var fn = Expr.attrHandle[ name.toLowerCase() ], - - // Don't get fooled by Object.prototype properties (jQuery #13807) - val = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ? - fn( elem, name, !documentIsHTML ) : - undefined; - - return val !== undefined ? - val : - support.attributes || !documentIsHTML ? - elem.getAttribute( name ) : - ( val = elem.getAttributeNode( name ) ) && val.specified ? - val.value : - null; -}; - -Sizzle.escape = function( sel ) { - return ( sel + "" ).replace( rcssescape, fcssescape ); -}; - -Sizzle.error = function( msg ) { - throw new Error( "Syntax error, unrecognized expression: " + msg ); -}; - -/** - * Document sorting and removing duplicates - * @param {ArrayLike} results - */ -Sizzle.uniqueSort = function( results ) { - var elem, - duplicates = [], - j = 0, - i = 0; - - // Unless we *know* we can detect duplicates, assume their presence - hasDuplicate = !support.detectDuplicates; - sortInput = !support.sortStable && results.slice( 0 ); - results.sort( sortOrder ); - - if ( hasDuplicate ) { - while ( ( elem = results[ i++ ] ) ) { - if ( elem === results[ i ] ) { - j = duplicates.push( i ); - } - } - while ( j-- ) { - results.splice( duplicates[ j ], 1 ); - } - } - - // Clear input after sorting to release objects - // See https://github.com/jquery/sizzle/pull/225 - sortInput = null; - - return results; -}; - -/** - * Utility function for retrieving the text value of an array of DOM nodes - * @param {Array|Element} elem - */ -getText = Sizzle.getText = function( elem ) { - var node, - ret = "", - i = 0, - nodeType = elem.nodeType; - - if ( !nodeType ) { - - // If no nodeType, this is expected to be an array - while ( ( node = elem[ i++ ] ) ) { - - // Do not traverse comment nodes - ret += getText( node ); - } - } else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) { - - // Use textContent for elements - // innerText usage removed for consistency of new lines (jQuery #11153) - if ( typeof elem.textContent === "string" ) { - return elem.textContent; - } else { - - // Traverse its children - for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { - ret += getText( elem ); - } - } - } else if ( nodeType === 3 || nodeType === 4 ) { - return elem.nodeValue; - } - - // Do not include comment or processing instruction nodes - - return ret; -}; - -Expr = Sizzle.selectors = { - - // Can be adjusted by the user - cacheLength: 50, - - createPseudo: markFunction, - - match: matchExpr, - - attrHandle: {}, - - find: {}, - - relative: { - ">": { dir: "parentNode", first: true }, - " ": { dir: "parentNode" }, - "+": { dir: "previousSibling", first: true }, - "~": { dir: "previousSibling" } - }, - - preFilter: { - "ATTR": function( match ) { - match[ 1 ] = match[ 1 ].replace( runescape, funescape ); - - // Move the given value to match[3] whether quoted or unquoted - match[ 3 ] = ( match[ 3 ] || match[ 4 ] || - match[ 5 ] || "" ).replace( runescape, funescape ); - - if ( match[ 2 ] === "~=" ) { - match[ 3 ] = " " + match[ 3 ] + " "; - } - - return match.slice( 0, 4 ); - }, - - "CHILD": function( match ) { - - /* matches from matchExpr["CHILD"] - 1 type (only|nth|...) - 2 what (child|of-type) - 3 argument (even|odd|\d*|\d*n([+-]\d+)?|...) - 4 xn-component of xn+y argument ([+-]?\d*n|) - 5 sign of xn-component - 6 x of xn-component - 7 sign of y-component - 8 y of y-component - */ - match[ 1 ] = match[ 1 ].toLowerCase(); - - if ( match[ 1 ].slice( 0, 3 ) === "nth" ) { - - // nth-* requires argument - if ( !match[ 3 ] ) { - Sizzle.error( match[ 0 ] ); - } - - // numeric x and y parameters for Expr.filter.CHILD - // remember that false/true cast respectively to 0/1 - match[ 4 ] = +( match[ 4 ] ? - match[ 5 ] + ( match[ 6 ] || 1 ) : - 2 * ( match[ 3 ] === "even" || match[ 3 ] === "odd" ) ); - match[ 5 ] = +( ( match[ 7 ] + match[ 8 ] ) || match[ 3 ] === "odd" ); - - // other types prohibit arguments - } else if ( match[ 3 ] ) { - Sizzle.error( match[ 0 ] ); - } - - return match; - }, - - "PSEUDO": function( match ) { - var excess, - unquoted = !match[ 6 ] && match[ 2 ]; - - if ( matchExpr[ "CHILD" ].test( match[ 0 ] ) ) { - return null; - } - - // Accept quoted arguments as-is - if ( match[ 3 ] ) { - match[ 2 ] = match[ 4 ] || match[ 5 ] || ""; - - // Strip excess characters from unquoted arguments - } else if ( unquoted && rpseudo.test( unquoted ) && - - // Get excess from tokenize (recursively) - ( excess = tokenize( unquoted, true ) ) && - - // advance to the next closing parenthesis - ( excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length ) ) { - - // excess is a negative index - match[ 0 ] = match[ 0 ].slice( 0, excess ); - match[ 2 ] = unquoted.slice( 0, excess ); - } - - // Return only captures needed by the pseudo filter method (type and argument) - return match.slice( 0, 3 ); - } - }, - - filter: { - - "TAG": function( nodeNameSelector ) { - var nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase(); - return nodeNameSelector === "*" ? - function() { - return true; - } : - function( elem ) { - return elem.nodeName && elem.nodeName.toLowerCase() === nodeName; - }; - }, - - "CLASS": function( className ) { - var pattern = classCache[ className + " " ]; - - return pattern || - ( pattern = new RegExp( "(^|" + whitespace + - ")" + className + "(" + whitespace + "|$)" ) ) && classCache( - className, function( elem ) { - return pattern.test( - typeof elem.className === "string" && elem.className || - typeof elem.getAttribute !== "undefined" && - elem.getAttribute( "class" ) || - "" - ); - } ); - }, - - "ATTR": function( name, operator, check ) { - return function( elem ) { - var result = Sizzle.attr( elem, name ); - - if ( result == null ) { - return operator === "!="; - } - if ( !operator ) { - return true; - } - - result += ""; - - /* eslint-disable max-len */ - - return operator === "=" ? result === check : - operator === "!=" ? result !== check : - operator === "^=" ? check && result.indexOf( check ) === 0 : - operator === "*=" ? check && result.indexOf( check ) > -1 : - operator === "$=" ? check && result.slice( -check.length ) === check : - operator === "~=" ? ( " " + result.replace( rwhitespace, " " ) + " " ).indexOf( check ) > -1 : - operator === "|=" ? result === check || result.slice( 0, check.length + 1 ) === check + "-" : - false; - /* eslint-enable max-len */ - - }; - }, - - "CHILD": function( type, what, _argument, first, last ) { - var simple = type.slice( 0, 3 ) !== "nth", - forward = type.slice( -4 ) !== "last", - ofType = what === "of-type"; - - return first === 1 && last === 0 ? - - // Shortcut for :nth-*(n) - function( elem ) { - return !!elem.parentNode; - } : - - function( elem, _context, xml ) { - var cache, uniqueCache, outerCache, node, nodeIndex, start, - dir = simple !== forward ? "nextSibling" : "previousSibling", - parent = elem.parentNode, - name = ofType && elem.nodeName.toLowerCase(), - useCache = !xml && !ofType, - diff = false; - - if ( parent ) { - - // :(first|last|only)-(child|of-type) - if ( simple ) { - while ( dir ) { - node = elem; - while ( ( node = node[ dir ] ) ) { - if ( ofType ? - node.nodeName.toLowerCase() === name : - node.nodeType === 1 ) { - - return false; - } - } - - // Reverse direction for :only-* (if we haven't yet done so) - start = dir = type === "only" && !start && "nextSibling"; - } - return true; - } - - start = [ forward ? parent.firstChild : parent.lastChild ]; - - // non-xml :nth-child(...) stores cache data on `parent` - if ( forward && useCache ) { - - // Seek `elem` from a previously-cached index - - // ...in a gzip-friendly way - node = parent; - outerCache = node[ expando ] || ( node[ expando ] = {} ); - - // Support: IE <9 only - // Defend against cloned attroperties (jQuery gh-1709) - uniqueCache = outerCache[ node.uniqueID ] || - ( outerCache[ node.uniqueID ] = {} ); - - cache = uniqueCache[ type ] || []; - nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; - diff = nodeIndex && cache[ 2 ]; - node = nodeIndex && parent.childNodes[ nodeIndex ]; - - while ( ( node = ++nodeIndex && node && node[ dir ] || - - // Fallback to seeking `elem` from the start - ( diff = nodeIndex = 0 ) || start.pop() ) ) { - - // When found, cache indexes on `parent` and break - if ( node.nodeType === 1 && ++diff && node === elem ) { - uniqueCache[ type ] = [ dirruns, nodeIndex, diff ]; - break; - } - } - - } else { - - // Use previously-cached element index if available - if ( useCache ) { - - // ...in a gzip-friendly way - node = elem; - outerCache = node[ expando ] || ( node[ expando ] = {} ); - - // Support: IE <9 only - // Defend against cloned attroperties (jQuery gh-1709) - uniqueCache = outerCache[ node.uniqueID ] || - ( outerCache[ node.uniqueID ] = {} ); - - cache = uniqueCache[ type ] || []; - nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; - diff = nodeIndex; - } - - // xml :nth-child(...) - // or :nth-last-child(...) or :nth(-last)?-of-type(...) - if ( diff === false ) { - - // Use the same loop as above to seek `elem` from the start - while ( ( node = ++nodeIndex && node && node[ dir ] || - ( diff = nodeIndex = 0 ) || start.pop() ) ) { - - if ( ( ofType ? - node.nodeName.toLowerCase() === name : - node.nodeType === 1 ) && - ++diff ) { - - // Cache the index of each encountered element - if ( useCache ) { - outerCache = node[ expando ] || - ( node[ expando ] = {} ); - - // Support: IE <9 only - // Defend against cloned attroperties (jQuery gh-1709) - uniqueCache = outerCache[ node.uniqueID ] || - ( outerCache[ node.uniqueID ] = {} ); - - uniqueCache[ type ] = [ dirruns, diff ]; - } - - if ( node === elem ) { - break; - } - } - } - } - } - - // Incorporate the offset, then check against cycle size - diff -= last; - return diff === first || ( diff % first === 0 && diff / first >= 0 ); - } - }; - }, - - "PSEUDO": function( pseudo, argument ) { - - // pseudo-class names are case-insensitive - // http://www.w3.org/TR/selectors/#pseudo-classes - // Prioritize by case sensitivity in case custom pseudos are added with uppercase letters - // Remember that setFilters inherits from pseudos - var args, - fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] || - Sizzle.error( "unsupported pseudo: " + pseudo ); - - // The user may use createPseudo to indicate that - // arguments are needed to create the filter function - // just as Sizzle does - if ( fn[ expando ] ) { - return fn( argument ); - } - - // But maintain support for old signatures - if ( fn.length > 1 ) { - args = [ pseudo, pseudo, "", argument ]; - return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ? - markFunction( function( seed, matches ) { - var idx, - matched = fn( seed, argument ), - i = matched.length; - while ( i-- ) { - idx = indexOf( seed, matched[ i ] ); - seed[ idx ] = !( matches[ idx ] = matched[ i ] ); - } - } ) : - function( elem ) { - return fn( elem, 0, args ); - }; - } - - return fn; - } - }, - - pseudos: { - - // Potentially complex pseudos - "not": markFunction( function( selector ) { - - // Trim the selector passed to compile - // to avoid treating leading and trailing - // spaces as combinators - var input = [], - results = [], - matcher = compile( selector.replace( rtrim, "$1" ) ); - - return matcher[ expando ] ? - markFunction( function( seed, matches, _context, xml ) { - var elem, - unmatched = matcher( seed, null, xml, [] ), - i = seed.length; - - // Match elements unmatched by `matcher` - while ( i-- ) { - if ( ( elem = unmatched[ i ] ) ) { - seed[ i ] = !( matches[ i ] = elem ); - } - } - } ) : - function( elem, _context, xml ) { - input[ 0 ] = elem; - matcher( input, null, xml, results ); - - // Don't keep the element (issue #299) - input[ 0 ] = null; - return !results.pop(); - }; - } ), - - "has": markFunction( function( selector ) { - return function( elem ) { - return Sizzle( selector, elem ).length > 0; - }; - } ), - - "contains": markFunction( function( text ) { - text = text.replace( runescape, funescape ); - return function( elem ) { - return ( elem.textContent || getText( elem ) ).indexOf( text ) > -1; - }; - } ), - - // "Whether an element is represented by a :lang() selector - // is based solely on the element's language value - // being equal to the identifier C, - // or beginning with the identifier C immediately followed by "-". - // The matching of C against the element's language value is performed case-insensitively. - // The identifier C does not have to be a valid language name." - // http://www.w3.org/TR/selectors/#lang-pseudo - "lang": markFunction( function( lang ) { - - // lang value must be a valid identifier - if ( !ridentifier.test( lang || "" ) ) { - Sizzle.error( "unsupported lang: " + lang ); - } - lang = lang.replace( runescape, funescape ).toLowerCase(); - return function( elem ) { - var elemLang; - do { - if ( ( elemLang = documentIsHTML ? - elem.lang : - elem.getAttribute( "xml:lang" ) || elem.getAttribute( "lang" ) ) ) { - - elemLang = elemLang.toLowerCase(); - return elemLang === lang || elemLang.indexOf( lang + "-" ) === 0; - } - } while ( ( elem = elem.parentNode ) && elem.nodeType === 1 ); - return false; - }; - } ), - - // Miscellaneous - "target": function( elem ) { - var hash = window.location && window.location.hash; - return hash && hash.slice( 1 ) === elem.id; - }, - - "root": function( elem ) { - return elem === docElem; - }, - - "focus": function( elem ) { - return elem === document.activeElement && - ( !document.hasFocus || document.hasFocus() ) && - !!( elem.type || elem.href || ~elem.tabIndex ); - }, - - // Boolean properties - "enabled": createDisabledPseudo( false ), - "disabled": createDisabledPseudo( true ), - - "checked": function( elem ) { - - // In CSS3, :checked should return both checked and selected elements - // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked - var nodeName = elem.nodeName.toLowerCase(); - return ( nodeName === "input" && !!elem.checked ) || - ( nodeName === "option" && !!elem.selected ); - }, - - "selected": function( elem ) { - - // Accessing this property makes selected-by-default - // options in Safari work properly - if ( elem.parentNode ) { - // eslint-disable-next-line no-unused-expressions - elem.parentNode.selectedIndex; - } - - return elem.selected === true; - }, - - // Contents - "empty": function( elem ) { - - // http://www.w3.org/TR/selectors/#empty-pseudo - // :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5), - // but not by others (comment: 8; processing instruction: 7; etc.) - // nodeType < 6 works because attributes (2) do not appear as children - for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { - if ( elem.nodeType < 6 ) { - return false; - } - } - return true; - }, - - "parent": function( elem ) { - return !Expr.pseudos[ "empty" ]( elem ); - }, - - // Element/input types - "header": function( elem ) { - return rheader.test( elem.nodeName ); - }, - - "input": function( elem ) { - return rinputs.test( elem.nodeName ); - }, - - "button": function( elem ) { - var name = elem.nodeName.toLowerCase(); - return name === "input" && elem.type === "button" || name === "button"; - }, - - "text": function( elem ) { - var attr; - return elem.nodeName.toLowerCase() === "input" && - elem.type === "text" && - - // Support: IE<8 - // New HTML5 attribute values (e.g., "search") appear with elem.type === "text" - ( ( attr = elem.getAttribute( "type" ) ) == null || - attr.toLowerCase() === "text" ); - }, - - // Position-in-collection - "first": createPositionalPseudo( function() { - return [ 0 ]; - } ), - - "last": createPositionalPseudo( function( _matchIndexes, length ) { - return [ length - 1 ]; - } ), - - "eq": createPositionalPseudo( function( _matchIndexes, length, argument ) { - return [ argument < 0 ? argument + length : argument ]; - } ), - - "even": createPositionalPseudo( function( matchIndexes, length ) { - var i = 0; - for ( ; i < length; i += 2 ) { - matchIndexes.push( i ); - } - return matchIndexes; - } ), - - "odd": createPositionalPseudo( function( matchIndexes, length ) { - var i = 1; - for ( ; i < length; i += 2 ) { - matchIndexes.push( i ); - } - return matchIndexes; - } ), - - "lt": createPositionalPseudo( function( matchIndexes, length, argument ) { - var i = argument < 0 ? - argument + length : - argument > length ? - length : - argument; - for ( ; --i >= 0; ) { - matchIndexes.push( i ); - } - return matchIndexes; - } ), - - "gt": createPositionalPseudo( function( matchIndexes, length, argument ) { - var i = argument < 0 ? argument + length : argument; - for ( ; ++i < length; ) { - matchIndexes.push( i ); - } - return matchIndexes; - } ) - } -}; - -Expr.pseudos[ "nth" ] = Expr.pseudos[ "eq" ]; - -// Add button/input type pseudos -for ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) { - Expr.pseudos[ i ] = createInputPseudo( i ); -} -for ( i in { submit: true, reset: true } ) { - Expr.pseudos[ i ] = createButtonPseudo( i ); -} - -// Easy API for creating new setFilters -function setFilters() {} -setFilters.prototype = Expr.filters = Expr.pseudos; -Expr.setFilters = new setFilters(); - -tokenize = Sizzle.tokenize = function( selector, parseOnly ) { - var matched, match, tokens, type, - soFar, groups, preFilters, - cached = tokenCache[ selector + " " ]; - - if ( cached ) { - return parseOnly ? 0 : cached.slice( 0 ); - } - - soFar = selector; - groups = []; - preFilters = Expr.preFilter; - - while ( soFar ) { - - // Comma and first run - if ( !matched || ( match = rcomma.exec( soFar ) ) ) { - if ( match ) { - - // Don't consume trailing commas as valid - soFar = soFar.slice( match[ 0 ].length ) || soFar; - } - groups.push( ( tokens = [] ) ); - } - - matched = false; - - // Combinators - if ( ( match = rcombinators.exec( soFar ) ) ) { - matched = match.shift(); - tokens.push( { - value: matched, - - // Cast descendant combinators to space - type: match[ 0 ].replace( rtrim, " " ) - } ); - soFar = soFar.slice( matched.length ); - } - - // Filters - for ( type in Expr.filter ) { - if ( ( match = matchExpr[ type ].exec( soFar ) ) && ( !preFilters[ type ] || - ( match = preFilters[ type ]( match ) ) ) ) { - matched = match.shift(); - tokens.push( { - value: matched, - type: type, - matches: match - } ); - soFar = soFar.slice( matched.length ); - } - } - - if ( !matched ) { - break; - } - } - - // Return the length of the invalid excess - // if we're just parsing - // Otherwise, throw an error or return tokens - return parseOnly ? - soFar.length : - soFar ? - Sizzle.error( selector ) : - - // Cache the tokens - tokenCache( selector, groups ).slice( 0 ); -}; - -function toSelector( tokens ) { - var i = 0, - len = tokens.length, - selector = ""; - for ( ; i < len; i++ ) { - selector += tokens[ i ].value; - } - return selector; -} - -function addCombinator( matcher, combinator, base ) { - var dir = combinator.dir, - skip = combinator.next, - key = skip || dir, - checkNonElements = base && key === "parentNode", - doneName = done++; - - return combinator.first ? - - // Check against closest ancestor/preceding element - function( elem, context, xml ) { - while ( ( elem = elem[ dir ] ) ) { - if ( elem.nodeType === 1 || checkNonElements ) { - return matcher( elem, context, xml ); - } - } - return false; - } : - - // Check against all ancestor/preceding elements - function( elem, context, xml ) { - var oldCache, uniqueCache, outerCache, - newCache = [ dirruns, doneName ]; - - // We can't set arbitrary data on XML nodes, so they don't benefit from combinator caching - if ( xml ) { - while ( ( elem = elem[ dir ] ) ) { - if ( elem.nodeType === 1 || checkNonElements ) { - if ( matcher( elem, context, xml ) ) { - return true; - } - } - } - } else { - while ( ( elem = elem[ dir ] ) ) { - if ( elem.nodeType === 1 || checkNonElements ) { - outerCache = elem[ expando ] || ( elem[ expando ] = {} ); - - // Support: IE <9 only - // Defend against cloned attroperties (jQuery gh-1709) - uniqueCache = outerCache[ elem.uniqueID ] || - ( outerCache[ elem.uniqueID ] = {} ); - - if ( skip && skip === elem.nodeName.toLowerCase() ) { - elem = elem[ dir ] || elem; - } else if ( ( oldCache = uniqueCache[ key ] ) && - oldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) { - - // Assign to newCache so results back-propagate to previous elements - return ( newCache[ 2 ] = oldCache[ 2 ] ); - } else { - - // Reuse newcache so results back-propagate to previous elements - uniqueCache[ key ] = newCache; - - // A match means we're done; a fail means we have to keep checking - if ( ( newCache[ 2 ] = matcher( elem, context, xml ) ) ) { - return true; - } - } - } - } - } - return false; - }; -} - -function elementMatcher( matchers ) { - return matchers.length > 1 ? - function( elem, context, xml ) { - var i = matchers.length; - while ( i-- ) { - if ( !matchers[ i ]( elem, context, xml ) ) { - return false; - } - } - return true; - } : - matchers[ 0 ]; -} - -function multipleContexts( selector, contexts, results ) { - var i = 0, - len = contexts.length; - for ( ; i < len; i++ ) { - Sizzle( selector, contexts[ i ], results ); - } - return results; -} - -function condense( unmatched, map, filter, context, xml ) { - var elem, - newUnmatched = [], - i = 0, - len = unmatched.length, - mapped = map != null; - - for ( ; i < len; i++ ) { - if ( ( elem = unmatched[ i ] ) ) { - if ( !filter || filter( elem, context, xml ) ) { - newUnmatched.push( elem ); - if ( mapped ) { - map.push( i ); - } - } - } - } - - return newUnmatched; -} - -function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) { - if ( postFilter && !postFilter[ expando ] ) { - postFilter = setMatcher( postFilter ); - } - if ( postFinder && !postFinder[ expando ] ) { - postFinder = setMatcher( postFinder, postSelector ); - } - return markFunction( function( seed, results, context, xml ) { - var temp, i, elem, - preMap = [], - postMap = [], - preexisting = results.length, - - // Get initial elements from seed or context - elems = seed || multipleContexts( - selector || "*", - context.nodeType ? [ context ] : context, - [] - ), - - // Prefilter to get matcher input, preserving a map for seed-results synchronization - matcherIn = preFilter && ( seed || !selector ) ? - condense( elems, preMap, preFilter, context, xml ) : - elems, - - matcherOut = matcher ? - - // If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results, - postFinder || ( seed ? preFilter : preexisting || postFilter ) ? - - // ...intermediate processing is necessary - [] : - - // ...otherwise use results directly - results : - matcherIn; - - // Find primary matches - if ( matcher ) { - matcher( matcherIn, matcherOut, context, xml ); - } - - // Apply postFilter - if ( postFilter ) { - temp = condense( matcherOut, postMap ); - postFilter( temp, [], context, xml ); - - // Un-match failing elements by moving them back to matcherIn - i = temp.length; - while ( i-- ) { - if ( ( elem = temp[ i ] ) ) { - matcherOut[ postMap[ i ] ] = !( matcherIn[ postMap[ i ] ] = elem ); - } - } - } - - if ( seed ) { - if ( postFinder || preFilter ) { - if ( postFinder ) { - - // Get the final matcherOut by condensing this intermediate into postFinder contexts - temp = []; - i = matcherOut.length; - while ( i-- ) { - if ( ( elem = matcherOut[ i ] ) ) { - - // Restore matcherIn since elem is not yet a final match - temp.push( ( matcherIn[ i ] = elem ) ); - } - } - postFinder( null, ( matcherOut = [] ), temp, xml ); - } - - // Move matched elements from seed to results to keep them synchronized - i = matcherOut.length; - while ( i-- ) { - if ( ( elem = matcherOut[ i ] ) && - ( temp = postFinder ? indexOf( seed, elem ) : preMap[ i ] ) > -1 ) { - - seed[ temp ] = !( results[ temp ] = elem ); - } - } - } - - // Add elements to results, through postFinder if defined - } else { - matcherOut = condense( - matcherOut === results ? - matcherOut.splice( preexisting, matcherOut.length ) : - matcherOut - ); - if ( postFinder ) { - postFinder( null, results, matcherOut, xml ); - } else { - push.apply( results, matcherOut ); - } - } - } ); -} - -function matcherFromTokens( tokens ) { - var checkContext, matcher, j, - len = tokens.length, - leadingRelative = Expr.relative[ tokens[ 0 ].type ], - implicitRelative = leadingRelative || Expr.relative[ " " ], - i = leadingRelative ? 1 : 0, - - // The foundational matcher ensures that elements are reachable from top-level context(s) - matchContext = addCombinator( function( elem ) { - return elem === checkContext; - }, implicitRelative, true ), - matchAnyContext = addCombinator( function( elem ) { - return indexOf( checkContext, elem ) > -1; - }, implicitRelative, true ), - matchers = [ function( elem, context, xml ) { - var ret = ( !leadingRelative && ( xml || context !== outermostContext ) ) || ( - ( checkContext = context ).nodeType ? - matchContext( elem, context, xml ) : - matchAnyContext( elem, context, xml ) ); - - // Avoid hanging onto element (issue #299) - checkContext = null; - return ret; - } ]; - - for ( ; i < len; i++ ) { - if ( ( matcher = Expr.relative[ tokens[ i ].type ] ) ) { - matchers = [ addCombinator( elementMatcher( matchers ), matcher ) ]; - } else { - matcher = Expr.filter[ tokens[ i ].type ].apply( null, tokens[ i ].matches ); - - // Return special upon seeing a positional matcher - if ( matcher[ expando ] ) { - - // Find the next relative operator (if any) for proper handling - j = ++i; - for ( ; j < len; j++ ) { - if ( Expr.relative[ tokens[ j ].type ] ) { - break; - } - } - return setMatcher( - i > 1 && elementMatcher( matchers ), - i > 1 && toSelector( - - // If the preceding token was a descendant combinator, insert an implicit any-element `*` - tokens - .slice( 0, i - 1 ) - .concat( { value: tokens[ i - 2 ].type === " " ? "*" : "" } ) - ).replace( rtrim, "$1" ), - matcher, - i < j && matcherFromTokens( tokens.slice( i, j ) ), - j < len && matcherFromTokens( ( tokens = tokens.slice( j ) ) ), - j < len && toSelector( tokens ) - ); - } - matchers.push( matcher ); - } - } - - return elementMatcher( matchers ); -} - -function matcherFromGroupMatchers( elementMatchers, setMatchers ) { - var bySet = setMatchers.length > 0, - byElement = elementMatchers.length > 0, - superMatcher = function( seed, context, xml, results, outermost ) { - var elem, j, matcher, - matchedCount = 0, - i = "0", - unmatched = seed && [], - setMatched = [], - contextBackup = outermostContext, - - // We must always have either seed elements or outermost context - elems = seed || byElement && Expr.find[ "TAG" ]( "*", outermost ), - - // Use integer dirruns iff this is the outermost matcher - dirrunsUnique = ( dirruns += contextBackup == null ? 1 : Math.random() || 0.1 ), - len = elems.length; - - if ( outermost ) { - - // Support: IE 11+, Edge 17 - 18+ - // IE/Edge sometimes throw a "Permission denied" error when strict-comparing - // two documents; shallow comparisons work. - // eslint-disable-next-line eqeqeq - outermostContext = context == document || context || outermost; - } - - // Add elements passing elementMatchers directly to results - // Support: IE<9, Safari - // Tolerate NodeList properties (IE: "length"; Safari: ) matching elements by id - for ( ; i !== len && ( elem = elems[ i ] ) != null; i++ ) { - if ( byElement && elem ) { - j = 0; - - // Support: IE 11+, Edge 17 - 18+ - // IE/Edge sometimes throw a "Permission denied" error when strict-comparing - // two documents; shallow comparisons work. - // eslint-disable-next-line eqeqeq - if ( !context && elem.ownerDocument != document ) { - setDocument( elem ); - xml = !documentIsHTML; - } - while ( ( matcher = elementMatchers[ j++ ] ) ) { - if ( matcher( elem, context || document, xml ) ) { - results.push( elem ); - break; - } - } - if ( outermost ) { - dirruns = dirrunsUnique; - } - } - - // Track unmatched elements for set filters - if ( bySet ) { - - // They will have gone through all possible matchers - if ( ( elem = !matcher && elem ) ) { - matchedCount--; - } - - // Lengthen the array for every element, matched or not - if ( seed ) { - unmatched.push( elem ); - } - } - } - - // `i` is now the count of elements visited above, and adding it to `matchedCount` - // makes the latter nonnegative. - matchedCount += i; - - // Apply set filters to unmatched elements - // NOTE: This can be skipped if there are no unmatched elements (i.e., `matchedCount` - // equals `i`), unless we didn't visit _any_ elements in the above loop because we have - // no element matchers and no seed. - // Incrementing an initially-string "0" `i` allows `i` to remain a string only in that - // case, which will result in a "00" `matchedCount` that differs from `i` but is also - // numerically zero. - if ( bySet && i !== matchedCount ) { - j = 0; - while ( ( matcher = setMatchers[ j++ ] ) ) { - matcher( unmatched, setMatched, context, xml ); - } - - if ( seed ) { - - // Reintegrate element matches to eliminate the need for sorting - if ( matchedCount > 0 ) { - while ( i-- ) { - if ( !( unmatched[ i ] || setMatched[ i ] ) ) { - setMatched[ i ] = pop.call( results ); - } - } - } - - // Discard index placeholder values to get only actual matches - setMatched = condense( setMatched ); - } - - // Add matches to results - push.apply( results, setMatched ); - - // Seedless set matches succeeding multiple successful matchers stipulate sorting - if ( outermost && !seed && setMatched.length > 0 && - ( matchedCount + setMatchers.length ) > 1 ) { - - Sizzle.uniqueSort( results ); - } - } - - // Override manipulation of globals by nested matchers - if ( outermost ) { - dirruns = dirrunsUnique; - outermostContext = contextBackup; - } - - return unmatched; - }; - - return bySet ? - markFunction( superMatcher ) : - superMatcher; -} - -compile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) { - var i, - setMatchers = [], - elementMatchers = [], - cached = compilerCache[ selector + " " ]; - - if ( !cached ) { - - // Generate a function of recursive functions that can be used to check each element - if ( !match ) { - match = tokenize( selector ); - } - i = match.length; - while ( i-- ) { - cached = matcherFromTokens( match[ i ] ); - if ( cached[ expando ] ) { - setMatchers.push( cached ); - } else { - elementMatchers.push( cached ); - } - } - - // Cache the compiled function - cached = compilerCache( - selector, - matcherFromGroupMatchers( elementMatchers, setMatchers ) - ); - - // Save selector and tokenization - cached.selector = selector; - } - return cached; -}; - -/** - * A low-level selection function that works with Sizzle's compiled - * selector functions - * @param {String|Function} selector A selector or a pre-compiled - * selector function built with Sizzle.compile - * @param {Element} context - * @param {Array} [results] - * @param {Array} [seed] A set of elements to match against - */ -select = Sizzle.select = function( selector, context, results, seed ) { - var i, tokens, token, type, find, - compiled = typeof selector === "function" && selector, - match = !seed && tokenize( ( selector = compiled.selector || selector ) ); - - results = results || []; - - // Try to minimize operations if there is only one selector in the list and no seed - // (the latter of which guarantees us context) - if ( match.length === 1 ) { - - // Reduce context if the leading compound selector is an ID - tokens = match[ 0 ] = match[ 0 ].slice( 0 ); - if ( tokens.length > 2 && ( token = tokens[ 0 ] ).type === "ID" && - context.nodeType === 9 && documentIsHTML && Expr.relative[ tokens[ 1 ].type ] ) { - - context = ( Expr.find[ "ID" ]( token.matches[ 0 ] - .replace( runescape, funescape ), context ) || [] )[ 0 ]; - if ( !context ) { - return results; - - // Precompiled matchers will still verify ancestry, so step up a level - } else if ( compiled ) { - context = context.parentNode; - } - - selector = selector.slice( tokens.shift().value.length ); - } - - // Fetch a seed set for right-to-left matching - i = matchExpr[ "needsContext" ].test( selector ) ? 0 : tokens.length; - while ( i-- ) { - token = tokens[ i ]; - - // Abort if we hit a combinator - if ( Expr.relative[ ( type = token.type ) ] ) { - break; - } - if ( ( find = Expr.find[ type ] ) ) { - - // Search, expanding context for leading sibling combinators - if ( ( seed = find( - token.matches[ 0 ].replace( runescape, funescape ), - rsibling.test( tokens[ 0 ].type ) && testContext( context.parentNode ) || - context - ) ) ) { - - // If seed is empty or no tokens remain, we can return early - tokens.splice( i, 1 ); - selector = seed.length && toSelector( tokens ); - if ( !selector ) { - push.apply( results, seed ); - return results; - } - - break; - } - } - } - } - - // Compile and execute a filtering function if one is not provided - // Provide `match` to avoid retokenization if we modified the selector above - ( compiled || compile( selector, match ) )( - seed, - context, - !documentIsHTML, - results, - !context || rsibling.test( selector ) && testContext( context.parentNode ) || context - ); - return results; -}; - -// One-time assignments - -// Sort stability -support.sortStable = expando.split( "" ).sort( sortOrder ).join( "" ) === expando; - -// Support: Chrome 14-35+ -// Always assume duplicates if they aren't passed to the comparison function -support.detectDuplicates = !!hasDuplicate; - -// Initialize against the default document -setDocument(); - -// Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27) -// Detached nodes confoundingly follow *each other* -support.sortDetached = assert( function( el ) { - - // Should return 1, but returns 4 (following) - return el.compareDocumentPosition( document.createElement( "fieldset" ) ) & 1; -} ); - -// Support: IE<8 -// Prevent attribute/property "interpolation" -// https://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx -if ( !assert( function( el ) { - el.innerHTML = ""; - return el.firstChild.getAttribute( "href" ) === "#"; -} ) ) { - addHandle( "type|href|height|width", function( elem, name, isXML ) { - if ( !isXML ) { - return elem.getAttribute( name, name.toLowerCase() === "type" ? 1 : 2 ); - } - } ); -} - -// Support: IE<9 -// Use defaultValue in place of getAttribute("value") -if ( !support.attributes || !assert( function( el ) { - el.innerHTML = ""; - el.firstChild.setAttribute( "value", "" ); - return el.firstChild.getAttribute( "value" ) === ""; -} ) ) { - addHandle( "value", function( elem, _name, isXML ) { - if ( !isXML && elem.nodeName.toLowerCase() === "input" ) { - return elem.defaultValue; - } - } ); -} - -// Support: IE<9 -// Use getAttributeNode to fetch booleans when getAttribute lies -if ( !assert( function( el ) { - return el.getAttribute( "disabled" ) == null; -} ) ) { - addHandle( booleans, function( elem, name, isXML ) { - var val; - if ( !isXML ) { - return elem[ name ] === true ? name.toLowerCase() : - ( val = elem.getAttributeNode( name ) ) && val.specified ? - val.value : - null; - } - } ); -} - -return Sizzle; - -} )( window ); - - - -jQuery.find = Sizzle; -jQuery.expr = Sizzle.selectors; - -// Deprecated -jQuery.expr[ ":" ] = jQuery.expr.pseudos; -jQuery.uniqueSort = jQuery.unique = Sizzle.uniqueSort; -jQuery.text = Sizzle.getText; -jQuery.isXMLDoc = Sizzle.isXML; -jQuery.contains = Sizzle.contains; -jQuery.escapeSelector = Sizzle.escape; - - - - -var dir = function( elem, dir, until ) { - var matched = [], - truncate = until !== undefined; - - while ( ( elem = elem[ dir ] ) && elem.nodeType !== 9 ) { - if ( elem.nodeType === 1 ) { - if ( truncate && jQuery( elem ).is( until ) ) { - break; - } - matched.push( elem ); - } - } - return matched; -}; - - -var siblings = function( n, elem ) { - var matched = []; - - for ( ; n; n = n.nextSibling ) { - if ( n.nodeType === 1 && n !== elem ) { - matched.push( n ); - } - } - - return matched; -}; - - -var rneedsContext = jQuery.expr.match.needsContext; - - - -function nodeName( elem, name ) { - - return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase(); - -} -var rsingleTag = ( /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i ); - - - -// Implement the identical functionality for filter and not -function winnow( elements, qualifier, not ) { - if ( isFunction( qualifier ) ) { - return jQuery.grep( elements, function( elem, i ) { - return !!qualifier.call( elem, i, elem ) !== not; - } ); - } - - // Single element - if ( qualifier.nodeType ) { - return jQuery.grep( elements, function( elem ) { - return ( elem === qualifier ) !== not; - } ); - } - - // Arraylike of elements (jQuery, arguments, Array) - if ( typeof qualifier !== "string" ) { - return jQuery.grep( elements, function( elem ) { - return ( indexOf.call( qualifier, elem ) > -1 ) !== not; - } ); - } - - // Filtered directly for both simple and complex selectors - return jQuery.filter( qualifier, elements, not ); -} - -jQuery.filter = function( expr, elems, not ) { - var elem = elems[ 0 ]; - - if ( not ) { - expr = ":not(" + expr + ")"; - } - - if ( elems.length === 1 && elem.nodeType === 1 ) { - return jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : []; - } - - return jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) { - return elem.nodeType === 1; - } ) ); -}; - -jQuery.fn.extend( { - find: function( selector ) { - var i, ret, - len = this.length, - self = this; - - if ( typeof selector !== "string" ) { - return this.pushStack( jQuery( selector ).filter( function() { - for ( i = 0; i < len; i++ ) { - if ( jQuery.contains( self[ i ], this ) ) { - return true; - } - } - } ) ); - } - - ret = this.pushStack( [] ); - - for ( i = 0; i < len; i++ ) { - jQuery.find( selector, self[ i ], ret ); - } - - return len > 1 ? jQuery.uniqueSort( ret ) : ret; - }, - filter: function( selector ) { - return this.pushStack( winnow( this, selector || [], false ) ); - }, - not: function( selector ) { - return this.pushStack( winnow( this, selector || [], true ) ); - }, - is: function( selector ) { - return !!winnow( - this, - - // If this is a positional/relative selector, check membership in the returned set - // so $("p:first").is("p:last") won't return true for a doc with two "p". - typeof selector === "string" && rneedsContext.test( selector ) ? - jQuery( selector ) : - selector || [], - false - ).length; - } -} ); - - -// Initialize a jQuery object - - -// A central reference to the root jQuery(document) -var rootjQuery, - - // A simple way to check for HTML strings - // Prioritize #id over to avoid XSS via location.hash (#9521) - // Strict HTML recognition (#11290: must start with <) - // Shortcut simple #id case for speed - rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/, - - init = jQuery.fn.init = function( selector, context, root ) { - var match, elem; - - // HANDLE: $(""), $(null), $(undefined), $(false) - if ( !selector ) { - return this; - } - - // Method init() accepts an alternate rootjQuery - // so migrate can support jQuery.sub (gh-2101) - root = root || rootjQuery; - - // Handle HTML strings - if ( typeof selector === "string" ) { - if ( selector[ 0 ] === "<" && - selector[ selector.length - 1 ] === ">" && - selector.length >= 3 ) { - - // Assume that strings that start and end with <> are HTML and skip the regex check - match = [ null, selector, null ]; - - } else { - match = rquickExpr.exec( selector ); - } - - // Match html or make sure no context is specified for #id - if ( match && ( match[ 1 ] || !context ) ) { - - // HANDLE: $(html) -> $(array) - if ( match[ 1 ] ) { - context = context instanceof jQuery ? context[ 0 ] : context; - - // Option to run scripts is true for back-compat - // Intentionally let the error be thrown if parseHTML is not present - jQuery.merge( this, jQuery.parseHTML( - match[ 1 ], - context && context.nodeType ? context.ownerDocument || context : document, - true - ) ); - - // HANDLE: $(html, props) - if ( rsingleTag.test( match[ 1 ] ) && jQuery.isPlainObject( context ) ) { - for ( match in context ) { - - // Properties of context are called as methods if possible - if ( isFunction( this[ match ] ) ) { - this[ match ]( context[ match ] ); - - // ...and otherwise set as attributes - } else { - this.attr( match, context[ match ] ); - } - } - } - - return this; - - // HANDLE: $(#id) - } else { - elem = document.getElementById( match[ 2 ] ); - - if ( elem ) { - - // Inject the element directly into the jQuery object - this[ 0 ] = elem; - this.length = 1; - } - return this; - } - - // HANDLE: $(expr, $(...)) - } else if ( !context || context.jquery ) { - return ( context || root ).find( selector ); - - // HANDLE: $(expr, context) - // (which is just equivalent to: $(context).find(expr) - } else { - return this.constructor( context ).find( selector ); - } - - // HANDLE: $(DOMElement) - } else if ( selector.nodeType ) { - this[ 0 ] = selector; - this.length = 1; - return this; - - // HANDLE: $(function) - // Shortcut for document ready - } else if ( isFunction( selector ) ) { - return root.ready !== undefined ? - root.ready( selector ) : - - // Execute immediately if ready is not present - selector( jQuery ); - } - - return jQuery.makeArray( selector, this ); - }; - -// Give the init function the jQuery prototype for later instantiation -init.prototype = jQuery.fn; - -// Initialize central reference -rootjQuery = jQuery( document ); - - -var rparentsprev = /^(?:parents|prev(?:Until|All))/, - - // Methods guaranteed to produce a unique set when starting from a unique set - guaranteedUnique = { - children: true, - contents: true, - next: true, - prev: true - }; - -jQuery.fn.extend( { - has: function( target ) { - var targets = jQuery( target, this ), - l = targets.length; - - return this.filter( function() { - var i = 0; - for ( ; i < l; i++ ) { - if ( jQuery.contains( this, targets[ i ] ) ) { - return true; - } - } - } ); - }, - - closest: function( selectors, context ) { - var cur, - i = 0, - l = this.length, - matched = [], - targets = typeof selectors !== "string" && jQuery( selectors ); - - // Positional selectors never match, since there's no _selection_ context - if ( !rneedsContext.test( selectors ) ) { - for ( ; i < l; i++ ) { - for ( cur = this[ i ]; cur && cur !== context; cur = cur.parentNode ) { - - // Always skip document fragments - if ( cur.nodeType < 11 && ( targets ? - targets.index( cur ) > -1 : - - // Don't pass non-elements to Sizzle - cur.nodeType === 1 && - jQuery.find.matchesSelector( cur, selectors ) ) ) { - - matched.push( cur ); - break; - } - } - } - } - - return this.pushStack( matched.length > 1 ? jQuery.uniqueSort( matched ) : matched ); - }, - - // Determine the position of an element within the set - index: function( elem ) { - - // No argument, return index in parent - if ( !elem ) { - return ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1; - } - - // Index in selector - if ( typeof elem === "string" ) { - return indexOf.call( jQuery( elem ), this[ 0 ] ); - } - - // Locate the position of the desired element - return indexOf.call( this, - - // If it receives a jQuery object, the first element is used - elem.jquery ? elem[ 0 ] : elem - ); - }, - - add: function( selector, context ) { - return this.pushStack( - jQuery.uniqueSort( - jQuery.merge( this.get(), jQuery( selector, context ) ) - ) - ); - }, - - addBack: function( selector ) { - return this.add( selector == null ? - this.prevObject : this.prevObject.filter( selector ) - ); - } -} ); - -function sibling( cur, dir ) { - while ( ( cur = cur[ dir ] ) && cur.nodeType !== 1 ) {} - return cur; -} - -jQuery.each( { - parent: function( elem ) { - var parent = elem.parentNode; - return parent && parent.nodeType !== 11 ? parent : null; - }, - parents: function( elem ) { - return dir( elem, "parentNode" ); - }, - parentsUntil: function( elem, _i, until ) { - return dir( elem, "parentNode", until ); - }, - next: function( elem ) { - return sibling( elem, "nextSibling" ); - }, - prev: function( elem ) { - return sibling( elem, "previousSibling" ); - }, - nextAll: function( elem ) { - return dir( elem, "nextSibling" ); - }, - prevAll: function( elem ) { - return dir( elem, "previousSibling" ); - }, - nextUntil: function( elem, _i, until ) { - return dir( elem, "nextSibling", until ); - }, - prevUntil: function( elem, _i, until ) { - return dir( elem, "previousSibling", until ); - }, - siblings: function( elem ) { - return siblings( ( elem.parentNode || {} ).firstChild, elem ); - }, - children: function( elem ) { - return siblings( elem.firstChild ); - }, - contents: function( elem ) { - if ( elem.contentDocument != null && - - // Support: IE 11+ - // elements with no `data` attribute has an object - // `contentDocument` with a `null` prototype. - getProto( elem.contentDocument ) ) { - - return elem.contentDocument; - } - - // Support: IE 9 - 11 only, iOS 7 only, Android Browser <=4.3 only - // Treat the template element as a regular one in browsers that - // don't support it. - if ( nodeName( elem, "template" ) ) { - elem = elem.content || elem; - } - - return jQuery.merge( [], elem.childNodes ); - } -}, function( name, fn ) { - jQuery.fn[ name ] = function( until, selector ) { - var matched = jQuery.map( this, fn, until ); - - if ( name.slice( -5 ) !== "Until" ) { - selector = until; - } - - if ( selector && typeof selector === "string" ) { - matched = jQuery.filter( selector, matched ); - } - - if ( this.length > 1 ) { - - // Remove duplicates - if ( !guaranteedUnique[ name ] ) { - jQuery.uniqueSort( matched ); - } - - // Reverse order for parents* and prev-derivatives - if ( rparentsprev.test( name ) ) { - matched.reverse(); - } - } - - return this.pushStack( matched ); - }; -} ); -var rnothtmlwhite = ( /[^\x20\t\r\n\f]+/g ); - - - -// Convert String-formatted options into Object-formatted ones -function createOptions( options ) { - var object = {}; - jQuery.each( options.match( rnothtmlwhite ) || [], function( _, flag ) { - object[ flag ] = true; - } ); - return object; -} - -/* - * Create a callback list using the following parameters: - * - * options: an optional list of space-separated options that will change how - * the callback list behaves or a more traditional option object - * - * By default a callback list will act like an event callback list and can be - * "fired" multiple times. - * - * Possible options: - * - * once: will ensure the callback list can only be fired once (like a Deferred) - * - * memory: will keep track of previous values and will call any callback added - * after the list has been fired right away with the latest "memorized" - * values (like a Deferred) - * - * unique: will ensure a callback can only be added once (no duplicate in the list) - * - * stopOnFalse: interrupt callings when a callback returns false - * - */ -jQuery.Callbacks = function( options ) { - - // Convert options from String-formatted to Object-formatted if needed - // (we check in cache first) - options = typeof options === "string" ? - createOptions( options ) : - jQuery.extend( {}, options ); - - var // Flag to know if list is currently firing - firing, - - // Last fire value for non-forgettable lists - memory, - - // Flag to know if list was already fired - fired, - - // Flag to prevent firing - locked, - - // Actual callback list - list = [], - - // Queue of execution data for repeatable lists - queue = [], - - // Index of currently firing callback (modified by add/remove as needed) - firingIndex = -1, - - // Fire callbacks - fire = function() { - - // Enforce single-firing - locked = locked || options.once; - - // Execute callbacks for all pending executions, - // respecting firingIndex overrides and runtime changes - fired = firing = true; - for ( ; queue.length; firingIndex = -1 ) { - memory = queue.shift(); - while ( ++firingIndex < list.length ) { - - // Run callback and check for early termination - if ( list[ firingIndex ].apply( memory[ 0 ], memory[ 1 ] ) === false && - options.stopOnFalse ) { - - // Jump to end and forget the data so .add doesn't re-fire - firingIndex = list.length; - memory = false; - } - } - } - - // Forget the data if we're done with it - if ( !options.memory ) { - memory = false; - } - - firing = false; - - // Clean up if we're done firing for good - if ( locked ) { - - // Keep an empty list if we have data for future add calls - if ( memory ) { - list = []; - - // Otherwise, this object is spent - } else { - list = ""; - } - } - }, - - // Actual Callbacks object - self = { - - // Add a callback or a collection of callbacks to the list - add: function() { - if ( list ) { - - // If we have memory from a past run, we should fire after adding - if ( memory && !firing ) { - firingIndex = list.length - 1; - queue.push( memory ); - } - - ( function add( args ) { - jQuery.each( args, function( _, arg ) { - if ( isFunction( arg ) ) { - if ( !options.unique || !self.has( arg ) ) { - list.push( arg ); - } - } else if ( arg && arg.length && toType( arg ) !== "string" ) { - - // Inspect recursively - add( arg ); - } - } ); - } )( arguments ); - - if ( memory && !firing ) { - fire(); - } - } - return this; - }, - - // Remove a callback from the list - remove: function() { - jQuery.each( arguments, function( _, arg ) { - var index; - while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) { - list.splice( index, 1 ); - - // Handle firing indexes - if ( index <= firingIndex ) { - firingIndex--; - } - } - } ); - return this; - }, - - // Check if a given callback is in the list. - // If no argument is given, return whether or not list has callbacks attached. - has: function( fn ) { - return fn ? - jQuery.inArray( fn, list ) > -1 : - list.length > 0; - }, - - // Remove all callbacks from the list - empty: function() { - if ( list ) { - list = []; - } - return this; - }, - - // Disable .fire and .add - // Abort any current/pending executions - // Clear all callbacks and values - disable: function() { - locked = queue = []; - list = memory = ""; - return this; - }, - disabled: function() { - return !list; - }, - - // Disable .fire - // Also disable .add unless we have memory (since it would have no effect) - // Abort any pending executions - lock: function() { - locked = queue = []; - if ( !memory && !firing ) { - list = memory = ""; - } - return this; - }, - locked: function() { - return !!locked; - }, - - // Call all callbacks with the given context and arguments - fireWith: function( context, args ) { - if ( !locked ) { - args = args || []; - args = [ context, args.slice ? args.slice() : args ]; - queue.push( args ); - if ( !firing ) { - fire(); - } - } - return this; - }, - - // Call all the callbacks with the given arguments - fire: function() { - self.fireWith( this, arguments ); - return this; - }, - - // To know if the callbacks have already been called at least once - fired: function() { - return !!fired; - } - }; - - return self; -}; - - -function Identity( v ) { - return v; -} -function Thrower( ex ) { - throw ex; -} - -function adoptValue( value, resolve, reject, noValue ) { - var method; - - try { - - // Check for promise aspect first to privilege synchronous behavior - if ( value && isFunction( ( method = value.promise ) ) ) { - method.call( value ).done( resolve ).fail( reject ); - - // Other thenables - } else if ( value && isFunction( ( method = value.then ) ) ) { - method.call( value, resolve, reject ); - - // Other non-thenables - } else { - - // Control `resolve` arguments by letting Array#slice cast boolean `noValue` to integer: - // * false: [ value ].slice( 0 ) => resolve( value ) - // * true: [ value ].slice( 1 ) => resolve() - resolve.apply( undefined, [ value ].slice( noValue ) ); - } - - // For Promises/A+, convert exceptions into rejections - // Since jQuery.when doesn't unwrap thenables, we can skip the extra checks appearing in - // Deferred#then to conditionally suppress rejection. - } catch ( value ) { - - // Support: Android 4.0 only - // Strict mode functions invoked without .call/.apply get global-object context - reject.apply( undefined, [ value ] ); - } -} - -jQuery.extend( { - - Deferred: function( func ) { - var tuples = [ - - // action, add listener, callbacks, - // ... .then handlers, argument index, [final state] - [ "notify", "progress", jQuery.Callbacks( "memory" ), - jQuery.Callbacks( "memory" ), 2 ], - [ "resolve", "done", jQuery.Callbacks( "once memory" ), - jQuery.Callbacks( "once memory" ), 0, "resolved" ], - [ "reject", "fail", jQuery.Callbacks( "once memory" ), - jQuery.Callbacks( "once memory" ), 1, "rejected" ] - ], - state = "pending", - promise = { - state: function() { - return state; - }, - always: function() { - deferred.done( arguments ).fail( arguments ); - return this; - }, - "catch": function( fn ) { - return promise.then( null, fn ); - }, - - // Keep pipe for back-compat - pipe: function( /* fnDone, fnFail, fnProgress */ ) { - var fns = arguments; - - return jQuery.Deferred( function( newDefer ) { - jQuery.each( tuples, function( _i, tuple ) { - - // Map tuples (progress, done, fail) to arguments (done, fail, progress) - var fn = isFunction( fns[ tuple[ 4 ] ] ) && fns[ tuple[ 4 ] ]; - - // deferred.progress(function() { bind to newDefer or newDefer.notify }) - // deferred.done(function() { bind to newDefer or newDefer.resolve }) - // deferred.fail(function() { bind to newDefer or newDefer.reject }) - deferred[ tuple[ 1 ] ]( function() { - var returned = fn && fn.apply( this, arguments ); - if ( returned && isFunction( returned.promise ) ) { - returned.promise() - .progress( newDefer.notify ) - .done( newDefer.resolve ) - .fail( newDefer.reject ); - } else { - newDefer[ tuple[ 0 ] + "With" ]( - this, - fn ? [ returned ] : arguments - ); - } - } ); - } ); - fns = null; - } ).promise(); - }, - then: function( onFulfilled, onRejected, onProgress ) { - var maxDepth = 0; - function resolve( depth, deferred, handler, special ) { - return function() { - var that = this, - args = arguments, - mightThrow = function() { - var returned, then; - - // Support: Promises/A+ section 2.3.3.3.3 - // https://promisesaplus.com/#point-59 - // Ignore double-resolution attempts - if ( depth < maxDepth ) { - return; - } - - returned = handler.apply( that, args ); - - // Support: Promises/A+ section 2.3.1 - // https://promisesaplus.com/#point-48 - if ( returned === deferred.promise() ) { - throw new TypeError( "Thenable self-resolution" ); - } - - // Support: Promises/A+ sections 2.3.3.1, 3.5 - // https://promisesaplus.com/#point-54 - // https://promisesaplus.com/#point-75 - // Retrieve `then` only once - then = returned && - - // Support: Promises/A+ section 2.3.4 - // https://promisesaplus.com/#point-64 - // Only check objects and functions for thenability - ( typeof returned === "object" || - typeof returned === "function" ) && - returned.then; - - // Handle a returned thenable - if ( isFunction( then ) ) { - - // Special processors (notify) just wait for resolution - if ( special ) { - then.call( - returned, - resolve( maxDepth, deferred, Identity, special ), - resolve( maxDepth, deferred, Thrower, special ) - ); - - // Normal processors (resolve) also hook into progress - } else { - - // ...and disregard older resolution values - maxDepth++; - - then.call( - returned, - resolve( maxDepth, deferred, Identity, special ), - resolve( maxDepth, deferred, Thrower, special ), - resolve( maxDepth, deferred, Identity, - deferred.notifyWith ) - ); - } - - // Handle all other returned values - } else { - - // Only substitute handlers pass on context - // and multiple values (non-spec behavior) - if ( handler !== Identity ) { - that = undefined; - args = [ returned ]; - } - - // Process the value(s) - // Default process is resolve - ( special || deferred.resolveWith )( that, args ); - } - }, - - // Only normal processors (resolve) catch and reject exceptions - process = special ? - mightThrow : - function() { - try { - mightThrow(); - } catch ( e ) { - - if ( jQuery.Deferred.exceptionHook ) { - jQuery.Deferred.exceptionHook( e, - process.stackTrace ); - } - - // Support: Promises/A+ section 2.3.3.3.4.1 - // https://promisesaplus.com/#point-61 - // Ignore post-resolution exceptions - if ( depth + 1 >= maxDepth ) { - - // Only substitute handlers pass on context - // and multiple values (non-spec behavior) - if ( handler !== Thrower ) { - that = undefined; - args = [ e ]; - } - - deferred.rejectWith( that, args ); - } - } - }; - - // Support: Promises/A+ section 2.3.3.3.1 - // https://promisesaplus.com/#point-57 - // Re-resolve promises immediately to dodge false rejection from - // subsequent errors - if ( depth ) { - process(); - } else { - - // Call an optional hook to record the stack, in case of exception - // since it's otherwise lost when execution goes async - if ( jQuery.Deferred.getStackHook ) { - process.stackTrace = jQuery.Deferred.getStackHook(); - } - window.setTimeout( process ); - } - }; - } - - return jQuery.Deferred( function( newDefer ) { - - // progress_handlers.add( ... ) - tuples[ 0 ][ 3 ].add( - resolve( - 0, - newDefer, - isFunction( onProgress ) ? - onProgress : - Identity, - newDefer.notifyWith - ) - ); - - // fulfilled_handlers.add( ... ) - tuples[ 1 ][ 3 ].add( - resolve( - 0, - newDefer, - isFunction( onFulfilled ) ? - onFulfilled : - Identity - ) - ); - - // rejected_handlers.add( ... ) - tuples[ 2 ][ 3 ].add( - resolve( - 0, - newDefer, - isFunction( onRejected ) ? - onRejected : - Thrower - ) - ); - } ).promise(); - }, - - // Get a promise for this deferred - // If obj is provided, the promise aspect is added to the object - promise: function( obj ) { - return obj != null ? jQuery.extend( obj, promise ) : promise; - } - }, - deferred = {}; - - // Add list-specific methods - jQuery.each( tuples, function( i, tuple ) { - var list = tuple[ 2 ], - stateString = tuple[ 5 ]; - - // promise.progress = list.add - // promise.done = list.add - // promise.fail = list.add - promise[ tuple[ 1 ] ] = list.add; - - // Handle state - if ( stateString ) { - list.add( - function() { - - // state = "resolved" (i.e., fulfilled) - // state = "rejected" - state = stateString; - }, - - // rejected_callbacks.disable - // fulfilled_callbacks.disable - tuples[ 3 - i ][ 2 ].disable, - - // rejected_handlers.disable - // fulfilled_handlers.disable - tuples[ 3 - i ][ 3 ].disable, - - // progress_callbacks.lock - tuples[ 0 ][ 2 ].lock, - - // progress_handlers.lock - tuples[ 0 ][ 3 ].lock - ); - } - - // progress_handlers.fire - // fulfilled_handlers.fire - // rejected_handlers.fire - list.add( tuple[ 3 ].fire ); - - // deferred.notify = function() { deferred.notifyWith(...) } - // deferred.resolve = function() { deferred.resolveWith(...) } - // deferred.reject = function() { deferred.rejectWith(...) } - deferred[ tuple[ 0 ] ] = function() { - deferred[ tuple[ 0 ] + "With" ]( this === deferred ? undefined : this, arguments ); - return this; - }; - - // deferred.notifyWith = list.fireWith - // deferred.resolveWith = list.fireWith - // deferred.rejectWith = list.fireWith - deferred[ tuple[ 0 ] + "With" ] = list.fireWith; - } ); - - // Make the deferred a promise - promise.promise( deferred ); - - // Call given func if any - if ( func ) { - func.call( deferred, deferred ); - } - - // All done! - return deferred; - }, - - // Deferred helper - when: function( singleValue ) { - var - - // count of uncompleted subordinates - remaining = arguments.length, - - // count of unprocessed arguments - i = remaining, - - // subordinate fulfillment data - resolveContexts = Array( i ), - resolveValues = slice.call( arguments ), - - // the primary Deferred - primary = jQuery.Deferred(), - - // subordinate callback factory - updateFunc = function( i ) { - return function( value ) { - resolveContexts[ i ] = this; - resolveValues[ i ] = arguments.length > 1 ? slice.call( arguments ) : value; - if ( !( --remaining ) ) { - primary.resolveWith( resolveContexts, resolveValues ); - } - }; - }; - - // Single- and empty arguments are adopted like Promise.resolve - if ( remaining <= 1 ) { - adoptValue( singleValue, primary.done( updateFunc( i ) ).resolve, primary.reject, - !remaining ); - - // Use .then() to unwrap secondary thenables (cf. gh-3000) - if ( primary.state() === "pending" || - isFunction( resolveValues[ i ] && resolveValues[ i ].then ) ) { - - return primary.then(); - } - } - - // Multiple arguments are aggregated like Promise.all array elements - while ( i-- ) { - adoptValue( resolveValues[ i ], updateFunc( i ), primary.reject ); - } - - return primary.promise(); - } -} ); - - -// These usually indicate a programmer mistake during development, -// warn about them ASAP rather than swallowing them by default. -var rerrorNames = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/; - -jQuery.Deferred.exceptionHook = function( error, stack ) { - - // Support: IE 8 - 9 only - // Console exists when dev tools are open, which can happen at any time - if ( window.console && window.console.warn && error && rerrorNames.test( error.name ) ) { - window.console.warn( "jQuery.Deferred exception: " + error.message, error.stack, stack ); - } -}; - - - - -jQuery.readyException = function( error ) { - window.setTimeout( function() { - throw error; - } ); -}; - - - - -// The deferred used on DOM ready -var readyList = jQuery.Deferred(); - -jQuery.fn.ready = function( fn ) { - - readyList - .then( fn ) - - // Wrap jQuery.readyException in a function so that the lookup - // happens at the time of error handling instead of callback - // registration. - .catch( function( error ) { - jQuery.readyException( error ); - } ); - - return this; -}; - -jQuery.extend( { - - // Is the DOM ready to be used? Set to true once it occurs. - isReady: false, - - // A counter to track how many items to wait for before - // the ready event fires. See #6781 - readyWait: 1, - - // Handle when the DOM is ready - ready: function( wait ) { - - // Abort if there are pending holds or we're already ready - if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) { - return; - } - - // Remember that the DOM is ready - jQuery.isReady = true; - - // If a normal DOM Ready event fired, decrement, and wait if need be - if ( wait !== true && --jQuery.readyWait > 0 ) { - return; - } - - // If there are functions bound, to execute - readyList.resolveWith( document, [ jQuery ] ); - } -} ); - -jQuery.ready.then = readyList.then; - -// The ready event handler and self cleanup method -function completed() { - document.removeEventListener( "DOMContentLoaded", completed ); - window.removeEventListener( "load", completed ); - jQuery.ready(); -} - -// Catch cases where $(document).ready() is called -// after the browser event has already occurred. -// Support: IE <=9 - 10 only -// Older IE sometimes signals "interactive" too soon -if ( document.readyState === "complete" || - ( document.readyState !== "loading" && !document.documentElement.doScroll ) ) { - - // Handle it asynchronously to allow scripts the opportunity to delay ready - window.setTimeout( jQuery.ready ); - -} else { - - // Use the handy event callback - document.addEventListener( "DOMContentLoaded", completed ); - - // A fallback to window.onload, that will always work - window.addEventListener( "load", completed ); -} - - - - -// Multifunctional method to get and set values of a collection -// The value/s can optionally be executed if it's a function -var access = function( elems, fn, key, value, chainable, emptyGet, raw ) { - var i = 0, - len = elems.length, - bulk = key == null; - - // Sets many values - if ( toType( key ) === "object" ) { - chainable = true; - for ( i in key ) { - access( elems, fn, i, key[ i ], true, emptyGet, raw ); - } - - // Sets one value - } else if ( value !== undefined ) { - chainable = true; - - if ( !isFunction( value ) ) { - raw = true; - } - - if ( bulk ) { - - // Bulk operations run against the entire set - if ( raw ) { - fn.call( elems, value ); - fn = null; - - // ...except when executing function values - } else { - bulk = fn; - fn = function( elem, _key, value ) { - return bulk.call( jQuery( elem ), value ); - }; - } - } - - if ( fn ) { - for ( ; i < len; i++ ) { - fn( - elems[ i ], key, raw ? - value : - value.call( elems[ i ], i, fn( elems[ i ], key ) ) - ); - } - } - } - - if ( chainable ) { - return elems; - } - - // Gets - if ( bulk ) { - return fn.call( elems ); - } - - return len ? fn( elems[ 0 ], key ) : emptyGet; -}; - - -// Matches dashed string for camelizing -var rmsPrefix = /^-ms-/, - rdashAlpha = /-([a-z])/g; - -// Used by camelCase as callback to replace() -function fcamelCase( _all, letter ) { - return letter.toUpperCase(); -} - -// Convert dashed to camelCase; used by the css and data modules -// Support: IE <=9 - 11, Edge 12 - 15 -// Microsoft forgot to hump their vendor prefix (#9572) -function camelCase( string ) { - return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase ); -} -var acceptData = function( owner ) { - - // Accepts only: - // - Node - // - Node.ELEMENT_NODE - // - Node.DOCUMENT_NODE - // - Object - // - Any - return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType ); -}; - - - - -function Data() { - this.expando = jQuery.expando + Data.uid++; -} - -Data.uid = 1; - -Data.prototype = { - - cache: function( owner ) { - - // Check if the owner object already has a cache - var value = owner[ this.expando ]; - - // If not, create one - if ( !value ) { - value = {}; - - // We can accept data for non-element nodes in modern browsers, - // but we should not, see #8335. - // Always return an empty object. - if ( acceptData( owner ) ) { - - // If it is a node unlikely to be stringify-ed or looped over - // use plain assignment - if ( owner.nodeType ) { - owner[ this.expando ] = value; - - // Otherwise secure it in a non-enumerable property - // configurable must be true to allow the property to be - // deleted when data is removed - } else { - Object.defineProperty( owner, this.expando, { - value: value, - configurable: true - } ); - } - } - } - - return value; - }, - set: function( owner, data, value ) { - var prop, - cache = this.cache( owner ); - - // Handle: [ owner, key, value ] args - // Always use camelCase key (gh-2257) - if ( typeof data === "string" ) { - cache[ camelCase( data ) ] = value; - - // Handle: [ owner, { properties } ] args - } else { - - // Copy the properties one-by-one to the cache object - for ( prop in data ) { - cache[ camelCase( prop ) ] = data[ prop ]; - } - } - return cache; - }, - get: function( owner, key ) { - return key === undefined ? - this.cache( owner ) : - - // Always use camelCase key (gh-2257) - owner[ this.expando ] && owner[ this.expando ][ camelCase( key ) ]; - }, - access: function( owner, key, value ) { - - // In cases where either: - // - // 1. No key was specified - // 2. A string key was specified, but no value provided - // - // Take the "read" path and allow the get method to determine - // which value to return, respectively either: - // - // 1. The entire cache object - // 2. The data stored at the key - // - if ( key === undefined || - ( ( key && typeof key === "string" ) && value === undefined ) ) { - - return this.get( owner, key ); - } - - // When the key is not a string, or both a key and value - // are specified, set or extend (existing objects) with either: - // - // 1. An object of properties - // 2. A key and value - // - this.set( owner, key, value ); - - // Since the "set" path can have two possible entry points - // return the expected data based on which path was taken[*] - return value !== undefined ? value : key; - }, - remove: function( owner, key ) { - var i, - cache = owner[ this.expando ]; - - if ( cache === undefined ) { - return; - } - - if ( key !== undefined ) { - - // Support array or space separated string of keys - if ( Array.isArray( key ) ) { - - // If key is an array of keys... - // We always set camelCase keys, so remove that. - key = key.map( camelCase ); - } else { - key = camelCase( key ); - - // If a key with the spaces exists, use it. - // Otherwise, create an array by matching non-whitespace - key = key in cache ? - [ key ] : - ( key.match( rnothtmlwhite ) || [] ); - } - - i = key.length; - - while ( i-- ) { - delete cache[ key[ i ] ]; - } - } - - // Remove the expando if there's no more data - if ( key === undefined || jQuery.isEmptyObject( cache ) ) { - - // Support: Chrome <=35 - 45 - // Webkit & Blink performance suffers when deleting properties - // from DOM nodes, so set to undefined instead - // https://bugs.chromium.org/p/chromium/issues/detail?id=378607 (bug restricted) - if ( owner.nodeType ) { - owner[ this.expando ] = undefined; - } else { - delete owner[ this.expando ]; - } - } - }, - hasData: function( owner ) { - var cache = owner[ this.expando ]; - return cache !== undefined && !jQuery.isEmptyObject( cache ); - } -}; -var dataPriv = new Data(); - -var dataUser = new Data(); - - - -// Implementation Summary -// -// 1. Enforce API surface and semantic compatibility with 1.9.x branch -// 2. Improve the module's maintainability by reducing the storage -// paths to a single mechanism. -// 3. Use the same single mechanism to support "private" and "user" data. -// 4. _Never_ expose "private" data to user code (TODO: Drop _data, _removeData) -// 5. Avoid exposing implementation details on user objects (eg. expando properties) -// 6. Provide a clear path for implementation upgrade to WeakMap in 2014 - -var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, - rmultiDash = /[A-Z]/g; - -function getData( data ) { - if ( data === "true" ) { - return true; - } - - if ( data === "false" ) { - return false; - } - - if ( data === "null" ) { - return null; - } - - // Only convert to a number if it doesn't change the string - if ( data === +data + "" ) { - return +data; - } - - if ( rbrace.test( data ) ) { - return JSON.parse( data ); - } - - return data; -} - -function dataAttr( elem, key, data ) { - var name; - - // If nothing was found internally, try to fetch any - // data from the HTML5 data-* attribute - if ( data === undefined && elem.nodeType === 1 ) { - name = "data-" + key.replace( rmultiDash, "-$&" ).toLowerCase(); - data = elem.getAttribute( name ); - - if ( typeof data === "string" ) { - try { - data = getData( data ); - } catch ( e ) {} - - // Make sure we set the data so it isn't changed later - dataUser.set( elem, key, data ); - } else { - data = undefined; - } - } - return data; -} - -jQuery.extend( { - hasData: function( elem ) { - return dataUser.hasData( elem ) || dataPriv.hasData( elem ); - }, - - data: function( elem, name, data ) { - return dataUser.access( elem, name, data ); - }, - - removeData: function( elem, name ) { - dataUser.remove( elem, name ); - }, - - // TODO: Now that all calls to _data and _removeData have been replaced - // with direct calls to dataPriv methods, these can be deprecated. - _data: function( elem, name, data ) { - return dataPriv.access( elem, name, data ); - }, - - _removeData: function( elem, name ) { - dataPriv.remove( elem, name ); - } -} ); - -jQuery.fn.extend( { - data: function( key, value ) { - var i, name, data, - elem = this[ 0 ], - attrs = elem && elem.attributes; - - // Gets all values - if ( key === undefined ) { - if ( this.length ) { - data = dataUser.get( elem ); - - if ( elem.nodeType === 1 && !dataPriv.get( elem, "hasDataAttrs" ) ) { - i = attrs.length; - while ( i-- ) { - - // Support: IE 11 only - // The attrs elements can be null (#14894) - if ( attrs[ i ] ) { - name = attrs[ i ].name; - if ( name.indexOf( "data-" ) === 0 ) { - name = camelCase( name.slice( 5 ) ); - dataAttr( elem, name, data[ name ] ); - } - } - } - dataPriv.set( elem, "hasDataAttrs", true ); - } - } - - return data; - } - - // Sets multiple values - if ( typeof key === "object" ) { - return this.each( function() { - dataUser.set( this, key ); - } ); - } - - return access( this, function( value ) { - var data; - - // The calling jQuery object (element matches) is not empty - // (and therefore has an element appears at this[ 0 ]) and the - // `value` parameter was not undefined. An empty jQuery object - // will result in `undefined` for elem = this[ 0 ] which will - // throw an exception if an attempt to read a data cache is made. - if ( elem && value === undefined ) { - - // Attempt to get data from the cache - // The key will always be camelCased in Data - data = dataUser.get( elem, key ); - if ( data !== undefined ) { - return data; - } - - // Attempt to "discover" the data in - // HTML5 custom data-* attrs - data = dataAttr( elem, key ); - if ( data !== undefined ) { - return data; - } - - // We tried really hard, but the data doesn't exist. - return; - } - - // Set the data... - this.each( function() { - - // We always store the camelCased key - dataUser.set( this, key, value ); - } ); - }, null, value, arguments.length > 1, null, true ); - }, - - removeData: function( key ) { - return this.each( function() { - dataUser.remove( this, key ); - } ); - } -} ); - - -jQuery.extend( { - queue: function( elem, type, data ) { - var queue; - - if ( elem ) { - type = ( type || "fx" ) + "queue"; - queue = dataPriv.get( elem, type ); - - // Speed up dequeue by getting out quickly if this is just a lookup - if ( data ) { - if ( !queue || Array.isArray( data ) ) { - queue = dataPriv.access( elem, type, jQuery.makeArray( data ) ); - } else { - queue.push( data ); - } - } - return queue || []; - } - }, - - dequeue: function( elem, type ) { - type = type || "fx"; - - var queue = jQuery.queue( elem, type ), - startLength = queue.length, - fn = queue.shift(), - hooks = jQuery._queueHooks( elem, type ), - next = function() { - jQuery.dequeue( elem, type ); - }; - - // If the fx queue is dequeued, always remove the progress sentinel - if ( fn === "inprogress" ) { - fn = queue.shift(); - startLength--; - } - - if ( fn ) { - - // Add a progress sentinel to prevent the fx queue from being - // automatically dequeued - if ( type === "fx" ) { - queue.unshift( "inprogress" ); - } - - // Clear up the last queue stop function - delete hooks.stop; - fn.call( elem, next, hooks ); - } - - if ( !startLength && hooks ) { - hooks.empty.fire(); - } - }, - - // Not public - generate a queueHooks object, or return the current one - _queueHooks: function( elem, type ) { - var key = type + "queueHooks"; - return dataPriv.get( elem, key ) || dataPriv.access( elem, key, { - empty: jQuery.Callbacks( "once memory" ).add( function() { - dataPriv.remove( elem, [ type + "queue", key ] ); - } ) - } ); - } -} ); - -jQuery.fn.extend( { - queue: function( type, data ) { - var setter = 2; - - if ( typeof type !== "string" ) { - data = type; - type = "fx"; - setter--; - } - - if ( arguments.length < setter ) { - return jQuery.queue( this[ 0 ], type ); - } - - return data === undefined ? - this : - this.each( function() { - var queue = jQuery.queue( this, type, data ); - - // Ensure a hooks for this queue - jQuery._queueHooks( this, type ); - - if ( type === "fx" && queue[ 0 ] !== "inprogress" ) { - jQuery.dequeue( this, type ); - } - } ); - }, - dequeue: function( type ) { - return this.each( function() { - jQuery.dequeue( this, type ); - } ); - }, - clearQueue: function( type ) { - return this.queue( type || "fx", [] ); - }, - - // Get a promise resolved when queues of a certain type - // are emptied (fx is the type by default) - promise: function( type, obj ) { - var tmp, - count = 1, - defer = jQuery.Deferred(), - elements = this, - i = this.length, - resolve = function() { - if ( !( --count ) ) { - defer.resolveWith( elements, [ elements ] ); - } - }; - - if ( typeof type !== "string" ) { - obj = type; - type = undefined; - } - type = type || "fx"; - - while ( i-- ) { - tmp = dataPriv.get( elements[ i ], type + "queueHooks" ); - if ( tmp && tmp.empty ) { - count++; - tmp.empty.add( resolve ); - } - } - resolve(); - return defer.promise( obj ); - } -} ); -var pnum = ( /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/ ).source; - -var rcssNum = new RegExp( "^(?:([+-])=|)(" + pnum + ")([a-z%]*)$", "i" ); - - -var cssExpand = [ "Top", "Right", "Bottom", "Left" ]; - -var documentElement = document.documentElement; - - - - var isAttached = function( elem ) { - return jQuery.contains( elem.ownerDocument, elem ); - }, - composed = { composed: true }; - - // Support: IE 9 - 11+, Edge 12 - 18+, iOS 10.0 - 10.2 only - // Check attachment across shadow DOM boundaries when possible (gh-3504) - // Support: iOS 10.0-10.2 only - // Early iOS 10 versions support `attachShadow` but not `getRootNode`, - // leading to errors. We need to check for `getRootNode`. - if ( documentElement.getRootNode ) { - isAttached = function( elem ) { - return jQuery.contains( elem.ownerDocument, elem ) || - elem.getRootNode( composed ) === elem.ownerDocument; - }; - } -var isHiddenWithinTree = function( elem, el ) { - - // isHiddenWithinTree might be called from jQuery#filter function; - // in that case, element will be second argument - elem = el || elem; - - // Inline style trumps all - return elem.style.display === "none" || - elem.style.display === "" && - - // Otherwise, check computed style - // Support: Firefox <=43 - 45 - // Disconnected elements can have computed display: none, so first confirm that elem is - // in the document. - isAttached( elem ) && - - jQuery.css( elem, "display" ) === "none"; - }; - - - -function adjustCSS( elem, prop, valueParts, tween ) { - var adjusted, scale, - maxIterations = 20, - currentValue = tween ? - function() { - return tween.cur(); - } : - function() { - return jQuery.css( elem, prop, "" ); - }, - initial = currentValue(), - unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ), - - // Starting value computation is required for potential unit mismatches - initialInUnit = elem.nodeType && - ( jQuery.cssNumber[ prop ] || unit !== "px" && +initial ) && - rcssNum.exec( jQuery.css( elem, prop ) ); - - if ( initialInUnit && initialInUnit[ 3 ] !== unit ) { - - // Support: Firefox <=54 - // Halve the iteration target value to prevent interference from CSS upper bounds (gh-2144) - initial = initial / 2; - - // Trust units reported by jQuery.css - unit = unit || initialInUnit[ 3 ]; - - // Iteratively approximate from a nonzero starting point - initialInUnit = +initial || 1; - - while ( maxIterations-- ) { - - // Evaluate and update our best guess (doubling guesses that zero out). - // Finish if the scale equals or crosses 1 (making the old*new product non-positive). - jQuery.style( elem, prop, initialInUnit + unit ); - if ( ( 1 - scale ) * ( 1 - ( scale = currentValue() / initial || 0.5 ) ) <= 0 ) { - maxIterations = 0; - } - initialInUnit = initialInUnit / scale; - - } - - initialInUnit = initialInUnit * 2; - jQuery.style( elem, prop, initialInUnit + unit ); - - // Make sure we update the tween properties later on - valueParts = valueParts || []; - } - - if ( valueParts ) { - initialInUnit = +initialInUnit || +initial || 0; - - // Apply relative offset (+=/-=) if specified - adjusted = valueParts[ 1 ] ? - initialInUnit + ( valueParts[ 1 ] + 1 ) * valueParts[ 2 ] : - +valueParts[ 2 ]; - if ( tween ) { - tween.unit = unit; - tween.start = initialInUnit; - tween.end = adjusted; - } - } - return adjusted; -} - - -var defaultDisplayMap = {}; - -function getDefaultDisplay( elem ) { - var temp, - doc = elem.ownerDocument, - nodeName = elem.nodeName, - display = defaultDisplayMap[ nodeName ]; - - if ( display ) { - return display; - } - - temp = doc.body.appendChild( doc.createElement( nodeName ) ); - display = jQuery.css( temp, "display" ); - - temp.parentNode.removeChild( temp ); - - if ( display === "none" ) { - display = "block"; - } - defaultDisplayMap[ nodeName ] = display; - - return display; -} - -function showHide( elements, show ) { - var display, elem, - values = [], - index = 0, - length = elements.length; - - // Determine new display value for elements that need to change - for ( ; index < length; index++ ) { - elem = elements[ index ]; - if ( !elem.style ) { - continue; - } - - display = elem.style.display; - if ( show ) { - - // Since we force visibility upon cascade-hidden elements, an immediate (and slow) - // check is required in this first loop unless we have a nonempty display value (either - // inline or about-to-be-restored) - if ( display === "none" ) { - values[ index ] = dataPriv.get( elem, "display" ) || null; - if ( !values[ index ] ) { - elem.style.display = ""; - } - } - if ( elem.style.display === "" && isHiddenWithinTree( elem ) ) { - values[ index ] = getDefaultDisplay( elem ); - } - } else { - if ( display !== "none" ) { - values[ index ] = "none"; - - // Remember what we're overwriting - dataPriv.set( elem, "display", display ); - } - } - } - - // Set the display of the elements in a second loop to avoid constant reflow - for ( index = 0; index < length; index++ ) { - if ( values[ index ] != null ) { - elements[ index ].style.display = values[ index ]; - } - } - - return elements; -} - -jQuery.fn.extend( { - show: function() { - return showHide( this, true ); - }, - hide: function() { - return showHide( this ); - }, - toggle: function( state ) { - if ( typeof state === "boolean" ) { - return state ? this.show() : this.hide(); - } - - return this.each( function() { - if ( isHiddenWithinTree( this ) ) { - jQuery( this ).show(); - } else { - jQuery( this ).hide(); - } - } ); - } -} ); -var rcheckableType = ( /^(?:checkbox|radio)$/i ); - -var rtagName = ( /<([a-z][^\/\0>\x20\t\r\n\f]*)/i ); - -var rscriptType = ( /^$|^module$|\/(?:java|ecma)script/i ); - - - -( function() { - var fragment = document.createDocumentFragment(), - div = fragment.appendChild( document.createElement( "div" ) ), - input = document.createElement( "input" ); - - // Support: Android 4.0 - 4.3 only - // Check state lost if the name is set (#11217) - // Support: Windows Web Apps (WWA) - // `name` and `type` must use .setAttribute for WWA (#14901) - input.setAttribute( "type", "radio" ); - input.setAttribute( "checked", "checked" ); - input.setAttribute( "name", "t" ); - - div.appendChild( input ); - - // Support: Android <=4.1 only - // Older WebKit doesn't clone checked state correctly in fragments - support.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked; - - // Support: IE <=11 only - // Make sure textarea (and checkbox) defaultValue is properly cloned - div.innerHTML = ""; - support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue; - - // Support: IE <=9 only - // IE <=9 replaces "; - support.option = !!div.lastChild; -} )(); - - -// We have to close these tags to support XHTML (#13200) -var wrapMap = { - - // XHTML parsers do not magically insert elements in the - // same way that tag soup parsers do. So we cannot shorten - // this by omitting or other required elements. - thead: [ 1, "", "
" ], - col: [ 2, "", "
" ], - tr: [ 2, "", "
" ], - td: [ 3, "", "
" ], - - _default: [ 0, "", "" ] -}; - -wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead; -wrapMap.th = wrapMap.td; - -// Support: IE <=9 only -if ( !support.option ) { - wrapMap.optgroup = wrapMap.option = [ 1, "" ]; -} - - -function getAll( context, tag ) { - - // Support: IE <=9 - 11 only - // Use typeof to avoid zero-argument method invocation on host objects (#15151) - var ret; - - if ( typeof context.getElementsByTagName !== "undefined" ) { - ret = context.getElementsByTagName( tag || "*" ); - - } else if ( typeof context.querySelectorAll !== "undefined" ) { - ret = context.querySelectorAll( tag || "*" ); - - } else { - ret = []; - } - - if ( tag === undefined || tag && nodeName( context, tag ) ) { - return jQuery.merge( [ context ], ret ); - } - - return ret; -} - - -// Mark scripts as having already been evaluated -function setGlobalEval( elems, refElements ) { - var i = 0, - l = elems.length; - - for ( ; i < l; i++ ) { - dataPriv.set( - elems[ i ], - "globalEval", - !refElements || dataPriv.get( refElements[ i ], "globalEval" ) - ); - } -} - - -var rhtml = /<|&#?\w+;/; - -function buildFragment( elems, context, scripts, selection, ignored ) { - var elem, tmp, tag, wrap, attached, j, - fragment = context.createDocumentFragment(), - nodes = [], - i = 0, - l = elems.length; - - for ( ; i < l; i++ ) { - elem = elems[ i ]; - - if ( elem || elem === 0 ) { - - // Add nodes directly - if ( toType( elem ) === "object" ) { - - // Support: Android <=4.0 only, PhantomJS 1 only - // push.apply(_, arraylike) throws on ancient WebKit - jQuery.merge( nodes, elem.nodeType ? [ elem ] : elem ); - - // Convert non-html into a text node - } else if ( !rhtml.test( elem ) ) { - nodes.push( context.createTextNode( elem ) ); - - // Convert html into DOM nodes - } else { - tmp = tmp || fragment.appendChild( context.createElement( "div" ) ); - - // Deserialize a standard representation - tag = ( rtagName.exec( elem ) || [ "", "" ] )[ 1 ].toLowerCase(); - wrap = wrapMap[ tag ] || wrapMap._default; - tmp.innerHTML = wrap[ 1 ] + jQuery.htmlPrefilter( elem ) + wrap[ 2 ]; - - // Descend through wrappers to the right content - j = wrap[ 0 ]; - while ( j-- ) { - tmp = tmp.lastChild; - } - - // Support: Android <=4.0 only, PhantomJS 1 only - // push.apply(_, arraylike) throws on ancient WebKit - jQuery.merge( nodes, tmp.childNodes ); - - // Remember the top-level container - tmp = fragment.firstChild; - - // Ensure the created nodes are orphaned (#12392) - tmp.textContent = ""; - } - } - } - - // Remove wrapper from fragment - fragment.textContent = ""; - - i = 0; - while ( ( elem = nodes[ i++ ] ) ) { - - // Skip elements already in the context collection (trac-4087) - if ( selection && jQuery.inArray( elem, selection ) > -1 ) { - if ( ignored ) { - ignored.push( elem ); - } - continue; - } - - attached = isAttached( elem ); - - // Append to fragment - tmp = getAll( fragment.appendChild( elem ), "script" ); - - // Preserve script evaluation history - if ( attached ) { - setGlobalEval( tmp ); - } - - // Capture executables - if ( scripts ) { - j = 0; - while ( ( elem = tmp[ j++ ] ) ) { - if ( rscriptType.test( elem.type || "" ) ) { - scripts.push( elem ); - } - } - } - } - - return fragment; -} - - -var rtypenamespace = /^([^.]*)(?:\.(.+)|)/; - -function returnTrue() { - return true; -} - -function returnFalse() { - return false; -} - -// Support: IE <=9 - 11+ -// focus() and blur() are asynchronous, except when they are no-op. -// So expect focus to be synchronous when the element is already active, -// and blur to be synchronous when the element is not already active. -// (focus and blur are always synchronous in other supported browsers, -// this just defines when we can count on it). -function expectSync( elem, type ) { - return ( elem === safeActiveElement() ) === ( type === "focus" ); -} - -// Support: IE <=9 only -// Accessing document.activeElement can throw unexpectedly -// https://bugs.jquery.com/ticket/13393 -function safeActiveElement() { - try { - return document.activeElement; - } catch ( err ) { } -} - -function on( elem, types, selector, data, fn, one ) { - var origFn, type; - - // Types can be a map of types/handlers - if ( typeof types === "object" ) { - - // ( types-Object, selector, data ) - if ( typeof selector !== "string" ) { - - // ( types-Object, data ) - data = data || selector; - selector = undefined; - } - for ( type in types ) { - on( elem, type, selector, data, types[ type ], one ); - } - return elem; - } - - if ( data == null && fn == null ) { - - // ( types, fn ) - fn = selector; - data = selector = undefined; - } else if ( fn == null ) { - if ( typeof selector === "string" ) { - - // ( types, selector, fn ) - fn = data; - data = undefined; - } else { - - // ( types, data, fn ) - fn = data; - data = selector; - selector = undefined; - } - } - if ( fn === false ) { - fn = returnFalse; - } else if ( !fn ) { - return elem; - } - - if ( one === 1 ) { - origFn = fn; - fn = function( event ) { - - // Can use an empty set, since event contains the info - jQuery().off( event ); - return origFn.apply( this, arguments ); - }; - - // Use same guid so caller can remove using origFn - fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ ); - } - return elem.each( function() { - jQuery.event.add( this, types, fn, data, selector ); - } ); -} - -/* - * Helper functions for managing events -- not part of the public interface. - * Props to Dean Edwards' addEvent library for many of the ideas. - */ -jQuery.event = { - - global: {}, - - add: function( elem, types, handler, data, selector ) { - - var handleObjIn, eventHandle, tmp, - events, t, handleObj, - special, handlers, type, namespaces, origType, - elemData = dataPriv.get( elem ); - - // Only attach events to objects that accept data - if ( !acceptData( elem ) ) { - return; - } - - // Caller can pass in an object of custom data in lieu of the handler - if ( handler.handler ) { - handleObjIn = handler; - handler = handleObjIn.handler; - selector = handleObjIn.selector; - } - - // Ensure that invalid selectors throw exceptions at attach time - // Evaluate against documentElement in case elem is a non-element node (e.g., document) - if ( selector ) { - jQuery.find.matchesSelector( documentElement, selector ); - } - - // Make sure that the handler has a unique ID, used to find/remove it later - if ( !handler.guid ) { - handler.guid = jQuery.guid++; - } - - // Init the element's event structure and main handler, if this is the first - if ( !( events = elemData.events ) ) { - events = elemData.events = Object.create( null ); - } - if ( !( eventHandle = elemData.handle ) ) { - eventHandle = elemData.handle = function( e ) { - - // Discard the second event of a jQuery.event.trigger() and - // when an event is called after a page has unloaded - return typeof jQuery !== "undefined" && jQuery.event.triggered !== e.type ? - jQuery.event.dispatch.apply( elem, arguments ) : undefined; - }; - } - - // Handle multiple events separated by a space - types = ( types || "" ).match( rnothtmlwhite ) || [ "" ]; - t = types.length; - while ( t-- ) { - tmp = rtypenamespace.exec( types[ t ] ) || []; - type = origType = tmp[ 1 ]; - namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); - - // There *must* be a type, no attaching namespace-only handlers - if ( !type ) { - continue; - } - - // If event changes its type, use the special event handlers for the changed type - special = jQuery.event.special[ type ] || {}; - - // If selector defined, determine special event api type, otherwise given type - type = ( selector ? special.delegateType : special.bindType ) || type; - - // Update special based on newly reset type - special = jQuery.event.special[ type ] || {}; - - // handleObj is passed to all event handlers - handleObj = jQuery.extend( { - type: type, - origType: origType, - data: data, - handler: handler, - guid: handler.guid, - selector: selector, - needsContext: selector && jQuery.expr.match.needsContext.test( selector ), - namespace: namespaces.join( "." ) - }, handleObjIn ); - - // Init the event handler queue if we're the first - if ( !( handlers = events[ type ] ) ) { - handlers = events[ type ] = []; - handlers.delegateCount = 0; - - // Only use addEventListener if the special events handler returns false - if ( !special.setup || - special.setup.call( elem, data, namespaces, eventHandle ) === false ) { - - if ( elem.addEventListener ) { - elem.addEventListener( type, eventHandle ); - } - } - } - - if ( special.add ) { - special.add.call( elem, handleObj ); - - if ( !handleObj.handler.guid ) { - handleObj.handler.guid = handler.guid; - } - } - - // Add to the element's handler list, delegates in front - if ( selector ) { - handlers.splice( handlers.delegateCount++, 0, handleObj ); - } else { - handlers.push( handleObj ); - } - - // Keep track of which events have ever been used, for event optimization - jQuery.event.global[ type ] = true; - } - - }, - - // Detach an event or set of events from an element - remove: function( elem, types, handler, selector, mappedTypes ) { - - var j, origCount, tmp, - events, t, handleObj, - special, handlers, type, namespaces, origType, - elemData = dataPriv.hasData( elem ) && dataPriv.get( elem ); - - if ( !elemData || !( events = elemData.events ) ) { - return; - } - - // Once for each type.namespace in types; type may be omitted - types = ( types || "" ).match( rnothtmlwhite ) || [ "" ]; - t = types.length; - while ( t-- ) { - tmp = rtypenamespace.exec( types[ t ] ) || []; - type = origType = tmp[ 1 ]; - namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); - - // Unbind all events (on this namespace, if provided) for the element - if ( !type ) { - for ( type in events ) { - jQuery.event.remove( elem, type + types[ t ], handler, selector, true ); - } - continue; - } - - special = jQuery.event.special[ type ] || {}; - type = ( selector ? special.delegateType : special.bindType ) || type; - handlers = events[ type ] || []; - tmp = tmp[ 2 ] && - new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ); - - // Remove matching events - origCount = j = handlers.length; - while ( j-- ) { - handleObj = handlers[ j ]; - - if ( ( mappedTypes || origType === handleObj.origType ) && - ( !handler || handler.guid === handleObj.guid ) && - ( !tmp || tmp.test( handleObj.namespace ) ) && - ( !selector || selector === handleObj.selector || - selector === "**" && handleObj.selector ) ) { - handlers.splice( j, 1 ); - - if ( handleObj.selector ) { - handlers.delegateCount--; - } - if ( special.remove ) { - special.remove.call( elem, handleObj ); - } - } - } - - // Remove generic event handler if we removed something and no more handlers exist - // (avoids potential for endless recursion during removal of special event handlers) - if ( origCount && !handlers.length ) { - if ( !special.teardown || - special.teardown.call( elem, namespaces, elemData.handle ) === false ) { - - jQuery.removeEvent( elem, type, elemData.handle ); - } - - delete events[ type ]; - } - } - - // Remove data and the expando if it's no longer used - if ( jQuery.isEmptyObject( events ) ) { - dataPriv.remove( elem, "handle events" ); - } - }, - - dispatch: function( nativeEvent ) { - - var i, j, ret, matched, handleObj, handlerQueue, - args = new Array( arguments.length ), - - // Make a writable jQuery.Event from the native event object - event = jQuery.event.fix( nativeEvent ), - - handlers = ( - dataPriv.get( this, "events" ) || Object.create( null ) - )[ event.type ] || [], - special = jQuery.event.special[ event.type ] || {}; - - // Use the fix-ed jQuery.Event rather than the (read-only) native event - args[ 0 ] = event; - - for ( i = 1; i < arguments.length; i++ ) { - args[ i ] = arguments[ i ]; - } - - event.delegateTarget = this; - - // Call the preDispatch hook for the mapped type, and let it bail if desired - if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) { - return; - } - - // Determine handlers - handlerQueue = jQuery.event.handlers.call( this, event, handlers ); - - // Run delegates first; they may want to stop propagation beneath us - i = 0; - while ( ( matched = handlerQueue[ i++ ] ) && !event.isPropagationStopped() ) { - event.currentTarget = matched.elem; - - j = 0; - while ( ( handleObj = matched.handlers[ j++ ] ) && - !event.isImmediatePropagationStopped() ) { - - // If the event is namespaced, then each handler is only invoked if it is - // specially universal or its namespaces are a superset of the event's. - if ( !event.rnamespace || handleObj.namespace === false || - event.rnamespace.test( handleObj.namespace ) ) { - - event.handleObj = handleObj; - event.data = handleObj.data; - - ret = ( ( jQuery.event.special[ handleObj.origType ] || {} ).handle || - handleObj.handler ).apply( matched.elem, args ); - - if ( ret !== undefined ) { - if ( ( event.result = ret ) === false ) { - event.preventDefault(); - event.stopPropagation(); - } - } - } - } - } - - // Call the postDispatch hook for the mapped type - if ( special.postDispatch ) { - special.postDispatch.call( this, event ); - } - - return event.result; - }, - - handlers: function( event, handlers ) { - var i, handleObj, sel, matchedHandlers, matchedSelectors, - handlerQueue = [], - delegateCount = handlers.delegateCount, - cur = event.target; - - // Find delegate handlers - if ( delegateCount && - - // Support: IE <=9 - // Black-hole SVG instance trees (trac-13180) - cur.nodeType && - - // Support: Firefox <=42 - // Suppress spec-violating clicks indicating a non-primary pointer button (trac-3861) - // https://www.w3.org/TR/DOM-Level-3-Events/#event-type-click - // Support: IE 11 only - // ...but not arrow key "clicks" of radio inputs, which can have `button` -1 (gh-2343) - !( event.type === "click" && event.button >= 1 ) ) { - - for ( ; cur !== this; cur = cur.parentNode || this ) { - - // Don't check non-elements (#13208) - // Don't process clicks on disabled elements (#6911, #8165, #11382, #11764) - if ( cur.nodeType === 1 && !( event.type === "click" && cur.disabled === true ) ) { - matchedHandlers = []; - matchedSelectors = {}; - for ( i = 0; i < delegateCount; i++ ) { - handleObj = handlers[ i ]; - - // Don't conflict with Object.prototype properties (#13203) - sel = handleObj.selector + " "; - - if ( matchedSelectors[ sel ] === undefined ) { - matchedSelectors[ sel ] = handleObj.needsContext ? - jQuery( sel, this ).index( cur ) > -1 : - jQuery.find( sel, this, null, [ cur ] ).length; - } - if ( matchedSelectors[ sel ] ) { - matchedHandlers.push( handleObj ); - } - } - if ( matchedHandlers.length ) { - handlerQueue.push( { elem: cur, handlers: matchedHandlers } ); - } - } - } - } - - // Add the remaining (directly-bound) handlers - cur = this; - if ( delegateCount < handlers.length ) { - handlerQueue.push( { elem: cur, handlers: handlers.slice( delegateCount ) } ); - } - - return handlerQueue; - }, - - addProp: function( name, hook ) { - Object.defineProperty( jQuery.Event.prototype, name, { - enumerable: true, - configurable: true, - - get: isFunction( hook ) ? - function() { - if ( this.originalEvent ) { - return hook( this.originalEvent ); - } - } : - function() { - if ( this.originalEvent ) { - return this.originalEvent[ name ]; - } - }, - - set: function( value ) { - Object.defineProperty( this, name, { - enumerable: true, - configurable: true, - writable: true, - value: value - } ); - } - } ); - }, - - fix: function( originalEvent ) { - return originalEvent[ jQuery.expando ] ? - originalEvent : - new jQuery.Event( originalEvent ); - }, - - special: { - load: { - - // Prevent triggered image.load events from bubbling to window.load - noBubble: true - }, - click: { - - // Utilize native event to ensure correct state for checkable inputs - setup: function( data ) { - - // For mutual compressibility with _default, replace `this` access with a local var. - // `|| data` is dead code meant only to preserve the variable through minification. - var el = this || data; - - // Claim the first handler - if ( rcheckableType.test( el.type ) && - el.click && nodeName( el, "input" ) ) { - - // dataPriv.set( el, "click", ... ) - leverageNative( el, "click", returnTrue ); - } - - // Return false to allow normal processing in the caller - return false; - }, - trigger: function( data ) { - - // For mutual compressibility with _default, replace `this` access with a local var. - // `|| data` is dead code meant only to preserve the variable through minification. - var el = this || data; - - // Force setup before triggering a click - if ( rcheckableType.test( el.type ) && - el.click && nodeName( el, "input" ) ) { - - leverageNative( el, "click" ); - } - - // Return non-false to allow normal event-path propagation - return true; - }, - - // For cross-browser consistency, suppress native .click() on links - // Also prevent it if we're currently inside a leveraged native-event stack - _default: function( event ) { - var target = event.target; - return rcheckableType.test( target.type ) && - target.click && nodeName( target, "input" ) && - dataPriv.get( target, "click" ) || - nodeName( target, "a" ); - } - }, - - beforeunload: { - postDispatch: function( event ) { - - // Support: Firefox 20+ - // Firefox doesn't alert if the returnValue field is not set. - if ( event.result !== undefined && event.originalEvent ) { - event.originalEvent.returnValue = event.result; - } - } - } - } -}; - -// Ensure the presence of an event listener that handles manually-triggered -// synthetic events by interrupting progress until reinvoked in response to -// *native* events that it fires directly, ensuring that state changes have -// already occurred before other listeners are invoked. -function leverageNative( el, type, expectSync ) { - - // Missing expectSync indicates a trigger call, which must force setup through jQuery.event.add - if ( !expectSync ) { - if ( dataPriv.get( el, type ) === undefined ) { - jQuery.event.add( el, type, returnTrue ); - } - return; - } - - // Register the controller as a special universal handler for all event namespaces - dataPriv.set( el, type, false ); - jQuery.event.add( el, type, { - namespace: false, - handler: function( event ) { - var notAsync, result, - saved = dataPriv.get( this, type ); - - if ( ( event.isTrigger & 1 ) && this[ type ] ) { - - // Interrupt processing of the outer synthetic .trigger()ed event - // Saved data should be false in such cases, but might be a leftover capture object - // from an async native handler (gh-4350) - if ( !saved.length ) { - - // Store arguments for use when handling the inner native event - // There will always be at least one argument (an event object), so this array - // will not be confused with a leftover capture object. - saved = slice.call( arguments ); - dataPriv.set( this, type, saved ); - - // Trigger the native event and capture its result - // Support: IE <=9 - 11+ - // focus() and blur() are asynchronous - notAsync = expectSync( this, type ); - this[ type ](); - result = dataPriv.get( this, type ); - if ( saved !== result || notAsync ) { - dataPriv.set( this, type, false ); - } else { - result = {}; - } - if ( saved !== result ) { - - // Cancel the outer synthetic event - event.stopImmediatePropagation(); - event.preventDefault(); - - // Support: Chrome 86+ - // In Chrome, if an element having a focusout handler is blurred by - // clicking outside of it, it invokes the handler synchronously. If - // that handler calls `.remove()` on the element, the data is cleared, - // leaving `result` undefined. We need to guard against this. - return result && result.value; - } - - // If this is an inner synthetic event for an event with a bubbling surrogate - // (focus or blur), assume that the surrogate already propagated from triggering the - // native event and prevent that from happening again here. - // This technically gets the ordering wrong w.r.t. to `.trigger()` (in which the - // bubbling surrogate propagates *after* the non-bubbling base), but that seems - // less bad than duplication. - } else if ( ( jQuery.event.special[ type ] || {} ).delegateType ) { - event.stopPropagation(); - } - - // If this is a native event triggered above, everything is now in order - // Fire an inner synthetic event with the original arguments - } else if ( saved.length ) { - - // ...and capture the result - dataPriv.set( this, type, { - value: jQuery.event.trigger( - - // Support: IE <=9 - 11+ - // Extend with the prototype to reset the above stopImmediatePropagation() - jQuery.extend( saved[ 0 ], jQuery.Event.prototype ), - saved.slice( 1 ), - this - ) - } ); - - // Abort handling of the native event - event.stopImmediatePropagation(); - } - } - } ); -} - -jQuery.removeEvent = function( elem, type, handle ) { - - // This "if" is needed for plain objects - if ( elem.removeEventListener ) { - elem.removeEventListener( type, handle ); - } -}; - -jQuery.Event = function( src, props ) { - - // Allow instantiation without the 'new' keyword - if ( !( this instanceof jQuery.Event ) ) { - return new jQuery.Event( src, props ); - } - - // Event object - if ( src && src.type ) { - this.originalEvent = src; - this.type = src.type; - - // Events bubbling up the document may have been marked as prevented - // by a handler lower down the tree; reflect the correct value. - this.isDefaultPrevented = src.defaultPrevented || - src.defaultPrevented === undefined && - - // Support: Android <=2.3 only - src.returnValue === false ? - returnTrue : - returnFalse; - - // Create target properties - // Support: Safari <=6 - 7 only - // Target should not be a text node (#504, #13143) - this.target = ( src.target && src.target.nodeType === 3 ) ? - src.target.parentNode : - src.target; - - this.currentTarget = src.currentTarget; - this.relatedTarget = src.relatedTarget; - - // Event type - } else { - this.type = src; - } - - // Put explicitly provided properties onto the event object - if ( props ) { - jQuery.extend( this, props ); - } - - // Create a timestamp if incoming event doesn't have one - this.timeStamp = src && src.timeStamp || Date.now(); - - // Mark it as fixed - this[ jQuery.expando ] = true; -}; - -// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding -// https://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html -jQuery.Event.prototype = { - constructor: jQuery.Event, - isDefaultPrevented: returnFalse, - isPropagationStopped: returnFalse, - isImmediatePropagationStopped: returnFalse, - isSimulated: false, - - preventDefault: function() { - var e = this.originalEvent; - - this.isDefaultPrevented = returnTrue; - - if ( e && !this.isSimulated ) { - e.preventDefault(); - } - }, - stopPropagation: function() { - var e = this.originalEvent; - - this.isPropagationStopped = returnTrue; - - if ( e && !this.isSimulated ) { - e.stopPropagation(); - } - }, - stopImmediatePropagation: function() { - var e = this.originalEvent; - - this.isImmediatePropagationStopped = returnTrue; - - if ( e && !this.isSimulated ) { - e.stopImmediatePropagation(); - } - - this.stopPropagation(); - } -}; - -// Includes all common event props including KeyEvent and MouseEvent specific props -jQuery.each( { - altKey: true, - bubbles: true, - cancelable: true, - changedTouches: true, - ctrlKey: true, - detail: true, - eventPhase: true, - metaKey: true, - pageX: true, - pageY: true, - shiftKey: true, - view: true, - "char": true, - code: true, - charCode: true, - key: true, - keyCode: true, - button: true, - buttons: true, - clientX: true, - clientY: true, - offsetX: true, - offsetY: true, - pointerId: true, - pointerType: true, - screenX: true, - screenY: true, - targetTouches: true, - toElement: true, - touches: true, - which: true -}, jQuery.event.addProp ); - -jQuery.each( { focus: "focusin", blur: "focusout" }, function( type, delegateType ) { - jQuery.event.special[ type ] = { - - // Utilize native event if possible so blur/focus sequence is correct - setup: function() { - - // Claim the first handler - // dataPriv.set( this, "focus", ... ) - // dataPriv.set( this, "blur", ... ) - leverageNative( this, type, expectSync ); - - // Return false to allow normal processing in the caller - return false; - }, - trigger: function() { - - // Force setup before trigger - leverageNative( this, type ); - - // Return non-false to allow normal event-path propagation - return true; - }, - - // Suppress native focus or blur as it's already being fired - // in leverageNative. - _default: function() { - return true; - }, - - delegateType: delegateType - }; -} ); - -// Create mouseenter/leave events using mouseover/out and event-time checks -// so that event delegation works in jQuery. -// Do the same for pointerenter/pointerleave and pointerover/pointerout -// -// Support: Safari 7 only -// Safari sends mouseenter too often; see: -// https://bugs.chromium.org/p/chromium/issues/detail?id=470258 -// for the description of the bug (it existed in older Chrome versions as well). -jQuery.each( { - mouseenter: "mouseover", - mouseleave: "mouseout", - pointerenter: "pointerover", - pointerleave: "pointerout" -}, function( orig, fix ) { - jQuery.event.special[ orig ] = { - delegateType: fix, - bindType: fix, - - handle: function( event ) { - var ret, - target = this, - related = event.relatedTarget, - handleObj = event.handleObj; - - // For mouseenter/leave call the handler if related is outside the target. - // NB: No relatedTarget if the mouse left/entered the browser window - if ( !related || ( related !== target && !jQuery.contains( target, related ) ) ) { - event.type = handleObj.origType; - ret = handleObj.handler.apply( this, arguments ); - event.type = fix; - } - return ret; - } - }; -} ); - -jQuery.fn.extend( { - - on: function( types, selector, data, fn ) { - return on( this, types, selector, data, fn ); - }, - one: function( types, selector, data, fn ) { - return on( this, types, selector, data, fn, 1 ); - }, - off: function( types, selector, fn ) { - var handleObj, type; - if ( types && types.preventDefault && types.handleObj ) { - - // ( event ) dispatched jQuery.Event - handleObj = types.handleObj; - jQuery( types.delegateTarget ).off( - handleObj.namespace ? - handleObj.origType + "." + handleObj.namespace : - handleObj.origType, - handleObj.selector, - handleObj.handler - ); - return this; - } - if ( typeof types === "object" ) { - - // ( types-object [, selector] ) - for ( type in types ) { - this.off( type, selector, types[ type ] ); - } - return this; - } - if ( selector === false || typeof selector === "function" ) { - - // ( types [, fn] ) - fn = selector; - selector = undefined; - } - if ( fn === false ) { - fn = returnFalse; - } - return this.each( function() { - jQuery.event.remove( this, types, fn, selector ); - } ); - } -} ); - - -var - - // Support: IE <=10 - 11, Edge 12 - 13 only - // In IE/Edge using regex groups here causes severe slowdowns. - // See https://connect.microsoft.com/IE/feedback/details/1736512/ - rnoInnerhtml = /\s*$/g; - -// Prefer a tbody over its parent table for containing new rows -function manipulationTarget( elem, content ) { - if ( nodeName( elem, "table" ) && - nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ) { - - return jQuery( elem ).children( "tbody" )[ 0 ] || elem; - } - - return elem; -} - -// Replace/restore the type attribute of script elements for safe DOM manipulation -function disableScript( elem ) { - elem.type = ( elem.getAttribute( "type" ) !== null ) + "/" + elem.type; - return elem; -} -function restoreScript( elem ) { - if ( ( elem.type || "" ).slice( 0, 5 ) === "true/" ) { - elem.type = elem.type.slice( 5 ); - } else { - elem.removeAttribute( "type" ); - } - - return elem; -} - -function cloneCopyEvent( src, dest ) { - var i, l, type, pdataOld, udataOld, udataCur, events; - - if ( dest.nodeType !== 1 ) { - return; - } - - // 1. Copy private data: events, handlers, etc. - if ( dataPriv.hasData( src ) ) { - pdataOld = dataPriv.get( src ); - events = pdataOld.events; - - if ( events ) { - dataPriv.remove( dest, "handle events" ); - - for ( type in events ) { - for ( i = 0, l = events[ type ].length; i < l; i++ ) { - jQuery.event.add( dest, type, events[ type ][ i ] ); - } - } - } - } - - // 2. Copy user data - if ( dataUser.hasData( src ) ) { - udataOld = dataUser.access( src ); - udataCur = jQuery.extend( {}, udataOld ); - - dataUser.set( dest, udataCur ); - } -} - -// Fix IE bugs, see support tests -function fixInput( src, dest ) { - var nodeName = dest.nodeName.toLowerCase(); - - // Fails to persist the checked state of a cloned checkbox or radio button. - if ( nodeName === "input" && rcheckableType.test( src.type ) ) { - dest.checked = src.checked; - - // Fails to return the selected option to the default selected state when cloning options - } else if ( nodeName === "input" || nodeName === "textarea" ) { - dest.defaultValue = src.defaultValue; - } -} - -function domManip( collection, args, callback, ignored ) { - - // Flatten any nested arrays - args = flat( args ); - - var fragment, first, scripts, hasScripts, node, doc, - i = 0, - l = collection.length, - iNoClone = l - 1, - value = args[ 0 ], - valueIsFunction = isFunction( value ); - - // We can't cloneNode fragments that contain checked, in WebKit - if ( valueIsFunction || - ( l > 1 && typeof value === "string" && - !support.checkClone && rchecked.test( value ) ) ) { - return collection.each( function( index ) { - var self = collection.eq( index ); - if ( valueIsFunction ) { - args[ 0 ] = value.call( this, index, self.html() ); - } - domManip( self, args, callback, ignored ); - } ); - } - - if ( l ) { - fragment = buildFragment( args, collection[ 0 ].ownerDocument, false, collection, ignored ); - first = fragment.firstChild; - - if ( fragment.childNodes.length === 1 ) { - fragment = first; - } - - // Require either new content or an interest in ignored elements to invoke the callback - if ( first || ignored ) { - scripts = jQuery.map( getAll( fragment, "script" ), disableScript ); - hasScripts = scripts.length; - - // Use the original fragment for the last item - // instead of the first because it can end up - // being emptied incorrectly in certain situations (#8070). - for ( ; i < l; i++ ) { - node = fragment; - - if ( i !== iNoClone ) { - node = jQuery.clone( node, true, true ); - - // Keep references to cloned scripts for later restoration - if ( hasScripts ) { - - // Support: Android <=4.0 only, PhantomJS 1 only - // push.apply(_, arraylike) throws on ancient WebKit - jQuery.merge( scripts, getAll( node, "script" ) ); - } - } - - callback.call( collection[ i ], node, i ); - } - - if ( hasScripts ) { - doc = scripts[ scripts.length - 1 ].ownerDocument; - - // Reenable scripts - jQuery.map( scripts, restoreScript ); - - // Evaluate executable scripts on first document insertion - for ( i = 0; i < hasScripts; i++ ) { - node = scripts[ i ]; - if ( rscriptType.test( node.type || "" ) && - !dataPriv.access( node, "globalEval" ) && - jQuery.contains( doc, node ) ) { - - if ( node.src && ( node.type || "" ).toLowerCase() !== "module" ) { - - // Optional AJAX dependency, but won't run scripts if not present - if ( jQuery._evalUrl && !node.noModule ) { - jQuery._evalUrl( node.src, { - nonce: node.nonce || node.getAttribute( "nonce" ) - }, doc ); - } - } else { - DOMEval( node.textContent.replace( rcleanScript, "" ), node, doc ); - } - } - } - } - } - } - - return collection; -} - -function remove( elem, selector, keepData ) { - var node, - nodes = selector ? jQuery.filter( selector, elem ) : elem, - i = 0; - - for ( ; ( node = nodes[ i ] ) != null; i++ ) { - if ( !keepData && node.nodeType === 1 ) { - jQuery.cleanData( getAll( node ) ); - } - - if ( node.parentNode ) { - if ( keepData && isAttached( node ) ) { - setGlobalEval( getAll( node, "script" ) ); - } - node.parentNode.removeChild( node ); - } - } - - return elem; -} - -jQuery.extend( { - htmlPrefilter: function( html ) { - return html; - }, - - clone: function( elem, dataAndEvents, deepDataAndEvents ) { - var i, l, srcElements, destElements, - clone = elem.cloneNode( true ), - inPage = isAttached( elem ); - - // Fix IE cloning issues - if ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) && - !jQuery.isXMLDoc( elem ) ) { - - // We eschew Sizzle here for performance reasons: https://jsperf.com/getall-vs-sizzle/2 - destElements = getAll( clone ); - srcElements = getAll( elem ); - - for ( i = 0, l = srcElements.length; i < l; i++ ) { - fixInput( srcElements[ i ], destElements[ i ] ); - } - } - - // Copy the events from the original to the clone - if ( dataAndEvents ) { - if ( deepDataAndEvents ) { - srcElements = srcElements || getAll( elem ); - destElements = destElements || getAll( clone ); - - for ( i = 0, l = srcElements.length; i < l; i++ ) { - cloneCopyEvent( srcElements[ i ], destElements[ i ] ); - } - } else { - cloneCopyEvent( elem, clone ); - } - } - - // Preserve script evaluation history - destElements = getAll( clone, "script" ); - if ( destElements.length > 0 ) { - setGlobalEval( destElements, !inPage && getAll( elem, "script" ) ); - } - - // Return the cloned set - return clone; - }, - - cleanData: function( elems ) { - var data, elem, type, - special = jQuery.event.special, - i = 0; - - for ( ; ( elem = elems[ i ] ) !== undefined; i++ ) { - if ( acceptData( elem ) ) { - if ( ( data = elem[ dataPriv.expando ] ) ) { - if ( data.events ) { - for ( type in data.events ) { - if ( special[ type ] ) { - jQuery.event.remove( elem, type ); - - // This is a shortcut to avoid jQuery.event.remove's overhead - } else { - jQuery.removeEvent( elem, type, data.handle ); - } - } - } - - // Support: Chrome <=35 - 45+ - // Assign undefined instead of using delete, see Data#remove - elem[ dataPriv.expando ] = undefined; - } - if ( elem[ dataUser.expando ] ) { - - // Support: Chrome <=35 - 45+ - // Assign undefined instead of using delete, see Data#remove - elem[ dataUser.expando ] = undefined; - } - } - } - } -} ); - -jQuery.fn.extend( { - detach: function( selector ) { - return remove( this, selector, true ); - }, - - remove: function( selector ) { - return remove( this, selector ); - }, - - text: function( value ) { - return access( this, function( value ) { - return value === undefined ? - jQuery.text( this ) : - this.empty().each( function() { - if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { - this.textContent = value; - } - } ); - }, null, value, arguments.length ); - }, - - append: function() { - return domManip( this, arguments, function( elem ) { - if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { - var target = manipulationTarget( this, elem ); - target.appendChild( elem ); - } - } ); - }, - - prepend: function() { - return domManip( this, arguments, function( elem ) { - if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { - var target = manipulationTarget( this, elem ); - target.insertBefore( elem, target.firstChild ); - } - } ); - }, - - before: function() { - return domManip( this, arguments, function( elem ) { - if ( this.parentNode ) { - this.parentNode.insertBefore( elem, this ); - } - } ); - }, - - after: function() { - return domManip( this, arguments, function( elem ) { - if ( this.parentNode ) { - this.parentNode.insertBefore( elem, this.nextSibling ); - } - } ); - }, - - empty: function() { - var elem, - i = 0; - - for ( ; ( elem = this[ i ] ) != null; i++ ) { - if ( elem.nodeType === 1 ) { - - // Prevent memory leaks - jQuery.cleanData( getAll( elem, false ) ); - - // Remove any remaining nodes - elem.textContent = ""; - } - } - - return this; - }, - - clone: function( dataAndEvents, deepDataAndEvents ) { - dataAndEvents = dataAndEvents == null ? false : dataAndEvents; - deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents; - - return this.map( function() { - return jQuery.clone( this, dataAndEvents, deepDataAndEvents ); - } ); - }, - - html: function( value ) { - return access( this, function( value ) { - var elem = this[ 0 ] || {}, - i = 0, - l = this.length; - - if ( value === undefined && elem.nodeType === 1 ) { - return elem.innerHTML; - } - - // See if we can take a shortcut and just use innerHTML - if ( typeof value === "string" && !rnoInnerhtml.test( value ) && - !wrapMap[ ( rtagName.exec( value ) || [ "", "" ] )[ 1 ].toLowerCase() ] ) { - - value = jQuery.htmlPrefilter( value ); - - try { - for ( ; i < l; i++ ) { - elem = this[ i ] || {}; - - // Remove element nodes and prevent memory leaks - if ( elem.nodeType === 1 ) { - jQuery.cleanData( getAll( elem, false ) ); - elem.innerHTML = value; - } - } - - elem = 0; - - // If using innerHTML throws an exception, use the fallback method - } catch ( e ) {} - } - - if ( elem ) { - this.empty().append( value ); - } - }, null, value, arguments.length ); - }, - - replaceWith: function() { - var ignored = []; - - // Make the changes, replacing each non-ignored context element with the new content - return domManip( this, arguments, function( elem ) { - var parent = this.parentNode; - - if ( jQuery.inArray( this, ignored ) < 0 ) { - jQuery.cleanData( getAll( this ) ); - if ( parent ) { - parent.replaceChild( elem, this ); - } - } - - // Force callback invocation - }, ignored ); - } -} ); - -jQuery.each( { - appendTo: "append", - prependTo: "prepend", - insertBefore: "before", - insertAfter: "after", - replaceAll: "replaceWith" -}, function( name, original ) { - jQuery.fn[ name ] = function( selector ) { - var elems, - ret = [], - insert = jQuery( selector ), - last = insert.length - 1, - i = 0; - - for ( ; i <= last; i++ ) { - elems = i === last ? this : this.clone( true ); - jQuery( insert[ i ] )[ original ]( elems ); - - // Support: Android <=4.0 only, PhantomJS 1 only - // .get() because push.apply(_, arraylike) throws on ancient WebKit - push.apply( ret, elems.get() ); - } - - return this.pushStack( ret ); - }; -} ); -var rnumnonpx = new RegExp( "^(" + pnum + ")(?!px)[a-z%]+$", "i" ); - -var getStyles = function( elem ) { - - // Support: IE <=11 only, Firefox <=30 (#15098, #14150) - // IE throws on elements created in popups - // FF meanwhile throws on frame elements through "defaultView.getComputedStyle" - var view = elem.ownerDocument.defaultView; - - if ( !view || !view.opener ) { - view = window; - } - - return view.getComputedStyle( elem ); - }; - -var swap = function( elem, options, callback ) { - var ret, name, - old = {}; - - // Remember the old values, and insert the new ones - for ( name in options ) { - old[ name ] = elem.style[ name ]; - elem.style[ name ] = options[ name ]; - } - - ret = callback.call( elem ); - - // Revert the old values - for ( name in options ) { - elem.style[ name ] = old[ name ]; - } - - return ret; -}; - - -var rboxStyle = new RegExp( cssExpand.join( "|" ), "i" ); - - - -( function() { - - // Executing both pixelPosition & boxSizingReliable tests require only one layout - // so they're executed at the same time to save the second computation. - function computeStyleTests() { - - // This is a singleton, we need to execute it only once - if ( !div ) { - return; - } - - container.style.cssText = "position:absolute;left:-11111px;width:60px;" + - "margin-top:1px;padding:0;border:0"; - div.style.cssText = - "position:relative;display:block;box-sizing:border-box;overflow:scroll;" + - "margin:auto;border:1px;padding:1px;" + - "width:60%;top:1%"; - documentElement.appendChild( container ).appendChild( div ); - - var divStyle = window.getComputedStyle( div ); - pixelPositionVal = divStyle.top !== "1%"; - - // Support: Android 4.0 - 4.3 only, Firefox <=3 - 44 - reliableMarginLeftVal = roundPixelMeasures( divStyle.marginLeft ) === 12; - - // Support: Android 4.0 - 4.3 only, Safari <=9.1 - 10.1, iOS <=7.0 - 9.3 - // Some styles come back with percentage values, even though they shouldn't - div.style.right = "60%"; - pixelBoxStylesVal = roundPixelMeasures( divStyle.right ) === 36; - - // Support: IE 9 - 11 only - // Detect misreporting of content dimensions for box-sizing:border-box elements - boxSizingReliableVal = roundPixelMeasures( divStyle.width ) === 36; - - // Support: IE 9 only - // Detect overflow:scroll screwiness (gh-3699) - // Support: Chrome <=64 - // Don't get tricked when zoom affects offsetWidth (gh-4029) - div.style.position = "absolute"; - scrollboxSizeVal = roundPixelMeasures( div.offsetWidth / 3 ) === 12; - - documentElement.removeChild( container ); - - // Nullify the div so it wouldn't be stored in the memory and - // it will also be a sign that checks already performed - div = null; - } - - function roundPixelMeasures( measure ) { - return Math.round( parseFloat( measure ) ); - } - - var pixelPositionVal, boxSizingReliableVal, scrollboxSizeVal, pixelBoxStylesVal, - reliableTrDimensionsVal, reliableMarginLeftVal, - container = document.createElement( "div" ), - div = document.createElement( "div" ); - - // Finish early in limited (non-browser) environments - if ( !div.style ) { - return; - } - - // Support: IE <=9 - 11 only - // Style of cloned element affects source element cloned (#8908) - div.style.backgroundClip = "content-box"; - div.cloneNode( true ).style.backgroundClip = ""; - support.clearCloneStyle = div.style.backgroundClip === "content-box"; - - jQuery.extend( support, { - boxSizingReliable: function() { - computeStyleTests(); - return boxSizingReliableVal; - }, - pixelBoxStyles: function() { - computeStyleTests(); - return pixelBoxStylesVal; - }, - pixelPosition: function() { - computeStyleTests(); - return pixelPositionVal; - }, - reliableMarginLeft: function() { - computeStyleTests(); - return reliableMarginLeftVal; - }, - scrollboxSize: function() { - computeStyleTests(); - return scrollboxSizeVal; - }, - - // Support: IE 9 - 11+, Edge 15 - 18+ - // IE/Edge misreport `getComputedStyle` of table rows with width/height - // set in CSS while `offset*` properties report correct values. - // Behavior in IE 9 is more subtle than in newer versions & it passes - // some versions of this test; make sure not to make it pass there! - // - // Support: Firefox 70+ - // Only Firefox includes border widths - // in computed dimensions. (gh-4529) - reliableTrDimensions: function() { - var table, tr, trChild, trStyle; - if ( reliableTrDimensionsVal == null ) { - table = document.createElement( "table" ); - tr = document.createElement( "tr" ); - trChild = document.createElement( "div" ); - - table.style.cssText = "position:absolute;left:-11111px;border-collapse:separate"; - tr.style.cssText = "border:1px solid"; - - // Support: Chrome 86+ - // Height set through cssText does not get applied. - // Computed height then comes back as 0. - tr.style.height = "1px"; - trChild.style.height = "9px"; - - // Support: Android 8 Chrome 86+ - // In our bodyBackground.html iframe, - // display for all div elements is set to "inline", - // which causes a problem only in Android 8 Chrome 86. - // Ensuring the div is display: block - // gets around this issue. - trChild.style.display = "block"; - - documentElement - .appendChild( table ) - .appendChild( tr ) - .appendChild( trChild ); - - trStyle = window.getComputedStyle( tr ); - reliableTrDimensionsVal = ( parseInt( trStyle.height, 10 ) + - parseInt( trStyle.borderTopWidth, 10 ) + - parseInt( trStyle.borderBottomWidth, 10 ) ) === tr.offsetHeight; - - documentElement.removeChild( table ); - } - return reliableTrDimensionsVal; - } - } ); -} )(); - - -function curCSS( elem, name, computed ) { - var width, minWidth, maxWidth, ret, - - // Support: Firefox 51+ - // Retrieving style before computed somehow - // fixes an issue with getting wrong values - // on detached elements - style = elem.style; - - computed = computed || getStyles( elem ); - - // getPropertyValue is needed for: - // .css('filter') (IE 9 only, #12537) - // .css('--customProperty) (#3144) - if ( computed ) { - ret = computed.getPropertyValue( name ) || computed[ name ]; - - if ( ret === "" && !isAttached( elem ) ) { - ret = jQuery.style( elem, name ); - } - - // A tribute to the "awesome hack by Dean Edwards" - // Android Browser returns percentage for some values, - // but width seems to be reliably pixels. - // This is against the CSSOM draft spec: - // https://drafts.csswg.org/cssom/#resolved-values - if ( !support.pixelBoxStyles() && rnumnonpx.test( ret ) && rboxStyle.test( name ) ) { - - // Remember the original values - width = style.width; - minWidth = style.minWidth; - maxWidth = style.maxWidth; - - // Put in the new values to get a computed value out - style.minWidth = style.maxWidth = style.width = ret; - ret = computed.width; - - // Revert the changed values - style.width = width; - style.minWidth = minWidth; - style.maxWidth = maxWidth; - } - } - - return ret !== undefined ? - - // Support: IE <=9 - 11 only - // IE returns zIndex value as an integer. - ret + "" : - ret; -} - - -function addGetHookIf( conditionFn, hookFn ) { - - // Define the hook, we'll check on the first run if it's really needed. - return { - get: function() { - if ( conditionFn() ) { - - // Hook not needed (or it's not possible to use it due - // to missing dependency), remove it. - delete this.get; - return; - } - - // Hook needed; redefine it so that the support test is not executed again. - return ( this.get = hookFn ).apply( this, arguments ); - } - }; -} - - -var cssPrefixes = [ "Webkit", "Moz", "ms" ], - emptyStyle = document.createElement( "div" ).style, - vendorProps = {}; - -// Return a vendor-prefixed property or undefined -function vendorPropName( name ) { - - // Check for vendor prefixed names - var capName = name[ 0 ].toUpperCase() + name.slice( 1 ), - i = cssPrefixes.length; - - while ( i-- ) { - name = cssPrefixes[ i ] + capName; - if ( name in emptyStyle ) { - return name; - } - } -} - -// Return a potentially-mapped jQuery.cssProps or vendor prefixed property -function finalPropName( name ) { - var final = jQuery.cssProps[ name ] || vendorProps[ name ]; - - if ( final ) { - return final; - } - if ( name in emptyStyle ) { - return name; - } - return vendorProps[ name ] = vendorPropName( name ) || name; -} - - -var - - // Swappable if display is none or starts with table - // except "table", "table-cell", or "table-caption" - // See here for display values: https://developer.mozilla.org/en-US/docs/CSS/display - rdisplayswap = /^(none|table(?!-c[ea]).+)/, - rcustomProp = /^--/, - cssShow = { position: "absolute", visibility: "hidden", display: "block" }, - cssNormalTransform = { - letterSpacing: "0", - fontWeight: "400" - }; - -function setPositiveNumber( _elem, value, subtract ) { - - // Any relative (+/-) values have already been - // normalized at this point - var matches = rcssNum.exec( value ); - return matches ? - - // Guard against undefined "subtract", e.g., when used as in cssHooks - Math.max( 0, matches[ 2 ] - ( subtract || 0 ) ) + ( matches[ 3 ] || "px" ) : - value; -} - -function boxModelAdjustment( elem, dimension, box, isBorderBox, styles, computedVal ) { - var i = dimension === "width" ? 1 : 0, - extra = 0, - delta = 0; - - // Adjustment may not be necessary - if ( box === ( isBorderBox ? "border" : "content" ) ) { - return 0; - } - - for ( ; i < 4; i += 2 ) { - - // Both box models exclude margin - if ( box === "margin" ) { - delta += jQuery.css( elem, box + cssExpand[ i ], true, styles ); - } - - // If we get here with a content-box, we're seeking "padding" or "border" or "margin" - if ( !isBorderBox ) { - - // Add padding - delta += jQuery.css( elem, "padding" + cssExpand[ i ], true, styles ); - - // For "border" or "margin", add border - if ( box !== "padding" ) { - delta += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); - - // But still keep track of it otherwise - } else { - extra += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); - } - - // If we get here with a border-box (content + padding + border), we're seeking "content" or - // "padding" or "margin" - } else { - - // For "content", subtract padding - if ( box === "content" ) { - delta -= jQuery.css( elem, "padding" + cssExpand[ i ], true, styles ); - } - - // For "content" or "padding", subtract border - if ( box !== "margin" ) { - delta -= jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); - } - } - } - - // Account for positive content-box scroll gutter when requested by providing computedVal - if ( !isBorderBox && computedVal >= 0 ) { - - // offsetWidth/offsetHeight is a rounded sum of content, padding, scroll gutter, and border - // Assuming integer scroll gutter, subtract the rest and round down - delta += Math.max( 0, Math.ceil( - elem[ "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] - - computedVal - - delta - - extra - - 0.5 - - // If offsetWidth/offsetHeight is unknown, then we can't determine content-box scroll gutter - // Use an explicit zero to avoid NaN (gh-3964) - ) ) || 0; - } - - return delta; -} - -function getWidthOrHeight( elem, dimension, extra ) { - - // Start with computed style - var styles = getStyles( elem ), - - // To avoid forcing a reflow, only fetch boxSizing if we need it (gh-4322). - // Fake content-box until we know it's needed to know the true value. - boxSizingNeeded = !support.boxSizingReliable() || extra, - isBorderBox = boxSizingNeeded && - jQuery.css( elem, "boxSizing", false, styles ) === "border-box", - valueIsBorderBox = isBorderBox, - - val = curCSS( elem, dimension, styles ), - offsetProp = "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ); - - // Support: Firefox <=54 - // Return a confounding non-pixel value or feign ignorance, as appropriate. - if ( rnumnonpx.test( val ) ) { - if ( !extra ) { - return val; - } - val = "auto"; - } - - - // Support: IE 9 - 11 only - // Use offsetWidth/offsetHeight for when box sizing is unreliable. - // In those cases, the computed value can be trusted to be border-box. - if ( ( !support.boxSizingReliable() && isBorderBox || - - // Support: IE 10 - 11+, Edge 15 - 18+ - // IE/Edge misreport `getComputedStyle` of table rows with width/height - // set in CSS while `offset*` properties report correct values. - // Interestingly, in some cases IE 9 doesn't suffer from this issue. - !support.reliableTrDimensions() && nodeName( elem, "tr" ) || - - // Fall back to offsetWidth/offsetHeight when value is "auto" - // This happens for inline elements with no explicit setting (gh-3571) - val === "auto" || - - // Support: Android <=4.1 - 4.3 only - // Also use offsetWidth/offsetHeight for misreported inline dimensions (gh-3602) - !parseFloat( val ) && jQuery.css( elem, "display", false, styles ) === "inline" ) && - - // Make sure the element is visible & connected - elem.getClientRects().length ) { - - isBorderBox = jQuery.css( elem, "boxSizing", false, styles ) === "border-box"; - - // Where available, offsetWidth/offsetHeight approximate border box dimensions. - // Where not available (e.g., SVG), assume unreliable box-sizing and interpret the - // retrieved value as a content box dimension. - valueIsBorderBox = offsetProp in elem; - if ( valueIsBorderBox ) { - val = elem[ offsetProp ]; - } - } - - // Normalize "" and auto - val = parseFloat( val ) || 0; - - // Adjust for the element's box model - return ( val + - boxModelAdjustment( - elem, - dimension, - extra || ( isBorderBox ? "border" : "content" ), - valueIsBorderBox, - styles, - - // Provide the current computed size to request scroll gutter calculation (gh-3589) - val - ) - ) + "px"; -} - -jQuery.extend( { - - // Add in style property hooks for overriding the default - // behavior of getting and setting a style property - cssHooks: { - opacity: { - get: function( elem, computed ) { - if ( computed ) { - - // We should always get a number back from opacity - var ret = curCSS( elem, "opacity" ); - return ret === "" ? "1" : ret; - } - } - } - }, - - // Don't automatically add "px" to these possibly-unitless properties - cssNumber: { - "animationIterationCount": true, - "columnCount": true, - "fillOpacity": true, - "flexGrow": true, - "flexShrink": true, - "fontWeight": true, - "gridArea": true, - "gridColumn": true, - "gridColumnEnd": true, - "gridColumnStart": true, - "gridRow": true, - "gridRowEnd": true, - "gridRowStart": true, - "lineHeight": true, - "opacity": true, - "order": true, - "orphans": true, - "widows": true, - "zIndex": true, - "zoom": true - }, - - // Add in properties whose names you wish to fix before - // setting or getting the value - cssProps: {}, - - // Get and set the style property on a DOM Node - style: function( elem, name, value, extra ) { - - // Don't set styles on text and comment nodes - if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) { - return; - } - - // Make sure that we're working with the right name - var ret, type, hooks, - origName = camelCase( name ), - isCustomProp = rcustomProp.test( name ), - style = elem.style; - - // Make sure that we're working with the right name. We don't - // want to query the value if it is a CSS custom property - // since they are user-defined. - if ( !isCustomProp ) { - name = finalPropName( origName ); - } - - // Gets hook for the prefixed version, then unprefixed version - hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ]; - - // Check if we're setting a value - if ( value !== undefined ) { - type = typeof value; - - // Convert "+=" or "-=" to relative numbers (#7345) - if ( type === "string" && ( ret = rcssNum.exec( value ) ) && ret[ 1 ] ) { - value = adjustCSS( elem, name, ret ); - - // Fixes bug #9237 - type = "number"; - } - - // Make sure that null and NaN values aren't set (#7116) - if ( value == null || value !== value ) { - return; - } - - // If a number was passed in, add the unit (except for certain CSS properties) - // The isCustomProp check can be removed in jQuery 4.0 when we only auto-append - // "px" to a few hardcoded values. - if ( type === "number" && !isCustomProp ) { - value += ret && ret[ 3 ] || ( jQuery.cssNumber[ origName ] ? "" : "px" ); - } - - // background-* props affect original clone's values - if ( !support.clearCloneStyle && value === "" && name.indexOf( "background" ) === 0 ) { - style[ name ] = "inherit"; - } - - // If a hook was provided, use that value, otherwise just set the specified value - if ( !hooks || !( "set" in hooks ) || - ( value = hooks.set( elem, value, extra ) ) !== undefined ) { - - if ( isCustomProp ) { - style.setProperty( name, value ); - } else { - style[ name ] = value; - } - } - - } else { - - // If a hook was provided get the non-computed value from there - if ( hooks && "get" in hooks && - ( ret = hooks.get( elem, false, extra ) ) !== undefined ) { - - return ret; - } - - // Otherwise just get the value from the style object - return style[ name ]; - } - }, - - css: function( elem, name, extra, styles ) { - var val, num, hooks, - origName = camelCase( name ), - isCustomProp = rcustomProp.test( name ); - - // Make sure that we're working with the right name. We don't - // want to modify the value if it is a CSS custom property - // since they are user-defined. - if ( !isCustomProp ) { - name = finalPropName( origName ); - } - - // Try prefixed name followed by the unprefixed name - hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ]; - - // If a hook was provided get the computed value from there - if ( hooks && "get" in hooks ) { - val = hooks.get( elem, true, extra ); - } - - // Otherwise, if a way to get the computed value exists, use that - if ( val === undefined ) { - val = curCSS( elem, name, styles ); - } - - // Convert "normal" to computed value - if ( val === "normal" && name in cssNormalTransform ) { - val = cssNormalTransform[ name ]; - } - - // Make numeric if forced or a qualifier was provided and val looks numeric - if ( extra === "" || extra ) { - num = parseFloat( val ); - return extra === true || isFinite( num ) ? num || 0 : val; - } - - return val; - } -} ); - -jQuery.each( [ "height", "width" ], function( _i, dimension ) { - jQuery.cssHooks[ dimension ] = { - get: function( elem, computed, extra ) { - if ( computed ) { - - // Certain elements can have dimension info if we invisibly show them - // but it must have a current display style that would benefit - return rdisplayswap.test( jQuery.css( elem, "display" ) ) && - - // Support: Safari 8+ - // Table columns in Safari have non-zero offsetWidth & zero - // getBoundingClientRect().width unless display is changed. - // Support: IE <=11 only - // Running getBoundingClientRect on a disconnected node - // in IE throws an error. - ( !elem.getClientRects().length || !elem.getBoundingClientRect().width ) ? - swap( elem, cssShow, function() { - return getWidthOrHeight( elem, dimension, extra ); - } ) : - getWidthOrHeight( elem, dimension, extra ); - } - }, - - set: function( elem, value, extra ) { - var matches, - styles = getStyles( elem ), - - // Only read styles.position if the test has a chance to fail - // to avoid forcing a reflow. - scrollboxSizeBuggy = !support.scrollboxSize() && - styles.position === "absolute", - - // To avoid forcing a reflow, only fetch boxSizing if we need it (gh-3991) - boxSizingNeeded = scrollboxSizeBuggy || extra, - isBorderBox = boxSizingNeeded && - jQuery.css( elem, "boxSizing", false, styles ) === "border-box", - subtract = extra ? - boxModelAdjustment( - elem, - dimension, - extra, - isBorderBox, - styles - ) : - 0; - - // Account for unreliable border-box dimensions by comparing offset* to computed and - // faking a content-box to get border and padding (gh-3699) - if ( isBorderBox && scrollboxSizeBuggy ) { - subtract -= Math.ceil( - elem[ "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] - - parseFloat( styles[ dimension ] ) - - boxModelAdjustment( elem, dimension, "border", false, styles ) - - 0.5 - ); - } - - // Convert to pixels if value adjustment is needed - if ( subtract && ( matches = rcssNum.exec( value ) ) && - ( matches[ 3 ] || "px" ) !== "px" ) { - - elem.style[ dimension ] = value; - value = jQuery.css( elem, dimension ); - } - - return setPositiveNumber( elem, value, subtract ); - } - }; -} ); - -jQuery.cssHooks.marginLeft = addGetHookIf( support.reliableMarginLeft, - function( elem, computed ) { - if ( computed ) { - return ( parseFloat( curCSS( elem, "marginLeft" ) ) || - elem.getBoundingClientRect().left - - swap( elem, { marginLeft: 0 }, function() { - return elem.getBoundingClientRect().left; - } ) - ) + "px"; - } - } -); - -// These hooks are used by animate to expand properties -jQuery.each( { - margin: "", - padding: "", - border: "Width" -}, function( prefix, suffix ) { - jQuery.cssHooks[ prefix + suffix ] = { - expand: function( value ) { - var i = 0, - expanded = {}, - - // Assumes a single number if not a string - parts = typeof value === "string" ? value.split( " " ) : [ value ]; - - for ( ; i < 4; i++ ) { - expanded[ prefix + cssExpand[ i ] + suffix ] = - parts[ i ] || parts[ i - 2 ] || parts[ 0 ]; - } - - return expanded; - } - }; - - if ( prefix !== "margin" ) { - jQuery.cssHooks[ prefix + suffix ].set = setPositiveNumber; - } -} ); - -jQuery.fn.extend( { - css: function( name, value ) { - return access( this, function( elem, name, value ) { - var styles, len, - map = {}, - i = 0; - - if ( Array.isArray( name ) ) { - styles = getStyles( elem ); - len = name.length; - - for ( ; i < len; i++ ) { - map[ name[ i ] ] = jQuery.css( elem, name[ i ], false, styles ); - } - - return map; - } - - return value !== undefined ? - jQuery.style( elem, name, value ) : - jQuery.css( elem, name ); - }, name, value, arguments.length > 1 ); - } -} ); - - -function Tween( elem, options, prop, end, easing ) { - return new Tween.prototype.init( elem, options, prop, end, easing ); -} -jQuery.Tween = Tween; - -Tween.prototype = { - constructor: Tween, - init: function( elem, options, prop, end, easing, unit ) { - this.elem = elem; - this.prop = prop; - this.easing = easing || jQuery.easing._default; - this.options = options; - this.start = this.now = this.cur(); - this.end = end; - this.unit = unit || ( jQuery.cssNumber[ prop ] ? "" : "px" ); - }, - cur: function() { - var hooks = Tween.propHooks[ this.prop ]; - - return hooks && hooks.get ? - hooks.get( this ) : - Tween.propHooks._default.get( this ); - }, - run: function( percent ) { - var eased, - hooks = Tween.propHooks[ this.prop ]; - - if ( this.options.duration ) { - this.pos = eased = jQuery.easing[ this.easing ]( - percent, this.options.duration * percent, 0, 1, this.options.duration - ); - } else { - this.pos = eased = percent; - } - this.now = ( this.end - this.start ) * eased + this.start; - - if ( this.options.step ) { - this.options.step.call( this.elem, this.now, this ); - } - - if ( hooks && hooks.set ) { - hooks.set( this ); - } else { - Tween.propHooks._default.set( this ); - } - return this; - } -}; - -Tween.prototype.init.prototype = Tween.prototype; - -Tween.propHooks = { - _default: { - get: function( tween ) { - var result; - - // Use a property on the element directly when it is not a DOM element, - // or when there is no matching style property that exists. - if ( tween.elem.nodeType !== 1 || - tween.elem[ tween.prop ] != null && tween.elem.style[ tween.prop ] == null ) { - return tween.elem[ tween.prop ]; - } - - // Passing an empty string as a 3rd parameter to .css will automatically - // attempt a parseFloat and fallback to a string if the parse fails. - // Simple values such as "10px" are parsed to Float; - // complex values such as "rotate(1rad)" are returned as-is. - result = jQuery.css( tween.elem, tween.prop, "" ); - - // Empty strings, null, undefined and "auto" are converted to 0. - return !result || result === "auto" ? 0 : result; - }, - set: function( tween ) { - - // Use step hook for back compat. - // Use cssHook if its there. - // Use .style if available and use plain properties where available. - if ( jQuery.fx.step[ tween.prop ] ) { - jQuery.fx.step[ tween.prop ]( tween ); - } else if ( tween.elem.nodeType === 1 && ( - jQuery.cssHooks[ tween.prop ] || - tween.elem.style[ finalPropName( tween.prop ) ] != null ) ) { - jQuery.style( tween.elem, tween.prop, tween.now + tween.unit ); - } else { - tween.elem[ tween.prop ] = tween.now; - } - } - } -}; - -// Support: IE <=9 only -// Panic based approach to setting things on disconnected nodes -Tween.propHooks.scrollTop = Tween.propHooks.scrollLeft = { - set: function( tween ) { - if ( tween.elem.nodeType && tween.elem.parentNode ) { - tween.elem[ tween.prop ] = tween.now; - } - } -}; - -jQuery.easing = { - linear: function( p ) { - return p; - }, - swing: function( p ) { - return 0.5 - Math.cos( p * Math.PI ) / 2; - }, - _default: "swing" -}; - -jQuery.fx = Tween.prototype.init; - -// Back compat <1.8 extension point -jQuery.fx.step = {}; - - - - -var - fxNow, inProgress, - rfxtypes = /^(?:toggle|show|hide)$/, - rrun = /queueHooks$/; - -function schedule() { - if ( inProgress ) { - if ( document.hidden === false && window.requestAnimationFrame ) { - window.requestAnimationFrame( schedule ); - } else { - window.setTimeout( schedule, jQuery.fx.interval ); - } - - jQuery.fx.tick(); - } -} - -// Animations created synchronously will run synchronously -function createFxNow() { - window.setTimeout( function() { - fxNow = undefined; - } ); - return ( fxNow = Date.now() ); -} - -// Generate parameters to create a standard animation -function genFx( type, includeWidth ) { - var which, - i = 0, - attrs = { height: type }; - - // If we include width, step value is 1 to do all cssExpand values, - // otherwise step value is 2 to skip over Left and Right - includeWidth = includeWidth ? 1 : 0; - for ( ; i < 4; i += 2 - includeWidth ) { - which = cssExpand[ i ]; - attrs[ "margin" + which ] = attrs[ "padding" + which ] = type; - } - - if ( includeWidth ) { - attrs.opacity = attrs.width = type; - } - - return attrs; -} - -function createTween( value, prop, animation ) { - var tween, - collection = ( Animation.tweeners[ prop ] || [] ).concat( Animation.tweeners[ "*" ] ), - index = 0, - length = collection.length; - for ( ; index < length; index++ ) { - if ( ( tween = collection[ index ].call( animation, prop, value ) ) ) { - - // We're done with this property - return tween; - } - } -} - -function defaultPrefilter( elem, props, opts ) { - var prop, value, toggle, hooks, oldfire, propTween, restoreDisplay, display, - isBox = "width" in props || "height" in props, - anim = this, - orig = {}, - style = elem.style, - hidden = elem.nodeType && isHiddenWithinTree( elem ), - dataShow = dataPriv.get( elem, "fxshow" ); - - // Queue-skipping animations hijack the fx hooks - if ( !opts.queue ) { - hooks = jQuery._queueHooks( elem, "fx" ); - if ( hooks.unqueued == null ) { - hooks.unqueued = 0; - oldfire = hooks.empty.fire; - hooks.empty.fire = function() { - if ( !hooks.unqueued ) { - oldfire(); - } - }; - } - hooks.unqueued++; - - anim.always( function() { - - // Ensure the complete handler is called before this completes - anim.always( function() { - hooks.unqueued--; - if ( !jQuery.queue( elem, "fx" ).length ) { - hooks.empty.fire(); - } - } ); - } ); - } - - // Detect show/hide animations - for ( prop in props ) { - value = props[ prop ]; - if ( rfxtypes.test( value ) ) { - delete props[ prop ]; - toggle = toggle || value === "toggle"; - if ( value === ( hidden ? "hide" : "show" ) ) { - - // Pretend to be hidden if this is a "show" and - // there is still data from a stopped show/hide - if ( value === "show" && dataShow && dataShow[ prop ] !== undefined ) { - hidden = true; - - // Ignore all other no-op show/hide data - } else { - continue; - } - } - orig[ prop ] = dataShow && dataShow[ prop ] || jQuery.style( elem, prop ); - } - } - - // Bail out if this is a no-op like .hide().hide() - propTween = !jQuery.isEmptyObject( props ); - if ( !propTween && jQuery.isEmptyObject( orig ) ) { - return; - } - - // Restrict "overflow" and "display" styles during box animations - if ( isBox && elem.nodeType === 1 ) { - - // Support: IE <=9 - 11, Edge 12 - 15 - // Record all 3 overflow attributes because IE does not infer the shorthand - // from identically-valued overflowX and overflowY and Edge just mirrors - // the overflowX value there. - opts.overflow = [ style.overflow, style.overflowX, style.overflowY ]; - - // Identify a display type, preferring old show/hide data over the CSS cascade - restoreDisplay = dataShow && dataShow.display; - if ( restoreDisplay == null ) { - restoreDisplay = dataPriv.get( elem, "display" ); - } - display = jQuery.css( elem, "display" ); - if ( display === "none" ) { - if ( restoreDisplay ) { - display = restoreDisplay; - } else { - - // Get nonempty value(s) by temporarily forcing visibility - showHide( [ elem ], true ); - restoreDisplay = elem.style.display || restoreDisplay; - display = jQuery.css( elem, "display" ); - showHide( [ elem ] ); - } - } - - // Animate inline elements as inline-block - if ( display === "inline" || display === "inline-block" && restoreDisplay != null ) { - if ( jQuery.css( elem, "float" ) === "none" ) { - - // Restore the original display value at the end of pure show/hide animations - if ( !propTween ) { - anim.done( function() { - style.display = restoreDisplay; - } ); - if ( restoreDisplay == null ) { - display = style.display; - restoreDisplay = display === "none" ? "" : display; - } - } - style.display = "inline-block"; - } - } - } - - if ( opts.overflow ) { - style.overflow = "hidden"; - anim.always( function() { - style.overflow = opts.overflow[ 0 ]; - style.overflowX = opts.overflow[ 1 ]; - style.overflowY = opts.overflow[ 2 ]; - } ); - } - - // Implement show/hide animations - propTween = false; - for ( prop in orig ) { - - // General show/hide setup for this element animation - if ( !propTween ) { - if ( dataShow ) { - if ( "hidden" in dataShow ) { - hidden = dataShow.hidden; - } - } else { - dataShow = dataPriv.access( elem, "fxshow", { display: restoreDisplay } ); - } - - // Store hidden/visible for toggle so `.stop().toggle()` "reverses" - if ( toggle ) { - dataShow.hidden = !hidden; - } - - // Show elements before animating them - if ( hidden ) { - showHide( [ elem ], true ); - } - - /* eslint-disable no-loop-func */ - - anim.done( function() { - - /* eslint-enable no-loop-func */ - - // The final step of a "hide" animation is actually hiding the element - if ( !hidden ) { - showHide( [ elem ] ); - } - dataPriv.remove( elem, "fxshow" ); - for ( prop in orig ) { - jQuery.style( elem, prop, orig[ prop ] ); - } - } ); - } - - // Per-property setup - propTween = createTween( hidden ? dataShow[ prop ] : 0, prop, anim ); - if ( !( prop in dataShow ) ) { - dataShow[ prop ] = propTween.start; - if ( hidden ) { - propTween.end = propTween.start; - propTween.start = 0; - } - } - } -} - -function propFilter( props, specialEasing ) { - var index, name, easing, value, hooks; - - // camelCase, specialEasing and expand cssHook pass - for ( index in props ) { - name = camelCase( index ); - easing = specialEasing[ name ]; - value = props[ index ]; - if ( Array.isArray( value ) ) { - easing = value[ 1 ]; - value = props[ index ] = value[ 0 ]; - } - - if ( index !== name ) { - props[ name ] = value; - delete props[ index ]; - } - - hooks = jQuery.cssHooks[ name ]; - if ( hooks && "expand" in hooks ) { - value = hooks.expand( value ); - delete props[ name ]; - - // Not quite $.extend, this won't overwrite existing keys. - // Reusing 'index' because we have the correct "name" - for ( index in value ) { - if ( !( index in props ) ) { - props[ index ] = value[ index ]; - specialEasing[ index ] = easing; - } - } - } else { - specialEasing[ name ] = easing; - } - } -} - -function Animation( elem, properties, options ) { - var result, - stopped, - index = 0, - length = Animation.prefilters.length, - deferred = jQuery.Deferred().always( function() { - - // Don't match elem in the :animated selector - delete tick.elem; - } ), - tick = function() { - if ( stopped ) { - return false; - } - var currentTime = fxNow || createFxNow(), - remaining = Math.max( 0, animation.startTime + animation.duration - currentTime ), - - // Support: Android 2.3 only - // Archaic crash bug won't allow us to use `1 - ( 0.5 || 0 )` (#12497) - temp = remaining / animation.duration || 0, - percent = 1 - temp, - index = 0, - length = animation.tweens.length; - - for ( ; index < length; index++ ) { - animation.tweens[ index ].run( percent ); - } - - deferred.notifyWith( elem, [ animation, percent, remaining ] ); - - // If there's more to do, yield - if ( percent < 1 && length ) { - return remaining; - } - - // If this was an empty animation, synthesize a final progress notification - if ( !length ) { - deferred.notifyWith( elem, [ animation, 1, 0 ] ); - } - - // Resolve the animation and report its conclusion - deferred.resolveWith( elem, [ animation ] ); - return false; - }, - animation = deferred.promise( { - elem: elem, - props: jQuery.extend( {}, properties ), - opts: jQuery.extend( true, { - specialEasing: {}, - easing: jQuery.easing._default - }, options ), - originalProperties: properties, - originalOptions: options, - startTime: fxNow || createFxNow(), - duration: options.duration, - tweens: [], - createTween: function( prop, end ) { - var tween = jQuery.Tween( elem, animation.opts, prop, end, - animation.opts.specialEasing[ prop ] || animation.opts.easing ); - animation.tweens.push( tween ); - return tween; - }, - stop: function( gotoEnd ) { - var index = 0, - - // If we are going to the end, we want to run all the tweens - // otherwise we skip this part - length = gotoEnd ? animation.tweens.length : 0; - if ( stopped ) { - return this; - } - stopped = true; - for ( ; index < length; index++ ) { - animation.tweens[ index ].run( 1 ); - } - - // Resolve when we played the last frame; otherwise, reject - if ( gotoEnd ) { - deferred.notifyWith( elem, [ animation, 1, 0 ] ); - deferred.resolveWith( elem, [ animation, gotoEnd ] ); - } else { - deferred.rejectWith( elem, [ animation, gotoEnd ] ); - } - return this; - } - } ), - props = animation.props; - - propFilter( props, animation.opts.specialEasing ); - - for ( ; index < length; index++ ) { - result = Animation.prefilters[ index ].call( animation, elem, props, animation.opts ); - if ( result ) { - if ( isFunction( result.stop ) ) { - jQuery._queueHooks( animation.elem, animation.opts.queue ).stop = - result.stop.bind( result ); - } - return result; - } - } - - jQuery.map( props, createTween, animation ); - - if ( isFunction( animation.opts.start ) ) { - animation.opts.start.call( elem, animation ); - } - - // Attach callbacks from options - animation - .progress( animation.opts.progress ) - .done( animation.opts.done, animation.opts.complete ) - .fail( animation.opts.fail ) - .always( animation.opts.always ); - - jQuery.fx.timer( - jQuery.extend( tick, { - elem: elem, - anim: animation, - queue: animation.opts.queue - } ) - ); - - return animation; -} - -jQuery.Animation = jQuery.extend( Animation, { - - tweeners: { - "*": [ function( prop, value ) { - var tween = this.createTween( prop, value ); - adjustCSS( tween.elem, prop, rcssNum.exec( value ), tween ); - return tween; - } ] - }, - - tweener: function( props, callback ) { - if ( isFunction( props ) ) { - callback = props; - props = [ "*" ]; - } else { - props = props.match( rnothtmlwhite ); - } - - var prop, - index = 0, - length = props.length; - - for ( ; index < length; index++ ) { - prop = props[ index ]; - Animation.tweeners[ prop ] = Animation.tweeners[ prop ] || []; - Animation.tweeners[ prop ].unshift( callback ); - } - }, - - prefilters: [ defaultPrefilter ], - - prefilter: function( callback, prepend ) { - if ( prepend ) { - Animation.prefilters.unshift( callback ); - } else { - Animation.prefilters.push( callback ); - } - } -} ); - -jQuery.speed = function( speed, easing, fn ) { - var opt = speed && typeof speed === "object" ? jQuery.extend( {}, speed ) : { - complete: fn || !fn && easing || - isFunction( speed ) && speed, - duration: speed, - easing: fn && easing || easing && !isFunction( easing ) && easing - }; - - // Go to the end state if fx are off - if ( jQuery.fx.off ) { - opt.duration = 0; - - } else { - if ( typeof opt.duration !== "number" ) { - if ( opt.duration in jQuery.fx.speeds ) { - opt.duration = jQuery.fx.speeds[ opt.duration ]; - - } else { - opt.duration = jQuery.fx.speeds._default; - } - } - } - - // Normalize opt.queue - true/undefined/null -> "fx" - if ( opt.queue == null || opt.queue === true ) { - opt.queue = "fx"; - } - - // Queueing - opt.old = opt.complete; - - opt.complete = function() { - if ( isFunction( opt.old ) ) { - opt.old.call( this ); - } - - if ( opt.queue ) { - jQuery.dequeue( this, opt.queue ); - } - }; - - return opt; -}; - -jQuery.fn.extend( { - fadeTo: function( speed, to, easing, callback ) { - - // Show any hidden elements after setting opacity to 0 - return this.filter( isHiddenWithinTree ).css( "opacity", 0 ).show() - - // Animate to the value specified - .end().animate( { opacity: to }, speed, easing, callback ); - }, - animate: function( prop, speed, easing, callback ) { - var empty = jQuery.isEmptyObject( prop ), - optall = jQuery.speed( speed, easing, callback ), - doAnimation = function() { - - // Operate on a copy of prop so per-property easing won't be lost - var anim = Animation( this, jQuery.extend( {}, prop ), optall ); - - // Empty animations, or finishing resolves immediately - if ( empty || dataPriv.get( this, "finish" ) ) { - anim.stop( true ); - } - }; - - doAnimation.finish = doAnimation; - - return empty || optall.queue === false ? - this.each( doAnimation ) : - this.queue( optall.queue, doAnimation ); - }, - stop: function( type, clearQueue, gotoEnd ) { - var stopQueue = function( hooks ) { - var stop = hooks.stop; - delete hooks.stop; - stop( gotoEnd ); - }; - - if ( typeof type !== "string" ) { - gotoEnd = clearQueue; - clearQueue = type; - type = undefined; - } - if ( clearQueue ) { - this.queue( type || "fx", [] ); - } - - return this.each( function() { - var dequeue = true, - index = type != null && type + "queueHooks", - timers = jQuery.timers, - data = dataPriv.get( this ); - - if ( index ) { - if ( data[ index ] && data[ index ].stop ) { - stopQueue( data[ index ] ); - } - } else { - for ( index in data ) { - if ( data[ index ] && data[ index ].stop && rrun.test( index ) ) { - stopQueue( data[ index ] ); - } - } - } - - for ( index = timers.length; index--; ) { - if ( timers[ index ].elem === this && - ( type == null || timers[ index ].queue === type ) ) { - - timers[ index ].anim.stop( gotoEnd ); - dequeue = false; - timers.splice( index, 1 ); - } - } - - // Start the next in the queue if the last step wasn't forced. - // Timers currently will call their complete callbacks, which - // will dequeue but only if they were gotoEnd. - if ( dequeue || !gotoEnd ) { - jQuery.dequeue( this, type ); - } - } ); - }, - finish: function( type ) { - if ( type !== false ) { - type = type || "fx"; - } - return this.each( function() { - var index, - data = dataPriv.get( this ), - queue = data[ type + "queue" ], - hooks = data[ type + "queueHooks" ], - timers = jQuery.timers, - length = queue ? queue.length : 0; - - // Enable finishing flag on private data - data.finish = true; - - // Empty the queue first - jQuery.queue( this, type, [] ); - - if ( hooks && hooks.stop ) { - hooks.stop.call( this, true ); - } - - // Look for any active animations, and finish them - for ( index = timers.length; index--; ) { - if ( timers[ index ].elem === this && timers[ index ].queue === type ) { - timers[ index ].anim.stop( true ); - timers.splice( index, 1 ); - } - } - - // Look for any animations in the old queue and finish them - for ( index = 0; index < length; index++ ) { - if ( queue[ index ] && queue[ index ].finish ) { - queue[ index ].finish.call( this ); - } - } - - // Turn off finishing flag - delete data.finish; - } ); - } -} ); - -jQuery.each( [ "toggle", "show", "hide" ], function( _i, name ) { - var cssFn = jQuery.fn[ name ]; - jQuery.fn[ name ] = function( speed, easing, callback ) { - return speed == null || typeof speed === "boolean" ? - cssFn.apply( this, arguments ) : - this.animate( genFx( name, true ), speed, easing, callback ); - }; -} ); - -// Generate shortcuts for custom animations -jQuery.each( { - slideDown: genFx( "show" ), - slideUp: genFx( "hide" ), - slideToggle: genFx( "toggle" ), - fadeIn: { opacity: "show" }, - fadeOut: { opacity: "hide" }, - fadeToggle: { opacity: "toggle" } -}, function( name, props ) { - jQuery.fn[ name ] = function( speed, easing, callback ) { - return this.animate( props, speed, easing, callback ); - }; -} ); - -jQuery.timers = []; -jQuery.fx.tick = function() { - var timer, - i = 0, - timers = jQuery.timers; - - fxNow = Date.now(); - - for ( ; i < timers.length; i++ ) { - timer = timers[ i ]; - - // Run the timer and safely remove it when done (allowing for external removal) - if ( !timer() && timers[ i ] === timer ) { - timers.splice( i--, 1 ); - } - } - - if ( !timers.length ) { - jQuery.fx.stop(); - } - fxNow = undefined; -}; - -jQuery.fx.timer = function( timer ) { - jQuery.timers.push( timer ); - jQuery.fx.start(); -}; - -jQuery.fx.interval = 13; -jQuery.fx.start = function() { - if ( inProgress ) { - return; - } - - inProgress = true; - schedule(); -}; - -jQuery.fx.stop = function() { - inProgress = null; -}; - -jQuery.fx.speeds = { - slow: 600, - fast: 200, - - // Default speed - _default: 400 -}; - - -// Based off of the plugin by Clint Helfers, with permission. -// https://web.archive.org/web/20100324014747/http://blindsignals.com/index.php/2009/07/jquery-delay/ -jQuery.fn.delay = function( time, type ) { - time = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time; - type = type || "fx"; - - return this.queue( type, function( next, hooks ) { - var timeout = window.setTimeout( next, time ); - hooks.stop = function() { - window.clearTimeout( timeout ); - }; - } ); -}; - - -( function() { - var input = document.createElement( "input" ), - select = document.createElement( "select" ), - opt = select.appendChild( document.createElement( "option" ) ); - - input.type = "checkbox"; - - // Support: Android <=4.3 only - // Default value for a checkbox should be "on" - support.checkOn = input.value !== ""; - - // Support: IE <=11 only - // Must access selectedIndex to make default options select - support.optSelected = opt.selected; - - // Support: IE <=11 only - // An input loses its value after becoming a radio - input = document.createElement( "input" ); - input.value = "t"; - input.type = "radio"; - support.radioValue = input.value === "t"; -} )(); - - -var boolHook, - attrHandle = jQuery.expr.attrHandle; - -jQuery.fn.extend( { - attr: function( name, value ) { - return access( this, jQuery.attr, name, value, arguments.length > 1 ); - }, - - removeAttr: function( name ) { - return this.each( function() { - jQuery.removeAttr( this, name ); - } ); - } -} ); - -jQuery.extend( { - attr: function( elem, name, value ) { - var ret, hooks, - nType = elem.nodeType; - - // Don't get/set attributes on text, comment and attribute nodes - if ( nType === 3 || nType === 8 || nType === 2 ) { - return; - } - - // Fallback to prop when attributes are not supported - if ( typeof elem.getAttribute === "undefined" ) { - return jQuery.prop( elem, name, value ); - } - - // Attribute hooks are determined by the lowercase version - // Grab necessary hook if one is defined - if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) { - hooks = jQuery.attrHooks[ name.toLowerCase() ] || - ( jQuery.expr.match.bool.test( name ) ? boolHook : undefined ); - } - - if ( value !== undefined ) { - if ( value === null ) { - jQuery.removeAttr( elem, name ); - return; - } - - if ( hooks && "set" in hooks && - ( ret = hooks.set( elem, value, name ) ) !== undefined ) { - return ret; - } - - elem.setAttribute( name, value + "" ); - return value; - } - - if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) { - return ret; - } - - ret = jQuery.find.attr( elem, name ); - - // Non-existent attributes return null, we normalize to undefined - return ret == null ? undefined : ret; - }, - - attrHooks: { - type: { - set: function( elem, value ) { - if ( !support.radioValue && value === "radio" && - nodeName( elem, "input" ) ) { - var val = elem.value; - elem.setAttribute( "type", value ); - if ( val ) { - elem.value = val; - } - return value; - } - } - } - }, - - removeAttr: function( elem, value ) { - var name, - i = 0, - - // Attribute names can contain non-HTML whitespace characters - // https://html.spec.whatwg.org/multipage/syntax.html#attributes-2 - attrNames = value && value.match( rnothtmlwhite ); - - if ( attrNames && elem.nodeType === 1 ) { - while ( ( name = attrNames[ i++ ] ) ) { - elem.removeAttribute( name ); - } - } - } -} ); - -// Hooks for boolean attributes -boolHook = { - set: function( elem, value, name ) { - if ( value === false ) { - - // Remove boolean attributes when set to false - jQuery.removeAttr( elem, name ); - } else { - elem.setAttribute( name, name ); - } - return name; - } -}; - -jQuery.each( jQuery.expr.match.bool.source.match( /\w+/g ), function( _i, name ) { - var getter = attrHandle[ name ] || jQuery.find.attr; - - attrHandle[ name ] = function( elem, name, isXML ) { - var ret, handle, - lowercaseName = name.toLowerCase(); - - if ( !isXML ) { - - // Avoid an infinite loop by temporarily removing this function from the getter - handle = attrHandle[ lowercaseName ]; - attrHandle[ lowercaseName ] = ret; - ret = getter( elem, name, isXML ) != null ? - lowercaseName : - null; - attrHandle[ lowercaseName ] = handle; - } - return ret; - }; -} ); - - - - -var rfocusable = /^(?:input|select|textarea|button)$/i, - rclickable = /^(?:a|area)$/i; - -jQuery.fn.extend( { - prop: function( name, value ) { - return access( this, jQuery.prop, name, value, arguments.length > 1 ); - }, - - removeProp: function( name ) { - return this.each( function() { - delete this[ jQuery.propFix[ name ] || name ]; - } ); - } -} ); - -jQuery.extend( { - prop: function( elem, name, value ) { - var ret, hooks, - nType = elem.nodeType; - - // Don't get/set properties on text, comment and attribute nodes - if ( nType === 3 || nType === 8 || nType === 2 ) { - return; - } - - if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) { - - // Fix name and attach hooks - name = jQuery.propFix[ name ] || name; - hooks = jQuery.propHooks[ name ]; - } - - if ( value !== undefined ) { - if ( hooks && "set" in hooks && - ( ret = hooks.set( elem, value, name ) ) !== undefined ) { - return ret; - } - - return ( elem[ name ] = value ); - } - - if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) { - return ret; - } - - return elem[ name ]; - }, - - propHooks: { - tabIndex: { - get: function( elem ) { - - // Support: IE <=9 - 11 only - // elem.tabIndex doesn't always return the - // correct value when it hasn't been explicitly set - // https://web.archive.org/web/20141116233347/http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/ - // Use proper attribute retrieval(#12072) - var tabindex = jQuery.find.attr( elem, "tabindex" ); - - if ( tabindex ) { - return parseInt( tabindex, 10 ); - } - - if ( - rfocusable.test( elem.nodeName ) || - rclickable.test( elem.nodeName ) && - elem.href - ) { - return 0; - } - - return -1; - } - } - }, - - propFix: { - "for": "htmlFor", - "class": "className" - } -} ); - -// Support: IE <=11 only -// Accessing the selectedIndex property -// forces the browser to respect setting selected -// on the option -// The getter ensures a default option is selected -// when in an optgroup -// eslint rule "no-unused-expressions" is disabled for this code -// since it considers such accessions noop -if ( !support.optSelected ) { - jQuery.propHooks.selected = { - get: function( elem ) { - - /* eslint no-unused-expressions: "off" */ - - var parent = elem.parentNode; - if ( parent && parent.parentNode ) { - parent.parentNode.selectedIndex; - } - return null; - }, - set: function( elem ) { - - /* eslint no-unused-expressions: "off" */ - - var parent = elem.parentNode; - if ( parent ) { - parent.selectedIndex; - - if ( parent.parentNode ) { - parent.parentNode.selectedIndex; - } - } - } - }; -} - -jQuery.each( [ - "tabIndex", - "readOnly", - "maxLength", - "cellSpacing", - "cellPadding", - "rowSpan", - "colSpan", - "useMap", - "frameBorder", - "contentEditable" -], function() { - jQuery.propFix[ this.toLowerCase() ] = this; -} ); - - - - - // Strip and collapse whitespace according to HTML spec - // https://infra.spec.whatwg.org/#strip-and-collapse-ascii-whitespace - function stripAndCollapse( value ) { - var tokens = value.match( rnothtmlwhite ) || []; - return tokens.join( " " ); - } - - -function getClass( elem ) { - return elem.getAttribute && elem.getAttribute( "class" ) || ""; -} - -function classesToArray( value ) { - if ( Array.isArray( value ) ) { - return value; - } - if ( typeof value === "string" ) { - return value.match( rnothtmlwhite ) || []; - } - return []; -} - -jQuery.fn.extend( { - addClass: function( value ) { - var classes, elem, cur, curValue, clazz, j, finalValue, - i = 0; - - if ( isFunction( value ) ) { - return this.each( function( j ) { - jQuery( this ).addClass( value.call( this, j, getClass( this ) ) ); - } ); - } - - classes = classesToArray( value ); - - if ( classes.length ) { - while ( ( elem = this[ i++ ] ) ) { - curValue = getClass( elem ); - cur = elem.nodeType === 1 && ( " " + stripAndCollapse( curValue ) + " " ); - - if ( cur ) { - j = 0; - while ( ( clazz = classes[ j++ ] ) ) { - if ( cur.indexOf( " " + clazz + " " ) < 0 ) { - cur += clazz + " "; - } - } - - // Only assign if different to avoid unneeded rendering. - finalValue = stripAndCollapse( cur ); - if ( curValue !== finalValue ) { - elem.setAttribute( "class", finalValue ); - } - } - } - } - - return this; - }, - - removeClass: function( value ) { - var classes, elem, cur, curValue, clazz, j, finalValue, - i = 0; - - if ( isFunction( value ) ) { - return this.each( function( j ) { - jQuery( this ).removeClass( value.call( this, j, getClass( this ) ) ); - } ); - } - - if ( !arguments.length ) { - return this.attr( "class", "" ); - } - - classes = classesToArray( value ); - - if ( classes.length ) { - while ( ( elem = this[ i++ ] ) ) { - curValue = getClass( elem ); - - // This expression is here for better compressibility (see addClass) - cur = elem.nodeType === 1 && ( " " + stripAndCollapse( curValue ) + " " ); - - if ( cur ) { - j = 0; - while ( ( clazz = classes[ j++ ] ) ) { - - // Remove *all* instances - while ( cur.indexOf( " " + clazz + " " ) > -1 ) { - cur = cur.replace( " " + clazz + " ", " " ); - } - } - - // Only assign if different to avoid unneeded rendering. - finalValue = stripAndCollapse( cur ); - if ( curValue !== finalValue ) { - elem.setAttribute( "class", finalValue ); - } - } - } - } - - return this; - }, - - toggleClass: function( value, stateVal ) { - var type = typeof value, - isValidValue = type === "string" || Array.isArray( value ); - - if ( typeof stateVal === "boolean" && isValidValue ) { - return stateVal ? this.addClass( value ) : this.removeClass( value ); - } - - if ( isFunction( value ) ) { - return this.each( function( i ) { - jQuery( this ).toggleClass( - value.call( this, i, getClass( this ), stateVal ), - stateVal - ); - } ); - } - - return this.each( function() { - var className, i, self, classNames; - - if ( isValidValue ) { - - // Toggle individual class names - i = 0; - self = jQuery( this ); - classNames = classesToArray( value ); - - while ( ( className = classNames[ i++ ] ) ) { - - // Check each className given, space separated list - if ( self.hasClass( className ) ) { - self.removeClass( className ); - } else { - self.addClass( className ); - } - } - - // Toggle whole class name - } else if ( value === undefined || type === "boolean" ) { - className = getClass( this ); - if ( className ) { - - // Store className if set - dataPriv.set( this, "__className__", className ); - } - - // If the element has a class name or if we're passed `false`, - // then remove the whole classname (if there was one, the above saved it). - // Otherwise bring back whatever was previously saved (if anything), - // falling back to the empty string if nothing was stored. - if ( this.setAttribute ) { - this.setAttribute( "class", - className || value === false ? - "" : - dataPriv.get( this, "__className__" ) || "" - ); - } - } - } ); - }, - - hasClass: function( selector ) { - var className, elem, - i = 0; - - className = " " + selector + " "; - while ( ( elem = this[ i++ ] ) ) { - if ( elem.nodeType === 1 && - ( " " + stripAndCollapse( getClass( elem ) ) + " " ).indexOf( className ) > -1 ) { - return true; - } - } - - return false; - } -} ); - - - - -var rreturn = /\r/g; - -jQuery.fn.extend( { - val: function( value ) { - var hooks, ret, valueIsFunction, - elem = this[ 0 ]; - - if ( !arguments.length ) { - if ( elem ) { - hooks = jQuery.valHooks[ elem.type ] || - jQuery.valHooks[ elem.nodeName.toLowerCase() ]; - - if ( hooks && - "get" in hooks && - ( ret = hooks.get( elem, "value" ) ) !== undefined - ) { - return ret; - } - - ret = elem.value; - - // Handle most common string cases - if ( typeof ret === "string" ) { - return ret.replace( rreturn, "" ); - } - - // Handle cases where value is null/undef or number - return ret == null ? "" : ret; - } - - return; - } - - valueIsFunction = isFunction( value ); - - return this.each( function( i ) { - var val; - - if ( this.nodeType !== 1 ) { - return; - } - - if ( valueIsFunction ) { - val = value.call( this, i, jQuery( this ).val() ); - } else { - val = value; - } - - // Treat null/undefined as ""; convert numbers to string - if ( val == null ) { - val = ""; - - } else if ( typeof val === "number" ) { - val += ""; - - } else if ( Array.isArray( val ) ) { - val = jQuery.map( val, function( value ) { - return value == null ? "" : value + ""; - } ); - } - - hooks = jQuery.valHooks[ this.type ] || jQuery.valHooks[ this.nodeName.toLowerCase() ]; - - // If set returns undefined, fall back to normal setting - if ( !hooks || !( "set" in hooks ) || hooks.set( this, val, "value" ) === undefined ) { - this.value = val; - } - } ); - } -} ); - -jQuery.extend( { - valHooks: { - option: { - get: function( elem ) { - - var val = jQuery.find.attr( elem, "value" ); - return val != null ? - val : - - // Support: IE <=10 - 11 only - // option.text throws exceptions (#14686, #14858) - // Strip and collapse whitespace - // https://html.spec.whatwg.org/#strip-and-collapse-whitespace - stripAndCollapse( jQuery.text( elem ) ); - } - }, - select: { - get: function( elem ) { - var value, option, i, - options = elem.options, - index = elem.selectedIndex, - one = elem.type === "select-one", - values = one ? null : [], - max = one ? index + 1 : options.length; - - if ( index < 0 ) { - i = max; - - } else { - i = one ? index : 0; - } - - // Loop through all the selected options - for ( ; i < max; i++ ) { - option = options[ i ]; - - // Support: IE <=9 only - // IE8-9 doesn't update selected after form reset (#2551) - if ( ( option.selected || i === index ) && - - // Don't return options that are disabled or in a disabled optgroup - !option.disabled && - ( !option.parentNode.disabled || - !nodeName( option.parentNode, "optgroup" ) ) ) { - - // Get the specific value for the option - value = jQuery( option ).val(); - - // We don't need an array for one selects - if ( one ) { - return value; - } - - // Multi-Selects return an array - values.push( value ); - } - } - - return values; - }, - - set: function( elem, value ) { - var optionSet, option, - options = elem.options, - values = jQuery.makeArray( value ), - i = options.length; - - while ( i-- ) { - option = options[ i ]; - - /* eslint-disable no-cond-assign */ - - if ( option.selected = - jQuery.inArray( jQuery.valHooks.option.get( option ), values ) > -1 - ) { - optionSet = true; - } - - /* eslint-enable no-cond-assign */ - } - - // Force browsers to behave consistently when non-matching value is set - if ( !optionSet ) { - elem.selectedIndex = -1; - } - return values; - } - } - } -} ); - -// Radios and checkboxes getter/setter -jQuery.each( [ "radio", "checkbox" ], function() { - jQuery.valHooks[ this ] = { - set: function( elem, value ) { - if ( Array.isArray( value ) ) { - return ( elem.checked = jQuery.inArray( jQuery( elem ).val(), value ) > -1 ); - } - } - }; - if ( !support.checkOn ) { - jQuery.valHooks[ this ].get = function( elem ) { - return elem.getAttribute( "value" ) === null ? "on" : elem.value; - }; - } -} ); - - - - -// Return jQuery for attributes-only inclusion - - -support.focusin = "onfocusin" in window; - - -var rfocusMorph = /^(?:focusinfocus|focusoutblur)$/, - stopPropagationCallback = function( e ) { - e.stopPropagation(); - }; - -jQuery.extend( jQuery.event, { - - trigger: function( event, data, elem, onlyHandlers ) { - - var i, cur, tmp, bubbleType, ontype, handle, special, lastElement, - eventPath = [ elem || document ], - type = hasOwn.call( event, "type" ) ? event.type : event, - namespaces = hasOwn.call( event, "namespace" ) ? event.namespace.split( "." ) : []; - - cur = lastElement = tmp = elem = elem || document; - - // Don't do events on text and comment nodes - if ( elem.nodeType === 3 || elem.nodeType === 8 ) { - return; - } - - // focus/blur morphs to focusin/out; ensure we're not firing them right now - if ( rfocusMorph.test( type + jQuery.event.triggered ) ) { - return; - } - - if ( type.indexOf( "." ) > -1 ) { - - // Namespaced trigger; create a regexp to match event type in handle() - namespaces = type.split( "." ); - type = namespaces.shift(); - namespaces.sort(); - } - ontype = type.indexOf( ":" ) < 0 && "on" + type; - - // Caller can pass in a jQuery.Event object, Object, or just an event type string - event = event[ jQuery.expando ] ? - event : - new jQuery.Event( type, typeof event === "object" && event ); - - // Trigger bitmask: & 1 for native handlers; & 2 for jQuery (always true) - event.isTrigger = onlyHandlers ? 2 : 3; - event.namespace = namespaces.join( "." ); - event.rnamespace = event.namespace ? - new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ) : - null; - - // Clean up the event in case it is being reused - event.result = undefined; - if ( !event.target ) { - event.target = elem; - } - - // Clone any incoming data and prepend the event, creating the handler arg list - data = data == null ? - [ event ] : - jQuery.makeArray( data, [ event ] ); - - // Allow special events to draw outside the lines - special = jQuery.event.special[ type ] || {}; - if ( !onlyHandlers && special.trigger && special.trigger.apply( elem, data ) === false ) { - return; - } - - // Determine event propagation path in advance, per W3C events spec (#9951) - // Bubble up to document, then to window; watch for a global ownerDocument var (#9724) - if ( !onlyHandlers && !special.noBubble && !isWindow( elem ) ) { - - bubbleType = special.delegateType || type; - if ( !rfocusMorph.test( bubbleType + type ) ) { - cur = cur.parentNode; - } - for ( ; cur; cur = cur.parentNode ) { - eventPath.push( cur ); - tmp = cur; - } - - // Only add window if we got to document (e.g., not plain obj or detached DOM) - if ( tmp === ( elem.ownerDocument || document ) ) { - eventPath.push( tmp.defaultView || tmp.parentWindow || window ); - } - } - - // Fire handlers on the event path - i = 0; - while ( ( cur = eventPath[ i++ ] ) && !event.isPropagationStopped() ) { - lastElement = cur; - event.type = i > 1 ? - bubbleType : - special.bindType || type; - - // jQuery handler - handle = ( dataPriv.get( cur, "events" ) || Object.create( null ) )[ event.type ] && - dataPriv.get( cur, "handle" ); - if ( handle ) { - handle.apply( cur, data ); - } - - // Native handler - handle = ontype && cur[ ontype ]; - if ( handle && handle.apply && acceptData( cur ) ) { - event.result = handle.apply( cur, data ); - if ( event.result === false ) { - event.preventDefault(); - } - } - } - event.type = type; - - // If nobody prevented the default action, do it now - if ( !onlyHandlers && !event.isDefaultPrevented() ) { - - if ( ( !special._default || - special._default.apply( eventPath.pop(), data ) === false ) && - acceptData( elem ) ) { - - // Call a native DOM method on the target with the same name as the event. - // Don't do default actions on window, that's where global variables be (#6170) - if ( ontype && isFunction( elem[ type ] ) && !isWindow( elem ) ) { - - // Don't re-trigger an onFOO event when we call its FOO() method - tmp = elem[ ontype ]; - - if ( tmp ) { - elem[ ontype ] = null; - } - - // Prevent re-triggering of the same event, since we already bubbled it above - jQuery.event.triggered = type; - - if ( event.isPropagationStopped() ) { - lastElement.addEventListener( type, stopPropagationCallback ); - } - - elem[ type ](); - - if ( event.isPropagationStopped() ) { - lastElement.removeEventListener( type, stopPropagationCallback ); - } - - jQuery.event.triggered = undefined; - - if ( tmp ) { - elem[ ontype ] = tmp; - } - } - } - } - - return event.result; - }, - - // Piggyback on a donor event to simulate a different one - // Used only for `focus(in | out)` events - simulate: function( type, elem, event ) { - var e = jQuery.extend( - new jQuery.Event(), - event, - { - type: type, - isSimulated: true - } - ); - - jQuery.event.trigger( e, null, elem ); - } - -} ); - -jQuery.fn.extend( { - - trigger: function( type, data ) { - return this.each( function() { - jQuery.event.trigger( type, data, this ); - } ); - }, - triggerHandler: function( type, data ) { - var elem = this[ 0 ]; - if ( elem ) { - return jQuery.event.trigger( type, data, elem, true ); - } - } -} ); - - -// Support: Firefox <=44 -// Firefox doesn't have focus(in | out) events -// Related ticket - https://bugzilla.mozilla.org/show_bug.cgi?id=687787 -// -// Support: Chrome <=48 - 49, Safari <=9.0 - 9.1 -// focus(in | out) events fire after focus & blur events, -// which is spec violation - http://www.w3.org/TR/DOM-Level-3-Events/#events-focusevent-event-order -// Related ticket - https://bugs.chromium.org/p/chromium/issues/detail?id=449857 -if ( !support.focusin ) { - jQuery.each( { focus: "focusin", blur: "focusout" }, function( orig, fix ) { - - // Attach a single capturing handler on the document while someone wants focusin/focusout - var handler = function( event ) { - jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ) ); - }; - - jQuery.event.special[ fix ] = { - setup: function() { - - // Handle: regular nodes (via `this.ownerDocument`), window - // (via `this.document`) & document (via `this`). - var doc = this.ownerDocument || this.document || this, - attaches = dataPriv.access( doc, fix ); - - if ( !attaches ) { - doc.addEventListener( orig, handler, true ); - } - dataPriv.access( doc, fix, ( attaches || 0 ) + 1 ); - }, - teardown: function() { - var doc = this.ownerDocument || this.document || this, - attaches = dataPriv.access( doc, fix ) - 1; - - if ( !attaches ) { - doc.removeEventListener( orig, handler, true ); - dataPriv.remove( doc, fix ); - - } else { - dataPriv.access( doc, fix, attaches ); - } - } - }; - } ); -} -var location = window.location; - -var nonce = { guid: Date.now() }; - -var rquery = ( /\?/ ); - - - -// Cross-browser xml parsing -jQuery.parseXML = function( data ) { - var xml, parserErrorElem; - if ( !data || typeof data !== "string" ) { - return null; - } - - // Support: IE 9 - 11 only - // IE throws on parseFromString with invalid input. - try { - xml = ( new window.DOMParser() ).parseFromString( data, "text/xml" ); - } catch ( e ) {} - - parserErrorElem = xml && xml.getElementsByTagName( "parsererror" )[ 0 ]; - if ( !xml || parserErrorElem ) { - jQuery.error( "Invalid XML: " + ( - parserErrorElem ? - jQuery.map( parserErrorElem.childNodes, function( el ) { - return el.textContent; - } ).join( "\n" ) : - data - ) ); - } - return xml; -}; - - -var - rbracket = /\[\]$/, - rCRLF = /\r?\n/g, - rsubmitterTypes = /^(?:submit|button|image|reset|file)$/i, - rsubmittable = /^(?:input|select|textarea|keygen)/i; - -function buildParams( prefix, obj, traditional, add ) { - var name; - - if ( Array.isArray( obj ) ) { - - // Serialize array item. - jQuery.each( obj, function( i, v ) { - if ( traditional || rbracket.test( prefix ) ) { - - // Treat each array item as a scalar. - add( prefix, v ); - - } else { - - // Item is non-scalar (array or object), encode its numeric index. - buildParams( - prefix + "[" + ( typeof v === "object" && v != null ? i : "" ) + "]", - v, - traditional, - add - ); - } - } ); - - } else if ( !traditional && toType( obj ) === "object" ) { - - // Serialize object item. - for ( name in obj ) { - buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add ); - } - - } else { - - // Serialize scalar item. - add( prefix, obj ); - } -} - -// Serialize an array of form elements or a set of -// key/values into a query string -jQuery.param = function( a, traditional ) { - var prefix, - s = [], - add = function( key, valueOrFunction ) { - - // If value is a function, invoke it and use its return value - var value = isFunction( valueOrFunction ) ? - valueOrFunction() : - valueOrFunction; - - s[ s.length ] = encodeURIComponent( key ) + "=" + - encodeURIComponent( value == null ? "" : value ); - }; - - if ( a == null ) { - return ""; - } - - // If an array was passed in, assume that it is an array of form elements. - if ( Array.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) { - - // Serialize the form elements - jQuery.each( a, function() { - add( this.name, this.value ); - } ); - - } else { - - // If traditional, encode the "old" way (the way 1.3.2 or older - // did it), otherwise encode params recursively. - for ( prefix in a ) { - buildParams( prefix, a[ prefix ], traditional, add ); - } - } - - // Return the resulting serialization - return s.join( "&" ); -}; - -jQuery.fn.extend( { - serialize: function() { - return jQuery.param( this.serializeArray() ); - }, - serializeArray: function() { - return this.map( function() { - - // Can add propHook for "elements" to filter or add form elements - var elements = jQuery.prop( this, "elements" ); - return elements ? jQuery.makeArray( elements ) : this; - } ).filter( function() { - var type = this.type; - - // Use .is( ":disabled" ) so that fieldset[disabled] works - return this.name && !jQuery( this ).is( ":disabled" ) && - rsubmittable.test( this.nodeName ) && !rsubmitterTypes.test( type ) && - ( this.checked || !rcheckableType.test( type ) ); - } ).map( function( _i, elem ) { - var val = jQuery( this ).val(); - - if ( val == null ) { - return null; - } - - if ( Array.isArray( val ) ) { - return jQuery.map( val, function( val ) { - return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) }; - } ); - } - - return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) }; - } ).get(); - } -} ); - - -var - r20 = /%20/g, - rhash = /#.*$/, - rantiCache = /([?&])_=[^&]*/, - rheaders = /^(.*?):[ \t]*([^\r\n]*)$/mg, - - // #7653, #8125, #8152: local protocol detection - rlocalProtocol = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/, - rnoContent = /^(?:GET|HEAD)$/, - rprotocol = /^\/\//, - - /* Prefilters - * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example) - * 2) These are called: - * - BEFORE asking for a transport - * - AFTER param serialization (s.data is a string if s.processData is true) - * 3) key is the dataType - * 4) the catchall symbol "*" can be used - * 5) execution will start with transport dataType and THEN continue down to "*" if needed - */ - prefilters = {}, - - /* Transports bindings - * 1) key is the dataType - * 2) the catchall symbol "*" can be used - * 3) selection will start with transport dataType and THEN go to "*" if needed - */ - transports = {}, - - // Avoid comment-prolog char sequence (#10098); must appease lint and evade compression - allTypes = "*/".concat( "*" ), - - // Anchor tag for parsing the document origin - originAnchor = document.createElement( "a" ); - -originAnchor.href = location.href; - -// Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport -function addToPrefiltersOrTransports( structure ) { - - // dataTypeExpression is optional and defaults to "*" - return function( dataTypeExpression, func ) { - - if ( typeof dataTypeExpression !== "string" ) { - func = dataTypeExpression; - dataTypeExpression = "*"; - } - - var dataType, - i = 0, - dataTypes = dataTypeExpression.toLowerCase().match( rnothtmlwhite ) || []; - - if ( isFunction( func ) ) { - - // For each dataType in the dataTypeExpression - while ( ( dataType = dataTypes[ i++ ] ) ) { - - // Prepend if requested - if ( dataType[ 0 ] === "+" ) { - dataType = dataType.slice( 1 ) || "*"; - ( structure[ dataType ] = structure[ dataType ] || [] ).unshift( func ); - - // Otherwise append - } else { - ( structure[ dataType ] = structure[ dataType ] || [] ).push( func ); - } - } - } - }; -} - -// Base inspection function for prefilters and transports -function inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR ) { - - var inspected = {}, - seekingTransport = ( structure === transports ); - - function inspect( dataType ) { - var selected; - inspected[ dataType ] = true; - jQuery.each( structure[ dataType ] || [], function( _, prefilterOrFactory ) { - var dataTypeOrTransport = prefilterOrFactory( options, originalOptions, jqXHR ); - if ( typeof dataTypeOrTransport === "string" && - !seekingTransport && !inspected[ dataTypeOrTransport ] ) { - - options.dataTypes.unshift( dataTypeOrTransport ); - inspect( dataTypeOrTransport ); - return false; - } else if ( seekingTransport ) { - return !( selected = dataTypeOrTransport ); - } - } ); - return selected; - } - - return inspect( options.dataTypes[ 0 ] ) || !inspected[ "*" ] && inspect( "*" ); -} - -// A special extend for ajax options -// that takes "flat" options (not to be deep extended) -// Fixes #9887 -function ajaxExtend( target, src ) { - var key, deep, - flatOptions = jQuery.ajaxSettings.flatOptions || {}; - - for ( key in src ) { - if ( src[ key ] !== undefined ) { - ( flatOptions[ key ] ? target : ( deep || ( deep = {} ) ) )[ key ] = src[ key ]; - } - } - if ( deep ) { - jQuery.extend( true, target, deep ); - } - - return target; -} - -/* Handles responses to an ajax request: - * - finds the right dataType (mediates between content-type and expected dataType) - * - returns the corresponding response - */ -function ajaxHandleResponses( s, jqXHR, responses ) { - - var ct, type, finalDataType, firstDataType, - contents = s.contents, - dataTypes = s.dataTypes; - - // Remove auto dataType and get content-type in the process - while ( dataTypes[ 0 ] === "*" ) { - dataTypes.shift(); - if ( ct === undefined ) { - ct = s.mimeType || jqXHR.getResponseHeader( "Content-Type" ); - } - } - - // Check if we're dealing with a known content-type - if ( ct ) { - for ( type in contents ) { - if ( contents[ type ] && contents[ type ].test( ct ) ) { - dataTypes.unshift( type ); - break; - } - } - } - - // Check to see if we have a response for the expected dataType - if ( dataTypes[ 0 ] in responses ) { - finalDataType = dataTypes[ 0 ]; - } else { - - // Try convertible dataTypes - for ( type in responses ) { - if ( !dataTypes[ 0 ] || s.converters[ type + " " + dataTypes[ 0 ] ] ) { - finalDataType = type; - break; - } - if ( !firstDataType ) { - firstDataType = type; - } - } - - // Or just use first one - finalDataType = finalDataType || firstDataType; - } - - // If we found a dataType - // We add the dataType to the list if needed - // and return the corresponding response - if ( finalDataType ) { - if ( finalDataType !== dataTypes[ 0 ] ) { - dataTypes.unshift( finalDataType ); - } - return responses[ finalDataType ]; - } -} - -/* Chain conversions given the request and the original response - * Also sets the responseXXX fields on the jqXHR instance - */ -function ajaxConvert( s, response, jqXHR, isSuccess ) { - var conv2, current, conv, tmp, prev, - converters = {}, - - // Work with a copy of dataTypes in case we need to modify it for conversion - dataTypes = s.dataTypes.slice(); - - // Create converters map with lowercased keys - if ( dataTypes[ 1 ] ) { - for ( conv in s.converters ) { - converters[ conv.toLowerCase() ] = s.converters[ conv ]; - } - } - - current = dataTypes.shift(); - - // Convert to each sequential dataType - while ( current ) { - - if ( s.responseFields[ current ] ) { - jqXHR[ s.responseFields[ current ] ] = response; - } - - // Apply the dataFilter if provided - if ( !prev && isSuccess && s.dataFilter ) { - response = s.dataFilter( response, s.dataType ); - } - - prev = current; - current = dataTypes.shift(); - - if ( current ) { - - // There's only work to do if current dataType is non-auto - if ( current === "*" ) { - - current = prev; - - // Convert response if prev dataType is non-auto and differs from current - } else if ( prev !== "*" && prev !== current ) { - - // Seek a direct converter - conv = converters[ prev + " " + current ] || converters[ "* " + current ]; - - // If none found, seek a pair - if ( !conv ) { - for ( conv2 in converters ) { - - // If conv2 outputs current - tmp = conv2.split( " " ); - if ( tmp[ 1 ] === current ) { - - // If prev can be converted to accepted input - conv = converters[ prev + " " + tmp[ 0 ] ] || - converters[ "* " + tmp[ 0 ] ]; - if ( conv ) { - - // Condense equivalence converters - if ( conv === true ) { - conv = converters[ conv2 ]; - - // Otherwise, insert the intermediate dataType - } else if ( converters[ conv2 ] !== true ) { - current = tmp[ 0 ]; - dataTypes.unshift( tmp[ 1 ] ); - } - break; - } - } - } - } - - // Apply converter (if not an equivalence) - if ( conv !== true ) { - - // Unless errors are allowed to bubble, catch and return them - if ( conv && s.throws ) { - response = conv( response ); - } else { - try { - response = conv( response ); - } catch ( e ) { - return { - state: "parsererror", - error: conv ? e : "No conversion from " + prev + " to " + current - }; - } - } - } - } - } - } - - return { state: "success", data: response }; -} - -jQuery.extend( { - - // Counter for holding the number of active queries - active: 0, - - // Last-Modified header cache for next request - lastModified: {}, - etag: {}, - - ajaxSettings: { - url: location.href, - type: "GET", - isLocal: rlocalProtocol.test( location.protocol ), - global: true, - processData: true, - async: true, - contentType: "application/x-www-form-urlencoded; charset=UTF-8", - - /* - timeout: 0, - data: null, - dataType: null, - username: null, - password: null, - cache: null, - throws: false, - traditional: false, - headers: {}, - */ - - accepts: { - "*": allTypes, - text: "text/plain", - html: "text/html", - xml: "application/xml, text/xml", - json: "application/json, text/javascript" - }, - - contents: { - xml: /\bxml\b/, - html: /\bhtml/, - json: /\bjson\b/ - }, - - responseFields: { - xml: "responseXML", - text: "responseText", - json: "responseJSON" - }, - - // Data converters - // Keys separate source (or catchall "*") and destination types with a single space - converters: { - - // Convert anything to text - "* text": String, - - // Text to html (true = no transformation) - "text html": true, - - // Evaluate text as a json expression - "text json": JSON.parse, - - // Parse text as xml - "text xml": jQuery.parseXML - }, - - // For options that shouldn't be deep extended: - // you can add your own custom options here if - // and when you create one that shouldn't be - // deep extended (see ajaxExtend) - flatOptions: { - url: true, - context: true - } - }, - - // Creates a full fledged settings object into target - // with both ajaxSettings and settings fields. - // If target is omitted, writes into ajaxSettings. - ajaxSetup: function( target, settings ) { - return settings ? - - // Building a settings object - ajaxExtend( ajaxExtend( target, jQuery.ajaxSettings ), settings ) : - - // Extending ajaxSettings - ajaxExtend( jQuery.ajaxSettings, target ); - }, - - ajaxPrefilter: addToPrefiltersOrTransports( prefilters ), - ajaxTransport: addToPrefiltersOrTransports( transports ), - - // Main method - ajax: function( url, options ) { - - // If url is an object, simulate pre-1.5 signature - if ( typeof url === "object" ) { - options = url; - url = undefined; - } - - // Force options to be an object - options = options || {}; - - var transport, - - // URL without anti-cache param - cacheURL, - - // Response headers - responseHeadersString, - responseHeaders, - - // timeout handle - timeoutTimer, - - // Url cleanup var - urlAnchor, - - // Request state (becomes false upon send and true upon completion) - completed, - - // To know if global events are to be dispatched - fireGlobals, - - // Loop variable - i, - - // uncached part of the url - uncached, - - // Create the final options object - s = jQuery.ajaxSetup( {}, options ), - - // Callbacks context - callbackContext = s.context || s, - - // Context for global events is callbackContext if it is a DOM node or jQuery collection - globalEventContext = s.context && - ( callbackContext.nodeType || callbackContext.jquery ) ? - jQuery( callbackContext ) : - jQuery.event, - - // Deferreds - deferred = jQuery.Deferred(), - completeDeferred = jQuery.Callbacks( "once memory" ), - - // Status-dependent callbacks - statusCode = s.statusCode || {}, - - // Headers (they are sent all at once) - requestHeaders = {}, - requestHeadersNames = {}, - - // Default abort message - strAbort = "canceled", - - // Fake xhr - jqXHR = { - readyState: 0, - - // Builds headers hashtable if needed - getResponseHeader: function( key ) { - var match; - if ( completed ) { - if ( !responseHeaders ) { - responseHeaders = {}; - while ( ( match = rheaders.exec( responseHeadersString ) ) ) { - responseHeaders[ match[ 1 ].toLowerCase() + " " ] = - ( responseHeaders[ match[ 1 ].toLowerCase() + " " ] || [] ) - .concat( match[ 2 ] ); - } - } - match = responseHeaders[ key.toLowerCase() + " " ]; - } - return match == null ? null : match.join( ", " ); - }, - - // Raw string - getAllResponseHeaders: function() { - return completed ? responseHeadersString : null; - }, - - // Caches the header - setRequestHeader: function( name, value ) { - if ( completed == null ) { - name = requestHeadersNames[ name.toLowerCase() ] = - requestHeadersNames[ name.toLowerCase() ] || name; - requestHeaders[ name ] = value; - } - return this; - }, - - // Overrides response content-type header - overrideMimeType: function( type ) { - if ( completed == null ) { - s.mimeType = type; - } - return this; - }, - - // Status-dependent callbacks - statusCode: function( map ) { - var code; - if ( map ) { - if ( completed ) { - - // Execute the appropriate callbacks - jqXHR.always( map[ jqXHR.status ] ); - } else { - - // Lazy-add the new callbacks in a way that preserves old ones - for ( code in map ) { - statusCode[ code ] = [ statusCode[ code ], map[ code ] ]; - } - } - } - return this; - }, - - // Cancel the request - abort: function( statusText ) { - var finalText = statusText || strAbort; - if ( transport ) { - transport.abort( finalText ); - } - done( 0, finalText ); - return this; - } - }; - - // Attach deferreds - deferred.promise( jqXHR ); - - // Add protocol if not provided (prefilters might expect it) - // Handle falsy url in the settings object (#10093: consistency with old signature) - // We also use the url parameter if available - s.url = ( ( url || s.url || location.href ) + "" ) - .replace( rprotocol, location.protocol + "//" ); - - // Alias method option to type as per ticket #12004 - s.type = options.method || options.type || s.method || s.type; - - // Extract dataTypes list - s.dataTypes = ( s.dataType || "*" ).toLowerCase().match( rnothtmlwhite ) || [ "" ]; - - // A cross-domain request is in order when the origin doesn't match the current origin. - if ( s.crossDomain == null ) { - urlAnchor = document.createElement( "a" ); - - // Support: IE <=8 - 11, Edge 12 - 15 - // IE throws exception on accessing the href property if url is malformed, - // e.g. http://example.com:80x/ - try { - urlAnchor.href = s.url; - - // Support: IE <=8 - 11 only - // Anchor's host property isn't correctly set when s.url is relative - urlAnchor.href = urlAnchor.href; - s.crossDomain = originAnchor.protocol + "//" + originAnchor.host !== - urlAnchor.protocol + "//" + urlAnchor.host; - } catch ( e ) { - - // If there is an error parsing the URL, assume it is crossDomain, - // it can be rejected by the transport if it is invalid - s.crossDomain = true; - } - } - - // Convert data if not already a string - if ( s.data && s.processData && typeof s.data !== "string" ) { - s.data = jQuery.param( s.data, s.traditional ); - } - - // Apply prefilters - inspectPrefiltersOrTransports( prefilters, s, options, jqXHR ); - - // If request was aborted inside a prefilter, stop there - if ( completed ) { - return jqXHR; - } - - // We can fire global events as of now if asked to - // Don't fire events if jQuery.event is undefined in an AMD-usage scenario (#15118) - fireGlobals = jQuery.event && s.global; - - // Watch for a new set of requests - if ( fireGlobals && jQuery.active++ === 0 ) { - jQuery.event.trigger( "ajaxStart" ); - } - - // Uppercase the type - s.type = s.type.toUpperCase(); - - // Determine if request has content - s.hasContent = !rnoContent.test( s.type ); - - // Save the URL in case we're toying with the If-Modified-Since - // and/or If-None-Match header later on - // Remove hash to simplify url manipulation - cacheURL = s.url.replace( rhash, "" ); - - // More options handling for requests with no content - if ( !s.hasContent ) { - - // Remember the hash so we can put it back - uncached = s.url.slice( cacheURL.length ); - - // If data is available and should be processed, append data to url - if ( s.data && ( s.processData || typeof s.data === "string" ) ) { - cacheURL += ( rquery.test( cacheURL ) ? "&" : "?" ) + s.data; - - // #9682: remove data so that it's not used in an eventual retry - delete s.data; - } - - // Add or update anti-cache param if needed - if ( s.cache === false ) { - cacheURL = cacheURL.replace( rantiCache, "$1" ); - uncached = ( rquery.test( cacheURL ) ? "&" : "?" ) + "_=" + ( nonce.guid++ ) + - uncached; - } - - // Put hash and anti-cache on the URL that will be requested (gh-1732) - s.url = cacheURL + uncached; - - // Change '%20' to '+' if this is encoded form body content (gh-2658) - } else if ( s.data && s.processData && - ( s.contentType || "" ).indexOf( "application/x-www-form-urlencoded" ) === 0 ) { - s.data = s.data.replace( r20, "+" ); - } - - // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode. - if ( s.ifModified ) { - if ( jQuery.lastModified[ cacheURL ] ) { - jqXHR.setRequestHeader( "If-Modified-Since", jQuery.lastModified[ cacheURL ] ); - } - if ( jQuery.etag[ cacheURL ] ) { - jqXHR.setRequestHeader( "If-None-Match", jQuery.etag[ cacheURL ] ); - } - } - - // Set the correct header, if data is being sent - if ( s.data && s.hasContent && s.contentType !== false || options.contentType ) { - jqXHR.setRequestHeader( "Content-Type", s.contentType ); - } - - // Set the Accepts header for the server, depending on the dataType - jqXHR.setRequestHeader( - "Accept", - s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[ 0 ] ] ? - s.accepts[ s.dataTypes[ 0 ] ] + - ( s.dataTypes[ 0 ] !== "*" ? ", " + allTypes + "; q=0.01" : "" ) : - s.accepts[ "*" ] - ); - - // Check for headers option - for ( i in s.headers ) { - jqXHR.setRequestHeader( i, s.headers[ i ] ); - } - - // Allow custom headers/mimetypes and early abort - if ( s.beforeSend && - ( s.beforeSend.call( callbackContext, jqXHR, s ) === false || completed ) ) { - - // Abort if not done already and return - return jqXHR.abort(); - } - - // Aborting is no longer a cancellation - strAbort = "abort"; - - // Install callbacks on deferreds - completeDeferred.add( s.complete ); - jqXHR.done( s.success ); - jqXHR.fail( s.error ); - - // Get transport - transport = inspectPrefiltersOrTransports( transports, s, options, jqXHR ); - - // If no transport, we auto-abort - if ( !transport ) { - done( -1, "No Transport" ); - } else { - jqXHR.readyState = 1; - - // Send global event - if ( fireGlobals ) { - globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] ); - } - - // If request was aborted inside ajaxSend, stop there - if ( completed ) { - return jqXHR; - } - - // Timeout - if ( s.async && s.timeout > 0 ) { - timeoutTimer = window.setTimeout( function() { - jqXHR.abort( "timeout" ); - }, s.timeout ); - } - - try { - completed = false; - transport.send( requestHeaders, done ); - } catch ( e ) { - - // Rethrow post-completion exceptions - if ( completed ) { - throw e; - } - - // Propagate others as results - done( -1, e ); - } - } - - // Callback for when everything is done - function done( status, nativeStatusText, responses, headers ) { - var isSuccess, success, error, response, modified, - statusText = nativeStatusText; - - // Ignore repeat invocations - if ( completed ) { - return; - } - - completed = true; - - // Clear timeout if it exists - if ( timeoutTimer ) { - window.clearTimeout( timeoutTimer ); - } - - // Dereference transport for early garbage collection - // (no matter how long the jqXHR object will be used) - transport = undefined; - - // Cache response headers - responseHeadersString = headers || ""; - - // Set readyState - jqXHR.readyState = status > 0 ? 4 : 0; - - // Determine if successful - isSuccess = status >= 200 && status < 300 || status === 304; - - // Get response data - if ( responses ) { - response = ajaxHandleResponses( s, jqXHR, responses ); - } - - // Use a noop converter for missing script but not if jsonp - if ( !isSuccess && - jQuery.inArray( "script", s.dataTypes ) > -1 && - jQuery.inArray( "json", s.dataTypes ) < 0 ) { - s.converters[ "text script" ] = function() {}; - } - - // Convert no matter what (that way responseXXX fields are always set) - response = ajaxConvert( s, response, jqXHR, isSuccess ); - - // If successful, handle type chaining - if ( isSuccess ) { - - // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode. - if ( s.ifModified ) { - modified = jqXHR.getResponseHeader( "Last-Modified" ); - if ( modified ) { - jQuery.lastModified[ cacheURL ] = modified; - } - modified = jqXHR.getResponseHeader( "etag" ); - if ( modified ) { - jQuery.etag[ cacheURL ] = modified; - } - } - - // if no content - if ( status === 204 || s.type === "HEAD" ) { - statusText = "nocontent"; - - // if not modified - } else if ( status === 304 ) { - statusText = "notmodified"; - - // If we have data, let's convert it - } else { - statusText = response.state; - success = response.data; - error = response.error; - isSuccess = !error; - } - } else { - - // Extract error from statusText and normalize for non-aborts - error = statusText; - if ( status || !statusText ) { - statusText = "error"; - if ( status < 0 ) { - status = 0; - } - } - } - - // Set data for the fake xhr object - jqXHR.status = status; - jqXHR.statusText = ( nativeStatusText || statusText ) + ""; - - // Success/Error - if ( isSuccess ) { - deferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] ); - } else { - deferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] ); - } - - // Status-dependent callbacks - jqXHR.statusCode( statusCode ); - statusCode = undefined; - - if ( fireGlobals ) { - globalEventContext.trigger( isSuccess ? "ajaxSuccess" : "ajaxError", - [ jqXHR, s, isSuccess ? success : error ] ); - } - - // Complete - completeDeferred.fireWith( callbackContext, [ jqXHR, statusText ] ); - - if ( fireGlobals ) { - globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] ); - - // Handle the global AJAX counter - if ( !( --jQuery.active ) ) { - jQuery.event.trigger( "ajaxStop" ); - } - } - } - - return jqXHR; - }, - - getJSON: function( url, data, callback ) { - return jQuery.get( url, data, callback, "json" ); - }, - - getScript: function( url, callback ) { - return jQuery.get( url, undefined, callback, "script" ); - } -} ); - -jQuery.each( [ "get", "post" ], function( _i, method ) { - jQuery[ method ] = function( url, data, callback, type ) { - - // Shift arguments if data argument was omitted - if ( isFunction( data ) ) { - type = type || callback; - callback = data; - data = undefined; - } - - // The url can be an options object (which then must have .url) - return jQuery.ajax( jQuery.extend( { - url: url, - type: method, - dataType: type, - data: data, - success: callback - }, jQuery.isPlainObject( url ) && url ) ); - }; -} ); - -jQuery.ajaxPrefilter( function( s ) { - var i; - for ( i in s.headers ) { - if ( i.toLowerCase() === "content-type" ) { - s.contentType = s.headers[ i ] || ""; - } - } -} ); - - -jQuery._evalUrl = function( url, options, doc ) { - return jQuery.ajax( { - url: url, - - // Make this explicit, since user can override this through ajaxSetup (#11264) - type: "GET", - dataType: "script", - cache: true, - async: false, - global: false, - - // Only evaluate the response if it is successful (gh-4126) - // dataFilter is not invoked for failure responses, so using it instead - // of the default converter is kludgy but it works. - converters: { - "text script": function() {} - }, - dataFilter: function( response ) { - jQuery.globalEval( response, options, doc ); - } - } ); -}; - - -jQuery.fn.extend( { - wrapAll: function( html ) { - var wrap; - - if ( this[ 0 ] ) { - if ( isFunction( html ) ) { - html = html.call( this[ 0 ] ); - } - - // The elements to wrap the target around - wrap = jQuery( html, this[ 0 ].ownerDocument ).eq( 0 ).clone( true ); - - if ( this[ 0 ].parentNode ) { - wrap.insertBefore( this[ 0 ] ); - } - - wrap.map( function() { - var elem = this; - - while ( elem.firstElementChild ) { - elem = elem.firstElementChild; - } - - return elem; - } ).append( this ); - } - - return this; - }, - - wrapInner: function( html ) { - if ( isFunction( html ) ) { - return this.each( function( i ) { - jQuery( this ).wrapInner( html.call( this, i ) ); - } ); - } - - return this.each( function() { - var self = jQuery( this ), - contents = self.contents(); - - if ( contents.length ) { - contents.wrapAll( html ); - - } else { - self.append( html ); - } - } ); - }, - - wrap: function( html ) { - var htmlIsFunction = isFunction( html ); - - return this.each( function( i ) { - jQuery( this ).wrapAll( htmlIsFunction ? html.call( this, i ) : html ); - } ); - }, - - unwrap: function( selector ) { - this.parent( selector ).not( "body" ).each( function() { - jQuery( this ).replaceWith( this.childNodes ); - } ); - return this; - } -} ); - - -jQuery.expr.pseudos.hidden = function( elem ) { - return !jQuery.expr.pseudos.visible( elem ); -}; -jQuery.expr.pseudos.visible = function( elem ) { - return !!( elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length ); -}; - - - - -jQuery.ajaxSettings.xhr = function() { - try { - return new window.XMLHttpRequest(); - } catch ( e ) {} -}; - -var xhrSuccessStatus = { - - // File protocol always yields status code 0, assume 200 - 0: 200, - - // Support: IE <=9 only - // #1450: sometimes IE returns 1223 when it should be 204 - 1223: 204 - }, - xhrSupported = jQuery.ajaxSettings.xhr(); - -support.cors = !!xhrSupported && ( "withCredentials" in xhrSupported ); -support.ajax = xhrSupported = !!xhrSupported; - -jQuery.ajaxTransport( function( options ) { - var callback, errorCallback; - - // Cross domain only allowed if supported through XMLHttpRequest - if ( support.cors || xhrSupported && !options.crossDomain ) { - return { - send: function( headers, complete ) { - var i, - xhr = options.xhr(); - - xhr.open( - options.type, - options.url, - options.async, - options.username, - options.password - ); - - // Apply custom fields if provided - if ( options.xhrFields ) { - for ( i in options.xhrFields ) { - xhr[ i ] = options.xhrFields[ i ]; - } - } - - // Override mime type if needed - if ( options.mimeType && xhr.overrideMimeType ) { - xhr.overrideMimeType( options.mimeType ); - } - - // X-Requested-With header - // For cross-domain requests, seeing as conditions for a preflight are - // akin to a jigsaw puzzle, we simply never set it to be sure. - // (it can always be set on a per-request basis or even using ajaxSetup) - // For same-domain requests, won't change header if already provided. - if ( !options.crossDomain && !headers[ "X-Requested-With" ] ) { - headers[ "X-Requested-With" ] = "XMLHttpRequest"; - } - - // Set headers - for ( i in headers ) { - xhr.setRequestHeader( i, headers[ i ] ); - } - - // Callback - callback = function( type ) { - return function() { - if ( callback ) { - callback = errorCallback = xhr.onload = - xhr.onerror = xhr.onabort = xhr.ontimeout = - xhr.onreadystatechange = null; - - if ( type === "abort" ) { - xhr.abort(); - } else if ( type === "error" ) { - - // Support: IE <=9 only - // On a manual native abort, IE9 throws - // errors on any property access that is not readyState - if ( typeof xhr.status !== "number" ) { - complete( 0, "error" ); - } else { - complete( - - // File: protocol always yields status 0; see #8605, #14207 - xhr.status, - xhr.statusText - ); - } - } else { - complete( - xhrSuccessStatus[ xhr.status ] || xhr.status, - xhr.statusText, - - // Support: IE <=9 only - // IE9 has no XHR2 but throws on binary (trac-11426) - // For XHR2 non-text, let the caller handle it (gh-2498) - ( xhr.responseType || "text" ) !== "text" || - typeof xhr.responseText !== "string" ? - { binary: xhr.response } : - { text: xhr.responseText }, - xhr.getAllResponseHeaders() - ); - } - } - }; - }; - - // Listen to events - xhr.onload = callback(); - errorCallback = xhr.onerror = xhr.ontimeout = callback( "error" ); - - // Support: IE 9 only - // Use onreadystatechange to replace onabort - // to handle uncaught aborts - if ( xhr.onabort !== undefined ) { - xhr.onabort = errorCallback; - } else { - xhr.onreadystatechange = function() { - - // Check readyState before timeout as it changes - if ( xhr.readyState === 4 ) { - - // Allow onerror to be called first, - // but that will not handle a native abort - // Also, save errorCallback to a variable - // as xhr.onerror cannot be accessed - window.setTimeout( function() { - if ( callback ) { - errorCallback(); - } - } ); - } - }; - } - - // Create the abort callback - callback = callback( "abort" ); - - try { - - // Do send the request (this may raise an exception) - xhr.send( options.hasContent && options.data || null ); - } catch ( e ) { - - // #14683: Only rethrow if this hasn't been notified as an error yet - if ( callback ) { - throw e; - } - } - }, - - abort: function() { - if ( callback ) { - callback(); - } - } - }; - } -} ); - - - - -// Prevent auto-execution of scripts when no explicit dataType was provided (See gh-2432) -jQuery.ajaxPrefilter( function( s ) { - if ( s.crossDomain ) { - s.contents.script = false; - } -} ); - -// Install script dataType -jQuery.ajaxSetup( { - accepts: { - script: "text/javascript, application/javascript, " + - "application/ecmascript, application/x-ecmascript" - }, - contents: { - script: /\b(?:java|ecma)script\b/ - }, - converters: { - "text script": function( text ) { - jQuery.globalEval( text ); - return text; - } - } -} ); - -// Handle cache's special case and crossDomain -jQuery.ajaxPrefilter( "script", function( s ) { - if ( s.cache === undefined ) { - s.cache = false; - } - if ( s.crossDomain ) { - s.type = "GET"; - } -} ); - -// Bind script tag hack transport -jQuery.ajaxTransport( "script", function( s ) { - - // This transport only deals with cross domain or forced-by-attrs requests - if ( s.crossDomain || s.scriptAttrs ) { - var script, callback; - return { - send: function( _, complete ) { - script = jQuery( " - - - - - \ No newline at end of file diff --git "a/csstest/lesson01/JavaScript/Demo01/\351\200\211\346\213\251\345\231\250.html" "b/csstest/lesson01/JavaScript/Demo01/\351\200\211\346\213\251\345\231\250.html" deleted file mode 100644 index 96ed55c..0000000 --- "a/csstest/lesson01/JavaScript/Demo01/\351\200\211\346\213\251\345\231\250.html" +++ /dev/null @@ -1,20 +0,0 @@ - - - - - 选择器 - - - - - - \ No newline at end of file diff --git "a/csstest/lesson01/\344\270\211\347\247\215\345\257\274\345\205\245\346\226\271\345\274\217/css/style.css" "b/csstest/lesson01/\344\270\211\347\247\215\345\257\274\345\205\245\346\226\271\345\274\217/css/style.css" deleted file mode 100644 index 29aa29d..0000000 --- "a/csstest/lesson01/\344\270\211\347\247\215\345\257\274\345\205\245\346\226\271\345\274\217/css/style.css" +++ /dev/null @@ -1,4 +0,0 @@ -/*外部样式*/ -h1{ - color: yellow; -} \ No newline at end of file diff --git "a/csstest/lesson01/\344\270\211\347\247\215\345\257\274\345\205\245\346\226\271\345\274\217/index.html" "b/csstest/lesson01/\344\270\211\347\247\215\345\257\274\345\205\245\346\226\271\345\274\217/index.html" deleted file mode 100644 index 24b3a37..0000000 --- "a/csstest/lesson01/\344\270\211\347\247\215\345\257\274\345\205\245\346\226\271\345\274\217/index.html" +++ /dev/null @@ -1,24 +0,0 @@ - - - - - css的三种导入方式 - - - - - - - -

行内样式

- - \ No newline at end of file diff --git "a/csstest/lesson01/\345\237\272\346\234\254\351\200\211\346\213\251\345\231\250/id\351\200\211\346\213\251\345\231\250.html" "b/csstest/lesson01/\345\237\272\346\234\254\351\200\211\346\213\251\345\231\250/id\351\200\211\346\213\251\345\231\250.html" deleted file mode 100644 index 0fe6a19..0000000 --- "a/csstest/lesson01/\345\237\272\346\234\254\351\200\211\346\213\251\345\231\250/id\351\200\211\346\213\251\345\231\250.html" +++ /dev/null @@ -1,22 +0,0 @@ - - - - - Title - - - - - - -

标题1

-

标题2

-

标题3

-

标题4

- - \ No newline at end of file diff --git "a/csstest/lesson01/\345\237\272\346\234\254\351\200\211\346\213\251\345\231\250/\346\240\207\347\255\276\351\200\211\346\213\251\345\231\250.html" "b/csstest/lesson01/\345\237\272\346\234\254\351\200\211\346\213\251\345\231\250/\346\240\207\347\255\276\351\200\211\346\213\251\345\231\250.html" deleted file mode 100644 index 5422006..0000000 --- "a/csstest/lesson01/\345\237\272\346\234\254\351\200\211\346\213\251\345\231\250/\346\240\207\347\255\276\351\200\211\346\213\251\345\231\250.html" +++ /dev/null @@ -1,23 +0,0 @@ - - - - - Title - - - -

hello

-

world!

- -

- 测试程序 -

- - \ No newline at end of file diff --git "a/csstest/lesson01/\345\237\272\346\234\254\351\200\211\346\213\251\345\231\250/\347\261\273\351\200\211\346\213\251\345\231\250.html" "b/csstest/lesson01/\345\237\272\346\234\254\351\200\211\346\213\251\345\231\250/\347\261\273\351\200\211\346\213\251\345\231\250.html" deleted file mode 100644 index 244c62b..0000000 --- "a/csstest/lesson01/\345\237\272\346\234\254\351\200\211\346\213\251\345\231\250/\347\261\273\351\200\211\346\213\251\345\231\250.html" +++ /dev/null @@ -1,23 +0,0 @@ - - - - - Title - - - - -

标题1

-

标题2

-

标题3

-

可以跨标签

- - \ No newline at end of file diff --git "a/csstest/lesson01/\345\261\202\346\254\241\351\200\211\346\213\251\345\231\250/\345\261\202\346\254\241\351\200\211\346\213\251\345\231\250.html" "b/csstest/lesson01/\345\261\202\346\254\241\351\200\211\346\213\251\345\231\250/\345\261\202\346\254\241\351\200\211\346\213\251\345\231\250.html" deleted file mode 100644 index c13119b..0000000 --- "a/csstest/lesson01/\345\261\202\346\254\241\351\200\211\346\213\251\345\231\250/\345\261\202\346\254\241\351\200\211\346\213\251\345\231\250.html" +++ /dev/null @@ -1,44 +0,0 @@ - - - - - Title - - - - - - - - - - - - - - - - - - - - - - -

p1

-

p2

-

p3

-
    -
  • p4

  • -
  • p5

  • -
  • p6

  • -
-

p7

-

p8

- - - \ No newline at end of file diff --git "a/csstest/lesson01/\345\261\236\346\200\247\351\200\211\346\213\251\345\231\250/\345\261\236\346\200\247\351\200\211\346\213\251\345\231\250.html" "b/csstest/lesson01/\345\261\236\346\200\247\351\200\211\346\213\251\345\231\250/\345\261\236\346\200\247\351\200\211\346\213\251\345\231\250.html" deleted file mode 100644 index fda0db3..0000000 --- "a/csstest/lesson01/\345\261\236\346\200\247\351\200\211\346\213\251\345\231\250/\345\261\236\346\200\247\351\200\211\346\213\251\345\231\250.html" +++ /dev/null @@ -1,51 +0,0 @@ - - - - - Title - - - -

- 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 -

- - \ No newline at end of file diff --git "a/csstest/lesson01/\347\254\254\344\270\200\344\270\252css\347\250\213\345\272\217/css/style.css" "b/csstest/lesson01/\347\254\254\344\270\200\344\270\252css\347\250\213\345\272\217/css/style.css" deleted file mode 100644 index 99dec54..0000000 --- "a/csstest/lesson01/\347\254\254\344\270\200\344\270\252css\347\250\213\345\272\217/css/style.css" +++ /dev/null @@ -1,3 +0,0 @@ -h1{ - color: aqua; -} \ No newline at end of file diff --git "a/csstest/lesson01/\347\254\254\344\270\200\344\270\252css\347\250\213\345\272\217/index.html" "b/csstest/lesson01/\347\254\254\344\270\200\344\270\252css\347\250\213\345\272\217/index.html" deleted file mode 100644 index 1ed8e8b..0000000 --- "a/csstest/lesson01/\347\254\254\344\270\200\344\270\252css\347\250\213\345\272\217/index.html" +++ /dev/null @@ -1,14 +0,0 @@ - - - - - Title - - - - -

- 测试标题 -

- - \ No newline at end of file diff --git "a/csstest/lesson01/\347\273\203\344\271\240/\346\226\271\345\235\227\345\256\232\344\275\215.html" "b/csstest/lesson01/\347\273\203\344\271\240/\346\226\271\345\235\227\345\256\232\344\275\215.html" deleted file mode 100644 index 7f1e337..0000000 --- "a/csstest/lesson01/\347\273\203\344\271\240/\346\226\271\345\235\227\345\256\232\344\275\215.html" +++ /dev/null @@ -1,54 +0,0 @@ - - - - - 方块定位 - - - - - - - \ No newline at end of file diff --git "a/csstest/lesson01/\347\273\223\346\236\204\344\274\252\347\261\273\351\200\211\346\213\251\345\231\250/\347\273\223\346\236\204\344\274\252\347\261\273\351\200\211\346\213\251\345\231\250.html" "b/csstest/lesson01/\347\273\223\346\236\204\344\274\252\347\261\273\351\200\211\346\213\251\345\231\250/\347\273\223\346\236\204\344\274\252\347\261\273\351\200\211\346\213\251\345\231\250.html" deleted file mode 100644 index bf164f5..0000000 --- "a/csstest/lesson01/\347\273\223\346\236\204\344\274\252\347\261\273\351\200\211\346\213\251\345\231\250/\347\273\223\346\236\204\344\274\252\347\261\273\351\200\211\346\213\251\345\231\250.html" +++ /dev/null @@ -1,42 +0,0 @@ - - - - - Title - - - - -刷新 -

p1

- -

p2

-

p3

-
    -
  • li1
  • -
  • li2
  • -
  • li3
  • -
- - \ No newline at end of file diff --git a/emailregister/.idea/.gitignore b/emailregister/.idea/.gitignore deleted file mode 100644 index 73f69e0..0000000 --- a/emailregister/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/emailregister/.idea/compiler.xml b/emailregister/.idea/compiler.xml deleted file mode 100644 index abe46fd..0000000 --- a/emailregister/.idea/compiler.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/emailregister/.idea/encodings.xml b/emailregister/.idea/encodings.xml deleted file mode 100644 index aa00ffa..0000000 --- a/emailregister/.idea/encodings.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/emailregister/.idea/jarRepositories.xml b/emailregister/.idea/jarRepositories.xml deleted file mode 100644 index 980588c..0000000 --- a/emailregister/.idea/jarRepositories.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/emailregister/.idea/misc.xml b/emailregister/.idea/misc.xml deleted file mode 100644 index 79a352f..0000000 --- a/emailregister/.idea/misc.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/emailregister/.idea/vcs.xml b/emailregister/.idea/vcs.xml deleted file mode 100644 index 6c0b863..0000000 --- a/emailregister/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/emailregister/pom.xml b/emailregister/pom.xml deleted file mode 100644 index 24ac572..0000000 --- a/emailregister/pom.xml +++ /dev/null @@ -1,90 +0,0 @@ - - - - 4.0.0 - - com.xiaokai - emailregister - 1.0-SNAPSHOT - war - - emailregister Maven Webapp - - http://www.example.com - - - UTF-8 - 1.8 - 1.8 - - - - - - junit - junit - 4.12 - test - - - - javax.servlet - javax.servlet-api - 4.0.1 - - - - javax.servlet.jsp - javax.servlet.jsp-api - 2.3.3 - - - - - javax.servlet.jsp.jstl - jstl-api - 1.2 - - - - - taglibs - standard - 1.1.2 - - - - mysql - mysql-connector-java - 5.1.47 - - - junit - junit - 4.13 - - - - - com.alibaba - fastjson - 1.2.76 - - - - - javax.mail - mail - 1.4.7 - - - - javax.activation - activation - 1.1.1 - - - - - diff --git a/emailregister/src/main/java/com/xiaokai/pojo/User.java b/emailregister/src/main/java/com/xiaokai/pojo/User.java deleted file mode 100644 index d402d4b..0000000 --- a/emailregister/src/main/java/com/xiaokai/pojo/User.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.xiaokai.pojo; - -public class User { - private String username; - private String password; - private String email; - - public User() { - } - - public User(String username, String password, String email) { - this.username = username; - this.password = password; - this.email = email; - } - - public String getUsername() { - return username; - } - - public void setUsername(String username) { - this.username = username; - } - - public String getPassword() { - return password; - } - - public void setPassword(String password) { - this.password = password; - } - - public String getEmail() { - return email; - } - - public void setEmail(String email) { - this.email = email; - } - - @Override - public String toString() { - return "User{" + - "username='" + username + '\'' + - ", password='" + password + '\'' + - ", email='" + email + '\'' + - '}'; - } -} diff --git a/emailregister/src/main/java/com/xiaokai/servlet/RegistServlet.java b/emailregister/src/main/java/com/xiaokai/servlet/RegistServlet.java deleted file mode 100644 index 8d5ae08..0000000 --- a/emailregister/src/main/java/com/xiaokai/servlet/RegistServlet.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.xiaokai.servlet; - -import com.xiaokai.pojo.User; -import com.xiaokai.utils.Sendmail; - -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; - -public class RegistServlet extends HttpServlet { - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - String username = req.getParameter("username"); - String password = req.getParameter("password"); - String email = req.getParameter("email"); - System.out.println("username="+username+"\n"+"password="+password+"\n"+"email="+email+"\n"); - User user = new User(username, password, email); - - //用户注册成功后给用户发送一封邮件 - //使用线程来自动发送邮件,防止出现耗时和网站注册人数过多的情况; - Sendmail send = new Sendmail(user); - //启动线程,启动后执行run()方法发送邮件 - send.start(); - - //注册用户, - req.setAttribute("message","注册成功,我们已经向您的注册邮箱发送了带有注册信息的电子邮件,请查收!"); - req.getRequestDispatcher("info.jsp").forward(req,resp); - - } -} diff --git a/emailregister/src/main/java/com/xiaokai/utils/Sendmail.java b/emailregister/src/main/java/com/xiaokai/utils/Sendmail.java deleted file mode 100644 index ab999dd..0000000 --- a/emailregister/src/main/java/com/xiaokai/utils/Sendmail.java +++ /dev/null @@ -1,80 +0,0 @@ -package com.xiaokai.utils; - -import com.sun.mail.util.MailSSLSocketFactory; -import com.xiaokai.pojo.User; - -import javax.mail.*; -import javax.mail.internet.InternetAddress; -import javax.mail.internet.MimeMessage; -import java.util.Properties; - -//网站3秒原则:用户体验 -//多线程实现用户体验:异步操作 -public class Sendmail extends Thread{ - //用于给用户发送邮件的邮箱 - private String from = "xiaokainull@foxmail.com"; - //邮箱的用户名 - private String username = "xiaokainull@foxmail.com"; - //邮箱密码 - private String password = "hycpidvipkymdeja"; - //发送邮件的服务器地址 - private String host = "smtp.qq.com"; - - private User user; - public Sendmail(User user){ - this.user = user; - } - - @Override - public void run() { - try{ - Properties prop = new Properties(); - prop.setProperty("mail.host","smtp.qq.com"); //设置qq邮件服务器 - prop.setProperty("mail.transport.protocol","smtp"); //邮件发送协议 - prop.setProperty("mail.smtp.auth","true"); //需要验证用户名和密码 - - //关于QQ邮箱,还需要设置SSL加密 - MailSSLSocketFactory sf = new MailSSLSocketFactory(); - sf.setTrustAllHosts(true); - prop.put("mail.smtp.ssl.enable","true"); - prop.put("mail.smtp.ssl.socketFactory","sf"); - - //使用JavaMail发送邮件的5个步骤 - //1.创建定义整个程序所需的环境信息的Session对象 - - //QQ才有的监听,其他邮箱不用 - Session session = Session.getDefaultInstance(prop, new Authenticator() { - @Override - protected PasswordAuthentication getPasswordAuthentication() { - //发件人的邮箱用户名和授权码 - return new PasswordAuthentication("xiaokainull@foxmail.com","hycpidvipkymdeja"); - } - }); - //开启Session的debug模式,可以看到程序发送Email的运行状态 - session.setDebug(true); - - //2.通过Session得到Transport对象 - Transport ts = session.getTransport(); - - //3.使用邮箱用户名和授权码链接邮件服务器 - ts.connect("smtp.qq.com","xiaokainull@foxmail.com","hycpidvipkymdeja"); - - //4.创建邮件 - MimeMessage message = new MimeMessage(session); - - message.setFrom(new InternetAddress(from));//指明发送邮件的人 - message.setRecipient(Message.RecipientType.TO,new InternetAddress(user.getEmail()));//指明收件人 - message.setSubject("用户注册邮件");//邮件主题 - String info = "恭喜你注册成功,您的用户名:"+user.getUsername()+","+"您的密码:"+user.getPassword(); - message.setContent("

"+info+"

","text/html;charset=utf-8"); - - //5.发送邮件 - ts.sendMessage(message,message.getAllRecipients()); - - //6.关闭连接 - ts.close(); - }catch (Exception e){ - e.printStackTrace(); - } - } -} diff --git a/emailregister/src/main/webapp/WEB-INF/web.xml b/emailregister/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 68aa3df..0000000 --- a/emailregister/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - RegistServlet - com.xiaokai.servlet.RegistServlet - - - RegistServlet - /RegisterServlet.do - - - diff --git a/emailregister/src/main/webapp/index.jsp b/emailregister/src/main/webapp/index.jsp deleted file mode 100644 index bd955df..0000000 --- a/emailregister/src/main/webapp/index.jsp +++ /dev/null @@ -1,16 +0,0 @@ - -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - 注册 - - -
- 用户名:
- 密 码:
- 邮 箱:
- | - -
- - diff --git a/emailregister/src/main/webapp/info.jsp b/emailregister/src/main/webapp/info.jsp deleted file mode 100644 index 0ef53f7..0000000 --- a/emailregister/src/main/webapp/info.jsp +++ /dev/null @@ -1,16 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/21 - Time: 19:03 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - 注册通知 - - -${message} - - diff --git a/emailregister/target/classes/com/xiaokai/pojo/User.class b/emailregister/target/classes/com/xiaokai/pojo/User.class deleted file mode 100644 index 59b3510..0000000 Binary files a/emailregister/target/classes/com/xiaokai/pojo/User.class and /dev/null differ diff --git a/emailregister/target/classes/com/xiaokai/servlet/RegistServlet.class b/emailregister/target/classes/com/xiaokai/servlet/RegistServlet.class deleted file mode 100644 index c3a3f8e..0000000 Binary files a/emailregister/target/classes/com/xiaokai/servlet/RegistServlet.class and /dev/null differ diff --git a/emailregister/target/classes/com/xiaokai/utils/Sendmail$1.class b/emailregister/target/classes/com/xiaokai/utils/Sendmail$1.class deleted file mode 100644 index 35d0286..0000000 Binary files a/emailregister/target/classes/com/xiaokai/utils/Sendmail$1.class and /dev/null differ diff --git a/emailregister/target/classes/com/xiaokai/utils/Sendmail.class b/emailregister/target/classes/com/xiaokai/utils/Sendmail.class deleted file mode 100644 index bbd45e5..0000000 Binary files a/emailregister/target/classes/com/xiaokai/utils/Sendmail.class and /dev/null differ diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT.war b/emailregister/target/emailregister-1.0-SNAPSHOT.war deleted file mode 100644 index 920cac6..0000000 Binary files a/emailregister/target/emailregister-1.0-SNAPSHOT.war and /dev/null differ diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT/META-INF/MANIFEST.MF b/emailregister/target/emailregister-1.0-SNAPSHOT/META-INF/MANIFEST.MF deleted file mode 100644 index 1d10c5b..0000000 --- a/emailregister/target/emailregister-1.0-SNAPSHOT/META-INF/MANIFEST.MF +++ /dev/null @@ -1,5 +0,0 @@ -Manifest-Version: 1.0 -Created-By: IntelliJ IDEA -Built-By: guanxiaokai -Build-Jdk: version 1.8.0_281 - diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/pojo/User.class b/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/pojo/User.class deleted file mode 100644 index 59b3510..0000000 Binary files a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/pojo/User.class and /dev/null differ diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet/RegistServlet.class b/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet/RegistServlet.class deleted file mode 100644 index c3a3f8e..0000000 Binary files a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet/RegistServlet.class and /dev/null differ diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/utils/Sendmail$1.class b/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/utils/Sendmail$1.class deleted file mode 100644 index 35d0286..0000000 Binary files a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/utils/Sendmail$1.class and /dev/null differ diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/utils/Sendmail.class b/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/utils/Sendmail.class deleted file mode 100644 index bbd45e5..0000000 Binary files a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/utils/Sendmail.class and /dev/null differ diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/activation-1.1.1.jar b/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/activation-1.1.1.jar deleted file mode 100644 index 1b703ab..0000000 Binary files a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/activation-1.1.1.jar and /dev/null differ diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/fastjson-1.2.76.jar b/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/fastjson-1.2.76.jar deleted file mode 100644 index c241c1d..0000000 Binary files a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/fastjson-1.2.76.jar and /dev/null differ diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/hamcrest-core-1.3.jar b/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/hamcrest-core-1.3.jar deleted file mode 100644 index 9d5fe16..0000000 Binary files a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/hamcrest-core-1.3.jar and /dev/null differ diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar b/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar deleted file mode 100644 index 844ec7f..0000000 Binary files a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar and /dev/null differ diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar b/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar deleted file mode 100644 index 8b3333a..0000000 Binary files a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar and /dev/null differ diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/jsp-api-2.1.jar b/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/jsp-api-2.1.jar deleted file mode 100644 index c0195af..0000000 Binary files a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/jsp-api-2.1.jar and /dev/null differ diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/jstl-api-1.2.jar b/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/jstl-api-1.2.jar deleted file mode 100644 index 30d4d92..0000000 Binary files a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/jstl-api-1.2.jar and /dev/null differ diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/junit-4.13.jar b/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/junit-4.13.jar deleted file mode 100644 index acc3c43..0000000 Binary files a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/junit-4.13.jar and /dev/null differ diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/mail-1.4.7.jar b/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/mail-1.4.7.jar deleted file mode 100644 index 236fcdb..0000000 Binary files a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/mail-1.4.7.jar and /dev/null differ diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/mysql-connector-java-5.1.47.jar b/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/mysql-connector-java-5.1.47.jar deleted file mode 100644 index 8816c7e..0000000 Binary files a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/mysql-connector-java-5.1.47.jar and /dev/null differ diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/servlet-api-2.5.jar b/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/servlet-api-2.5.jar deleted file mode 100644 index fb52493..0000000 Binary files a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/servlet-api-2.5.jar and /dev/null differ diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/standard-1.1.2.jar b/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/standard-1.1.2.jar deleted file mode 100644 index bc528ac..0000000 Binary files a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/lib/standard-1.1.2.jar and /dev/null differ diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/web.xml b/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/web.xml deleted file mode 100644 index 68aa3df..0000000 --- a/emailregister/target/emailregister-1.0-SNAPSHOT/WEB-INF/web.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - RegistServlet - com.xiaokai.servlet.RegistServlet - - - RegistServlet - /RegisterServlet.do - - - diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT/index.jsp b/emailregister/target/emailregister-1.0-SNAPSHOT/index.jsp deleted file mode 100644 index bd955df..0000000 --- a/emailregister/target/emailregister-1.0-SNAPSHOT/index.jsp +++ /dev/null @@ -1,16 +0,0 @@ - -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - 注册 - - -
- 用户名:
- 密 码:
- 邮 箱:
- | - -
- - diff --git a/emailregister/target/emailregister-1.0-SNAPSHOT/info.jsp b/emailregister/target/emailregister-1.0-SNAPSHOT/info.jsp deleted file mode 100644 index 0ef53f7..0000000 --- a/emailregister/target/emailregister-1.0-SNAPSHOT/info.jsp +++ /dev/null @@ -1,16 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/21 - Time: 19:03 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - 注册通知 - - -${message} - - diff --git a/guistudy/.idea/.gitignore b/guistudy/.idea/.gitignore deleted file mode 100644 index f5cd8c1..0000000 --- a/guistudy/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/../../../../:\code\guistudy\.idea/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/guistudy/.idea/encodings.xml b/guistudy/.idea/encodings.xml deleted file mode 100644 index da0415a..0000000 --- a/guistudy/.idea/encodings.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/guistudy/.idea/inspectionProfiles/Project_Default.xml b/guistudy/.idea/inspectionProfiles/Project_Default.xml deleted file mode 100644 index 8545eb8..0000000 --- a/guistudy/.idea/inspectionProfiles/Project_Default.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - \ No newline at end of file diff --git a/guistudy/.idea/misc.xml b/guistudy/.idea/misc.xml deleted file mode 100644 index 0548357..0000000 --- a/guistudy/.idea/misc.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/guistudy/.idea/modules.xml b/guistudy/.idea/modules.xml deleted file mode 100644 index fc0b021..0000000 --- a/guistudy/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/guistudy/.idea/uiDesigner.xml b/guistudy/.idea/uiDesigner.xml deleted file mode 100644 index e96534f..0000000 --- a/guistudy/.idea/uiDesigner.xml +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/guistudy/guistudy.iml b/guistudy/guistudy.iml deleted file mode 100644 index c90834f..0000000 --- a/guistudy/guistudy.iml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/Data.class b/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/Data.class deleted file mode 100644 index fe97f69..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/Data.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/GamePanel.class b/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/GamePanel.class deleted file mode 100644 index 0b1ad0a..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/GamePanel.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/StartGame.class b/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/StartGame.class deleted file mode 100644 index 12a5c42..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/StartGame.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/body.png b/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/body.png deleted file mode 100644 index f62054e..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/body.png and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/down.png b/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/down.png deleted file mode 100644 index 7e167cd..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/down.png and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/food.png b/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/food.png deleted file mode 100644 index ac18675..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/food.png and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/header.png b/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/header.png deleted file mode 100644 index 7a8cfcd..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/header.png and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/left.png b/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/left.png deleted file mode 100644 index 5440476..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/left.png and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/right.png b/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/right.png deleted file mode 100644 index 9ae9eb9..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/right.png and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/body.png b/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/body.png deleted file mode 100644 index f62054e..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/body.png and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/down.png b/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/down.png deleted file mode 100644 index 7e167cd..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/down.png and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/food.png b/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/food.png deleted file mode 100644 index eac98a4..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/food.png and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/header.png b/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/header.png deleted file mode 100644 index 7a8cfcd..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/header.png and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/left.png b/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/left.png deleted file mode 100644 index 5440476..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/left.png and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/right.png b/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/right.png deleted file mode 100644 index 9ae9eb9..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/right.png and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/up.png b/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/up.png deleted file mode 100644 index 8933372..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/statics/up.png and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/up.png b/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/up.png deleted file mode 100644 index 8933372..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/tcztest/up.png and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/Game$1.class b/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/Game$1.class deleted file mode 100644 index ce8b65c..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/Game$1.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/Game$2.class b/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/Game$2.class deleted file mode 100644 index 144b7c7..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/Game$2.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/Game$Color.class b/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/Game$Color.class deleted file mode 100644 index ae4bff1..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/Game$Color.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/Game.class b/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/Game.class deleted file mode 100644 index defd588..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/Game.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/Main.class b/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/Main.class deleted file mode 100644 index 82b1e97..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/Main.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/StartFrame$1.class b/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/StartFrame$1.class deleted file mode 100644 index 5b7514f..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/StartFrame$1.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/StartFrame$2.class b/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/StartFrame$2.class deleted file mode 100644 index 2d45e12..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/StartFrame$2.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/StartFrame$3.class b/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/StartFrame$3.class deleted file mode 100644 index 9d4ab51..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/StartFrame$3.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/StartFrame.class b/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/StartFrame.class deleted file mode 100644 index 73deaca..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/gametest/test2048/StartFrame.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/Calculator$1.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/Calculator$1.class deleted file mode 100644 index dc7d64f..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/Calculator$1.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/Calculator.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/Calculator.class deleted file mode 100644 index 0393025..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/Calculator.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/Calculator2.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/Calculator2.class deleted file mode 100644 index 1b4e70b..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/Calculator2.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/Calculator3$MyMonitor5.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/Calculator3$MyMonitor5.class deleted file mode 100644 index 5fabe01..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/Calculator3$MyMonitor5.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/Calculator3.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/Calculator3.class deleted file mode 100644 index 6c4d34d..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/Calculator3.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyActionListener1.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyActionListener1.class deleted file mode 100644 index a8d1d96..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyActionListener1.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyFrame.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyFrame.class deleted file mode 100644 index 025474b..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyFrame.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyFrameTextField.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyFrameTextField.class deleted file mode 100644 index 45d6fc3..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyFrameTextField.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyMonitor.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyMonitor.class deleted file mode 100644 index add631e..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyMonitor.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyMonitor2.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyMonitor2.class deleted file mode 100644 index 21c4a87..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyMonitor2.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyMonitor3.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyMonitor3.class deleted file mode 100644 index b23e282..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyMonitor3.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyMonitor4.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyMonitor4.class deleted file mode 100644 index 86afbd5..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/MyMonitor4.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestActionEvent$1.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestActionEvent$1.class deleted file mode 100644 index 30604a3..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestActionEvent$1.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestActionEvent.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestActionEvent.class deleted file mode 100644 index cfab11b..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestActionEvent.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestActionEvent2.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestActionEvent2.class deleted file mode 100644 index df901dc..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestActionEvent2.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestBorderLayout.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestBorderLayout.class deleted file mode 100644 index 67503ef..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestBorderLayout.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestFlowLayout.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestFlowLayout.class deleted file mode 100644 index 157a607..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestFlowLayout.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestFrame.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestFrame.class deleted file mode 100644 index ca841c9..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestFrame.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestGridLayout.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestGridLayout.class deleted file mode 100644 index 2eac2b4..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestGridLayout.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestMath.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestMath.class deleted file mode 100644 index 7ffb360..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestMath.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestMath2.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestMath2.class deleted file mode 100644 index 551bd16..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestMath2.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestMath3.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestMath3.class deleted file mode 100644 index ea9f04c..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestMath3.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestMultiFrame.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestMultiFrame.class deleted file mode 100644 index 815a584..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestMultiFrame.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestPanel$1.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestPanel$1.class deleted file mode 100644 index 414141c..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestPanel$1.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestPanel.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestPanel.class deleted file mode 100644 index a947930..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestPanel.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestTenButtons$1.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestTenButtons$1.class deleted file mode 100644 index 5da3d5a..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestTenButtons$1.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestTenButtons.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestTenButtons.class deleted file mode 100644 index ae274b9..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestTenButtons.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestTenButtons2.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestTenButtons2.class deleted file mode 100644 index 9c4f1ef..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestTenButtons2.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestTextField.class b/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestTextField.class deleted file mode 100644 index 9b221e5..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson01/TestTextField.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson02/KeyFrame$KeyMonitor.class b/guistudy/out/production/guistudy/com/xiaokai/lesson02/KeyFrame$KeyMonitor.class deleted file mode 100644 index 7bf9b4a..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson02/KeyFrame$KeyMonitor.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson02/KeyFrame.class b/guistudy/out/production/guistudy/com/xiaokai/lesson02/KeyFrame.class deleted file mode 100644 index 1ac06b6..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson02/KeyFrame.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson02/MyFrame$Monitor.class b/guistudy/out/production/guistudy/com/xiaokai/lesson02/MyFrame$Monitor.class deleted file mode 100644 index 43fa4ab..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson02/MyFrame$Monitor.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson02/MyFrame.class b/guistudy/out/production/guistudy/com/xiaokai/lesson02/MyFrame.class deleted file mode 100644 index 56d0da5..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson02/MyFrame.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson02/MyPaint.class b/guistudy/out/production/guistudy/com/xiaokai/lesson02/MyPaint.class deleted file mode 100644 index 5a86e69..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson02/MyPaint.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson02/TestKeyEvent.class b/guistudy/out/production/guistudy/com/xiaokai/lesson02/TestKeyEvent.class deleted file mode 100644 index e2e02e3..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson02/TestKeyEvent.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson02/TestMouse.class b/guistudy/out/production/guistudy/com/xiaokai/lesson02/TestMouse.class deleted file mode 100644 index c913e82..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson02/TestMouse.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson02/TestPaint.class b/guistudy/out/production/guistudy/com/xiaokai/lesson02/TestPaint.class deleted file mode 100644 index 2b4f5da..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson02/TestPaint.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson02/TestWindow.class b/guistudy/out/production/guistudy/com/xiaokai/lesson02/TestWindow.class deleted file mode 100644 index 3098c9f..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson02/TestWindow.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson02/WindowsFrame$1.class b/guistudy/out/production/guistudy/com/xiaokai/lesson02/WindowsFrame$1.class deleted file mode 100644 index f179531..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson02/WindowsFrame$1.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson02/WindowsFrame.class b/guistudy/out/production/guistudy/com/xiaokai/lesson02/WindowsFrame.class deleted file mode 100644 index d32b510..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson02/WindowsFrame.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson03/BorderLayoutDemo.class b/guistudy/out/production/guistudy/com/xiaokai/lesson03/BorderLayoutDemo.class deleted file mode 100644 index 596ddc1..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson03/BorderLayoutDemo.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson03/FlowLayoutDemo.class b/guistudy/out/production/guistudy/com/xiaokai/lesson03/FlowLayoutDemo.class deleted file mode 100644 index e2c20af..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson03/FlowLayoutDemo.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson03/GirdLayoutTest.class b/guistudy/out/production/guistudy/com/xiaokai/lesson03/GirdLayoutTest.class deleted file mode 100644 index 4ff347b..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson03/GirdLayoutTest.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson03/IconTest.class b/guistudy/out/production/guistudy/com/xiaokai/lesson03/IconTest.class deleted file mode 100644 index 921c884..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson03/IconTest.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson03/ImageButtonTest.class b/guistudy/out/production/guistudy/com/xiaokai/lesson03/ImageButtonTest.class deleted file mode 100644 index 6bb5896..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson03/ImageButtonTest.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson03/ImageIconTest.class b/guistudy/out/production/guistudy/com/xiaokai/lesson03/ImageIconTest.class deleted file mode 100644 index 4e4f85b..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson03/ImageIconTest.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson03/JCheckBoxTest.class b/guistudy/out/production/guistudy/com/xiaokai/lesson03/JCheckBoxTest.class deleted file mode 100644 index 66297a5..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson03/JCheckBoxTest.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson03/JComboBoxTest.class b/guistudy/out/production/guistudy/com/xiaokai/lesson03/JComboBoxTest.class deleted file mode 100644 index 527c151..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson03/JComboBoxTest.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson03/JDialogTest.class b/guistudy/out/production/guistudy/com/xiaokai/lesson03/JDialogTest.class deleted file mode 100644 index f8840b6..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson03/JDialogTest.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson03/JFrameTest.class b/guistudy/out/production/guistudy/com/xiaokai/lesson03/JFrameTest.class deleted file mode 100644 index b28d433..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson03/JFrameTest.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson03/JFrameTest2.class b/guistudy/out/production/guistudy/com/xiaokai/lesson03/JFrameTest2.class deleted file mode 100644 index 8349e1a..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson03/JFrameTest2.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson03/JListTest.class b/guistudy/out/production/guistudy/com/xiaokai/lesson03/JListTest.class deleted file mode 100644 index 039bd58..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson03/JListTest.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson03/JPanelTest.class b/guistudy/out/production/guistudy/com/xiaokai/lesson03/JPanelTest.class deleted file mode 100644 index f7b8241..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson03/JPanelTest.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson03/JRadioButtonTest.class b/guistudy/out/production/guistudy/com/xiaokai/lesson03/JRadioButtonTest.class deleted file mode 100644 index cf21500..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson03/JRadioButtonTest.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson03/JSCrollPaneTest.class b/guistudy/out/production/guistudy/com/xiaokai/lesson03/JSCrollPaneTest.class deleted file mode 100644 index 05826db..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson03/JSCrollPaneTest.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson03/MyJFrame$1.class b/guistudy/out/production/guistudy/com/xiaokai/lesson03/MyJFrame$1.class deleted file mode 100644 index b0ff936..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson03/MyJFrame$1.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson03/MyJFrame.class b/guistudy/out/production/guistudy/com/xiaokai/lesson03/MyJFrame.class deleted file mode 100644 index e9948b8..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson03/MyJFrame.class and /dev/null differ diff --git a/guistudy/out/production/guistudy/com/xiaokai/lesson03/logo.png b/guistudy/out/production/guistudy/com/xiaokai/lesson03/logo.png deleted file mode 100644 index 33d1808..0000000 Binary files a/guistudy/out/production/guistudy/com/xiaokai/lesson03/logo.png and /dev/null differ diff --git a/guistudy/src/com/xiaokai/gametest/tcztest/Data.java b/guistudy/src/com/xiaokai/gametest/tcztest/Data.java deleted file mode 100644 index ee6e41a..0000000 --- a/guistudy/src/com/xiaokai/gametest/tcztest/Data.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.xiaokai.gametest.tcztest; - -import javax.swing.*; -import java.net.URL; - -public class Data { - //广告位招租 - public static URL headerUrl = Data.class.getResource("header.png"); - public static URL foodUrl = Data.class.getResource("food.png"); - //头和身子 - public static URL upUrl = Data.class.getResource("up.png"); - public static URL downUrl = Data.class.getResource("down.png"); - public static URL leftUrl = Data.class.getResource("left.png"); - public static URL rightUrl = Data.class.getResource("right.png"); - public static URL bodyUrl = Data.class.getResource("body.png"); - - //new ImageIcon; - public static ImageIcon header = new ImageIcon(headerUrl); - public static ImageIcon up = new ImageIcon(upUrl); - public static ImageIcon down = new ImageIcon(downUrl); - public static ImageIcon right = new ImageIcon(rightUrl); - public static ImageIcon left = new ImageIcon(leftUrl); - public static ImageIcon body = new ImageIcon(bodyUrl); - public static ImageIcon food = new ImageIcon(foodUrl); - -} diff --git a/guistudy/src/com/xiaokai/gametest/tcztest/GamePanel.java b/guistudy/src/com/xiaokai/gametest/tcztest/GamePanel.java deleted file mode 100644 index 651dfe7..0000000 --- a/guistudy/src/com/xiaokai/gametest/tcztest/GamePanel.java +++ /dev/null @@ -1,196 +0,0 @@ -package com.xiaokai.gametest.tcztest; - -import javax.swing.*; -import java.awt.*; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.awt.event.KeyEvent; -import java.awt.event.KeyListener; -import java.util.Random; - -public class GamePanel extends JPanel implements KeyListener, ActionListener { - Data data = new Data(); - private int length;//长度 - private int [] snakeX = new int[50];//横坐标 - private int [] snakeY = new int[50];//纵坐标 - private String fx = "R";//猪头朝向 - //食物 - Random random = new Random(); - private int foodx,foody; - //状态 - private boolean isStart = false; - private boolean isFail = false; - private int score = 0; - //定时器 - Timer timer = new Timer(200,this); - - - - public GamePanel(){ - init(); - //读取焦点事件 - this.setFocusable(true); - //添加键盘监控事件 - this.addKeyListener(this); - timer.start(); - } - //初始化操作 - private void init(){ - length = 3;//刚开始长度为3 - //初始定位 - snakeX[0] = 150;snakeY[0] = 150; - snakeX[1] = 125;snakeY[1] = 150; - snakeX[2] = 100;snakeY[2] = 150; - - //初始化食物 - foodx = 25+25*random.nextInt(34); - foody = 75+25*random.nextInt(24); - - - - } - //根据初始化操作绘制相关组件 - - @Override - public void paintComponent(Graphics g) { - super.paintComponent(g);//清屏 - this.setBackground(Color.white);//设置面板背景色 - data.header.paintIcon(this,g,25,11);//广告位 - g.fillRect(25,75,850,600); - //画静态结构 - switch (fx){ - case "R": - data.right.paintIcon(this,g,snakeX[0],snakeY[0] ); - break; - case "L": - data.left.paintIcon(this,g,snakeX[0],snakeY[0]); - break; - case "U": - data.up.paintIcon(this,g,snakeX[0],snakeY[0]); - break; - case "D": - data.down.paintIcon(this,g,snakeX[0],snakeY[0]); - break; - } - //画身体,身体length控制,每次遍历即可 - for (int i = 1; i < length; i++) { - Data.body.paintIcon(this,g,snakeX[i],snakeY[i] ); - } - //画食物 - data.food.paintIcon(this,g,foodx,foody); - //提示信息 - if (!isStart){ - g.setColor(Color.white); - g.setFont(new Font("微软雅黑",Font.BOLD,40)); - g.drawString("按下空格开始游戏!",300,300); - } - //失败信息 - if (isFail){ - g.setColor(Color.red); - g.setFont(new Font("微软雅黑",Font.BOLD,30)); - g.drawString("失败了~按下空格重新开始!",200,300); - } - //显示成绩 - g.setColor(Color.CYAN); - g.setFont(new Font("微软雅黑",Font.BOLD,18)); - g.drawString("长度:"+length,750,35); - g.drawString("分数:"+score,750,50); - - } - - @Override - //定时器事件 - public void actionPerformed(ActionEvent e) { - //如果isStart是真,且没有结束,则可以开始移动 - if (isStart && isFail==false){ - //身子移动,除了脑袋其他的所有节点都是移动到前一个节点的位置 - for (int i = length-1; i > 0; i--) { - snakeX[i] = snakeX[i - 1]; - snakeY[i] = snakeY[i - 1]; - } - //头的移动,根据上下左右选择 - switch (fx){ - case "R": - snakeX[0] = snakeX[0] + 25; - if (snakeX[0] > 850) snakeX[0] = 25; - break; - case "L": - snakeX[0] = snakeX[0] - 25; - if (snakeX[0] < 25) snakeX[0] = 850; - break; - case "U": - snakeY[0] = snakeY[0] - 25; - if (snakeY[0] < 75) snakeY[0] = 650; - break; - case "D": - snakeY[0] = snakeY[0] + 25; - if (snakeY[0] > 650) snakeY[0] = 75; - break; - } - //判断吃到东西 - if (snakeX[0] == foodx && snakeY[0] == foody){ - //长度加一 - length++; - //增加成绩 - score+=10; - //重新生成食物 - foodx = 25+25*random.nextInt(34); - foody = 75+25*random.nextInt(24); - } - //判断失败,只要头和身体任何一节相等,说明失败 - for (int i = 1; i < length; i++) { - if (snakeX[i] == snakeX[0] && snakeY[i] == snakeY[0]){ - isFail = true; - } - } - repaint();//每一次判断后都重画 - } - timer.start();//定时器 - } - - - - @Override - //键盘监听事件 - public void keyPressed(KeyEvent e) { - int keyCode = e.getKeyCode(); - - //键盘控制状态 - if (keyCode == KeyEvent.VK_SPACE){ - if (isFail){ - isFail = false; - init(); - }else { - isStart = !isStart; - } - repaint(); - } - - //键盘控制方向 - switch (keyCode){ - case KeyEvent.VK_UP: - fx = "U"; - break; - case KeyEvent.VK_DOWN: - fx = "D"; - break; - case KeyEvent.VK_LEFT: - fx = "L"; - break; - case KeyEvent.VK_RIGHT: - fx = "R"; - break; - } - } - - - - @Override - public void keyReleased(KeyEvent e) { - - } - @Override - public void keyTyped(KeyEvent e) { - - } -} diff --git a/guistudy/src/com/xiaokai/gametest/tcztest/StartGame.java b/guistudy/src/com/xiaokai/gametest/tcztest/StartGame.java deleted file mode 100644 index ade5938..0000000 --- a/guistudy/src/com/xiaokai/gametest/tcztest/StartGame.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.xiaokai.gametest.tcztest; - -import javax.swing.*; -import java.awt.*; - -public class StartGame { - public static void main(String[] args) { - JFrame frame = new JFrame("贪吃猪"); - frame.setBounds(100,100,900,720); - frame.setResizable(false); - frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); - - Container container = frame.getContentPane(); - container.add(new GamePanel()); - frame.setVisible(true); - } -} diff --git a/guistudy/src/com/xiaokai/gametest/tcztest/body.png b/guistudy/src/com/xiaokai/gametest/tcztest/body.png deleted file mode 100644 index f62054e..0000000 Binary files a/guistudy/src/com/xiaokai/gametest/tcztest/body.png and /dev/null differ diff --git a/guistudy/src/com/xiaokai/gametest/tcztest/down.png b/guistudy/src/com/xiaokai/gametest/tcztest/down.png deleted file mode 100644 index 7e167cd..0000000 Binary files a/guistudy/src/com/xiaokai/gametest/tcztest/down.png and /dev/null differ diff --git a/guistudy/src/com/xiaokai/gametest/tcztest/food.png b/guistudy/src/com/xiaokai/gametest/tcztest/food.png deleted file mode 100644 index ac18675..0000000 Binary files a/guistudy/src/com/xiaokai/gametest/tcztest/food.png and /dev/null differ diff --git a/guistudy/src/com/xiaokai/gametest/tcztest/header.png b/guistudy/src/com/xiaokai/gametest/tcztest/header.png deleted file mode 100644 index 7a8cfcd..0000000 Binary files a/guistudy/src/com/xiaokai/gametest/tcztest/header.png and /dev/null differ diff --git a/guistudy/src/com/xiaokai/gametest/tcztest/left.png b/guistudy/src/com/xiaokai/gametest/tcztest/left.png deleted file mode 100644 index 5440476..0000000 Binary files a/guistudy/src/com/xiaokai/gametest/tcztest/left.png and /dev/null differ diff --git a/guistudy/src/com/xiaokai/gametest/tcztest/right.png b/guistudy/src/com/xiaokai/gametest/tcztest/right.png deleted file mode 100644 index 9ae9eb9..0000000 Binary files a/guistudy/src/com/xiaokai/gametest/tcztest/right.png and /dev/null differ diff --git a/guistudy/src/com/xiaokai/gametest/tcztest/statics/body.png b/guistudy/src/com/xiaokai/gametest/tcztest/statics/body.png deleted file mode 100644 index f62054e..0000000 Binary files a/guistudy/src/com/xiaokai/gametest/tcztest/statics/body.png and /dev/null differ diff --git a/guistudy/src/com/xiaokai/gametest/tcztest/statics/down.png b/guistudy/src/com/xiaokai/gametest/tcztest/statics/down.png deleted file mode 100644 index 7e167cd..0000000 Binary files a/guistudy/src/com/xiaokai/gametest/tcztest/statics/down.png and /dev/null differ diff --git a/guistudy/src/com/xiaokai/gametest/tcztest/statics/food.png b/guistudy/src/com/xiaokai/gametest/tcztest/statics/food.png deleted file mode 100644 index eac98a4..0000000 Binary files a/guistudy/src/com/xiaokai/gametest/tcztest/statics/food.png and /dev/null differ diff --git a/guistudy/src/com/xiaokai/gametest/tcztest/statics/header.png b/guistudy/src/com/xiaokai/gametest/tcztest/statics/header.png deleted file mode 100644 index 7a8cfcd..0000000 Binary files a/guistudy/src/com/xiaokai/gametest/tcztest/statics/header.png and /dev/null differ diff --git a/guistudy/src/com/xiaokai/gametest/tcztest/statics/left.png b/guistudy/src/com/xiaokai/gametest/tcztest/statics/left.png deleted file mode 100644 index 5440476..0000000 Binary files a/guistudy/src/com/xiaokai/gametest/tcztest/statics/left.png and /dev/null differ diff --git a/guistudy/src/com/xiaokai/gametest/tcztest/statics/right.png b/guistudy/src/com/xiaokai/gametest/tcztest/statics/right.png deleted file mode 100644 index 9ae9eb9..0000000 Binary files a/guistudy/src/com/xiaokai/gametest/tcztest/statics/right.png and /dev/null differ diff --git a/guistudy/src/com/xiaokai/gametest/tcztest/statics/up.png b/guistudy/src/com/xiaokai/gametest/tcztest/statics/up.png deleted file mode 100644 index 8933372..0000000 Binary files a/guistudy/src/com/xiaokai/gametest/tcztest/statics/up.png and /dev/null differ diff --git a/guistudy/src/com/xiaokai/gametest/tcztest/up.png b/guistudy/src/com/xiaokai/gametest/tcztest/up.png deleted file mode 100644 index 8933372..0000000 Binary files a/guistudy/src/com/xiaokai/gametest/tcztest/up.png and /dev/null differ diff --git a/guistudy/src/com/xiaokai/gametest/test2048/Game.java b/guistudy/src/com/xiaokai/gametest/test2048/Game.java deleted file mode 100644 index dbf387a..0000000 --- a/guistudy/src/com/xiaokai/gametest/test2048/Game.java +++ /dev/null @@ -1,408 +0,0 @@ -package com.xiaokai.gametest.test2048; - -import jdk.nashorn.internal.scripts.JO; - -import javax.swing.*; -import java.awt.*; -import java.awt.event.KeyEvent; -import java.awt.event.KeyListener; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; - -public class Game { - //存储颜色的类 - private static class Color{ - public int fontColor,bgColor;//字体颜色,背景颜色 - public Color(int fc,int bgc){ - fontColor = fc; - bgColor = bgc; - } - } - JFrame mainJFrame;//定义主窗口对象 - JLabel[] jLabels;//定义方块,用JLable表示 - int[] datas = new int[]{ - 0,0,0,0, - 0,0,0,0, - 0,0,0,0, - 0,0,0,0 - };//定义每个方块的初始数值 - int[] temp = new int[4]; - int[] temp2 = new int[16];//检测方块是否有合并; - - List emptyBlocks = new ArrayList(16);//用来存放空方块 - - //用来存放各个数值的颜色使用Map; - static HashMap colorMap = new HashMap(){ - { - put(0,new Color(0x776e65,0xCDC1B4)); - put(2,new Color(0x776e65,0xeee4da)); - put(4,new Color(0x776e65,0xede0c8)); - put(8,new Color(0xf9f6f2,0xf2b179)); - put(16,new Color(0xf9f6f2,0xFFE4C4)); - put(32,new Color(0xf9f6f2,0xFFDAB9)); - put(64,new Color(0xf9f6f2,0xFFD700)); - put(128,new Color(0xf9f6f2,0xFF7F24)); - put(256,new Color(0xf9f6f2,0xF5FFFA)); - put(512,new Color(0xf9f6f2,0xF5F678)); - put(1024,new Color(0xf9f6f2,0xFF3E11)); - put(2048,new Color(0xf9f6f2,0xFF3E96)); - } - }; - - //构造方法 - public Game(){ - initGameFrame(); - initGame(); - refresh(); - } - - //initGame()开局时生成两个2的方块和一个4的方块 - private void initGame(){ - for (int i = 0; i < 2; i++) { - generateBlock(datas,2); - } - generateBlock(datas,4); - - } - //随机生成2或者4的方块 - private void randomGenerate(int arr[]){ - int random = (int) (Math.random()*10); - if (random > 5){ - generateBlock(arr,4); - }else { - generateBlock(arr,2); - } - - } - //随机生成新的方块(参数:生成的方块的数值) - private void generateBlock(int arr[],int num){ - emptyBlocks.clear(); - - for (int i = 0; i < 16; i++) { - if (arr[i] == 0){ - emptyBlocks.add(i); - } - } - int len = emptyBlocks.size(); - if (len == 0){ - return; - } - int pos = (int) (Math.random()*100) % len; - arr[(int) emptyBlocks.get(pos)] = num; - refresh(); - } - //判定胜负并做终局处理 - private void judge(int arr[]){ - if (isWin(arr)){ - JOptionPane.showMessageDialog(null,"恭喜!你已经成功凑出2048的方块","你赢了!",JOptionPane.PLAIN_MESSAGE); - System.exit(0); - } - if (isEnd(arr)){ - JOptionPane.showMessageDialog(null,"抱歉,你没有凑出2048的方块,你的最大成绩是:"+getMax(arr),"游戏结束", JOptionPane.PLAIN_MESSAGE); - System.exit(0); - } - } - //判断玩家是否胜利 - private boolean isWin(int arr[]){ - for (int i : arr) { - if(i >= 2048){ - return true; - } - } - return false; - } - //判断游戏是否结束,如果上下左右移动合并后均无法产生空块,返回TRUE,表示游戏结束; - private boolean isEnd(int arr[]){ - int [] tmp = new int[16]; - int isend = 0; - - System.arraycopy(arr,0,tmp,0,16); - left(tmp); - if(isNoBlock(tmp)){ - isend++; - } - - System.arraycopy(arr,0,tmp,0,16); - right(tmp); - if(isNoBlock(tmp)){ - isend++; - } - - System.arraycopy(arr,0,tmp,0,16); - up(tmp); - if(isNoBlock(tmp)){ - isend++; - } - - System.arraycopy(arr,0,tmp,0,16); - down(tmp); - if(isNoBlock(tmp)){ - isend++; - } - - if (isend == 4){ - return true; - }else { - return false; - } - } - //判断是否无方块 - private boolean isNoBlock(int arr[]){ - for (int i : arr) { - if (i == 0){ - return false; - } - } - return true; - } - //获取到最大的方块值 - private int getMax(int arr[]){ - int max = arr[0]; - for (int i : arr) { - if (i >= max){ - max = i; - } - } - return max; - } - //刷新每个方块显示的数据; - private void refresh(){ - JLabel j; - for (int i = 0; i < 16; i++) { - int arr = datas[i]; - j = jLabels[i]; - - if (arr == 0){ - j.setText(""); - }else if (arr >= 1024){ - j.setFont(new Font("Dialog",1,42)); - j.setText(String.valueOf(datas[i])); - }else { - j.setFont(new Font("Dialog",1,50)); - j.setText(String.valueOf(arr)); - } - - Color currColor = colorMap.get(arr); - j.setBackground(new java.awt.Color(currColor.bgColor)); - j.setForeground(new java.awt.Color(currColor.fontColor)); - } - } - //初始化游戏窗口,等一些其他操作 - private void initGameFrame(){ - //创建JFrame以及做一些设置 - mainJFrame = new JFrame("2048 Game"); - mainJFrame.setSize(500,500); - mainJFrame.setResizable(false);//固定窗口 - mainJFrame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); - mainJFrame.setLocationRelativeTo(null); - - mainJFrame.setLayout(new GridLayout(4,4)); - mainJFrame.getContentPane().setBackground(new java.awt.Color(0xCDC1B4)); - - //添加按键监听 - mainJFrame.addKeyListener(new KeyListener() { - @Override - public void keyTyped(KeyEvent e) { - - } - - @Override - public void keyPressed(KeyEvent e) { - System.arraycopy(datas,0,temp2,0,16); - - //根据按键不同,调取不同的处理函数 - switch (e.getKeyCode()){ - case KeyEvent.VK_UP: - up(datas); - break; - case KeyEvent.VK_DOWN: - down(datas); - break; - case KeyEvent.VK_LEFT: - left(datas); - break; - case KeyEvent.VK_RIGHT: - right(datas); - break; - } - - //判断是否有方块合并,若有,生成新的方块,没有不产生新方块 - if (!Arrays.equals(datas,temp2)){ - randomGenerate(datas); - } - refresh(); - judge(datas); - - } - - @Override - public void keyReleased(KeyEvent e) { - - } - }); - - try { - UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); - } catch (Exception e) { - JOptionPane.showMessageDialog(null,e.getMessage()); - } - - //使用16个Label来显示16个方块 - jLabels = new JLabel[16]; - JLabel j; - for (int i = 0; i < 16; i++) { - jLabels[i] = new JLabel("0",JLabel.CENTER); - j = jLabels[i]; - j.setOpaque(true); - j.setBorder(BorderFactory.createMatteBorder(6,6,6,6,new java.awt.Color(0xBBADA0))); - - j.setFont(new Font("Dialog",1,52)); - mainJFrame.add(j); - } - mainJFrame.setVisible(true); - } - //向左移动 - private void left(int arr[]){ - moveLeft(arr); - combineLeft(arr); - moveLeft(arr);//合并完之后会再次产生空位,要再次左移 - } - //向左合并方块 - private void combineLeft(int arr[]){ - for (int l = 0; l < 4; l++) { - for (int i = 0; i < 3; i++) { - if ((arr[l*4+i] != 0)&&(arr[l*4+1] != 0)&&(arr[l*4+i] == arr[l*4+i+1])){ - arr[l*4+i] *= 2; - arr[l*4+i+1] = 0; - } - } - } - } - //方块左移,,逐行扫描,利用临时数组实现左移、 - private void moveLeft(int arr[]){ - for (int l = 0; l < 4; l++) { - int z = 0, fz = 0;//z(零),fz(非零) - for (int i = 0; i < 4; i++) { - if(arr[l*4+i] == 0){ - z++; - }else { - temp[fz] = arr[l*4+i]; - fz++; - } - } - for (int j = fz; j < 4; j++) { - temp[j] = 0; - } - for (int i = 0; i < 4; i++) { - arr[l*4+i] = temp[i]; - } - } - } - private void moveRight(int arr[]){ - for (int l = 0; l < 4; l++) { - int z = 3,fz = 3; - for (int i = 3; i >= 0; i--) { - if (arr[l*4+i] == 0){ - z--; - }else { - temp[fz] = arr[l*4+i]; - fz--; - } - } - for (int i = fz; i >= 0; i--) { - temp[i] = 0; - } - for (int j = 3; j >= 0; j--) { - arr[l*4+j] = temp[j]; - } - } - } - private void combineRight(int arr[]){ - for (int l = 0; l < 4; l++) { - for (int i = 3; i > 0; i--) { - if ((arr[l*4+i] != 0 && arr[l*4+i-1] != 0 && arr[l*4+i] ==arr[l*4+i-1])){ - arr[l*4+i] *= 2; - arr[l*4+i-1] = 0; - } - } - } - } - private void right(int arr[]){ - moveRight(arr); - combineRight(arr); - moveRight(arr); - } - - private void moveUp(int arr[]){ - for (int l = 0; l < 4; l++) { - int z = 0, fz = 0; - for (int i = 0; i < 4; i++) { - if (arr[l+4*i] == 0){ - z++; - }else { - temp[fz] = arr[l+4*i]; - fz++; - } - } - for (int i = fz; i < 4; i++) { - temp[i] = 0; - } - for (int j = 0; j < 4; j++) { - arr[l+4*j] = temp[j]; - } - } - } - private void combineUp(int arr[]){ - for (int l = 0; l < 4; l++) { - for (int i = 0; i < 3; i++) { - if ((arr[l+4*i] != 0 && arr[l+4*(i+1)] != 0 && arr[l+4*i] == arr[l+4*(i+1)])){ - arr[l+4*i] *= 2; - arr[l+4*(i+1)] = 0; - } - } - } - } - private void up(int arr[]){ - moveUp(arr); - combineUp(arr); - moveUp(arr); - } - - private void moveDown(int arr[]){ - for (int l = 0; l < 4; l++) { - int z =3,fz = 3; - for (int i = 3; i >= 0; i--) { - if (arr[l+4*i] == 0){ - z--; - }else { - temp[fz] = arr[l+4*i]; - fz--; - } - } - for (int i = fz; i >= 0; i--) { - temp[i] = 0; - } - for (int j = 3; j >= 0; j--) { - arr[l+4*j] = temp[j]; - } - } - } - private void combineDown(int arr[]){ - for (int l = 0; l < 4; l++) { - for (int i = 3; i > 0; i--) { - if ((arr[l+4*i] != 0 && arr[l+4*(i-1)] != 0 && arr[l+4*i] == arr[l+4*(i-1)])){ - arr[l+4*i] *= 2; - arr[l+4*(i-1)] = 0; - } - } - } - } - private void down(int arr[]){ - moveDown(arr); - combineDown(arr); - moveDown(arr); - } - -} diff --git a/guistudy/src/com/xiaokai/gametest/test2048/Main.java b/guistudy/src/com/xiaokai/gametest/test2048/Main.java deleted file mode 100644 index cada0f1..0000000 --- a/guistudy/src/com/xiaokai/gametest/test2048/Main.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.xiaokai.gametest.test2048; - -public class Main { - public static void main(String[] args) { - new StartFrame(); - } - -} diff --git a/guistudy/src/com/xiaokai/gametest/test2048/StartFrame.java b/guistudy/src/com/xiaokai/gametest/test2048/StartFrame.java deleted file mode 100644 index 4b06b59..0000000 --- a/guistudy/src/com/xiaokai/gametest/test2048/StartFrame.java +++ /dev/null @@ -1,86 +0,0 @@ -package com.xiaokai.gametest.test2048; - -import com.xiaokai.lesson03.JListTest; - -import javax.swing.*; -import java.awt.*; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; - -public class StartFrame { - JFrame mainFrame; - final String gameRule = "2048游戏公有16个格子,开始时会生成两个随机的数值为2和4的方块,\n"+ - "玩家可以通过上、下、左、右方向键来操控方块的滑动方向,\n"+ - "每按一次方向键,所有的方块会向一个方向靠拢,相同数值的方块将会相加并合成一个方块,\n"+ - "此外,每滑动一次将随机生成一个数字为2或者4的方块,\n"+ - "玩家需要想办法在这16个格子上凑出2048数值的方块,若16个格子被填满且无法再移动,\n"+ - "则游戏结束。"; - public StartFrame(){ - initFrame(); - } - private void initFrame(){ - mainFrame = new JFrame("2048 Game"); - mainFrame.setSize(500,500); - mainFrame.setResizable(false); - mainFrame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); - mainFrame.setLocationRelativeTo(null);//窗口居中 - - JPanel jPanel = new JPanel(); - jPanel.setLayout(new BoxLayout(jPanel,BoxLayout.Y_AXIS)); - //BoxLayout.Y_AXIS是指从上到下垂直布置组件 - jPanel.add(newLine(Box.createVerticalStrut(25)));//添加空白区域 - JLabel jLabel = new JLabel("2048"); - jLabel.setForeground(new Color(0x776e65)); - jLabel.setFont(new Font("Dialog",1,92)); - jPanel.add(newLine(jLabel)); - - jPanel.add(newLine(Box.createVerticalStrut(50))); - - JButton btn1 = new JButton("开始游戏"); - btn1.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - new Game(); - mainFrame.dispose(); - } - }); - jPanel.add(newLine(btn1)); - - jPanel.add(newLine(Box.createVerticalStrut(50))); - - JButton btn2 = new JButton("游戏规则"); - btn2.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - JOptionPane.showMessageDialog(null,gameRule,"游戏规则",JOptionPane.PLAIN_MESSAGE); - } - }); - jPanel.add(newLine(btn2)); - jPanel.add(newLine(Box.createVerticalStrut(50))); - - JButton btn3 = new JButton("退出游戏"); - btn3.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - System.out.println(0); - } - }); - jPanel.add(newLine(btn3)); - - mainFrame.add(jPanel); - mainFrame.setVisible(true); - } - - //添加新一行垂直居中的空间,通过在空间两边填充glue对象实现 - private JPanel newLine(Component c){ - JPanel jp = new JPanel(); - jp.setLayout(new BoxLayout(jp,BoxLayout.X_AXIS)); - jp.add(Box.createHorizontalGlue()); - jp.add(c); - jp.add(Box.createHorizontalGlue()); - jp.setOpaque(true);//设置不透明 - - return jp; - - } -} diff --git a/guistudy/src/com/xiaokai/lesson01/TestActionEvent.java b/guistudy/src/com/xiaokai/lesson01/TestActionEvent.java deleted file mode 100644 index 433123a..0000000 --- a/guistudy/src/com/xiaokai/lesson01/TestActionEvent.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.xiaokai.lesson01; - -import java.awt.*; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.awt.event.WindowAdapter; -import java.awt.event.WindowEvent; - -public class TestActionEvent { - public static void main(String[] args) { - Frame frame = new Frame("TestActionEvent"); - Button button = new Button("Press Me"); - //创建一个监听对象 - MyActionListener1 myActionListener1 = new MyActionListener1(); - //将监听对象加入到button里,监听按钮动作; - //按钮触发打击事件,返回监听对象e; - //然后自动执行actionPerformed - button.addActionListener(myActionListener1); - - frame.add(button,BorderLayout.CENTER); - frame.pack(); - - addWindowClosingEvent(frame); - - frame.setVisible(true); - - - } - - //关闭窗口 - private static void addWindowClosingEvent(Frame frame){ - frame.addWindowListener(new WindowAdapter() { - @Override - public void windowClosing(WindowEvent e) { - System.exit(0); - } - }); - } -} -class MyActionListener1 implements ActionListener{ - - @Override - public void actionPerformed(ActionEvent e) { - System.out.println("A button has been pressed!"); - } -} diff --git a/guistudy/src/com/xiaokai/lesson01/TestActionEvent2.java b/guistudy/src/com/xiaokai/lesson01/TestActionEvent2.java deleted file mode 100644 index b6accdc..0000000 --- a/guistudy/src/com/xiaokai/lesson01/TestActionEvent2.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.xiaokai.lesson01; - -import java.awt.*; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; - -public class TestActionEvent2 { - public static void main(String[] args) { - Frame frame = new Frame("TestActionEvent"); - Button start = new Button("start"); - Button stop = new Button("stop"); - - MyMonitor myMonitor = new MyMonitor(); - - start.addActionListener(myMonitor); - stop.addActionListener(myMonitor); - - stop.setActionCommand("GameOver!"); - - frame.setLayout(new GridLayout(1,2)); - - frame.add(start); - frame.add(stop); - - frame.pack(); - - frame.setVisible(true); - } -} -class MyMonitor implements ActionListener{ - - @Override - public void actionPerformed(ActionEvent e) { - System.out.println(e.getActionCommand()); - } -} diff --git a/guistudy/src/com/xiaokai/lesson01/TestBorderLayout.java b/guistudy/src/com/xiaokai/lesson01/TestBorderLayout.java deleted file mode 100644 index 5c3da05..0000000 --- a/guistudy/src/com/xiaokai/lesson01/TestBorderLayout.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.xiaokai.lesson01; - -import java.awt.*; - -public class TestBorderLayout { - public static void main(String[] args) { - Frame frame = new Frame("TestBorderLayout"); - Button button1 = new Button("button1"); - Button button2 = new Button("button2"); - Button button3 = new Button("button3"); - Button button4 = new Button("button4"); - Button button5 = new Button("button5"); - - frame.add(button1,BorderLayout.EAST); - frame.add(button2,BorderLayout.WEST); - frame.add(button3,BorderLayout.SOUTH); - frame.add(button4,BorderLayout.NORTH); - frame.add(button5,BorderLayout.CENTER); - frame.setSize(400,400); - frame.setVisible(true); - } -} diff --git a/guistudy/src/com/xiaokai/lesson01/TestFlowLayout.java b/guistudy/src/com/xiaokai/lesson01/TestFlowLayout.java deleted file mode 100644 index 4b21b3b..0000000 --- a/guistudy/src/com/xiaokai/lesson01/TestFlowLayout.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.xiaokai.lesson01; - -import java.awt.*; - -public class TestFlowLayout { - public static void main(String[] args) { - Frame frame = new Frame("FlowLayout"); - //使用Button类创建按钮 - Button button1 = new Button("button1"); - Button button2 = new Button("button2"); - Button button3 = new Button("button3"); - Button button4 = new Button("button4"); - Button button5 = new Button("button5"); - //使用FlowLayout布局,默认水平居中 - //frame.setLayout(new FlowLayout()); - //frame.setLayout(new FlowLayout(FlowLayout.LEFT,20,40)); - frame.setLayout(new FlowLayout(FlowLayout.RIGHT)); - frame.setSize(400,400); - frame.add(button1); - frame.add(button2); - frame.add(button3); - frame.add(button4); - frame.add(button5); - frame.setVisible(true); - } -} diff --git a/guistudy/src/com/xiaokai/lesson01/TestFrame.java b/guistudy/src/com/xiaokai/lesson01/TestFrame.java deleted file mode 100644 index f56e41b..0000000 --- a/guistudy/src/com/xiaokai/lesson01/TestFrame.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.xiaokai.lesson01; - -import java.awt.*; - -/** - * 学习JavaGUI编写的第一个图形界面窗口 - */ -public class TestFrame { - public static void main(String[] args) { - Frame frame = new Frame("我的第一个图形界面窗口"); - - //设置窗体背景颜色 - frame.setBackground(Color.green); - - //设置窗体是否可见 - frame.setVisible(true); - - //设置初始窗体大小 - frame.setSize(400,400); - - //设置窗体出现的位置 - frame.setLocation(200,200); - - //设置能否被改变大小 - frame.setResizable(false); - - } -} diff --git a/guistudy/src/com/xiaokai/lesson01/TestGridLayout.java b/guistudy/src/com/xiaokai/lesson01/TestGridLayout.java deleted file mode 100644 index 59f75af..0000000 --- a/guistudy/src/com/xiaokai/lesson01/TestGridLayout.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.xiaokai.lesson01; - -import java.awt.*; - -public class TestGridLayout { - public static void main(String[] args) { - Frame frame = new Frame("TestGridLayout"); - - Button button1 = new Button("button1"); - Button button2 = new Button("button2"); - Button button3 = new Button("button3"); - Button button4 = new Button("button4"); - Button button5 = new Button("button5"); - Button button6 = new Button("button6"); - - frame.setLayout(new GridLayout(3,2)); - - frame.add(button1); - frame.add(button2); - frame.add(button3); - frame.add(button4); - frame.add(button5); - frame.add(button6); - frame.setSize(400,400); - - //frame.pack();//盖方法的作用是根据窗口的布局及组件的preferredSize来确定frame的最佳大小 - frame.setVisible(true); - } -} diff --git a/guistudy/src/com/xiaokai/lesson01/TestMath.java b/guistudy/src/com/xiaokai/lesson01/TestMath.java deleted file mode 100644 index dc69429..0000000 --- a/guistudy/src/com/xiaokai/lesson01/TestMath.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.xiaokai.lesson01; - -import java.awt.*; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.awt.event.WindowAdapter; -import java.awt.event.WindowEvent; - -public class TestMath { - public static void main(String[] args) { - new Calculator(); - } -} - -/** - * 测试简易计算机类 - */ -class Calculator extends Frame{ - public Calculator() { - //创建三个文本框 - TextField t1 = new TextField(10); - TextField t2 = new TextField(10); - TextField t3 = new TextField(20); - //创建等号按钮 - Button button = new Button("="); - //创建+标签 - Label label = new Label("+"); - //设置布局 - setLayout(new FlowLayout()); - add(t1); - add(label); - add(t2); - add(button); - add(t3); - pack(); - setVisible(true); - //给等号加监听 - button.addActionListener(new MyMonitor3(t1,t2,t3)); - addWindowClosingEvent(this); - - } - //关闭窗口 - private static void addWindowClosingEvent(Frame frame){ - frame.addWindowListener(new WindowAdapter() { - @Override - public void windowClosing(WindowEvent e) { - System.exit(0); - } - }); - } -} - -//监听器 -class MyMonitor3 implements ActionListener{ - TextField num1,num2,num3; - public MyMonitor3(TextField num1,TextField num2,TextField num3) { - this.num1 = num1; - this.num2 = num2; - this.num3 = num3; - } - - @Override - public void actionPerformed(ActionEvent e) { - int n1 = Integer.parseInt(num1.getText()); - int n2 = Integer.parseInt(num2.getText()); - num3.setText(String.valueOf(n1+n2)); - - num1.setText(""); - num2.setText(""); - } -} diff --git a/guistudy/src/com/xiaokai/lesson01/TestMath2.java b/guistudy/src/com/xiaokai/lesson01/TestMath2.java deleted file mode 100644 index c0333c3..0000000 --- a/guistudy/src/com/xiaokai/lesson01/TestMath2.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.xiaokai.lesson01; - -import java.awt.*; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; - -/** - * Java的经典用法:在一个类中持有另一个类的引用 - */ -public class TestMath2 { - public static void main(String[] args) { - new Calculator2().launchFrame(); - } -} -//做好计算机的窗体界面 -class Calculator2 extends Frame{ - //把设计计算机的窗体封装成一个方法 - TextField t1,t2,t3; - - public void launchFrame(){ - //创建三个文本框 - t1 = new TextField(10); - t2 = new TextField(10); - t3 = new TextField(20); - //创建等号按钮 - Button button = new Button("="); - //设置监听 - button.addActionListener(new MyMonitor4(this)); - //创建+标签 - Label label = new Label("+"); - //设置布局 - setLayout(new FlowLayout()); - add(t1); - add(label); - add(t2); - add(button); - add(t3); - pack(); - setVisible(true); - } -} - -class MyMonitor4 implements ActionListener{ - Calculator2 calculator2 ; - //获取Calculator2类的引用 - - public MyMonitor4(Calculator2 calculator2) { - this.calculator2 = calculator2; - } - - @Override - public void actionPerformed(ActionEvent e) { - int n1 = Integer.parseInt(calculator2.t1.getText()); - int n2 = Integer.parseInt(calculator2.t2.getText()); - calculator2.t3.setText(String.valueOf(n1+n2)); - calculator2.t1.setText(""); - calculator2.t2.setText(""); - } -} \ No newline at end of file diff --git a/guistudy/src/com/xiaokai/lesson01/TestMath3.java b/guistudy/src/com/xiaokai/lesson01/TestMath3.java deleted file mode 100644 index e0f0510..0000000 --- a/guistudy/src/com/xiaokai/lesson01/TestMath3.java +++ /dev/null @@ -1,82 +0,0 @@ -package com.xiaokai.lesson01; - -import java.awt.*; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; - -/** - * Java的经典用法:在一个类中持有另一个类的引用 - */ -public class TestMath3 { - public static void main(String[] args) { - new Calculator2().launchFrame(); - } -} -//做好计算机的窗体界面 -class Calculator3 extends Frame{ - //把设计计算机的窗体封装成一个方法 - TextField t1,t2,t3; - - public void launchFrame(){ - //创建三个文本框 - t1 = new TextField(10); - t2 = new TextField(10); - t3 = new TextField(20); - //创建等号按钮 - Button button = new Button("="); - //设置监听 - button.addActionListener(new MyMonitor5()); - //创建+标签 - Label label = new Label("+"); - //设置布局 - setLayout(new FlowLayout()); - add(t1); - add(label); - add(t2); - add(button); - add(t3); - pack(); - setVisible(true); - } - - /** - * 使用内部类的好处: - * 第一个就是可以畅通无阻的访问外部类的所有成员变量和方法; - * 相当于默认内部类拥有外部类对象的引用; - */ - class MyMonitor5 implements ActionListener{ -// Calculator3 calculator3 ; -// //获取Calculator3类的引用 -// -// public MyMonitor5(Calculator3 calculator3) { -// this.calculator3 = calculator3; -// } - - @Override - public void actionPerformed(ActionEvent e) { - int n1 = Integer.parseInt(t1.getText()); - int n2 = Integer.parseInt(t2.getText()); - t3.setText(String.valueOf(n1+n2)); - t1.setText(""); - t2.setText(""); - } - } -} - -//class MyMonitor5 implements ActionListener{ -// Calculator3 calculator3 ; -// //获取Calculator3类的引用 -// -// public MyMonitor5(Calculator3 calculator3) { -// this.calculator3 = calculator3; -// } -// -// @Override -// public void actionPerformed(ActionEvent e) { -// int n1 = Integer.parseInt(calculator3.t1.getText()); -// int n2 = Integer.parseInt(calculator3.t2.getText()); -// calculator3.t3.setText(String.valueOf(n1+n2)); -// calculator3.t1.setText(""); -// calculator3.t2.setText(""); -// } -//} \ No newline at end of file diff --git a/guistudy/src/com/xiaokai/lesson01/TestMultiFrame.java b/guistudy/src/com/xiaokai/lesson01/TestMultiFrame.java deleted file mode 100644 index 6cd5a09..0000000 --- a/guistudy/src/com/xiaokai/lesson01/TestMultiFrame.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.xiaokai.lesson01; - -import java.awt.*; - -public class TestMultiFrame { - public static void main(String[] args) { - MyFrame frame1 = new MyFrame(100, 100, 200, 200, new Color(206, 21, 114)); - MyFrame frame2 = new MyFrame(300, 100, 200, 200, Color.CYAN); - MyFrame frame3 = new MyFrame(100, 300, 200, 200, Color.MAGENTA); - MyFrame frame4 = new MyFrame(300, 300, 200, 200, Color.RED); - - - - } -} -/** - * 自定义一个MyFrame类,并且从Frame类继承属性和方法 - * - */ -class MyFrame extends Frame{ - //定义一个静态成员变量,用来记录创建的窗口的数目; - static int id = 0; - //自定义构成方法,方法体内部使用super调用父类Frame的构造方法; - public MyFrame(int x,int y,int w,int h,Color color) { - super("MyFrame"+(++id)); - setBackground(color); - setLayout(null); - setBounds(x,y,w,h); - setVisible(true); - } -} diff --git a/guistudy/src/com/xiaokai/lesson01/TestPanel.java b/guistudy/src/com/xiaokai/lesson01/TestPanel.java deleted file mode 100644 index 3905304..0000000 --- a/guistudy/src/com/xiaokai/lesson01/TestPanel.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.xiaokai.lesson01; - -import sun.awt.WindowClosingListener; - -import java.awt.*; -import java.awt.event.WindowAdapter; -import java.awt.event.WindowEvent; -import java.awt.event.WindowListener; - -public class TestPanel { - public static void main(String[] args) { - Frame frame = new Frame("Java Frame With Panel!"); - Panel panel = new Panel(null); - frame.setLayout(null); - //设置的坐标是相对已整个屏幕的 - frame.setBounds(300,300,500,500); - - //设置背景颜色 - frame.setBackground(new Color(124, 47, 226, 255)); - - //这里设置的坐标是相对于窗体的 - panel.setBounds(50,50,400,400); - panel.setBackground(Color.cyan); - - //把panel容器放到frame容器中 - frame.add(panel); - frame.setVisible(true); - - //解决关闭问题 - frame.addWindowListener(new WindowAdapter() { - @Override - public void windowClosing(WindowEvent e) { - System.exit(0); - } - }); - - } -} diff --git a/guistudy/src/com/xiaokai/lesson01/TestTenButtons.java b/guistudy/src/com/xiaokai/lesson01/TestTenButtons.java deleted file mode 100644 index de5ca64..0000000 --- a/guistudy/src/com/xiaokai/lesson01/TestTenButtons.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.xiaokai.lesson01; - -import java.awt.*; -import java.awt.event.WindowAdapter; -import java.awt.event.WindowEvent; - -public class TestTenButtons { - public static void main(String[] args) { - Frame frame = new Frame("布局管理器的嵌套使用!"); - - Panel panel1 = new Panel(); - Panel panel2 = new Panel(); - Panel panel3 = new Panel(); - Panel panel4 = new Panel(); - - panel1.setLayout(new GridLayout(2,1)); - for (int i = 1; i <= 2; i++) { - panel1.add(new Button("button"+i)); - } - panel2.setLayout(new GridLayout(2,2)); - for (int i = 3; i <= 6; i++) { - panel2.add(new Button("button"+i)); - } - panel3.setLayout(new GridLayout(1,3)); - panel4.setLayout(new GridLayout(1,3)); - panel3.add(new Button("button7")); - panel3.add(panel1); - panel3.add(new Button("button8")); - panel4.add(new Button("button9")); - panel4.add(panel2); - panel4.add(new Button("button10")); - frame.setLayout(new GridLayout(2,1)); - frame.add(panel3); - frame.add(panel4); - - frame.setSize(400,400); - frame.setVisible(true); - frame.pack(); - - frame.addWindowListener(new WindowAdapter() { - @Override - public void windowClosing(WindowEvent e) { - System.exit(0); - } - }); - } -} diff --git a/guistudy/src/com/xiaokai/lesson01/TestTenButtons2.java b/guistudy/src/com/xiaokai/lesson01/TestTenButtons2.java deleted file mode 100644 index 6ec077f..0000000 --- a/guistudy/src/com/xiaokai/lesson01/TestTenButtons2.java +++ /dev/null @@ -1,7 +0,0 @@ -package com.xiaokai.lesson01; - -public class TestTenButtons2 { - public static void main(String[] args) { - - } -} diff --git a/guistudy/src/com/xiaokai/lesson01/TestTextField.java b/guistudy/src/com/xiaokai/lesson01/TestTextField.java deleted file mode 100644 index 3a073e4..0000000 --- a/guistudy/src/com/xiaokai/lesson01/TestTextField.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.xiaokai.lesson01; - -import java.awt.*; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; - - -public class TestTextField { - public static void main(String[] args) { - new MyFrameTextField(); - - } -} - -/** - * 文本框控制类,继承Frame; - */ -class MyFrameTextField extends Frame{ - - public MyFrameTextField(){ - TextField textField = new TextField(); - add(textField); - //设置监听 - textField.addActionListener(new MyMonitor2()); - - //设置密码保护 - textField.setEchoChar('*'); - - setVisible(true); - pack(); - - - } -} - -class MyMonitor2 implements ActionListener{ - @Override - public void actionPerformed(ActionEvent e) { - //时间的相关信息都封装在e中,通过对象e的相关方法可以获取时间的相关信息 - //getSource方法是拿到事件源,拿到这个事件的源的时候是将它当做TextField的父类对待的(Object); - //需要将拿到的Object向下转型,变为TextField类型 - - TextField textField = (TextField) e.getSource(); - - //取得文本框的内容 - - System.out.println(textField.getText()); - - //把文本框清空 - textField.setText(""); - } -} \ No newline at end of file diff --git a/guistudy/src/com/xiaokai/lesson02/TestKeyEvent.java b/guistudy/src/com/xiaokai/lesson02/TestKeyEvent.java deleted file mode 100644 index f0c4c58..0000000 --- a/guistudy/src/com/xiaokai/lesson02/TestKeyEvent.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.xiaokai.lesson02; - -import java.awt.*; -import java.awt.event.KeyAdapter; -import java.awt.event.KeyEvent; - -public class TestKeyEvent { - public static void main(String[] args) { - new KeyFrame("keyframe"); - } -} -class KeyFrame extends Frame{ - public KeyFrame(String title) { - super(title); - setBounds(200,200,400,400); - setBackground(new Color(220, 176, 88)); - setVisible(true); - addKeyListener(new KeyMonitor()); - } - class KeyMonitor extends KeyAdapter{ - @Override - public void keyPressed(KeyEvent e) { - int keycode = e.getKeyCode(); - if (keycode == KeyEvent.VK_UP){ - System.out.println("你按下了上方向键!"); - } - } - } -} diff --git a/guistudy/src/com/xiaokai/lesson02/TestMouse.java b/guistudy/src/com/xiaokai/lesson02/TestMouse.java deleted file mode 100644 index db45672..0000000 --- a/guistudy/src/com/xiaokai/lesson02/TestMouse.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.xiaokai.lesson02; - -import java.awt.*; -import java.awt.event.MouseAdapter; -import java.awt.event.MouseEvent; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Iterator; - -/** - * 代码测试,画点 - */ -public class TestMouse { - public static void main(String[] args) { - new MyFrame("画图"); - } -} -class MyFrame extends Frame{ - ArrayList points = null; - public MyFrame(String s) { - super(s); - setBackground(Color.white); - setBounds(200,200,500,400); - setVisible(true); - addMouseListener(new Monitor()); - points = new ArrayList(); - } - - public void addPoint(Point p){ - points.add(p); - } - - public void paint(Graphics graphics){ - Iterator iterator = points.iterator(); - while (iterator.hasNext()){ - Point p = (Point) iterator.next(); - graphics.setColor(Color.blue); - graphics.fillOval(p.x,p.y,5,5); - } - } - - public class Monitor extends MouseAdapter{ - @Override - public void mousePressed(MouseEvent e) { - MyFrame myFrame = (MyFrame) e.getSource(); - myFrame.addPoint(new Point(e.getX(),e.getY())); - myFrame.repaint(); - } - } -} diff --git a/guistudy/src/com/xiaokai/lesson02/TestPaint.java b/guistudy/src/com/xiaokai/lesson02/TestPaint.java deleted file mode 100644 index 83c46ae..0000000 --- a/guistudy/src/com/xiaokai/lesson02/TestPaint.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.xiaokai.lesson02; - -import java.awt.*; - -public class TestPaint { - public static void main(String[] args) { - new MyPaint().launchFrame(); - } -} -class MyPaint extends Frame{ - public void launchFrame(){ - setBounds(200,200,400,400); - setVisible(true); - } - public void paint(Graphics graphics){ - //设置画笔的颜色 - graphics.setColor(Color.red); - graphics.fillOval(100,100,100,100); - graphics.setColor(Color.green); - graphics.fillRect(150,200,200,200); - Color c = graphics.getColor(); - graphics.setColor(c); - - System.out.println("gogogo"); - } -} diff --git a/guistudy/src/com/xiaokai/lesson02/TestWindow.java b/guistudy/src/com/xiaokai/lesson02/TestWindow.java deleted file mode 100644 index bbd0d30..0000000 --- a/guistudy/src/com/xiaokai/lesson02/TestWindow.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.xiaokai.lesson02; - -import java.awt.*; -import java.awt.event.WindowAdapter; -import java.awt.event.WindowEvent; - -public class TestWindow { - public static void main(String[] args) { - new WindowsFrame("testWindow"); - } -} -class WindowsFrame extends Frame{ - public WindowsFrame(String title) { - super(title); - setBounds(200,200,400,400); - setBackground(new Color(220, 176, 88)); - setVisible(true); - addWindowListener(new WindowAdapter() { - @Override - public void windowClosing(WindowEvent e) { - System.out.println("你点击了X!"); - System.exit(0); - } - - @Override - public void windowActivated(WindowEvent e) { - System.out.println("窗口被激活!"); - } - }); - } -} diff --git a/guistudy/src/com/xiaokai/lesson03/BorderLayoutDemo.java b/guistudy/src/com/xiaokai/lesson03/BorderLayoutDemo.java deleted file mode 100644 index 9a3cd65..0000000 --- a/guistudy/src/com/xiaokai/lesson03/BorderLayoutDemo.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.xiaokai.lesson03; - -import javax.swing.*; -import java.awt.*; - -public class BorderLayoutDemo extends JFrame { - private String[] border = {BorderLayout.CENTER,BorderLayout.NORTH,BorderLayout.SOUTH,BorderLayout.WEST,BorderLayout.EAST}; - private String[] button = {"中","北","南","西","东"}; - - public static void main(String[] args) { - new BorderLayoutDemo(); - } - - public BorderLayoutDemo(){ - super("方向"); - Container container = this.getContentPane(); - this.setLayout(new BorderLayout()); - //添加循环按钮 - for (int i = 0; i < button.length; i++) { - container.add(border[i],new JButton(button[i])); - } - this.setVisible(true); - this.setBounds(200,200,500,350); - this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); - } -} diff --git a/guistudy/src/com/xiaokai/lesson03/FlowLayoutDemo.java b/guistudy/src/com/xiaokai/lesson03/FlowLayoutDemo.java deleted file mode 100644 index bc32971..0000000 --- a/guistudy/src/com/xiaokai/lesson03/FlowLayoutDemo.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.xiaokai.lesson03; - -import javax.swing.*; -import java.awt.*; - -public class FlowLayoutDemo extends JFrame { - public static void main(String[] args) { - new FlowLayoutDemo(); - } - public FlowLayoutDemo(){ - Container container = this.getContentPane(); - this.setLayout(new FlowLayout(2,10,10)); - //设置流式布局,2是右对齐,0是左对齐,默认1是居中对齐;后两个参数是表示水平和垂直间隔; - for (int i = 0; i < 10; i++) { - container.add(new JButton("按钮"+i)); - } - this.setBounds(200,200,300,200); - this.setVisible(true); - this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); - - } -} diff --git a/guistudy/src/com/xiaokai/lesson03/GirdLayoutTest.java b/guistudy/src/com/xiaokai/lesson03/GirdLayoutTest.java deleted file mode 100644 index 6c53e92..0000000 --- a/guistudy/src/com/xiaokai/lesson03/GirdLayoutTest.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.xiaokai.lesson03; - -import javax.swing.*; -import java.awt.*; - -public class GirdLayoutTest extends JFrame { - public static void main(String[] args) { - new GirdLayoutTest(); - } - public GirdLayoutTest(){ - Container container = this.getContentPane(); - this.setLayout(new GridLayout(7,3,5,5));//前两个参数是7行3列,后两个是网格的间距5 - - for (int i = 0; i < 20; i++) { - container.add(new JButton("按钮"+i)); - } - - this.setVisible(true); - this.setBounds(200,200,400,400); - this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); - } -} diff --git a/guistudy/src/com/xiaokai/lesson03/IconTest.java b/guistudy/src/com/xiaokai/lesson03/IconTest.java deleted file mode 100644 index dd6db74..0000000 --- a/guistudy/src/com/xiaokai/lesson03/IconTest.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.xiaokai.lesson03; - -import javax.swing.*; -import java.awt.*; - -public class IconTest extends JFrame implements Icon { - public static void main(String[] args) { - - new IconTest().init(); - - } - - private int height,width; - - public IconTest(){};//无参构造 - - public IconTest(int height,int width){ - this.height = height; - this.width = width; - }//有参构造 - - public void init(){ - IconTest iconTest = new IconTest(15, 15); - JLabel jLabel = new JLabel("Icon测试", iconTest, SwingConstants.CENTER); - Container container = getContentPane(); - container.add(jLabel); - - this.setVisible(true); - this.setBounds(200,200,500,350); - this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); - } - @Override - public void paintIcon(Component c, Graphics g, int x, int y) { - g.fillOval(x,y,width,height); - } - - @Override - public int getIconWidth() { - return this.width; - } - - @Override - public int getIconHeight() { - return this.height; - } -} diff --git a/guistudy/src/com/xiaokai/lesson03/ImageButtonTest.java b/guistudy/src/com/xiaokai/lesson03/ImageButtonTest.java deleted file mode 100644 index e6d5b74..0000000 --- a/guistudy/src/com/xiaokai/lesson03/ImageButtonTest.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.xiaokai.lesson03; - -import javax.swing.*; -import java.awt.*; - -public class ImageButtonTest extends JFrame { - public static void main(String[] args) { - new ImageButtonTest(); - } - public ImageButtonTest(){ - Container container = this.getContentPane(); - Icon icon = new ImageIcon(ImageButtonTest.class.getResource("logo.png")); - - JButton jButton = new JButton(); - jButton.setIcon(icon); - - jButton.setToolTipText("图片按钮"); - - container.add(jButton); - this.setVisible(true); - this.setSize(400,400); - this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); - } -} diff --git a/guistudy/src/com/xiaokai/lesson03/ImageIconTest.java b/guistudy/src/com/xiaokai/lesson03/ImageIconTest.java deleted file mode 100644 index 8364f1e..0000000 --- a/guistudy/src/com/xiaokai/lesson03/ImageIconTest.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.xiaokai.lesson03; - -import javax.swing.*; -import java.awt.*; -import java.net.URL; - -public class ImageIconTest extends JFrame { - public static void main(String[] args) { - - new ImageIconTest(); - - } - - public ImageIconTest() { - JLabel jLabel = new JLabel("这是一个JFrame窗体,旁边是一个图片"); - URL resource = ImageIconTest.class.getResource("logo.png"); - ImageIcon imageIcon = new ImageIcon(resource); - jLabel.setIcon(imageIcon);//为标签设置图标Icon - jLabel.setHorizontalAlignment(SwingConstants.CENTER); - jLabel.setOpaque(true);//设置标签不透明 - - Container container = getContentPane(); - container.add(jLabel); - setVisible(true); - setBounds(300,300,500,500); - setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); - } -} diff --git a/guistudy/src/com/xiaokai/lesson03/JCheckBoxTest.java b/guistudy/src/com/xiaokai/lesson03/JCheckBoxTest.java deleted file mode 100644 index 0936b0e..0000000 --- a/guistudy/src/com/xiaokai/lesson03/JCheckBoxTest.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.xiaokai.lesson03; - -import javax.swing.*; -import java.awt.*; - -public class JCheckBoxTest extends JFrame { - public static void main(String[] args) { - new JCheckBoxTest(); - } - public JCheckBoxTest(){ - super("zz"); - Container container = this.getContentPane(); - JCheckBox jCheckBox1 = new JCheckBox("abc"); - JCheckBox jCheckBox2 = new JCheckBox("abc"); - container.add(jCheckBox1,BorderLayout.SOUTH); - container.add(jCheckBox2,BorderLayout.NORTH); - - this.setVisible(true); - this.setBounds(200,200,400,400); - this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); - } -} diff --git a/guistudy/src/com/xiaokai/lesson03/JComboBoxTest.java b/guistudy/src/com/xiaokai/lesson03/JComboBoxTest.java deleted file mode 100644 index 4a76529..0000000 --- a/guistudy/src/com/xiaokai/lesson03/JComboBoxTest.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.xiaokai.lesson03; - -import javax.swing.*; -import java.awt.*; - -public class JComboBoxTest extends JFrame { - public static void main(String[] args) { - new JComboBoxTest(); - } - public JComboBoxTest(){ - super("zz"); - Container container = this.getContentPane(); - JComboBox jComboBox = new JComboBox(); - jComboBox.addItem(null); - jComboBox.addItem("aaa"); - jComboBox.addItem("bbb"); - jComboBox.addItem("ccc"); - - container.add(jComboBox); - - this.setVisible(true); - this.setBounds(200,200,400,400); - this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); - - } -} diff --git a/guistudy/src/com/xiaokai/lesson03/JDialogTest.java b/guistudy/src/com/xiaokai/lesson03/JDialogTest.java deleted file mode 100644 index 8a60f4e..0000000 --- a/guistudy/src/com/xiaokai/lesson03/JDialogTest.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.xiaokai.lesson03; - -import javax.swing.*; -import java.awt.*; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; - -public class JDialogTest extends JDialog { - public static void main(String[] args) { - new JDialogTest(); - } - public JDialogTest() { - super(new MyJFrame(),"这是一个JDialog弹窗",false); - Container container = this.getContentPane(); - container.add(new JLabel("guanxiaokai!")); - - setBounds(300,300,500,350); - //setVisible(true); - } - -} - -class MyJFrame extends JFrame{ - public MyJFrame() { - super("父窗口"); - this.setVisible(true); - this.setBounds(200,200,600,600); - this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); - - Container container = this.getContentPane(); - - JButton jButton = new JButton("点击弹出对话框"); - jButton.setBounds(30,30,100,40); - container.setLayout(null); - //jButton.setBounds(30,30,200,50); - - jButton.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - new JDialogTest().setVisible(true); - } - }); - container.add(jButton); - - } - -} diff --git a/guistudy/src/com/xiaokai/lesson03/JFrameTest.java b/guistudy/src/com/xiaokai/lesson03/JFrameTest.java deleted file mode 100644 index 4c9b7af..0000000 --- a/guistudy/src/com/xiaokai/lesson03/JFrameTest.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.xiaokai.lesson03; - -import javax.swing.*; - -public class JFrameTest { - public static void main(String[] args) { - new JFrameTest().createJFrame(); - } - private void createJFrame(){ - JFrame jFrame = new JFrame("这是一个JFrame窗口"); - jFrame.setVisible(true); - jFrame.setSize(500,350); - jFrame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); - } -} diff --git a/guistudy/src/com/xiaokai/lesson03/JFrameTest2.java b/guistudy/src/com/xiaokai/lesson03/JFrameTest2.java deleted file mode 100644 index 28ba074..0000000 --- a/guistudy/src/com/xiaokai/lesson03/JFrameTest2.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.xiaokai.lesson03; - -import javax.swing.*; -import java.awt.*; - -public class JFrameTest2 extends JFrame { - public static void main(String[] args) { - new JFrameTest2().init(); - } - private void init(){ - this.setVisible(true); - this.setSize(500,350); - this.setTitle("小凯"); - this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); - - JLabel jLabel = new JLabel("HelloWorld!"); - - jLabel.setHorizontalAlignment(SwingConstants.CENTER); - - Container container = this.getContentPane();//获取容器 - container.add(jLabel);//将标签添加到容器 - container.setBackground(Color.yellow); - } -} diff --git a/guistudy/src/com/xiaokai/lesson03/JListTest.java b/guistudy/src/com/xiaokai/lesson03/JListTest.java deleted file mode 100644 index 0dba0d9..0000000 --- a/guistudy/src/com/xiaokai/lesson03/JListTest.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.xiaokai.lesson03; - -import javax.swing.*; -import java.awt.*; -import java.util.Vector; - -public class JListTest extends JFrame { - public static void main(String[] args) { - new JListTest(); - } - public JListTest(){ - super("zz"); - Container container = this.getContentPane(); - String [] contents = {"1","2","3"}; - Vector vector = new Vector(); - JList jList = new JList(contents); - JList jList1 = new JList(vector); - container.add(jList,BorderLayout.NORTH); - container.add(jList1,BorderLayout.SOUTH); - vector.add("1"); - vector.add("2"); - vector.add("3"); - - - this.setVisible(true); - this.setBounds(200,200,400,400); - this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); - - } -} diff --git a/guistudy/src/com/xiaokai/lesson03/JPanelTest.java b/guistudy/src/com/xiaokai/lesson03/JPanelTest.java deleted file mode 100644 index 24542ca..0000000 --- a/guistudy/src/com/xiaokai/lesson03/JPanelTest.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.xiaokai.lesson03; - -import javax.swing.*; -import java.awt.*; - -public class JPanelTest extends JFrame { - public static void main(String[] args) { - new JPanelTest(); - } - public JPanelTest(){ - Container container = this.getContentPane(); - container.setLayout(new GridLayout(2,1,10,10)); - - JPanel jPanel = new JPanel(new GridLayout(1, 3)); - JPanel jPanel1 = new JPanel(new GridLayout(1, 2)); - JPanel jPanel2 = new JPanel(new GridLayout(2, 1)); - JPanel jPanel3 = new JPanel(new GridLayout(3, 2)); - - jPanel.add(new JButton("1")); - jPanel.add(new JButton("1")); - jPanel.add(new JButton("1")); - jPanel1.add(new JButton("2")); - jPanel1.add(new JButton("2")); - jPanel2.add(new JButton("3")); - jPanel2.add(new JButton("3")); - jPanel3.add(new JButton("4")); - jPanel3.add(new JButton("4")); - jPanel3.add(new JButton("4")); - jPanel3.add(new JButton("4")); - jPanel3.add(new JButton("4")); - jPanel3.add(new JButton("4")); - - container.add(jPanel); - container.add(jPanel1); - container.add(jPanel2); - container.add(jPanel3); - - this.setVisible(true); - this.setBounds(200,200,500,400); - this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); - - } -} diff --git a/guistudy/src/com/xiaokai/lesson03/JRadioButtonTest.java b/guistudy/src/com/xiaokai/lesson03/JRadioButtonTest.java deleted file mode 100644 index 25df11d..0000000 --- a/guistudy/src/com/xiaokai/lesson03/JRadioButtonTest.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.xiaokai.lesson03; - -import javax.swing.*; -import java.awt.*; - -public class JRadioButtonTest extends JFrame { - public static void main(String[] args) { - new JRadioButtonTest(); - } - public JRadioButtonTest(){ - Container container = this.getContentPane(); - - //ImageIcon icon = new ImageIcon(JRadioButtonTest.class.getResource("logo.png")); - - JRadioButton jRadioButton1 = new JRadioButton("JRadioButton1"); - JRadioButton jRadioButton2 = new JRadioButton("JRadioButton2"); - JRadioButton jRadioButton3 = new JRadioButton("JRadioButton3"); - - ButtonGroup buttonGroup = new ButtonGroup(); - buttonGroup.add(jRadioButton1); - buttonGroup.add(jRadioButton2); - buttonGroup.add(jRadioButton3); - - container.add(jRadioButton1,BorderLayout.NORTH); - container.add(jRadioButton2,BorderLayout.CENTER); - container.add(jRadioButton3,BorderLayout.SOUTH); - - this.setVisible(true); - this.setBounds(200,200,400,400); - this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); - } -} diff --git a/guistudy/src/com/xiaokai/lesson03/JSCrollPaneTest.java b/guistudy/src/com/xiaokai/lesson03/JSCrollPaneTest.java deleted file mode 100644 index 67b02a3..0000000 --- a/guistudy/src/com/xiaokai/lesson03/JSCrollPaneTest.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.xiaokai.lesson03; - -import javax.swing.*; -import java.awt.*; - -public class JSCrollPaneTest extends JFrame { - public static void main(String[] args) { - new JSCrollPaneTest(); - } - public JSCrollPaneTest(){ - Container container = this.getContentPane(); - - TextArea textArea = new TextArea(20, 50); - textArea.setText("关大山"); - - JScrollPane jScrollPane = new JScrollPane(textArea); - container.add(jScrollPane); - - this.setVisible(true); - this.setBounds(200,200,300,150); - this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); - } -} diff --git a/guistudy/src/com/xiaokai/lesson03/logo.png b/guistudy/src/com/xiaokai/lesson03/logo.png deleted file mode 100644 index 33d1808..0000000 Binary files a/guistudy/src/com/xiaokai/lesson03/logo.png and /dev/null differ diff --git a/inetTest/.idea/.gitignore b/inetTest/.idea/.gitignore deleted file mode 100644 index e7c8a8a..0000000 --- a/inetTest/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/../../../../:\code\inetTest\.idea/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/inetTest/.idea/misc.xml b/inetTest/.idea/misc.xml deleted file mode 100644 index 0548357..0000000 --- a/inetTest/.idea/misc.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/inetTest/.idea/modules.xml b/inetTest/.idea/modules.xml deleted file mode 100644 index 17fca3d..0000000 --- a/inetTest/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/inetTest/.idea/uiDesigner.xml b/inetTest/.idea/uiDesigner.xml deleted file mode 100644 index e96534f..0000000 --- a/inetTest/.idea/uiDesigner.xml +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/inetTest/inetTest.iml b/inetTest/inetTest.iml deleted file mode 100644 index c90834f..0000000 --- a/inetTest/inetTest.iml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/FieldGuan.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/FieldGuan.class deleted file mode 100644 index 9a80738..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/FieldGuan.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/FieldName.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/FieldName.class deleted file mode 100644 index 44872fe..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/FieldName.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/MyAnnotation.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/MyAnnotation.class deleted file mode 100644 index e0d3337..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/MyAnnotation.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/MyAnnotation2.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/MyAnnotation2.class deleted file mode 100644 index cfbb1c7..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/MyAnnotation2.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/MyAnnotation3.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/MyAnnotation3.class deleted file mode 100644 index 9eff86f..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/MyAnnotation3.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Person.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Person.class deleted file mode 100644 index eaffa11..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Person.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Student.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Student.class deleted file mode 100644 index 5fe98db..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Student.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Student2.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Student2.class deleted file mode 100644 index 266748b..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Student2.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Student3.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Student3.class deleted file mode 100644 index 505efa8..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Student3.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/TableGuan.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/TableGuan.class deleted file mode 100644 index d5f75bb..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/TableGuan.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/TableName.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/TableName.class deleted file mode 100644 index 2ccb742..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/TableName.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Teacher.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Teacher.class deleted file mode 100644 index 876424a..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Teacher.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test01.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test01.class deleted file mode 100644 index 91ca178..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test01.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test02.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test02.class deleted file mode 100644 index 676f80b..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test02.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test03.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test03.class deleted file mode 100644 index d21d303..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test03.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test04.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test04.class deleted file mode 100644 index 67558e4..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test04.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test05.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test05.class deleted file mode 100644 index a194cc7..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test05.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test06.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test06.class deleted file mode 100644 index f31e954..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test06.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test07.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test07.class deleted file mode 100644 index bf37a48..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test07.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test08.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test08.class deleted file mode 100644 index 634bc77..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/Test08.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/User.class b/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/User.class deleted file mode 100644 index ec1219c..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/annotation/lesson01/User.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson01/InetAddressTest.class b/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson01/InetAddressTest.class deleted file mode 100644 index ace55b7..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson01/InetAddressTest.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson01/InetSocketAddressTest.class b/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson01/InetSocketAddressTest.class deleted file mode 100644 index 2302a56..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson01/InetSocketAddressTest.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/TcpClientDemo01.class b/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/TcpClientDemo01.class deleted file mode 100644 index 4ee3277..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/TcpClientDemo01.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/TcpClientDemo02.class b/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/TcpClientDemo02.class deleted file mode 100644 index 878bd7d..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/TcpClientDemo02.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/TcpClientTest01.class b/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/TcpClientTest01.class deleted file mode 100644 index 9788330..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/TcpClientTest01.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/TcpServerDemo01.class b/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/TcpServerDemo01.class deleted file mode 100644 index 333d4b6..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/TcpServerDemo01.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/TcpServerDemo02.class b/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/TcpServerDemo02.class deleted file mode 100644 index 5e3550d..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/TcpServerDemo02.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/TcpServerTest01.class b/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/TcpServerTest01.class deleted file mode 100644 index 604c542..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/TcpServerTest01.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/send.jpg b/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/send.jpg deleted file mode 100644 index 3cae415..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson02/send.jpg and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/StudentTalkDemo01.class b/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/StudentTalkDemo01.class deleted file mode 100644 index 42b050a..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/StudentTalkDemo01.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/TalkReceiveTest.class b/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/TalkReceiveTest.class deleted file mode 100644 index 3fe487d..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/TalkReceiveTest.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/TalkSenderTest.class b/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/TalkSenderTest.class deleted file mode 100644 index 3f55945..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/TalkSenderTest.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/TeacherTalkDemo01.class b/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/TeacherTalkDemo01.class deleted file mode 100644 index 34db753..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/TeacherTalkDemo01.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/URLDemo01.class b/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/URLDemo01.class deleted file mode 100644 index 47ad75b..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/URLDemo01.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/URLDemo02.class b/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/URLDemo02.class deleted file mode 100644 index f60ce75..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/URLDemo02.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/UdpClientDemo01.class b/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/UdpClientDemo01.class deleted file mode 100644 index a0f82fe..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/UdpClientDemo01.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/UdpReceiveDemo01.class b/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/UdpReceiveDemo01.class deleted file mode 100644 index 0785e7d..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/UdpReceiveDemo01.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/UdpSenderDemo01.class b/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/UdpSenderDemo01.class deleted file mode 100644 index 4f6d4e1..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/UdpSenderDemo01.class and /dev/null differ diff --git a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/UdpServerDemo01.class b/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/UdpServerDemo01.class deleted file mode 100644 index 4328b85..0000000 Binary files a/inetTest/out/production/inetTest/com/xiaokai/inettest/lesson03/UdpServerDemo01.class and /dev/null differ diff --git a/inetTest/recive.png b/inetTest/recive.png deleted file mode 100644 index 13ced38..0000000 Binary files a/inetTest/recive.png and /dev/null differ diff --git a/inetTest/src/com/xiaokai/annotation/lesson01/Test01.java b/inetTest/src/com/xiaokai/annotation/lesson01/Test01.java deleted file mode 100644 index b0219e2..0000000 --- a/inetTest/src/com/xiaokai/annotation/lesson01/Test01.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.xiaokai.annotation.lesson01; - -import java.util.ArrayList; -import java.util.List; - -//测试内置注解 -//所有类摸摸人继承Object -public class Test01 extends Object{ - @Override//表示方法重写 - public String toString() { - return super.toString(); - } - @Deprecated - public static void stop(){ - System.out.println("测试stop @Deprecated"); - } - @SuppressWarnings("all")//抑制警告 可以传参数 - public void sw(){ - List list = new ArrayList(); - } - - public static void main(String[] args) { - stop(); - // STOPSHIP: 2021/6/20 - - } -} diff --git a/inetTest/src/com/xiaokai/annotation/lesson01/Test02.java b/inetTest/src/com/xiaokai/annotation/lesson01/Test02.java deleted file mode 100644 index 764893e..0000000 --- a/inetTest/src/com/xiaokai/annotation/lesson01/Test02.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.xiaokai.annotation.lesson01; - -import java.lang.annotation.*; - -//测试元注解 -public class Test02 { - @MyAnnotation - public void test2(){ - - } - -} -//定义一个注解 -@Target(value = {ElementType.METHOD,ElementType.TYPE}) -@Retention(value = RetentionPolicy.RUNTIME) -@Inherited -@Documented -@interface MyAnnotation{ - //测试作用域,了解@Retention 概念 -} \ No newline at end of file diff --git a/inetTest/src/com/xiaokai/annotation/lesson01/Test03.java b/inetTest/src/com/xiaokai/annotation/lesson01/Test03.java deleted file mode 100644 index 9c21584..0000000 --- a/inetTest/src/com/xiaokai/annotation/lesson01/Test03.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.xiaokai.annotation.lesson01; - -import java.lang.annotation.ElementType; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -//测试自定义注解 -public class Test03 { - //显式定义值,不显式就是默认default; - @MyAnnotation2(name = "xiaokai",age = 25,id = 1,schools = {"HBUT"}) - public void test(){} - - - //只有一个参数,默认名字一般是value,可以省略不写; - @MyAnnotation3("aaa") - public void test2(){} - -} - -@Target(value = ElementType.METHOD) -@Retention(value = RetentionPolicy.RUNTIME) -@interface MyAnnotation2{ - //参数类型 参数名 - String name() default ""; - int age() default 0; - int id() default -1; - String [] schools() default {"测试","学校"}; - -} - - -@Target(value = ElementType.METHOD) -@Retention(value = RetentionPolicy.RUNTIME) -@interface MyAnnotation3{ - String value(); -} \ No newline at end of file diff --git a/inetTest/src/com/xiaokai/annotation/lesson01/Test04.java b/inetTest/src/com/xiaokai/annotation/lesson01/Test04.java deleted file mode 100644 index 4be44ef..0000000 --- a/inetTest/src/com/xiaokai/annotation/lesson01/Test04.java +++ /dev/null @@ -1,113 +0,0 @@ -package com.xiaokai.annotation.lesson01; -//测试ORM:对象关系映射 - -import java.lang.annotation.*; -import java.lang.reflect.Field; - -//反射读取注解信息三部 -//1.定义注解 -//2.在类中使用注解 -//3.在反射中获取注解 -public class Test04 { - public static void main(String[] args) { - - try { - //反射,可以获得类的全部信息,所有的东西 - Class aClass = Class.forName("com.xiaokai.annotation.lesson01.Student"); - - //获得这个类的注解 - Annotation[] annotations = aClass.getAnnotations(); - for (Annotation annotation : annotations) { - System.out.println(annotation); - } - - //获得类的注解的值 - TableName table = (TableName) aClass.getAnnotation(TableName.class); - System.out.println(table.value()); - - //获得类指定的注解的值 - Field[] fields = aClass.getDeclaredFields(); - for (Field field : fields) { - System.out.println(field); - } - - Field name = aClass.getDeclaredField("name"); - FieldName fieldName = name.getAnnotation(FieldName.class); - System.out.println(fieldName.columnName()+"-->"+fieldName.type()+"-->"+fieldName.length()); - //我们可以根据得到的类的信息,通过JDBC生成相关的额SQL语句,执行就可以动态生成数据库表 - - - } catch (ClassNotFoundException | NoSuchFieldException e) { - e.printStackTrace(); - } - } -} - -@TableName("db_student") -class Student{ - @FieldName(columnName = "db_id",type = "int",length = 10) - private int id; - @FieldName(columnName = "db_name",type = "varchar",length = 10) - private String name; - @FieldName(columnName = "db_age",type = "int",length = 3) - private int age; - - public Student() { - } - - public Student(int id, String name, int age) { - this.id = id; - this.name = name; - this.age = age; - } - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public int getAge() { - return age; - } - - public void setAge(int age) { - this.age = age; - } - - @Override - public String toString() { - return "Student{" + - "id=" + id + - ", name='" + name + '\'' + - ", age=" + age + - '}'; - } -} - - -//表名注解,只有一个参数,使用value命名; -@Target(ElementType.TYPE) -@Retention(RetentionPolicy.RUNTIME) -@interface TableName{ - String value(); -} - -//属性注解 -@Target(ElementType.FIELD) -@Retention(RetentionPolicy.RUNTIME) -@interface FieldName{ - String columnName();//列名 - String type();//类型 - int length();//长度 -} \ No newline at end of file diff --git a/inetTest/src/com/xiaokai/annotation/lesson01/Test05.java b/inetTest/src/com/xiaokai/annotation/lesson01/Test05.java deleted file mode 100644 index 6679d99..0000000 --- a/inetTest/src/com/xiaokai/annotation/lesson01/Test05.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.xiaokai.annotation.lesson01; - -public class Test05 { - public static void main(String[] args) { - - try { - //通过反射获取类的Class - Class c1 = Class.forName("com.xiaokai.annotation.lesson01.User"); - //一个类被加载后,整个类的结构信息就会放到对应的Class对象中; - System.out.println(c1); - - //一个类只有一个Class对象 - Class c2 = Class.forName("com.xiaokai.annotation.lesson01.User"); - System.out.println(c1.hashCode()); - System.out.println(c2.hashCode()); - } catch (ClassNotFoundException e) { - e.printStackTrace(); - } - - } -} -class User{ - private int id; - private int age; - private String name; - - public User() {} - - public User(int id, int age, String name) { - this.id = id; - this.age = age; - this.name = name; - } - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public int getAge() { - return age; - } - - public void setAge(int age) { - this.age = age; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - @Override - public String toString() { - return "User{" + - "id=" + id + - ", age=" + age + - ", name='" + name + '\'' + - '}'; - } -} \ No newline at end of file diff --git a/inetTest/src/com/xiaokai/annotation/lesson01/Test06.java b/inetTest/src/com/xiaokai/annotation/lesson01/Test06.java deleted file mode 100644 index 7fcc9ba..0000000 --- a/inetTest/src/com/xiaokai/annotation/lesson01/Test06.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.xiaokai.annotation.lesson01; -//测试各种获得Class类型的方式 -public class Test06 { - public static void main(String[] args) throws ClassNotFoundException { - Person person = new Student2(); - System.out.println("这个人是"+person.name); - - //通过对象获得 - Class c1 = person.getClass(); - - //通过字符串获得 - Class c2 = Class.forName("com.xiaokai.annotation.lesson01.Student2"); - - //通过类的静态成员class获得 - Class c3 = Person.class; - - //只针对内部的基本数据类型 - Class c4 = Integer.TYPE; - - //获得父类的类型 - Class c5 = c2.getSuperclass(); - - System.out.println(c1); - System.out.println(c2); - System.out.println(c3); - System.out.println(c4); - System.out.println(c5); - - - } -} - -class Person{ - public String name; - - public Person() { - } - - public Person(String name) { - this.name = name; - } - - @Override - public String toString() { - return "Person{" + - "name='" + name + '\'' + - '}'; - } -} - -class Student2 extends Person{ - public Student2() { - this.name = "xiaokai"; - } -} - -class Teacher extends Person{ - public Teacher() { - this.name = "小凯"; - } -} \ No newline at end of file diff --git a/inetTest/src/com/xiaokai/annotation/lesson01/Test07.java b/inetTest/src/com/xiaokai/annotation/lesson01/Test07.java deleted file mode 100644 index 6c1a7b7..0000000 --- a/inetTest/src/com/xiaokai/annotation/lesson01/Test07.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.xiaokai.annotation.lesson01; - -import java.lang.annotation.ElementType; - -//所有类型的Class -public class Test07 { - public static void main(String[] args) { - Class c1 = Object.class; - Class c2 = Comparable.class; - Class c3 = String[].class; - Class c4 = int[][].class; - Class c5 = ElementType.class; - Class c6 = Override.class; - Class c7 = Integer.class; - Class c8 = void.class; - Class c9 = Class.class; - - int[] a = new int[10]; - int[] b = new int[100]; - Class c10 = a.getClass(); - Class c11 = b.getClass(); - - System.out.println(c1); - System.out.println(c2); - System.out.println(c3); - System.out.println(c4); - System.out.println(c5); - System.out.println(c6); - System.out.println(c7); - System.out.println(c8); - System.out.println(c9); - - System.out.println(c10 == c11); - - } -} diff --git a/inetTest/src/com/xiaokai/annotation/lesson01/Test08.java b/inetTest/src/com/xiaokai/annotation/lesson01/Test08.java deleted file mode 100644 index a2543fb..0000000 --- a/inetTest/src/com/xiaokai/annotation/lesson01/Test08.java +++ /dev/null @@ -1,87 +0,0 @@ -package com.xiaokai.annotation.lesson01; - -import java.lang.annotation.*; - -//练习ORM,反射操作注解 -public class Test08 { - public static void main(String[] args) { - try { - Class c1 = Class.forName("com.xiaokai.annotation.lesson01.Student3"); - Annotation[] annotations = c1.getAnnotations(); - for (Annotation annotation : annotations) { - System.out.println(annotation); - } - - } catch (ClassNotFoundException e) { - e.printStackTrace(); - } - } -} - -@TableGuan("db_student") -class Student3{ - @FieldGuan(columnName = "db_id",type = "int",length = 10) - private int id; - @FieldGuan(columnName = "db_age",type = "int",length = 10) - private int age; - @FieldGuan(columnName = "db_name",type = "varchar",length = 10) - private String name; - - public Student3() { - } - - public Student3(int id, int age, String name) { - this.id = id; - this.age = age; - this.name = name; - } - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public int getAge() { - return age; - } - - public void setAge(int age) { - this.age = age; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - @Override - public String toString() { - return "Student3{" + - "id=" + id + - ", age=" + age + - ", name='" + name + '\'' + - '}'; - } -} - -//类名注解 -@Target(ElementType.TYPE) -@Retention(RetentionPolicy.RUNTIME) -@interface TableGuan{ - String value(); -} - -//属性注解 -@Target(ElementType.FIELD) -@Retention(RetentionPolicy.RUNTIME) -@interface FieldGuan{ - String columnName(); - String type(); - int length(); -} diff --git a/inetTest/src/com/xiaokai/inettest/lesson01/InetAddressTest.java b/inetTest/src/com/xiaokai/inettest/lesson01/InetAddressTest.java deleted file mode 100644 index 02e65e6..0000000 --- a/inetTest/src/com/xiaokai/inettest/lesson01/InetAddressTest.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.xiaokai.inettest.lesson01; -import java.net.InetAddress; -import java.net.UnknownHostException; - -public class InetAddressTest { - public static void main(String[] args) { - - try { - //获得IP地址 - InetAddress inetAddress1 = InetAddress.getByName("192.168.17.1"); - System.out.println(inetAddress1); - InetAddress inetAddress2 = InetAddress.getByName("www.baidu.com"); - System.out.println(inetAddress2); - - //获得本机IP - InetAddress inetAddress3 = InetAddress.getByName("127.0.0.1"); - InetAddress inetAddress4 = InetAddress.getByName("localhost"); - System.out.println(inetAddress3); - System.out.println(inetAddress4); - - //getHostName - System.out.println(inetAddress2.getHostName()); - //getHostAddress - System.out.println(inetAddress2.getHostAddress()); - //Canonical规范的 - System.out.println(inetAddress2.getCanonicalHostName()); - - - } catch (UnknownHostException e) { - e.printStackTrace(); - } - } -} diff --git a/inetTest/src/com/xiaokai/inettest/lesson01/InetSocketAddressTest.java b/inetTest/src/com/xiaokai/inettest/lesson01/InetSocketAddressTest.java deleted file mode 100644 index 472cedb..0000000 --- a/inetTest/src/com/xiaokai/inettest/lesson01/InetSocketAddressTest.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.xiaokai.inettest.lesson01; - -import java.net.InetSocketAddress; - -public class InetSocketAddressTest { - public static void main(String[] args) { - java.net.InetSocketAddress inetSocketAddress1 = new java.net.InetSocketAddress("127.0.0.1",8080); - InetSocketAddress inetSocketAddress2 = new InetSocketAddress("localhost",9000); - - System.out.println(inetSocketAddress1.getHostName()); - System.out.println(inetSocketAddress1.getAddress()); - System.out.println(inetSocketAddress1.getPort()); - - System.out.println(inetSocketAddress2.getHostName()); - System.out.println(inetSocketAddress2.getAddress());//返回地址 - System.out.println(inetSocketAddress2.getPort());//返回端口 - } -} diff --git a/inetTest/src/com/xiaokai/inettest/lesson02/TcpClientDemo01.java b/inetTest/src/com/xiaokai/inettest/lesson02/TcpClientDemo01.java deleted file mode 100644 index d29c2b7..0000000 --- a/inetTest/src/com/xiaokai/inettest/lesson02/TcpClientDemo01.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.xiaokai.inettest.lesson02; - -import java.io.IOException; -import java.io.OutputStream; -import java.net.InetAddress; -import java.net.Socket; -import java.net.UnknownHostException; - -/** - * 客户端发消息给服务端,服务端将消息显示在控制台上 - */ -public class TcpClientDemo01 { - public static void main(String[] args) { - Socket socket = null; - OutputStream os = null; - - //1.链接服务器 - try { - InetAddress serverIP = InetAddress.getByName("127.0.0.1"); - int port = 8899; - //2.创建一个socket - socket = new Socket(serverIP,port); - //3.创建一个输出流,向外写东西 - os = socket.getOutputStream(); - os.write("你好,这里是客户端!".getBytes()); - } catch (UnknownHostException e) { - e.printStackTrace(); - }catch (IOException e1){ - e1.printStackTrace(); - }finally { - //4.关闭资源 - try { - if (os != null){ - os.close(); - } - if (socket != null){ - socket.close(); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - } -} diff --git a/inetTest/src/com/xiaokai/inettest/lesson02/TcpClientDemo02.java b/inetTest/src/com/xiaokai/inettest/lesson02/TcpClientDemo02.java deleted file mode 100644 index 47f1c3a..0000000 --- a/inetTest/src/com/xiaokai/inettest/lesson02/TcpClientDemo02.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.xiaokai.inettest.lesson02; - -import java.io.*; -import java.net.InetAddress; -import java.net.Socket; -import java.net.UnknownHostException; - -public class TcpClientDemo02 { - public static void main(String[] args) throws Exception { - //创建链接 - Socket serverIP = new Socket(InetAddress.getByName("127.0.0.1"),9000); - //创建输出流 - OutputStream os = serverIP.getOutputStream(); - FileInputStream fis = new FileInputStream(new File("D:\\code\\inetTest\\src\\com\\xiaokai\\inettest\\lesson02\\send.jpg")); - //写出文件 - byte[] buffer = new byte[1024]; - int len; - while ((len=fis.read(buffer)) != -1){ - os.write(buffer,0,len); - } - //通知服务端写完毕 - serverIP.shutdownOutput(); - //接收服务端的确认信息 - InputStream is = serverIP.getInputStream(); - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - byte [] buffer2 = new byte[1024]; - int len2; - while ((len2=is.read(buffer2)) != -1){ - baos.write(buffer2,0,len2); - } - System.out.println(baos.toString()); - //关闭资源 - fis.close(); - os.close(); - serverIP.close(); - } -} diff --git a/inetTest/src/com/xiaokai/inettest/lesson02/TcpClientTest01.java b/inetTest/src/com/xiaokai/inettest/lesson02/TcpClientTest01.java deleted file mode 100644 index cf84c3d..0000000 --- a/inetTest/src/com/xiaokai/inettest/lesson02/TcpClientTest01.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.xiaokai.inettest.lesson02; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.OutputStream; -import java.net.InetAddress; -import java.net.Socket; - -public class TcpClientTest01 { - public static void main(String[] args) { - InetAddress serverIP = null; - Socket socket = null; - OutputStream os = null; - - try { - //1.新建socket,设定端口、 - serverIP = InetAddress.getByName("127.0.0.1"); - int port = 9999; - //2.创建socket - socket = new Socket(serverIP, port); - //3.创建输出流 - os = socket.getOutputStream(); - os.write("这里是客户端,发送测试!".getBytes());//将string字节序列化 - - - - } catch (Exception e) { - e.printStackTrace(); - }finally { - //4.关闭资源 - try { - if (os!=null)os.close(); - if (socket!=null)socket.close(); - } catch (IOException e) { - e.printStackTrace(); - } - - } - } -} diff --git a/inetTest/src/com/xiaokai/inettest/lesson02/TcpServerDemo01.java b/inetTest/src/com/xiaokai/inettest/lesson02/TcpServerDemo01.java deleted file mode 100644 index 391c596..0000000 --- a/inetTest/src/com/xiaokai/inettest/lesson02/TcpServerDemo01.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.xiaokai.inettest.lesson02; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.net.ServerSocket; -import java.net.Socket; - -public class TcpServerDemo01 { - public static void main(String[] args) { - ServerSocket serverSocket = null; - Socket accept = null; - InputStream is = null; - ByteArrayOutputStream baos = null; - - try { - //1.开放服务端口,创建serversocket - serverSocket = new ServerSocket(8899); - //2.等待客户端链接 - accept = serverSocket.accept(); - //3.读入客户端消息 - is = accept.getInputStream(); - - baos = new ByteArrayOutputStream();//防止中文乱码 - byte [] buffer = new byte[1024]; - int len; - while ((len=is.read(buffer)) != -1){ - baos.write(buffer,0,len); - } - System.out.println(baos.toString()); - System.out.println("数据来源"+accept.getInetAddress().getHostName()); - } catch (IOException e) { - e.printStackTrace(); - }finally { - //4.关闭资源 - try { - if (baos != null){ - baos.close(); - } - if (is != null){ - is.close(); - } - if (accept != null){ - accept.close(); - } - if (serverSocket != null){ - serverSocket.close(); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - } -} diff --git a/inetTest/src/com/xiaokai/inettest/lesson02/TcpServerDemo02.java b/inetTest/src/com/xiaokai/inettest/lesson02/TcpServerDemo02.java deleted file mode 100644 index d43fbaa..0000000 --- a/inetTest/src/com/xiaokai/inettest/lesson02/TcpServerDemo02.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.xiaokai.inettest.lesson02; - -import java.io.*; -import java.net.ServerSocket; -import java.net.Socket; - -public class TcpServerDemo02 { - public static void main(String[] args) throws Exception { - //开放端口 - ServerSocket serverSocket = new ServerSocket(9000); - //等待链接 - Socket accept = serverSocket.accept(); - //接收文件 - InputStream is = accept.getInputStream(); - //处理文件 - FileOutputStream fos = new FileOutputStream(new File("recive.png")); - byte[] buffer = new byte[1024]; - int len; - while ((len = is.read()) != -1){ - fos.write(buffer,0,len); - } - - //通知客户端接收完毕 - OutputStream os = accept.getOutputStream(); - os.write("接收完毕!".getBytes()); - - //关闭资源 - os.close(); - fos.close(); - is.close(); - accept.close(); - serverSocket.close(); - } -} diff --git a/inetTest/src/com/xiaokai/inettest/lesson02/TcpServerTest01.java b/inetTest/src/com/xiaokai/inettest/lesson02/TcpServerTest01.java deleted file mode 100644 index be6ef33..0000000 --- a/inetTest/src/com/xiaokai/inettest/lesson02/TcpServerTest01.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.xiaokai.inettest.lesson02; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.net.InetAddress; -import java.net.ServerSocket; -import java.net.Socket; - -public class TcpServerTest01 { - public static void main(String[] args) { - ServerSocket serverSocket = null; - Socket accept = null; - InputStream is = null; - ByteArrayOutputStream baos = null; - - try { - - //1.开启端口 - serverSocket = new ServerSocket(9999); - System.out.println("这里是服务端,等待接受:"); - //2.等待链接 - while (true){ - accept = serverSocket.accept(); - //3.接收client发送来的数据,读取消息 - is = accept.getInputStream(); - - //4.处理消息 - //使用管道避免中文乱码 - baos = new ByteArrayOutputStream(); - //创建缓冲区大小1024个字节 - byte [] buffer = new byte[1024]; - //数据长度计数器 - int len; - //read数据,将其通写入缓冲区;之后使用write将buffer中0开始的len个字节输出到输出流 - while ((len = is.read(buffer)) != -1){ - baos.write(buffer,0,len); - } - System.out.println(baos.toString());//输出流转换成字符 - System.out.println("数据来源:" + accept.getInetAddress().getHostName()); - } - - - - } catch (IOException e) { - e.printStackTrace(); - }finally { - //依次关闭资源 - try { - if (baos!=null) baos.close(); - if (is!=null)is.close(); - if (accept!=null)accept.close(); - if (serverSocket!=null)serverSocket.accept(); - } catch (IOException e) { - e.printStackTrace(); - } - } - } -} diff --git a/inetTest/src/com/xiaokai/inettest/lesson02/send.jpg b/inetTest/src/com/xiaokai/inettest/lesson02/send.jpg deleted file mode 100644 index 3cae415..0000000 Binary files a/inetTest/src/com/xiaokai/inettest/lesson02/send.jpg and /dev/null differ diff --git a/inetTest/src/com/xiaokai/inettest/lesson03/StudentTalkDemo01.java b/inetTest/src/com/xiaokai/inettest/lesson03/StudentTalkDemo01.java deleted file mode 100644 index b514f1e..0000000 --- a/inetTest/src/com/xiaokai/inettest/lesson03/StudentTalkDemo01.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.xiaokai.inettest.lesson03; - -public class StudentTalkDemo01 { - public static void main(String[] args) { - new Thread(new TalkSenderTest(9000,"localhost",9090)).start(); - new Thread(new TalkReceiveTest(8000,"teacher")).start(); - } -} diff --git a/inetTest/src/com/xiaokai/inettest/lesson03/TalkReceiveTest.java b/inetTest/src/com/xiaokai/inettest/lesson03/TalkReceiveTest.java deleted file mode 100644 index 40924ec..0000000 --- a/inetTest/src/com/xiaokai/inettest/lesson03/TalkReceiveTest.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.xiaokai.inettest.lesson03; - -import java.net.DatagramPacket; -import java.net.DatagramSocket; - -public class TalkReceiveTest implements Runnable{ - private DatagramSocket socket = null; - private DatagramPacket packet = null; - int desPort ; - String name; - - public TalkReceiveTest(int desPort, String name) { - this.name = name; - this.desPort = desPort; - - } - - @Override - public void run() { - try { - System.out.println("接收方启动中。。。"); - socket = new DatagramSocket(desPort); - while (true){ - byte [] buffer = new byte[1024]; - packet = new DatagramPacket(buffer,0,buffer.length); - socket.receive(packet); - - byte[] receivedatas = packet.getData(); - String data = new String(receivedatas, 0, packet.getLength()); - System.out.println(packet.getAddress().getHostName()+name+":"+data ); - if (data.equals("BYE"))break; - } - - - socket.close(); - }catch (Exception e){ - e.printStackTrace(); - } - } -} diff --git a/inetTest/src/com/xiaokai/inettest/lesson03/TalkSenderTest.java b/inetTest/src/com/xiaokai/inettest/lesson03/TalkSenderTest.java deleted file mode 100644 index c992623..0000000 --- a/inetTest/src/com/xiaokai/inettest/lesson03/TalkSenderTest.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.xiaokai.inettest.lesson03; - -import java.io.BufferedReader; -import java.io.InputStreamReader; -import java.net.DatagramPacket; -import java.net.DatagramSocket; -import java.net.InetSocketAddress; - -public class TalkSenderTest implements Runnable{ - private DatagramSocket socket = null; - private BufferedReader bufferedReader = null; - private int srcPort; - private String desIP; - private int desPort; - - public TalkSenderTest(int srcPort, String desIP, int desPort) { - this.srcPort = srcPort; - this.desIP = desIP; - this.desPort = desPort; - } - - @Override - public void run() { - try{ - System.out.println("发送方启动中。。。"); - socket = new DatagramSocket(srcPort); - bufferedReader = new BufferedReader(new InputStreamReader(System.in)); - while (true){ - String data = bufferedReader.readLine(); - byte [] senddatas = data.getBytes(); - DatagramPacket packet = new DatagramPacket(senddatas,0,senddatas.length,new InetSocketAddress(desIP,desPort)); - socket.send(packet); - if (data.equals("BYE")){ - break; - } - } - socket.close(); - }catch (Exception e){ - e.printStackTrace(); - } - - } -} diff --git a/inetTest/src/com/xiaokai/inettest/lesson03/TeacherTalkDemo01.java b/inetTest/src/com/xiaokai/inettest/lesson03/TeacherTalkDemo01.java deleted file mode 100644 index 36f787b..0000000 --- a/inetTest/src/com/xiaokai/inettest/lesson03/TeacherTalkDemo01.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.xiaokai.inettest.lesson03; - -public class TeacherTalkDemo01 { - public static void main(String[] args) { - new Thread(new TalkSenderTest(8999,"localhost",8000)).start(); - new Thread(new TalkReceiveTest(9090,"student")).start(); - } -} diff --git a/inetTest/src/com/xiaokai/inettest/lesson03/URLDemo01.java b/inetTest/src/com/xiaokai/inettest/lesson03/URLDemo01.java deleted file mode 100644 index 37d19c2..0000000 --- a/inetTest/src/com/xiaokai/inettest/lesson03/URLDemo01.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.xiaokai.inettest.lesson03; - -import java.net.MalformedURLException; -import java.net.URL; - -public class URLDemo01 { - public static void main(String[] args) throws MalformedURLException { - URL url = new URL("http://localhost:8080/helloworld/index.jsp?username=xiaokai&&password=123"); - System.out.println(url.getProtocol());//协议名 - System.out.println(url.getHost());//主机名 - System.out.println(url.getPort()); - System.out.println(url.getPath());//文件路径 - System.out.println(url.getFile());//文件名 - System.out.println(url.getQuery());//查询条件 - } -} diff --git a/inetTest/src/com/xiaokai/inettest/lesson03/URLDemo02.java b/inetTest/src/com/xiaokai/inettest/lesson03/URLDemo02.java deleted file mode 100644 index a5d4ad6..0000000 --- a/inetTest/src/com/xiaokai/inettest/lesson03/URLDemo02.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.xiaokai.inettest.lesson03; - -import java.io.File; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.net.HttpURLConnection; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; - -public class URLDemo02 { - public static void main(String[] args) { - try { - URL url = new URL("http://127.0.0.1:8080/testxiaokai/test.txt"); - HttpURLConnection connection = (HttpURLConnection) url.openConnection(); - InputStream is = connection.getInputStream(); - FileOutputStream fos = new FileOutputStream(new File("testURL.txt")); - byte[] buffer = new byte[1024]; - int len; - while ((len=is.read(buffer))!=-1){ - fos.write(buffer,0,len); - } - - fos.close(); - is.close(); - connection.disconnect(); - } catch (MalformedURLException e) { - e.printStackTrace(); - } catch (IOException e) { - e.printStackTrace(); - } - } -} diff --git a/inetTest/src/com/xiaokai/inettest/lesson03/UdpClientDemo01.java b/inetTest/src/com/xiaokai/inettest/lesson03/UdpClientDemo01.java deleted file mode 100644 index f1e48f9..0000000 --- a/inetTest/src/com/xiaokai/inettest/lesson03/UdpClientDemo01.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.xiaokai.inettest.lesson03; - -import java.net.*; - -public class UdpClientDemo01 { - public static void main(String[] args) throws Exception { - //新建链接 - DatagramSocket socket = new DatagramSocket(); - //2.封装数据包 - String msg = "发送测试!"; - byte[] data = msg.getBytes(); - int port = 9000; - InetAddress address = InetAddress.getByName("127.0.0.1"); - DatagramPacket packet = new DatagramPacket(data, 0, data.length, address, port); - - //3.通过socket发送 - socket.send(packet); - - //4.关闭资源 - socket.close(); - } -} diff --git a/inetTest/src/com/xiaokai/inettest/lesson03/UdpReceiveDemo01.java b/inetTest/src/com/xiaokai/inettest/lesson03/UdpReceiveDemo01.java deleted file mode 100644 index 96b5ccf..0000000 --- a/inetTest/src/com/xiaokai/inettest/lesson03/UdpReceiveDemo01.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.xiaokai.inettest.lesson03; - -import java.net.DatagramPacket; -import java.net.DatagramSocket; -import java.net.SocketException; - -public class UdpReceiveDemo01 { - public static void main(String[] args) throws Exception { - System.out.println("接收方启动中。。。"); - DatagramSocket socket = new DatagramSocket(9090); - while (true){ - byte [] buffer = new byte[1024]; - DatagramPacket packet = new DatagramPacket(buffer,0,buffer.length); - socket.receive(packet); - - byte[] receivedatas = packet.getData(); - String data = new String(receivedatas, 0, packet.getLength()); - System.out.println(packet.getAddress().getHostName()+data); - if (data.equals("BYE"))break; - } - - - socket.close(); - } -} diff --git a/inetTest/src/com/xiaokai/inettest/lesson03/UdpSenderDemo01.java b/inetTest/src/com/xiaokai/inettest/lesson03/UdpSenderDemo01.java deleted file mode 100644 index bbe9c98..0000000 --- a/inetTest/src/com/xiaokai/inettest/lesson03/UdpSenderDemo01.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.xiaokai.inettest.lesson03; - -import java.io.BufferedReader; -import java.io.InputStreamReader; -import java.net.*; -import java.nio.charset.StandardCharsets; - -public class UdpSenderDemo01 { - public static void main(String[] args) throws Exception { - System.out.println("发送方启动中。。。"); - DatagramSocket socket = new DatagramSocket(9000); - BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in)); - while (true){ - String data = bufferedReader.readLine(); - byte [] senddatas = data.getBytes(); - DatagramPacket packet = new DatagramPacket(senddatas,0,senddatas.length,new InetSocketAddress("localhost",9090)); - socket.send(packet); - if (data.equals("BYE")){ - break; - } - } - socket.close(); - } -} diff --git a/inetTest/src/com/xiaokai/inettest/lesson03/UdpServerDemo01.java b/inetTest/src/com/xiaokai/inettest/lesson03/UdpServerDemo01.java deleted file mode 100644 index 97e38fa..0000000 --- a/inetTest/src/com/xiaokai/inettest/lesson03/UdpServerDemo01.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.xiaokai.inettest.lesson03; - -import java.net.DatagramPacket; -import java.net.DatagramSocket; -import java.net.SocketException; - -public class UdpServerDemo01 { - public static void main(String[] args) throws Exception { - //开放端口 - DatagramSocket socket = new DatagramSocket(9000); - //接受数据 - byte[] buffer = new byte[1024]; - DatagramPacket packet = new DatagramPacket(buffer, 0, buffer.length); - - socket.receive(packet); - - //3.输出数据 - System.out.println(packet.getAddress().getHostName()+":"+new String(packet.getData(),0, packet.getLength())); - //guanbi - socket.close(); - - } -} diff --git a/inetTest/testURL.txt b/inetTest/testURL.txt deleted file mode 100644 index 611e026..0000000 --- a/inetTest/testURL.txt +++ /dev/null @@ -1 +0,0 @@ -HelloWorld! \ No newline at end of file diff --git a/javaweb-01-maven/.idea/.gitignore b/javaweb-01-maven/.idea/.gitignore deleted file mode 100644 index 73f69e0..0000000 --- a/javaweb-01-maven/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/javaweb-01-maven/.idea/compiler.xml b/javaweb-01-maven/.idea/compiler.xml deleted file mode 100644 index c424807..0000000 --- a/javaweb-01-maven/.idea/compiler.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-01-maven/.idea/jarRepositories.xml b/javaweb-01-maven/.idea/jarRepositories.xml deleted file mode 100644 index 980588c..0000000 --- a/javaweb-01-maven/.idea/jarRepositories.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-01-maven/.idea/misc.xml b/javaweb-01-maven/.idea/misc.xml deleted file mode 100644 index 79a352f..0000000 --- a/javaweb-01-maven/.idea/misc.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-01-maven/pom.xml b/javaweb-01-maven/pom.xml deleted file mode 100644 index 868d23e..0000000 --- a/javaweb-01-maven/pom.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - - 4.0.0 - - com.xiaokai - javaweb-01-maven - 1.0-SNAPSHOT - war - - javaweb-01-maven Maven Webapp - - http://www.example.com - - - UTF-8 - 1.7 - 1.7 - - - - - junit - junit - 4.11 - test - - - - - javaweb-01-maven - - - - maven-clean-plugin - 3.1.0 - - - - maven-resources-plugin - 3.0.2 - - - maven-compiler-plugin - 3.8.0 - - - maven-surefire-plugin - 2.22.1 - - - maven-war-plugin - 3.2.2 - - - maven-install-plugin - 2.5.2 - - - maven-deploy-plugin - 2.8.2 - - - - - diff --git a/javaweb-01-maven/src/main/webapp/WEB-INF/web.xml b/javaweb-01-maven/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 55cb359..0000000 --- a/javaweb-01-maven/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - diff --git a/javaweb-01-maven/src/main/webapp/index.jsp b/javaweb-01-maven/src/main/webapp/index.jsp deleted file mode 100644 index c38169b..0000000 --- a/javaweb-01-maven/src/main/webapp/index.jsp +++ /dev/null @@ -1,5 +0,0 @@ - - -

Hello World!

- - diff --git a/javaweb-02-maven/.idea/.gitignore b/javaweb-02-maven/.idea/.gitignore deleted file mode 100644 index 73f69e0..0000000 --- a/javaweb-02-maven/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/javaweb-02-maven/.idea/compiler.xml b/javaweb-02-maven/.idea/compiler.xml deleted file mode 100644 index c31c253..0000000 --- a/javaweb-02-maven/.idea/compiler.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-02-maven/.idea/encodings.xml b/javaweb-02-maven/.idea/encodings.xml deleted file mode 100644 index 228a976..0000000 --- a/javaweb-02-maven/.idea/encodings.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/javaweb-02-maven/.idea/jarRepositories.xml b/javaweb-02-maven/.idea/jarRepositories.xml deleted file mode 100644 index 980588c..0000000 --- a/javaweb-02-maven/.idea/jarRepositories.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-02-maven/.idea/misc.xml b/javaweb-02-maven/.idea/misc.xml deleted file mode 100644 index 04ccb75..0000000 --- a/javaweb-02-maven/.idea/misc.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-02-maven/hello01/pom.xml b/javaweb-02-maven/hello01/pom.xml deleted file mode 100644 index 98a2a2d..0000000 --- a/javaweb-02-maven/hello01/pom.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - - 4.0.0 - - com.xiaokai - hello01 - 1.0-SNAPSHOT - war - - hello01 Maven Webapp - - http://www.example.com - - - UTF-8 - 1.7 - 1.7 - - - - - junit - junit - 4.11 - test - - - - - hello01 - - - - maven-clean-plugin - 3.1.0 - - - - maven-resources-plugin - 3.0.2 - - - maven-compiler-plugin - 3.8.0 - - - maven-surefire-plugin - 2.22.1 - - - maven-war-plugin - 3.2.2 - - - maven-install-plugin - 2.5.2 - - - maven-deploy-plugin - 2.8.2 - - - - - diff --git a/javaweb-02-maven/hello01/src/main/webapp/WEB-INF/web.xml b/javaweb-02-maven/hello01/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 9f88c1f..0000000 --- a/javaweb-02-maven/hello01/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - Archetype Created Web Application - diff --git a/javaweb-02-maven/hello01/src/main/webapp/index.jsp b/javaweb-02-maven/hello01/src/main/webapp/index.jsp deleted file mode 100644 index c38169b..0000000 --- a/javaweb-02-maven/hello01/src/main/webapp/index.jsp +++ /dev/null @@ -1,5 +0,0 @@ - - -

Hello World!

- - diff --git a/javaweb-02-maven/pom.xml b/javaweb-02-maven/pom.xml deleted file mode 100644 index a82d732..0000000 --- a/javaweb-02-maven/pom.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - 4.0.0 - - com.xiaokai - javaweb-02-maven - pom - 1.0-SNAPSHOT - - - hello01 - - - - - 8 - 8 - - - - - javax.servlet - javax.servlet-api - 4.0.1 - - - javax.servlet.jsp - javax.servlet.jsp-api - 2.3.3 - - - - - - - \ No newline at end of file diff --git a/javaweb-02-servlet/.idea/.gitignore b/javaweb-02-servlet/.idea/.gitignore deleted file mode 100644 index 73f69e0..0000000 --- a/javaweb-02-servlet/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/javaweb-02-servlet/.idea/compiler.xml b/javaweb-02-servlet/.idea/compiler.xml deleted file mode 100644 index 6f120b6..0000000 --- a/javaweb-02-servlet/.idea/compiler.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-02-servlet/.idea/encodings.xml b/javaweb-02-servlet/.idea/encodings.xml deleted file mode 100644 index 83eeef8..0000000 --- a/javaweb-02-servlet/.idea/encodings.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-02-servlet/.idea/jarRepositories.xml b/javaweb-02-servlet/.idea/jarRepositories.xml deleted file mode 100644 index 980588c..0000000 --- a/javaweb-02-servlet/.idea/jarRepositories.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-02-servlet/.idea/misc.xml b/javaweb-02-servlet/.idea/misc.xml deleted file mode 100644 index a494e57..0000000 --- a/javaweb-02-servlet/.idea/misc.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-02-servlet/.idea/uiDesigner.xml b/javaweb-02-servlet/.idea/uiDesigner.xml deleted file mode 100644 index e96534f..0000000 --- a/javaweb-02-servlet/.idea/uiDesigner.xml +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-02-servlet/helloServlet-01/pom.xml b/javaweb-02-servlet/helloServlet-01/pom.xml deleted file mode 100644 index 4b5b0c6..0000000 --- a/javaweb-02-servlet/helloServlet-01/pom.xml +++ /dev/null @@ -1,70 +0,0 @@ - - - - - javaweb-02-servlet - com.xiaokai - 1.0-SNAPSHOT - - 4.0.0 - - helloServlet-01 - war - - helloServlet-01 Maven Webapp - - http://www.example.com - - - UTF-8 - 1.7 - 1.7 - - - - - junit - junit - 4.11 - test - - - - - helloServlet-01 - - - - maven-clean-plugin - 3.1.0 - - - - maven-resources-plugin - 3.0.2 - - - maven-compiler-plugin - 3.8.0 - - - maven-surefire-plugin - 2.22.1 - - - maven-war-plugin - 3.2.2 - - - maven-install-plugin - 2.5.2 - - - maven-deploy-plugin - 2.8.2 - - - - - diff --git a/javaweb-02-servlet/helloServlet-01/src/main/java/HelloServlet01.java b/javaweb-02-servlet/helloServlet-01/src/main/java/HelloServlet01.java deleted file mode 100644 index 88a5fa8..0000000 --- a/javaweb-02-servlet/helloServlet-01/src/main/java/HelloServlet01.java +++ /dev/null @@ -1,19 +0,0 @@ -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.io.PrintWriter; - -public class HelloServlet01 extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - PrintWriter writer = resp.getWriter(); - writer.print("Hello Servlet!!!"); - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } -} diff --git a/javaweb-02-servlet/helloServlet-01/src/main/webapp/WEB-INF/web.xml b/javaweb-02-servlet/helloServlet-01/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 67c557b..0000000 --- a/javaweb-02-servlet/helloServlet-01/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - hello - HelloServlet01 - - - hello - /hello - - diff --git a/javaweb-02-servlet/helloServlet-01/src/main/webapp/index.jsp b/javaweb-02-servlet/helloServlet-01/src/main/webapp/index.jsp deleted file mode 100644 index 4e6dc6c..0000000 --- a/javaweb-02-servlet/helloServlet-01/src/main/webapp/index.jsp +++ /dev/null @@ -1,5 +0,0 @@ - - -helloworld! - - diff --git a/javaweb-02-servlet/helloServlet-01/target/classes/HelloServlet01.class b/javaweb-02-servlet/helloServlet-01/target/classes/HelloServlet01.class deleted file mode 100644 index 757e441..0000000 Binary files a/javaweb-02-servlet/helloServlet-01/target/classes/HelloServlet01.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-01/target/helloServlet-01.war b/javaweb-02-servlet/helloServlet-01/target/helloServlet-01.war deleted file mode 100644 index dc6212d..0000000 Binary files a/javaweb-02-servlet/helloServlet-01/target/helloServlet-01.war and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-01/target/helloServlet-01/META-INF/MANIFEST.MF b/javaweb-02-servlet/helloServlet-01/target/helloServlet-01/META-INF/MANIFEST.MF deleted file mode 100644 index 1d10c5b..0000000 --- a/javaweb-02-servlet/helloServlet-01/target/helloServlet-01/META-INF/MANIFEST.MF +++ /dev/null @@ -1,5 +0,0 @@ -Manifest-Version: 1.0 -Created-By: IntelliJ IDEA -Built-By: guanxiaokai -Build-Jdk: version 1.8.0_281 - diff --git a/javaweb-02-servlet/helloServlet-01/target/helloServlet-01/WEB-INF/classes/HelloServlet01.class b/javaweb-02-servlet/helloServlet-01/target/helloServlet-01/WEB-INF/classes/HelloServlet01.class deleted file mode 100644 index 757e441..0000000 Binary files a/javaweb-02-servlet/helloServlet-01/target/helloServlet-01/WEB-INF/classes/HelloServlet01.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-01/target/helloServlet-01/WEB-INF/lib/javax.servlet-api-4.0.1.jar b/javaweb-02-servlet/helloServlet-01/target/helloServlet-01/WEB-INF/lib/javax.servlet-api-4.0.1.jar deleted file mode 100644 index 844ec7f..0000000 Binary files a/javaweb-02-servlet/helloServlet-01/target/helloServlet-01/WEB-INF/lib/javax.servlet-api-4.0.1.jar and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-01/target/helloServlet-01/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar b/javaweb-02-servlet/helloServlet-01/target/helloServlet-01/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar deleted file mode 100644 index 8b3333a..0000000 Binary files a/javaweb-02-servlet/helloServlet-01/target/helloServlet-01/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-01/target/helloServlet-01/WEB-INF/web.xml b/javaweb-02-servlet/helloServlet-01/target/helloServlet-01/WEB-INF/web.xml deleted file mode 100644 index 67c557b..0000000 --- a/javaweb-02-servlet/helloServlet-01/target/helloServlet-01/WEB-INF/web.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - hello - HelloServlet01 - - - hello - /hello - - diff --git a/javaweb-02-servlet/helloServlet-01/target/helloServlet-01/index.jsp b/javaweb-02-servlet/helloServlet-01/target/helloServlet-01/index.jsp deleted file mode 100644 index 4e6dc6c..0000000 --- a/javaweb-02-servlet/helloServlet-01/target/helloServlet-01/index.jsp +++ /dev/null @@ -1,5 +0,0 @@ - - -helloworld! - - diff --git a/javaweb-02-servlet/helloServlet-02/pom.xml b/javaweb-02-servlet/helloServlet-02/pom.xml deleted file mode 100644 index d316af6..0000000 --- a/javaweb-02-servlet/helloServlet-02/pom.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - - javaweb-02-servlet - com.xiaokai - 1.0-SNAPSHOT - - 4.0.0 - - - helloServlet-02 - - war - - servlet02 Maven Webapp - - http://www.example.com - - - UTF-8 - 1.7 - 1.7 - - - - - - - - - - src/main/resources - - **/*.properties - **/*.xml - - false - - - src/main/java - - **/*.properties - **/*.xml - - false - - - - - diff --git a/javaweb-02-servlet/helloServlet-02/src/main/java/com/xiaokai/servlet02/Dispatcher.java b/javaweb-02-servlet/helloServlet-02/src/main/java/com/xiaokai/servlet02/Dispatcher.java deleted file mode 100644 index cbb3679..0000000 --- a/javaweb-02-servlet/helloServlet-02/src/main/java/com/xiaokai/servlet02/Dispatcher.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.xiaokai.servlet02; - -import javax.servlet.RequestDispatcher; -import javax.servlet.ServletContext; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; - -public class Dispatcher extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - ServletContext context = this.getServletContext(); - RequestDispatcher requestDispatcher = context.getRequestDispatcher("/gp"); - requestDispatcher.forward(req,resp); - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } -} diff --git a/javaweb-02-servlet/helloServlet-02/src/main/java/com/xiaokai/servlet02/GetInitParameter.java b/javaweb-02-servlet/helloServlet-02/src/main/java/com/xiaokai/servlet02/GetInitParameter.java deleted file mode 100644 index 506b912..0000000 --- a/javaweb-02-servlet/helloServlet-02/src/main/java/com/xiaokai/servlet02/GetInitParameter.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.xiaokai.servlet02; - -import javax.servlet.ServletContext; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; - -public class GetInitParameter extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - - ServletContext context = this.getServletContext(); - String url = context.getInitParameter("url"); - resp.getWriter().println("url="+url); - - resp.setContentType("text/html"); - resp.setCharacterEncoding("utf-8"); - - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } -} diff --git a/javaweb-02-servlet/helloServlet-02/src/main/java/com/xiaokai/servlet02/GetServlet.java b/javaweb-02-servlet/helloServlet-02/src/main/java/com/xiaokai/servlet02/GetServlet.java deleted file mode 100644 index 6098895..0000000 --- a/javaweb-02-servlet/helloServlet-02/src/main/java/com/xiaokai/servlet02/GetServlet.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.xiaokai.servlet02; - -import javax.servlet.ServletContext; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; - -public class GetServlet extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - ServletContext context = this.getServletContext(); - String name = (String) context.getAttribute("name"); - - - resp.setContentType("text/html"); - resp.setCharacterEncoding("utf-8"); - resp.getWriter().println("name="+name); - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } -} diff --git a/javaweb-02-servlet/helloServlet-02/src/main/java/com/xiaokai/servlet02/ResourcesReader.java b/javaweb-02-servlet/helloServlet-02/src/main/java/com/xiaokai/servlet02/ResourcesReader.java deleted file mode 100644 index 318ad53..0000000 --- a/javaweb-02-servlet/helloServlet-02/src/main/java/com/xiaokai/servlet02/ResourcesReader.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.xiaokai.servlet02; - -import javax.servlet.ServletContext; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.io.InputStream; -import java.util.Properties; - -public class ResourcesReader extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - ServletContext context = this.getServletContext(); - InputStream is = context.getResourceAsStream("/WEB-INF/classes/aa.properties"); - Properties properties = new Properties(); - properties.load(is); - String username = properties.getProperty("username"); - String password = properties.getProperty("password"); - resp.getWriter().println(username+":"+password); - - resp.setContentType("text/html"); - resp.setCharacterEncoding("utf-8"); - - - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } -} diff --git a/javaweb-02-servlet/helloServlet-02/src/main/java/com/xiaokai/servlet02/SetServlet.java b/javaweb-02-servlet/helloServlet-02/src/main/java/com/xiaokai/servlet02/SetServlet.java deleted file mode 100644 index e5b670a..0000000 --- a/javaweb-02-servlet/helloServlet-02/src/main/java/com/xiaokai/servlet02/SetServlet.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.xiaokai.servlet02; - -import javax.servlet.ServletContext; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; - -public class SetServlet extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { -// this.getInitParameter(); -// this.getServletConfig(); -// this.getServletContext(); - ServletContext context = this.getServletContext(); - - String name = "小凯"; - context.setAttribute("name",name); - - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } -} diff --git a/javaweb-02-servlet/helloServlet-02/src/main/resources/aa.properties b/javaweb-02-servlet/helloServlet-02/src/main/resources/aa.properties deleted file mode 100644 index ff77319..0000000 --- a/javaweb-02-servlet/helloServlet-02/src/main/resources/aa.properties +++ /dev/null @@ -1,2 +0,0 @@ -username=xiaokai -password=123456 diff --git a/javaweb-02-servlet/helloServlet-02/src/main/webapp/WEB-INF/web.xml b/javaweb-02-servlet/helloServlet-02/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 610f48c..0000000 --- a/javaweb-02-servlet/helloServlet-02/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,54 +0,0 @@ - - - - - url - jdbc:mysql://localhost:3306//jdbcStudy - - - getcontext - com.xiaokai.servlet02.GetServlet - - - getcontext - /getcontext - - - - setcontext - com.xiaokai.servlet02.SetServlet - - - setcontext - /setcontext - - - GetInitParameter - com.xiaokai.servlet02.GetInitParameter - - - GetInitParameter - /gp - - - Dispatcher - com.xiaokai.servlet02.Dispatcher - - - Dispatcher - /dp - - - ResourcesReader - com.xiaokai.servlet02.ResourcesReader - - - ResourcesReader - /RR - - \ No newline at end of file diff --git a/javaweb-02-servlet/helloServlet-02/src/main/webapp/index.jsp b/javaweb-02-servlet/helloServlet-02/src/main/webapp/index.jsp deleted file mode 100644 index c38169b..0000000 --- a/javaweb-02-servlet/helloServlet-02/src/main/webapp/index.jsp +++ /dev/null @@ -1,5 +0,0 @@ - - -

Hello World!

- - diff --git a/javaweb-02-servlet/helloServlet-02/target/classes/aa.properties b/javaweb-02-servlet/helloServlet-02/target/classes/aa.properties deleted file mode 100644 index ff77319..0000000 --- a/javaweb-02-servlet/helloServlet-02/target/classes/aa.properties +++ /dev/null @@ -1,2 +0,0 @@ -username=xiaokai -password=123456 diff --git a/javaweb-02-servlet/helloServlet-02/target/classes/com/xiaokai/servlet02/Dispatcher.class b/javaweb-02-servlet/helloServlet-02/target/classes/com/xiaokai/servlet02/Dispatcher.class deleted file mode 100644 index 667ca8a..0000000 Binary files a/javaweb-02-servlet/helloServlet-02/target/classes/com/xiaokai/servlet02/Dispatcher.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-02/target/classes/com/xiaokai/servlet02/GetInitParameter.class b/javaweb-02-servlet/helloServlet-02/target/classes/com/xiaokai/servlet02/GetInitParameter.class deleted file mode 100644 index 578bba0..0000000 Binary files a/javaweb-02-servlet/helloServlet-02/target/classes/com/xiaokai/servlet02/GetInitParameter.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-02/target/classes/com/xiaokai/servlet02/GetServlet.class b/javaweb-02-servlet/helloServlet-02/target/classes/com/xiaokai/servlet02/GetServlet.class deleted file mode 100644 index c02efca..0000000 Binary files a/javaweb-02-servlet/helloServlet-02/target/classes/com/xiaokai/servlet02/GetServlet.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-02/target/classes/com/xiaokai/servlet02/ResourcesReader.class b/javaweb-02-servlet/helloServlet-02/target/classes/com/xiaokai/servlet02/ResourcesReader.class deleted file mode 100644 index 35e2c99..0000000 Binary files a/javaweb-02-servlet/helloServlet-02/target/classes/com/xiaokai/servlet02/ResourcesReader.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-02/target/classes/com/xiaokai/servlet02/SetServlet.class b/javaweb-02-servlet/helloServlet-02/target/classes/com/xiaokai/servlet02/SetServlet.class deleted file mode 100644 index 4390021..0000000 Binary files a/javaweb-02-servlet/helloServlet-02/target/classes/com/xiaokai/servlet02/SetServlet.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT.war b/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT.war deleted file mode 100644 index 4724e68..0000000 Binary files a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT.war and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/META-INF/MANIFEST.MF b/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/META-INF/MANIFEST.MF deleted file mode 100644 index 1d10c5b..0000000 --- a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/META-INF/MANIFEST.MF +++ /dev/null @@ -1,5 +0,0 @@ -Manifest-Version: 1.0 -Created-By: IntelliJ IDEA -Built-By: guanxiaokai -Build-Jdk: version 1.8.0_281 - diff --git a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/classes/aa.properties b/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/classes/aa.properties deleted file mode 100644 index ff77319..0000000 --- a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/classes/aa.properties +++ /dev/null @@ -1,2 +0,0 @@ -username=xiaokai -password=123456 diff --git a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet02/Dispatcher.class b/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet02/Dispatcher.class deleted file mode 100644 index 667ca8a..0000000 Binary files a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet02/Dispatcher.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet02/GetInitParameter.class b/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet02/GetInitParameter.class deleted file mode 100644 index 578bba0..0000000 Binary files a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet02/GetInitParameter.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet02/GetServlet.class b/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet02/GetServlet.class deleted file mode 100644 index c02efca..0000000 Binary files a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet02/GetServlet.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet02/ResourcesReader.class b/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet02/ResourcesReader.class deleted file mode 100644 index 35e2c99..0000000 Binary files a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet02/ResourcesReader.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet02/SetServlet.class b/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet02/SetServlet.class deleted file mode 100644 index 4390021..0000000 Binary files a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet02/SetServlet.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar b/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar deleted file mode 100644 index 844ec7f..0000000 Binary files a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar b/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar deleted file mode 100644 index 8b3333a..0000000 Binary files a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/web.xml b/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/web.xml deleted file mode 100644 index 610f48c..0000000 --- a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/WEB-INF/web.xml +++ /dev/null @@ -1,54 +0,0 @@ - - - - - url - jdbc:mysql://localhost:3306//jdbcStudy - - - getcontext - com.xiaokai.servlet02.GetServlet - - - getcontext - /getcontext - - - - setcontext - com.xiaokai.servlet02.SetServlet - - - setcontext - /setcontext - - - GetInitParameter - com.xiaokai.servlet02.GetInitParameter - - - GetInitParameter - /gp - - - Dispatcher - com.xiaokai.servlet02.Dispatcher - - - Dispatcher - /dp - - - ResourcesReader - com.xiaokai.servlet02.ResourcesReader - - - ResourcesReader - /RR - - \ No newline at end of file diff --git a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/index.jsp b/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/index.jsp deleted file mode 100644 index c38169b..0000000 --- a/javaweb-02-servlet/helloServlet-02/target/helloServlet-02-1.0-SNAPSHOT/index.jsp +++ /dev/null @@ -1,5 +0,0 @@ - - -

Hello World!

- - diff --git a/javaweb-02-servlet/helloServlet-03/pom.xml b/javaweb-02-servlet/helloServlet-03/pom.xml deleted file mode 100644 index 936e2cb..0000000 --- a/javaweb-02-servlet/helloServlet-03/pom.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - 4.0.0 - - javaweb-02-servlet - com.xiaokai - 1.0-SNAPSHOT - - - helloServlet-03 - - war - - helloServlet-03 Maven Webapp - - http://www.example.com - - - UTF-8 - 1.7 - 1.7 - - - - - - - - - - - src/main/resources - - **/*.properties - **/*.xml - **/*.png - - false - - - src/main/java - - **/*.properties - **/*.xml - - false - - - - diff --git a/javaweb-02-servlet/helloServlet-03/src/main/java/TestDownload.java b/javaweb-02-servlet/helloServlet-03/src/main/java/TestDownload.java deleted file mode 100644 index 0fec7fd..0000000 --- a/javaweb-02-servlet/helloServlet-03/src/main/java/TestDownload.java +++ /dev/null @@ -1,45 +0,0 @@ -import javax.servlet.ServletContext; -import javax.servlet.ServletException; -import javax.servlet.ServletOutputStream; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.FileInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.net.URLEncoder; - -public class TestDownload extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { -// 1.获取下载文件的路径; -// 2.下载的文件名获取; -// 3.让浏览器支持下载; -// 4.获取下载文件的输入流; -// 5.创建缓冲区; -// 6.获取outputstream对象; -// 7.写入缓冲区; -// 8.输出到客户端; - String realPath = "D:\\code\\javaweb-02-servlet\\helloServlet-03\\target\\classes\\images\\我是猪.png"; - System.out.println("文件路径:"+realPath); - String fileName = realPath.substring(realPath.lastIndexOf("\\")+1); - resp.setHeader("Content-disposition","attachment;filename="+ URLEncoder.encode(fileName,"utf-8")); - resp.setCharacterEncoding("utf-8"); - resp.setContentType("text/html"); - - FileInputStream inputStream = new FileInputStream(realPath); - int len = 0; - byte[] buffer = new byte[1024]; - ServletOutputStream outputStream = resp.getOutputStream(); - while ((len = inputStream.read(buffer))!=-1){ - outputStream.write(buffer,0,len); - } - outputStream.close(); - inputStream.close(); - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } -} diff --git "a/javaweb-02-servlet/helloServlet-03/src/main/resources/images/\346\210\221\346\230\257\347\214\252.png" "b/javaweb-02-servlet/helloServlet-03/src/main/resources/images/\346\210\221\346\230\257\347\214\252.png" deleted file mode 100644 index b1920f8..0000000 Binary files "a/javaweb-02-servlet/helloServlet-03/src/main/resources/images/\346\210\221\346\230\257\347\214\252.png" and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-03/src/main/webapp/WEB-INF/web.xml b/javaweb-02-servlet/helloServlet-03/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index e95db48..0000000 --- a/javaweb-02-servlet/helloServlet-03/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - TestDownload - TestDownload - - - TestDownload - /down - - diff --git a/javaweb-02-servlet/helloServlet-03/src/main/webapp/index.jsp b/javaweb-02-servlet/helloServlet-03/src/main/webapp/index.jsp deleted file mode 100644 index c38169b..0000000 --- a/javaweb-02-servlet/helloServlet-03/src/main/webapp/index.jsp +++ /dev/null @@ -1,5 +0,0 @@ - - -

Hello World!

- - diff --git a/javaweb-02-servlet/helloServlet-03/target/classes/TestDownload.class b/javaweb-02-servlet/helloServlet-03/target/classes/TestDownload.class deleted file mode 100644 index c895697..0000000 Binary files a/javaweb-02-servlet/helloServlet-03/target/classes/TestDownload.class and /dev/null differ diff --git "a/javaweb-02-servlet/helloServlet-03/target/classes/images/\346\210\221\346\230\257\347\214\252.png" "b/javaweb-02-servlet/helloServlet-03/target/classes/images/\346\210\221\346\230\257\347\214\252.png" deleted file mode 100644 index b1920f8..0000000 Binary files "a/javaweb-02-servlet/helloServlet-03/target/classes/images/\346\210\221\346\230\257\347\214\252.png" and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT.war b/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT.war deleted file mode 100644 index 6936958..0000000 Binary files a/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT.war and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/META-INF/MANIFEST.MF b/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/META-INF/MANIFEST.MF deleted file mode 100644 index 1d10c5b..0000000 --- a/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/META-INF/MANIFEST.MF +++ /dev/null @@ -1,5 +0,0 @@ -Manifest-Version: 1.0 -Created-By: IntelliJ IDEA -Built-By: guanxiaokai -Build-Jdk: version 1.8.0_281 - diff --git a/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/WEB-INF/classes/TestDownload.class b/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/WEB-INF/classes/TestDownload.class deleted file mode 100644 index c895697..0000000 Binary files a/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/WEB-INF/classes/TestDownload.class and /dev/null differ diff --git "a/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/WEB-INF/classes/images/\346\210\221\346\230\257\347\214\252.png" "b/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/WEB-INF/classes/images/\346\210\221\346\230\257\347\214\252.png" deleted file mode 100644 index b1920f8..0000000 Binary files "a/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/WEB-INF/classes/images/\346\210\221\346\230\257\347\214\252.png" and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar b/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar deleted file mode 100644 index 844ec7f..0000000 Binary files a/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar b/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar deleted file mode 100644 index 8b3333a..0000000 Binary files a/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/WEB-INF/web.xml b/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/WEB-INF/web.xml deleted file mode 100644 index e95db48..0000000 --- a/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/WEB-INF/web.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - TestDownload - TestDownload - - - TestDownload - /down - - diff --git a/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/index.jsp b/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/index.jsp deleted file mode 100644 index c38169b..0000000 --- a/javaweb-02-servlet/helloServlet-03/target/helloServlet-03-1.0-SNAPSHOT/index.jsp +++ /dev/null @@ -1,5 +0,0 @@ - - -

Hello World!

- - diff --git a/javaweb-02-servlet/helloServlet-04/pom.xml b/javaweb-02-servlet/helloServlet-04/pom.xml deleted file mode 100644 index fe6a1ba..0000000 --- a/javaweb-02-servlet/helloServlet-04/pom.xml +++ /dev/null @@ -1,51 +0,0 @@ - - - - 4.0.0 - - javaweb-02-servlet - com.xiaokai - 1.0-SNAPSHOT - - - helloServlet-04 - - war - - helloServlet-04 Maven Webapp - - http://www.example.com - - - UTF-8 - 1.7 - 1.7 - - - - - - - - - - - src/main/resources - - **/*.properties - **/*.xml - - false - - - src/main/java - - **/*.properties - **/*.xml - - false - - - - diff --git a/javaweb-02-servlet/helloServlet-04/src/main/java/com/xiaokai/ImageServlet/ImageServlet.java b/javaweb-02-servlet/helloServlet-04/src/main/java/com/xiaokai/ImageServlet/ImageServlet.java deleted file mode 100644 index e8f5562..0000000 --- a/javaweb-02-servlet/helloServlet-04/src/main/java/com/xiaokai/ImageServlet/ImageServlet.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.xiaokai.ImageServlet; - -import javax.imageio.ImageIO; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.awt.*; -import java.awt.image.BufferedImage; -import java.io.IOException; -import java.util.Random; - -public class ImageServlet extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - - //让浏览器3秒自动刷新一次 - resp.setHeader("refresh","10"); - - //在内存中创建一个图片 - BufferedImage image = new BufferedImage(700, 100, BufferedImage.TYPE_INT_RGB); - //得到图片 - Graphics2D g = (Graphics2D) image.getGraphics();//笔 - //设置图片背景颜色 - g.setColor(Color.white); - g.fillRect(0,0,700,100); - //给图片写数据 - g.setColor(Color.BLUE); - g.setFont(new Font(null,Font.BOLD,80)); - g.drawString(makeNum(),0,80); - - //告诉浏览器这个请求用 图片 方式打开 - resp.setContentType("image/jpeg"); - //网站存在缓存,不让浏览器缓存 - resp.setDateHeader("expires",-1); - resp.setHeader("Cache-Control","no-cache"); - resp.setHeader("Pragma","no-cache"); - - //把图片写给浏览器 - ImageIO.write(image,"jpg",resp.getOutputStream()); - } - - //生成随机数 - private String makeNum(){ - Random random = new Random(); - String num = random.nextInt(9999999)+""; - //0填充,保证验证码字符串是7位 - StringBuffer sb = new StringBuffer(); - for (int i = 0;i < 7-num.length();i++){ - sb.append("0"); - } - num = sb.toString()+num; - return num; - } - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } -} diff --git a/javaweb-02-servlet/helloServlet-04/src/main/webapp/WEB-INF/web.xml b/javaweb-02-servlet/helloServlet-04/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 14b8bda..0000000 --- a/javaweb-02-servlet/helloServlet-04/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - ImageServlet - com.xiaokai.ImageServlet.ImageServlet - - - ImageServlet - /image - - diff --git a/javaweb-02-servlet/helloServlet-04/src/main/webapp/index.jsp b/javaweb-02-servlet/helloServlet-04/src/main/webapp/index.jsp deleted file mode 100644 index c38169b..0000000 --- a/javaweb-02-servlet/helloServlet-04/src/main/webapp/index.jsp +++ /dev/null @@ -1,5 +0,0 @@ - - -

Hello World!

- - diff --git a/javaweb-02-servlet/helloServlet-04/target/classes/com/xiaokai/ImageServlet/ImageServlet.class b/javaweb-02-servlet/helloServlet-04/target/classes/com/xiaokai/ImageServlet/ImageServlet.class deleted file mode 100644 index 0b4d4f2..0000000 Binary files a/javaweb-02-servlet/helloServlet-04/target/classes/com/xiaokai/ImageServlet/ImageServlet.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT.war b/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT.war deleted file mode 100644 index 48dd85b..0000000 Binary files a/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT.war and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT/META-INF/MANIFEST.MF b/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT/META-INF/MANIFEST.MF deleted file mode 100644 index 1d10c5b..0000000 --- a/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT/META-INF/MANIFEST.MF +++ /dev/null @@ -1,5 +0,0 @@ -Manifest-Version: 1.0 -Created-By: IntelliJ IDEA -Built-By: guanxiaokai -Build-Jdk: version 1.8.0_281 - diff --git a/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/ImageServlet/ImageServlet.class b/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/ImageServlet/ImageServlet.class deleted file mode 100644 index 0b4d4f2..0000000 Binary files a/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/ImageServlet/ImageServlet.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar b/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar deleted file mode 100644 index 844ec7f..0000000 Binary files a/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar b/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar deleted file mode 100644 index 8b3333a..0000000 Binary files a/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT/WEB-INF/web.xml b/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT/WEB-INF/web.xml deleted file mode 100644 index 14b8bda..0000000 --- a/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT/WEB-INF/web.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - ImageServlet - com.xiaokai.ImageServlet.ImageServlet - - - ImageServlet - /image - - diff --git a/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT/index.jsp b/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT/index.jsp deleted file mode 100644 index c38169b..0000000 --- a/javaweb-02-servlet/helloServlet-04/target/helloServlet-04-1.0-SNAPSHOT/index.jsp +++ /dev/null @@ -1,5 +0,0 @@ - - -

Hello World!

- - diff --git a/javaweb-02-servlet/helloServlet-05/pom.xml b/javaweb-02-servlet/helloServlet-05/pom.xml deleted file mode 100644 index 76cfa40..0000000 --- a/javaweb-02-servlet/helloServlet-05/pom.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - 4.0.0 - - javaweb-02-servlet - com.xiaokai - 1.0-SNAPSHOT - - - helloServlet-05 - - war - - helloServlet-05 Maven Webapp - - http://www.example.com - - - UTF-8 - 1.7 - 1.7 - - - - - - - - diff --git a/javaweb-02-servlet/helloServlet-05/src/main/java/ImageTest.java b/javaweb-02-servlet/helloServlet-05/src/main/java/ImageTest.java deleted file mode 100644 index 9023076..0000000 --- a/javaweb-02-servlet/helloServlet-05/src/main/java/ImageTest.java +++ /dev/null @@ -1,57 +0,0 @@ -import javax.imageio.ImageIO; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.awt.*; -import java.awt.image.BufferedImage; -import java.io.IOException; -import java.util.Random; - -public class ImageTest extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - - //让浏览器3秒自动刷新一次 - resp.setHeader("refresh","5"); - - //在内存中创建一个图片 - BufferedImage image = new BufferedImage(700, 100, BufferedImage.TYPE_INT_RGB); - //得到图片 - Graphics2D g = (Graphics2D) image.getGraphics();//笔 - //设置图片背景颜色 - g.setColor(Color.white); - g.fillRect(0,0,700,100); - //给图片写数据 - g.setColor(Color.BLUE); - g.setFont(new Font(null,Font.BOLD,80)); - g.drawString(makeNum(),0,80); - - //告诉浏览器这个请求用 图片 方式打开 - resp.setContentType("image/jpeg"); - //网站存在缓存,不让浏览器缓存 - resp.setDateHeader("expires",-1); - resp.setHeader("Cache-Control","no-cache"); - resp.setHeader("Pragma","no-cache"); - - //把图片写给浏览器 - ImageIO.write(image,"jpg",resp.getOutputStream()); - } - - //生成随机数 - private String makeNum(){ - Random random = new Random(); - String num = random.nextInt(9999999)+""; - //0填充,保证验证码字符串是7位 - StringBuffer sb = new StringBuffer(); - for (int i = 0;i < 7-num.length();i++){ - sb.append("0"); - } - num = sb.toString()+num; - return num; - } - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } -} diff --git a/javaweb-02-servlet/helloServlet-05/src/main/java/LoginTest.java b/javaweb-02-servlet/helloServlet-05/src/main/java/LoginTest.java deleted file mode 100644 index 0a8c41e..0000000 --- a/javaweb-02-servlet/helloServlet-05/src/main/java/LoginTest.java +++ /dev/null @@ -1,21 +0,0 @@ -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; - -public class LoginTest extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - String username = req.getParameter("username"); - String password = req.getParameter("password"); - System.out.println(username+":"+password); - resp.sendRedirect("/05/success.jsp"); - - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } -} diff --git a/javaweb-02-servlet/helloServlet-05/src/main/java/SendRedirect.java b/javaweb-02-servlet/helloServlet-05/src/main/java/SendRedirect.java deleted file mode 100644 index cb76788..0000000 --- a/javaweb-02-servlet/helloServlet-05/src/main/java/SendRedirect.java +++ /dev/null @@ -1,17 +0,0 @@ -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; - -public class SendRedirect extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - resp.sendRedirect("/05/image"); - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } -} diff --git a/javaweb-02-servlet/helloServlet-05/src/main/webapp/WEB-INF/web.xml b/javaweb-02-servlet/helloServlet-05/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 8418edb..0000000 --- a/javaweb-02-servlet/helloServlet-05/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - image - ImageTest - - - image - /image - - - - sendredirect - SendRedirect - - - sendredirect - /send - - - - login - LoginTest - - - login - /login - - diff --git a/javaweb-02-servlet/helloServlet-05/src/main/webapp/index.jsp b/javaweb-02-servlet/helloServlet-05/src/main/webapp/index.jsp deleted file mode 100644 index 8e4f2f9..0000000 --- a/javaweb-02-servlet/helloServlet-05/src/main/webapp/index.jsp +++ /dev/null @@ -1,6 +0,0 @@ - - -

Hello World!

-点击登录 - - diff --git a/javaweb-02-servlet/helloServlet-05/src/main/webapp/login.jsp b/javaweb-02-servlet/helloServlet-05/src/main/webapp/login.jsp deleted file mode 100644 index 855394f..0000000 --- a/javaweb-02-servlet/helloServlet-05/src/main/webapp/login.jsp +++ /dev/null @@ -1,20 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/3 - Time: 14:03 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - -
- 用户名:
- 密 码:
- -
- - diff --git a/javaweb-02-servlet/helloServlet-05/src/main/webapp/success.jsp b/javaweb-02-servlet/helloServlet-05/src/main/webapp/success.jsp deleted file mode 100644 index df2b895..0000000 --- a/javaweb-02-servlet/helloServlet-05/src/main/webapp/success.jsp +++ /dev/null @@ -1,16 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/3 - Time: 14:09 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - success - - -

success!

- - diff --git a/javaweb-02-servlet/helloServlet-05/target/classes/ImageTest.class b/javaweb-02-servlet/helloServlet-05/target/classes/ImageTest.class deleted file mode 100644 index 4e27890..0000000 Binary files a/javaweb-02-servlet/helloServlet-05/target/classes/ImageTest.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-05/target/classes/LoginTest.class b/javaweb-02-servlet/helloServlet-05/target/classes/LoginTest.class deleted file mode 100644 index 4110ec0..0000000 Binary files a/javaweb-02-servlet/helloServlet-05/target/classes/LoginTest.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-05/target/classes/SendRedirect.class b/javaweb-02-servlet/helloServlet-05/target/classes/SendRedirect.class deleted file mode 100644 index 08ad208..0000000 Binary files a/javaweb-02-servlet/helloServlet-05/target/classes/SendRedirect.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT.war b/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT.war deleted file mode 100644 index 1e7958c..0000000 Binary files a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT.war and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/META-INF/MANIFEST.MF b/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/META-INF/MANIFEST.MF deleted file mode 100644 index 1d10c5b..0000000 --- a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/META-INF/MANIFEST.MF +++ /dev/null @@ -1,5 +0,0 @@ -Manifest-Version: 1.0 -Created-By: IntelliJ IDEA -Built-By: guanxiaokai -Build-Jdk: version 1.8.0_281 - diff --git a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/WEB-INF/classes/ImageTest.class b/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/WEB-INF/classes/ImageTest.class deleted file mode 100644 index 4e27890..0000000 Binary files a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/WEB-INF/classes/ImageTest.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/WEB-INF/classes/LoginTest.class b/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/WEB-INF/classes/LoginTest.class deleted file mode 100644 index 4110ec0..0000000 Binary files a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/WEB-INF/classes/LoginTest.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/WEB-INF/classes/SendRedirect.class b/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/WEB-INF/classes/SendRedirect.class deleted file mode 100644 index 08ad208..0000000 Binary files a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/WEB-INF/classes/SendRedirect.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar b/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar deleted file mode 100644 index 844ec7f..0000000 Binary files a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar b/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar deleted file mode 100644 index 8b3333a..0000000 Binary files a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/WEB-INF/web.xml b/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/WEB-INF/web.xml deleted file mode 100644 index 8418edb..0000000 --- a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/WEB-INF/web.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - image - ImageTest - - - image - /image - - - - sendredirect - SendRedirect - - - sendredirect - /send - - - - login - LoginTest - - - login - /login - - diff --git a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/index.jsp b/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/index.jsp deleted file mode 100644 index 8e4f2f9..0000000 --- a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/index.jsp +++ /dev/null @@ -1,6 +0,0 @@ - - -

Hello World!

-点击登录 - - diff --git a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/login.jsp b/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/login.jsp deleted file mode 100644 index 855394f..0000000 --- a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/login.jsp +++ /dev/null @@ -1,20 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/3 - Time: 14:03 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - -
- 用户名:
- 密 码:
- -
- - diff --git a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/success.jsp b/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/success.jsp deleted file mode 100644 index df2b895..0000000 --- a/javaweb-02-servlet/helloServlet-05/target/helloServlet-05-1.0-SNAPSHOT/success.jsp +++ /dev/null @@ -1,16 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/3 - Time: 14:09 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - success - - -

success!

- - diff --git a/javaweb-02-servlet/helloServlet-06/pom.xml b/javaweb-02-servlet/helloServlet-06/pom.xml deleted file mode 100644 index a38e00c..0000000 --- a/javaweb-02-servlet/helloServlet-06/pom.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - 4.0.0 - - javaweb-02-servlet - com.xiaokai - 1.0-SNAPSHOT - - - helloServlet-06 - 1.0-SNAPSHOT - war - - helloServlet-06 Maven Webapp - - http://www.example.com - - - UTF-8 - 1.7 - 1.7 - - - - - - - - diff --git a/javaweb-02-servlet/helloServlet-06/src/main/java/RequestTest.java b/javaweb-02-servlet/helloServlet-06/src/main/java/RequestTest.java deleted file mode 100644 index 0c5d062..0000000 --- a/javaweb-02-servlet/helloServlet-06/src/main/java/RequestTest.java +++ /dev/null @@ -1,31 +0,0 @@ -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.util.Arrays; - -public class RequestTest extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - resp.setCharacterEncoding("utf-8"); - req.setCharacterEncoding("utf-8"); - - String username = req.getParameter("username"); - String password = req.getParameter("password"); - String[] hobbies = req.getParameterValues("hobby"); - - System.out.println("==================="); - System.out.println(username+":"+password); - System.out.println("爱好:"+ Arrays.toString(hobbies)); - System.out.println("==================="); - - System.out.println(req.getContextPath()); - req.getRequestDispatcher("/success.jsp").forward(req,resp);//请求转发 - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } -} diff --git a/javaweb-02-servlet/helloServlet-06/src/main/webapp/WEB-INF/web.xml b/javaweb-02-servlet/helloServlet-06/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 92e6c8b..0000000 --- a/javaweb-02-servlet/helloServlet-06/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - login - RequestTest - - - login - /login - - \ No newline at end of file diff --git a/javaweb-02-servlet/helloServlet-06/src/main/webapp/index.jsp b/javaweb-02-servlet/helloServlet-06/src/main/webapp/index.jsp deleted file mode 100644 index 99400a0..0000000 --- a/javaweb-02-servlet/helloServlet-06/src/main/webapp/index.jsp +++ /dev/null @@ -1,28 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/3 - Time: 15:38 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - 登录 - - - -

登录

-
- 用户名:
- 密码:
- 爱好: - java - linux - python
- -
- -
- - diff --git a/javaweb-02-servlet/helloServlet-06/src/main/webapp/success.jsp b/javaweb-02-servlet/helloServlet-06/src/main/webapp/success.jsp deleted file mode 100644 index e4380b6..0000000 --- a/javaweb-02-servlet/helloServlet-06/src/main/webapp/success.jsp +++ /dev/null @@ -1,16 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/3 - Time: 15:50 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - success - - -

success!!!

- - diff --git a/javaweb-02-servlet/helloServlet-06/target/classes/RequestTest.class b/javaweb-02-servlet/helloServlet-06/target/classes/RequestTest.class deleted file mode 100644 index b8a255b..0000000 Binary files a/javaweb-02-servlet/helloServlet-06/target/classes/RequestTest.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT.war b/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT.war deleted file mode 100644 index 066e5e9..0000000 Binary files a/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT.war and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/META-INF/MANIFEST.MF b/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/META-INF/MANIFEST.MF deleted file mode 100644 index 1d10c5b..0000000 --- a/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/META-INF/MANIFEST.MF +++ /dev/null @@ -1,5 +0,0 @@ -Manifest-Version: 1.0 -Created-By: IntelliJ IDEA -Built-By: guanxiaokai -Build-Jdk: version 1.8.0_281 - diff --git a/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/WEB-INF/classes/RequestTest.class b/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/WEB-INF/classes/RequestTest.class deleted file mode 100644 index b8a255b..0000000 Binary files a/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/WEB-INF/classes/RequestTest.class and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar b/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar deleted file mode 100644 index 844ec7f..0000000 Binary files a/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar b/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar deleted file mode 100644 index 8b3333a..0000000 Binary files a/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar and /dev/null differ diff --git a/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/WEB-INF/web.xml b/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/WEB-INF/web.xml deleted file mode 100644 index 92e6c8b..0000000 --- a/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/WEB-INF/web.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - login - RequestTest - - - login - /login - - \ No newline at end of file diff --git a/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/index.jsp b/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/index.jsp deleted file mode 100644 index 99400a0..0000000 --- a/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/index.jsp +++ /dev/null @@ -1,28 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/3 - Time: 15:38 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - 登录 - - - -

登录

-
- 用户名:
- 密码:
- 爱好: - java - linux - python
- -
- -
- - diff --git a/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/success.jsp b/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/success.jsp deleted file mode 100644 index e4380b6..0000000 --- a/javaweb-02-servlet/helloServlet-06/target/helloServlet-06-1.0-SNAPSHOT/success.jsp +++ /dev/null @@ -1,16 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/3 - Time: 15:50 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - success - - -

success!!!

- - diff --git a/javaweb-02-servlet/pom.xml b/javaweb-02-servlet/pom.xml deleted file mode 100644 index d436da4..0000000 --- a/javaweb-02-servlet/pom.xml +++ /dev/null @@ -1,55 +0,0 @@ - - - 4.0.0 - - com.xiaokai - javaweb-02-servlet - pom - 1.0-SNAPSHOT - - helloServlet-01 - helloServlet-02 - helloServlet-03 - helloServlet-04 - helloServlet-05 - helloServlet-06 - - - - - javax.servlet - javax.servlet-api - 4.0.1 - - - javax.servlet.jsp - javax.servlet.jsp-api - 2.3.3 - - - - - - - - src/main/resources - - **/*.properties - **/*.xml - - false - - - src/main/java - - **/*.properties - **/*.xml - - false - - - - - \ No newline at end of file diff --git "a/javaweb-02-servlet/\345\211\252\345\210\207\346\235\277.md" "b/javaweb-02-servlet/\345\211\252\345\210\207\346\235\277.md" deleted file mode 100644 index 91de8b2..0000000 --- "a/javaweb-02-servlet/\345\211\252\345\210\207\346\235\277.md" +++ /dev/null @@ -1,51 +0,0 @@ -```html - - - - - -``` - -```xml - - - - - src/main/resources - - **/*.properties - **/*.xml - - false - - - src/main/java - - **/*.properties - **/*.xml - - false - - - -``` -```xml - - - javax.servlet - javax.servlet-api - 4.0.1 - - - javax.servlet.jsp - javax.servlet.jsp-api - 2.3.3 - - - -``` \ No newline at end of file diff --git a/javaweb-filter/.idea/.gitignore b/javaweb-filter/.idea/.gitignore deleted file mode 100644 index 73f69e0..0000000 --- a/javaweb-filter/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/javaweb-filter/.idea/artifacts/javaweb_filter_war_exploded.xml b/javaweb-filter/.idea/artifacts/javaweb_filter_war_exploded.xml deleted file mode 100644 index d7e43b0..0000000 --- a/javaweb-filter/.idea/artifacts/javaweb_filter_war_exploded.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - $PROJECT_DIR$/out/artifacts/javaweb_filter_war_exploded - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-filter/.idea/compiler.xml b/javaweb-filter/.idea/compiler.xml deleted file mode 100644 index 40fbd32..0000000 --- a/javaweb-filter/.idea/compiler.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-filter/.idea/jarRepositories.xml b/javaweb-filter/.idea/jarRepositories.xml deleted file mode 100644 index 980588c..0000000 --- a/javaweb-filter/.idea/jarRepositories.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-filter/.idea/misc.xml b/javaweb-filter/.idea/misc.xml deleted file mode 100644 index 132404b..0000000 --- a/javaweb-filter/.idea/misc.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-filter/.idea/vcs.xml b/javaweb-filter/.idea/vcs.xml deleted file mode 100644 index 6c0b863..0000000 --- a/javaweb-filter/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/javaweb-filter/javaweb-filter.iml b/javaweb-filter/javaweb-filter.iml deleted file mode 100644 index 4172e5a..0000000 --- a/javaweb-filter/javaweb-filter.iml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/Login.jsp b/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/Login.jsp deleted file mode 100644 index dc6f771..0000000 --- a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/Login.jsp +++ /dev/null @@ -1,20 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/7 - Time: 10:47 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - 登录 - - -

登录

-
- - -
- - diff --git a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/META-INF/MANIFEST.MF b/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/META-INF/MANIFEST.MF deleted file mode 100644 index 1d10c5b..0000000 --- a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/META-INF/MANIFEST.MF +++ /dev/null @@ -1,5 +0,0 @@ -Manifest-Version: 1.0 -Created-By: IntelliJ IDEA -Built-By: guanxiaokai -Build-Jdk: version 1.8.0_281 - diff --git a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/filter/CharacterEncodingFilter.class b/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/filter/CharacterEncodingFilter.class deleted file mode 100644 index a5fae03..0000000 Binary files a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/filter/CharacterEncodingFilter.class and /dev/null differ diff --git a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/filter/SysFilter.class b/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/filter/SysFilter.class deleted file mode 100644 index b9a8538..0000000 Binary files a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/filter/SysFilter.class and /dev/null differ diff --git a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/listener/OnlineCountListener.class b/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/listener/OnlineCountListener.class deleted file mode 100644 index d2df677..0000000 Binary files a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/listener/OnlineCountListener.class and /dev/null differ diff --git a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/listener/TestPanel$1.class b/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/listener/TestPanel$1.class deleted file mode 100644 index 38b2cae..0000000 Binary files a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/listener/TestPanel$1.class and /dev/null differ diff --git a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/listener/TestPanel.class b/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/listener/TestPanel.class deleted file mode 100644 index 4bd7cab..0000000 Binary files a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/listener/TestPanel.class and /dev/null differ diff --git a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/servlet/LoginServlet.class b/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/servlet/LoginServlet.class deleted file mode 100644 index 6b22b65..0000000 Binary files a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/servlet/LoginServlet.class and /dev/null differ diff --git a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/servlet/LogoutServlet.class b/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/servlet/LogoutServlet.class deleted file mode 100644 index 79bf26b..0000000 Binary files a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/servlet/LogoutServlet.class and /dev/null differ diff --git a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/servlet/ShowServlet.class b/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/servlet/ShowServlet.class deleted file mode 100644 index 91b5fcd..0000000 Binary files a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/servlet/ShowServlet.class and /dev/null differ diff --git a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/util/Constant.class b/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/util/Constant.class deleted file mode 100644 index 746f2d1..0000000 Binary files a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/classes/com/xiaokai/util/Constant.class and /dev/null differ diff --git a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/web.xml b/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/web.xml deleted file mode 100644 index 1073178..0000000 --- a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/WEB-INF/web.xml +++ /dev/null @@ -1,57 +0,0 @@ - - - - CharacterEncodingFilter - com.xiaokai.filter.CharacterEncodingFilter - - - CharacterEncodingFilter - /servlet/* - - - SysFilter - com.xiaokai.filter.SysFilter - - - SysFilter - /sys/* - - - - ShowServlet - com.xiaokai.servlet.ShowServlet - - - ShowServlet - /servlet/show - - - ShowServlet - /show - - - - LoginServlet - com.xiaokai.servlet.LoginServlet - - - LoginServlet - /servlet/login - - - - LogoutServlet - com.xiaokai.servlet.LogoutServlet - - - LogoutServlet - /servlet/logout - - - - com.xiaokai.listener.OnlineCountListener - - \ No newline at end of file diff --git a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/error.jsp b/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/error.jsp deleted file mode 100644 index a6ed2b1..0000000 --- a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/error.jsp +++ /dev/null @@ -1,17 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/7 - Time: 10:57 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - error - - -

ERROR

-返回登录页面 - - diff --git a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/filtertest.jsp b/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/filtertest.jsp deleted file mode 100644 index 38ec10c..0000000 --- a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/filtertest.jsp +++ /dev/null @@ -1,16 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/6 - Time: 21:20 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - -

你好,世界!

- - diff --git a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/index.jsp b/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/index.jsp deleted file mode 100644 index d8f4616..0000000 --- a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/index.jsp +++ /dev/null @@ -1,16 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/5 - Time: 22:57 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - $Title$ - - -

总共有 <%=this.getServletConfig().getServletContext().getAttribute("onlinecount")%> 个session

- - diff --git a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/sys/success.jsp b/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/sys/success.jsp deleted file mode 100644 index 02e6619..0000000 --- a/javaweb-filter/out/artifacts/javaweb_filter_war_exploded/sys/success.jsp +++ /dev/null @@ -1,25 +0,0 @@ -<%@ page import="com.xiaokai.util.Constant" %><%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/7 - Time: 10:46 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - 主页 - - -<%--<%--%> -<%-- Object userSession = request.getSession().getAttribute(Constant.USER_SESSION);--%> -<%-- if (userSession==null){--%> -<%-- response.sendRedirect("/Login.jsp");--%> -<%-- }--%> -<%--%>--%> -

success

-

- 注销 -

- - diff --git a/javaweb-filter/pom.xml b/javaweb-filter/pom.xml deleted file mode 100644 index 8e6b4f0..0000000 --- a/javaweb-filter/pom.xml +++ /dev/null @@ -1,74 +0,0 @@ - - - 4.0.0 - - org.example - javaweb-filter - 1.0-SNAPSHOT - - - 8 - 8 - - - - - - javax.servlet - javax.servlet-api - 4.0.1 - - - - javax.servlet.jsp - javax.servlet.jsp-api - 2.3.3 - - - - - javax.servlet.jsp.jstl - jstl-api - 1.2 - - - - - taglibs - standard - 1.1.2 - - - mysql - mysql-connector-java - 5.1.47 - - - - - - - - - src/main/resources - - **/*.properties - **/*.xml - - false - - - src/main/java - - **/*.properties - **/*.xml - - false - - - - - - \ No newline at end of file diff --git a/javaweb-filter/src/main/java/com/xiaokai/filter/CharacterEncodingFilter.java b/javaweb-filter/src/main/java/com/xiaokai/filter/CharacterEncodingFilter.java deleted file mode 100644 index deeaabf..0000000 --- a/javaweb-filter/src/main/java/com/xiaokai/filter/CharacterEncodingFilter.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.xiaokai.filter; - -import javax.servlet.*; -import java.io.IOException; - -public class CharacterEncodingFilter implements Filter { - @Override - public void init(FilterConfig filterConfig) throws ServletException { - System.out.println("CharacterEncodingFilter初始化"); - } - - @Override - public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { - servletRequest.setCharacterEncoding("utf-8"); - servletResponse.setCharacterEncoding("utf-8"); - servletResponse.setContentType("text/html"); - - System.out.println("CharacterEncodingFilter执行前......"); - filterChain.doFilter(servletRequest,servletResponse); - System.out.println("CharacterEncodingFilter执行后......"); - } - - @Override - public void destroy() { - - System.out.println("CharacterEncodingFilter销毁......"); - } -} diff --git a/javaweb-filter/src/main/java/com/xiaokai/filter/SysFilter.java b/javaweb-filter/src/main/java/com/xiaokai/filter/SysFilter.java deleted file mode 100644 index 688fcdb..0000000 --- a/javaweb-filter/src/main/java/com/xiaokai/filter/SysFilter.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.xiaokai.filter; - -import com.xiaokai.util.Constant; - -import javax.servlet.*; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; - -public class SysFilter implements Filter { - @Override - public void init(FilterConfig filterConfig) throws ServletException { - Filter.super.init(filterConfig); - System.out.println("###SysFilter初始化"); - } - - @Override - public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { - HttpServletRequest request = (HttpServletRequest) servletRequest; - HttpServletResponse response = (HttpServletResponse) servletResponse; - - if (request.getSession().getAttribute(Constant.USER_SESSION)==null){ - response.sendRedirect("/Login.jsp"); - } - - filterChain.doFilter(servletRequest,servletResponse); - } - - @Override - public void destroy() { - Filter.super.destroy(); - } -} diff --git a/javaweb-filter/src/main/java/com/xiaokai/listener/OnlineCountListener.java b/javaweb-filter/src/main/java/com/xiaokai/listener/OnlineCountListener.java deleted file mode 100644 index 1a1b5ec..0000000 --- a/javaweb-filter/src/main/java/com/xiaokai/listener/OnlineCountListener.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.xiaokai.listener; - -import javax.servlet.ServletContext; -import javax.servlet.http.HttpSessionEvent; -import javax.servlet.http.HttpSessionListener; - -public class OnlineCountListener implements HttpSessionListener { - @Override - public void sessionCreated(HttpSessionEvent se) { - ServletContext ctx = se.getSession().getServletContext(); - - System.out.println(se.getSession().getId()); - - - Integer onlinecount = (Integer) ctx.getAttribute("onlinecount"); - if (onlinecount == null){ - onlinecount = new Integer(1); - - }else { - int count = onlinecount.intValue(); - onlinecount = new Integer(count+1); - } - ctx.setAttribute("onlinecount",onlinecount); - System.out.println(onlinecount.intValue()); - } - - @Override - public void sessionDestroyed(HttpSessionEvent se) { - ServletContext ctx = se.getSession().getServletContext(); - - System.out.println(se.getSession().getId()); - - Integer onlinecount = (Integer) ctx.getAttribute("onlinecount"); - if (onlinecount == null){ - onlinecount = new Integer(0); - - }else { - int count = onlinecount.intValue(); - onlinecount = new Integer(count-1); - } - ctx.setAttribute("onlinecount",onlinecount); - } -} diff --git a/javaweb-filter/src/main/java/com/xiaokai/listener/TestPanel.java b/javaweb-filter/src/main/java/com/xiaokai/listener/TestPanel.java deleted file mode 100644 index f2bf3eb..0000000 --- a/javaweb-filter/src/main/java/com/xiaokai/listener/TestPanel.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.xiaokai.listener; - -import java.awt.*; -import java.awt.event.WindowAdapter; -import java.awt.event.WindowEvent; - -public class TestPanel { - public static void main(String[] args) { - Frame frame = new Frame("你好世界"); - Panel panel = new Panel(null); - frame.setLayout(null); - - frame.setBounds(300,300,500,500); - frame.setBackground(new Color(163, 17, 17)); - - panel.setBounds(50,50,300,300); - panel.setBackground(new Color(62, 186, 21)); - - frame.add(panel); - frame.setVisible(true); - - frame.addWindowListener(new WindowAdapter() { - @Override - public void windowClosing(WindowEvent e) { - super.windowClosing(e); - } - }); - - } -} diff --git a/javaweb-filter/src/main/java/com/xiaokai/servlet/LoginServlet.java b/javaweb-filter/src/main/java/com/xiaokai/servlet/LoginServlet.java deleted file mode 100644 index 069f3cf..0000000 --- a/javaweb-filter/src/main/java/com/xiaokai/servlet/LoginServlet.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.xiaokai.servlet; - -import com.xiaokai.util.Constant; - -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; - -public class LoginServlet extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - String username = req.getParameter("username"); - if (username.equals("admin")){ - req.getSession().setAttribute(Constant.USER_SESSION,req.getSession().getId()); - resp.sendRedirect("/sys/success.jsp"); - }else { - resp.sendRedirect("/error.jsp"); - } - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } -} diff --git a/javaweb-filter/src/main/java/com/xiaokai/servlet/LogoutServlet.java b/javaweb-filter/src/main/java/com/xiaokai/servlet/LogoutServlet.java deleted file mode 100644 index 05b7ef4..0000000 --- a/javaweb-filter/src/main/java/com/xiaokai/servlet/LogoutServlet.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.xiaokai.servlet; - -import com.xiaokai.util.Constant; - -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; - -public class LogoutServlet extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - Object user_session = req.getSession().getAttribute(Constant.USER_SESSION); - if (user_session!=null){ - req.getSession().removeAttribute(Constant.USER_SESSION); - resp.sendRedirect("/Login.jsp"); - }else { - resp.sendRedirect("/Login.jsp"); - } - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } -} diff --git a/javaweb-filter/src/main/java/com/xiaokai/servlet/ShowServlet.java b/javaweb-filter/src/main/java/com/xiaokai/servlet/ShowServlet.java deleted file mode 100644 index b7d1204..0000000 --- a/javaweb-filter/src/main/java/com/xiaokai/servlet/ShowServlet.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.xiaokai.servlet; - -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; - -public class ShowServlet extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - resp.getWriter().write("你好世界"); - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } -} diff --git a/javaweb-filter/src/main/java/com/xiaokai/util/Constant.java b/javaweb-filter/src/main/java/com/xiaokai/util/Constant.java deleted file mode 100644 index 2c5c140..0000000 --- a/javaweb-filter/src/main/java/com/xiaokai/util/Constant.java +++ /dev/null @@ -1,5 +0,0 @@ -package com.xiaokai.util; - -public class Constant { - public static String USER_SESSION = "USER_SESSION"; -} diff --git a/javaweb-filter/target/classes/com/xiaokai/filter/CharacterEncodingFilter.class b/javaweb-filter/target/classes/com/xiaokai/filter/CharacterEncodingFilter.class deleted file mode 100644 index a5fae03..0000000 Binary files a/javaweb-filter/target/classes/com/xiaokai/filter/CharacterEncodingFilter.class and /dev/null differ diff --git a/javaweb-filter/target/classes/com/xiaokai/filter/SysFilter.class b/javaweb-filter/target/classes/com/xiaokai/filter/SysFilter.class deleted file mode 100644 index b9a8538..0000000 Binary files a/javaweb-filter/target/classes/com/xiaokai/filter/SysFilter.class and /dev/null differ diff --git a/javaweb-filter/target/classes/com/xiaokai/listener/OnlineCountListener.class b/javaweb-filter/target/classes/com/xiaokai/listener/OnlineCountListener.class deleted file mode 100644 index d2df677..0000000 Binary files a/javaweb-filter/target/classes/com/xiaokai/listener/OnlineCountListener.class and /dev/null differ diff --git a/javaweb-filter/target/classes/com/xiaokai/listener/TestPanel$1.class b/javaweb-filter/target/classes/com/xiaokai/listener/TestPanel$1.class deleted file mode 100644 index 38b2cae..0000000 Binary files a/javaweb-filter/target/classes/com/xiaokai/listener/TestPanel$1.class and /dev/null differ diff --git a/javaweb-filter/target/classes/com/xiaokai/listener/TestPanel.class b/javaweb-filter/target/classes/com/xiaokai/listener/TestPanel.class deleted file mode 100644 index 4bd7cab..0000000 Binary files a/javaweb-filter/target/classes/com/xiaokai/listener/TestPanel.class and /dev/null differ diff --git a/javaweb-filter/target/classes/com/xiaokai/servlet/LoginServlet.class b/javaweb-filter/target/classes/com/xiaokai/servlet/LoginServlet.class deleted file mode 100644 index 6b22b65..0000000 Binary files a/javaweb-filter/target/classes/com/xiaokai/servlet/LoginServlet.class and /dev/null differ diff --git a/javaweb-filter/target/classes/com/xiaokai/servlet/LogoutServlet.class b/javaweb-filter/target/classes/com/xiaokai/servlet/LogoutServlet.class deleted file mode 100644 index 79bf26b..0000000 Binary files a/javaweb-filter/target/classes/com/xiaokai/servlet/LogoutServlet.class and /dev/null differ diff --git a/javaweb-filter/target/classes/com/xiaokai/servlet/ShowServlet.class b/javaweb-filter/target/classes/com/xiaokai/servlet/ShowServlet.class deleted file mode 100644 index 91b5fcd..0000000 Binary files a/javaweb-filter/target/classes/com/xiaokai/servlet/ShowServlet.class and /dev/null differ diff --git a/javaweb-filter/target/classes/com/xiaokai/util/Constant.class b/javaweb-filter/target/classes/com/xiaokai/util/Constant.class deleted file mode 100644 index 746f2d1..0000000 Binary files a/javaweb-filter/target/classes/com/xiaokai/util/Constant.class and /dev/null differ diff --git a/javaweb-filter/web/Login.jsp b/javaweb-filter/web/Login.jsp deleted file mode 100644 index dc6f771..0000000 --- a/javaweb-filter/web/Login.jsp +++ /dev/null @@ -1,20 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/7 - Time: 10:47 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - 登录 - - -

登录

-
- - -
- - diff --git a/javaweb-filter/web/WEB-INF/web.xml b/javaweb-filter/web/WEB-INF/web.xml deleted file mode 100644 index 1073178..0000000 --- a/javaweb-filter/web/WEB-INF/web.xml +++ /dev/null @@ -1,57 +0,0 @@ - - - - CharacterEncodingFilter - com.xiaokai.filter.CharacterEncodingFilter - - - CharacterEncodingFilter - /servlet/* - - - SysFilter - com.xiaokai.filter.SysFilter - - - SysFilter - /sys/* - - - - ShowServlet - com.xiaokai.servlet.ShowServlet - - - ShowServlet - /servlet/show - - - ShowServlet - /show - - - - LoginServlet - com.xiaokai.servlet.LoginServlet - - - LoginServlet - /servlet/login - - - - LogoutServlet - com.xiaokai.servlet.LogoutServlet - - - LogoutServlet - /servlet/logout - - - - com.xiaokai.listener.OnlineCountListener - - \ No newline at end of file diff --git a/javaweb-filter/web/error.jsp b/javaweb-filter/web/error.jsp deleted file mode 100644 index a6ed2b1..0000000 --- a/javaweb-filter/web/error.jsp +++ /dev/null @@ -1,17 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/7 - Time: 10:57 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - error - - -

ERROR

-返回登录页面 - - diff --git a/javaweb-filter/web/filtertest.jsp b/javaweb-filter/web/filtertest.jsp deleted file mode 100644 index 38ec10c..0000000 --- a/javaweb-filter/web/filtertest.jsp +++ /dev/null @@ -1,16 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/6 - Time: 21:20 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - -

你好,世界!

- - diff --git a/javaweb-filter/web/index.jsp b/javaweb-filter/web/index.jsp deleted file mode 100644 index d8f4616..0000000 --- a/javaweb-filter/web/index.jsp +++ /dev/null @@ -1,16 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/5 - Time: 22:57 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - $Title$ - - -

总共有 <%=this.getServletConfig().getServletContext().getAttribute("onlinecount")%> 个session

- - diff --git a/javaweb-filter/web/sys/success.jsp b/javaweb-filter/web/sys/success.jsp deleted file mode 100644 index 02e6619..0000000 --- a/javaweb-filter/web/sys/success.jsp +++ /dev/null @@ -1,25 +0,0 @@ -<%@ page import="com.xiaokai.util.Constant" %><%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/7 - Time: 10:46 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - 主页 - - -<%--<%--%> -<%-- Object userSession = request.getSession().getAttribute(Constant.USER_SESSION);--%> -<%-- if (userSession==null){--%> -<%-- response.sendRedirect("/Login.jsp");--%> -<%-- }--%> -<%--%>--%> -

success

-

- 注销 -

- - diff --git a/javaweb-jsp/.idea/.gitignore b/javaweb-jsp/.idea/.gitignore deleted file mode 100644 index 73f69e0..0000000 --- a/javaweb-jsp/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/javaweb-jsp/.idea/compiler.xml b/javaweb-jsp/.idea/compiler.xml deleted file mode 100644 index a00ff2e..0000000 --- a/javaweb-jsp/.idea/compiler.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-jsp/.idea/dataSources.xml b/javaweb-jsp/.idea/dataSources.xml deleted file mode 100644 index 3bd6a93..0000000 --- a/javaweb-jsp/.idea/dataSources.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - mysql.8 - true - com.mysql.cj.jdbc.Driver - jdbc:mysql://localhost:3306 - $ProjectFileDir$ - - - \ No newline at end of file diff --git a/javaweb-jsp/.idea/encodings.xml b/javaweb-jsp/.idea/encodings.xml deleted file mode 100644 index aa00ffa..0000000 --- a/javaweb-jsp/.idea/encodings.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/javaweb-jsp/.idea/jarRepositories.xml b/javaweb-jsp/.idea/jarRepositories.xml deleted file mode 100644 index 980588c..0000000 --- a/javaweb-jsp/.idea/jarRepositories.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-jsp/.idea/misc.xml b/javaweb-jsp/.idea/misc.xml deleted file mode 100644 index 79a352f..0000000 --- a/javaweb-jsp/.idea/misc.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-jsp/.idea/vcs.xml b/javaweb-jsp/.idea/vcs.xml deleted file mode 100644 index 6c0b863..0000000 --- a/javaweb-jsp/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/javaweb-jsp/pom.xml b/javaweb-jsp/pom.xml deleted file mode 100644 index c82290f..0000000 --- a/javaweb-jsp/pom.xml +++ /dev/null @@ -1,74 +0,0 @@ - - - - 4.0.0 - - com.xiaokai - javaweb-jsp - 1.0-SNAPSHOT - war - - javaweb-jsp Maven Webapp - - http://www.example.com - - - UTF-8 - 1.8 - 1.8 - - - - - - javax.servlet - javax.servlet-api - 4.0.1 - - - - javax.servlet.jsp - javax.servlet.jsp-api - 2.3.3 - - - - - javax.servlet.jsp.jstl - jstl-api - 1.2 - - - - - taglibs - standard - 1.1.2 - - - - - - - - - - src/main/resources - - **/*.properties - **/*.xml - - false - - - src/main/java - - **/*.properties - **/*.xml - - false - - - - diff --git a/javaweb-jsp/src/main/webapp/Test.jsp b/javaweb-jsp/src/main/webapp/Test.jsp deleted file mode 100644 index 503d373..0000000 --- a/javaweb-jsp/src/main/webapp/Test.jsp +++ /dev/null @@ -1,53 +0,0 @@ -<%@ page import="java.util.Date" %><%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/3 - Time: 22:18 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - - Title - - -<%=new Date()%> -
-<%--jsp脚本片段--%> -<% - int sum = 0; - for (int i = 0; i <= 100; i++) { - sum += i; - } - out.write("

Sum="+sum+"

"); -%> -
-<%--脚本片段的再实现--%> -<% - int x = 10; - out.print(x); -%> -

这是一个JSP文档

-<% - int y = 2; - out.print(y); -%> -
-<%--在代码中嵌入html元素--%> -<%for (int i = 0; i < 10; i++) {%> -

HelloWorld <%=i%>

-<%}%> - -<%--jsp声明--%> -<%! - static { - System.out.println("Loading Servlet!"); - } - private int globalVar = 0; - public void test(){ - System.out.println("进入了方法!"); - } -%> - - diff --git a/javaweb-jsp/src/main/webapp/WEB-INF/web.xml b/javaweb-jsp/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 2083379..0000000 --- a/javaweb-jsp/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - 404 - /error/error404.jsp - - - 500 - /error/error500.jsp - - \ No newline at end of file diff --git a/javaweb-jsp/src/main/webapp/common/footer.jsp b/javaweb-jsp/src/main/webapp/common/footer.jsp deleted file mode 100644 index 54562fd..0000000 --- a/javaweb-jsp/src/main/webapp/common/footer.jsp +++ /dev/null @@ -1,16 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/4 - Time: 0:42 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Footer - - -

我是Footer

- - diff --git a/javaweb-jsp/src/main/webapp/common/header.jsp b/javaweb-jsp/src/main/webapp/common/header.jsp deleted file mode 100644 index 68e6e6d..0000000 --- a/javaweb-jsp/src/main/webapp/common/header.jsp +++ /dev/null @@ -1,16 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/4 - Time: 0:42 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Header - - -

我是Header

- - diff --git a/javaweb-jsp/src/main/webapp/corefor.jsp b/javaweb-jsp/src/main/webapp/corefor.jsp deleted file mode 100644 index dc5aef1..0000000 --- a/javaweb-jsp/src/main/webapp/corefor.jsp +++ /dev/null @@ -1,38 +0,0 @@ -<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> -<%@ page import="java.util.ArrayList" %><%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/5 - Time: 19:07 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - -<% - ArrayList people = new ArrayList(); - people.add(0,"张三"); - people.add(1,"李四"); - people.add(2,"王五"); - people.add(3,"赵六"); - people.add(4,"田七"); - request.setAttribute("list",people); -%> - -<%-- -var 每一次遍历出来的变量 -items 要遍历的对象 -begin 哪里开始 -end 到哪里 -step 步长 ---%> - - -
-
- - - diff --git a/javaweb-jsp/src/main/webapp/coreif.jsp b/javaweb-jsp/src/main/webapp/coreif.jsp deleted file mode 100644 index 553b6ba..0000000 --- a/javaweb-jsp/src/main/webapp/coreif.jsp +++ /dev/null @@ -1,22 +0,0 @@ - -<%@ page contentType="text/html;charset=UTF-8" language="java" %> -<%--引入对应的taglib--%> -<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> - - - Title - - -
- - -
- - - - - -<%--自闭合标签--%> - - - diff --git a/javaweb-jsp/src/main/webapp/corewhen.jsp b/javaweb-jsp/src/main/webapp/corewhen.jsp deleted file mode 100644 index 32893f7..0000000 --- a/javaweb-jsp/src/main/webapp/corewhen.jsp +++ /dev/null @@ -1,35 +0,0 @@ -<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/5 - Time: 18:59 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - - - - - - 成绩优秀 - - - 成绩良好 - - - 成绩一般 - - - 成绩及格 - - - 继续努力 - - - - diff --git a/javaweb-jsp/src/main/webapp/error/error404.jsp b/javaweb-jsp/src/main/webapp/error/error404.jsp deleted file mode 100644 index 5b736d4..0000000 --- a/javaweb-jsp/src/main/webapp/error/error404.jsp +++ /dev/null @@ -1,19 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/4 - Time: 0:14 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> -<%@page isErrorPage="true" %> - - - 404 - - - - 404 - - - diff --git a/javaweb-jsp/src/main/webapp/error/error500.jsp b/javaweb-jsp/src/main/webapp/error/error500.jsp deleted file mode 100644 index d1b9492..0000000 --- a/javaweb-jsp/src/main/webapp/error/error500.jsp +++ /dev/null @@ -1,18 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/4 - Time: 0:20 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - 500 - - - - 500 - - - diff --git a/javaweb-jsp/src/main/webapp/images/404.png b/javaweb-jsp/src/main/webapp/images/404.png deleted file mode 100644 index 62c8b9d..0000000 Binary files a/javaweb-jsp/src/main/webapp/images/404.png and /dev/null differ diff --git a/javaweb-jsp/src/main/webapp/images/500.png b/javaweb-jsp/src/main/webapp/images/500.png deleted file mode 100644 index 5a250b5..0000000 Binary files a/javaweb-jsp/src/main/webapp/images/500.png and /dev/null differ diff --git a/javaweb-jsp/src/main/webapp/index.jsp b/javaweb-jsp/src/main/webapp/index.jsp deleted file mode 100644 index 355909d..0000000 --- a/javaweb-jsp/src/main/webapp/index.jsp +++ /dev/null @@ -1,16 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/3 - Time: 22:16 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - - - - diff --git a/javaweb-jsp/src/main/webapp/jsp2.jsp b/javaweb-jsp/src/main/webapp/jsp2.jsp deleted file mode 100644 index 9bfca7b..0000000 --- a/javaweb-jsp/src/main/webapp/jsp2.jsp +++ /dev/null @@ -1,19 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/4 - Time: 0:25 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> -<%@page errorPage="error/error500.jsp" %> - - - error测试 - - -<% - int x = 1/0; -%> - - diff --git a/javaweb-jsp/src/main/webapp/jsp3.jsp b/javaweb-jsp/src/main/webapp/jsp3.jsp deleted file mode 100644 index 0a0ed83..0000000 --- a/javaweb-jsp/src/main/webapp/jsp3.jsp +++ /dev/null @@ -1,29 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/4 - Time: 0:41 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - - 拼接JSP指令 - - - -<%--<%@include file="common/header.jsp"%>--%> -<%--

网页主体

--%> -<%--<%@include file="common/footer.jsp"%>--%> -<%--
--%> - -<%--jsp标签 - jsp:include:拼接页面,但本质上还是三个,避免对象冲突--%> - -

网页主体

- -
- - - diff --git a/javaweb-jsp/src/main/webapp/jsptag.jsp b/javaweb-jsp/src/main/webapp/jsptag.jsp deleted file mode 100644 index c17206c..0000000 --- a/javaweb-jsp/src/main/webapp/jsptag.jsp +++ /dev/null @@ -1,19 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/5 - Time: 14:42 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - - - - -z - - diff --git a/javaweb-jsp/src/main/webapp/jsptag2.jsp b/javaweb-jsp/src/main/webapp/jsptag2.jsp deleted file mode 100644 index 4cd06cd..0000000 --- a/javaweb-jsp/src/main/webapp/jsptag2.jsp +++ /dev/null @@ -1,18 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/5 - Time: 17:43 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - -

jsp2

-name=<%=request.getParameter("name")%> -age=<%=request.getParameter("age")%> - - diff --git a/javaweb-jsp/src/main/webapp/pageContextDemo01.jsp b/javaweb-jsp/src/main/webapp/pageContextDemo01.jsp deleted file mode 100644 index eed8df0..0000000 --- a/javaweb-jsp/src/main/webapp/pageContextDemo01.jsp +++ /dev/null @@ -1,33 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/4 - Time: 18:34 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - -<% - pageContext.setAttribute("name1","小凯1"); - request.setAttribute("name2","小凯2"); - session.setAttribute("name3","小凯3"); - application.setAttribute("name4","小凯4"); -%> -<% - String name1 = (String) pageContext.findAttribute("name1"); - String name2 = (String) pageContext.findAttribute("name2"); - String name3 = (String) pageContext.findAttribute("name3"); - String name4 = (String) pageContext.findAttribute("name4"); - String name5 = (String) pageContext.findAttribute("name5"); -%> -<%=name1%> -<%=name2%> -<%=name3%> -<%=name4%> -<%=name5%> - - diff --git a/javaweb-jsp/src/main/webapp/pageContextDemo02.jsp b/javaweb-jsp/src/main/webapp/pageContextDemo02.jsp deleted file mode 100644 index c7edb08..0000000 --- a/javaweb-jsp/src/main/webapp/pageContextDemo02.jsp +++ /dev/null @@ -1,27 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/4 - Time: 19:18 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - -<% - String name1 = (String) pageContext.findAttribute("name1"); - String name2 = (String) pageContext.findAttribute("name2"); - String name3 = (String) pageContext.findAttribute("name3"); - String name4 = (String) pageContext.findAttribute("name4"); - -%> -<%=name1%> -<%=name2%> -<%=name3%> -<%=name4%> - - - diff --git a/javaweb-jsp/src/main/webapp/pageContextDemo03.jsp b/javaweb-jsp/src/main/webapp/pageContextDemo03.jsp deleted file mode 100644 index 097b9e7..0000000 --- a/javaweb-jsp/src/main/webapp/pageContextDemo03.jsp +++ /dev/null @@ -1,19 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/4 - Time: 19:23 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - -<% - pageContext.forward("/Test.jsp"); -// request.getRequestDispatcher("/Test.jsp").forward(request,response); -%> - - diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT.war b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT.war deleted file mode 100644 index 8b85b2c..0000000 Binary files a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT.war and /dev/null differ diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/META-INF/MANIFEST.MF b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/META-INF/MANIFEST.MF deleted file mode 100644 index 1d10c5b..0000000 --- a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/META-INF/MANIFEST.MF +++ /dev/null @@ -1,5 +0,0 @@ -Manifest-Version: 1.0 -Created-By: IntelliJ IDEA -Built-By: guanxiaokai -Build-Jdk: version 1.8.0_281 - diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/Test.jsp b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/Test.jsp deleted file mode 100644 index 503d373..0000000 --- a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/Test.jsp +++ /dev/null @@ -1,53 +0,0 @@ -<%@ page import="java.util.Date" %><%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/3 - Time: 22:18 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - - Title - - -<%=new Date()%> -
-<%--jsp脚本片段--%> -<% - int sum = 0; - for (int i = 0; i <= 100; i++) { - sum += i; - } - out.write("

Sum="+sum+"

"); -%> -
-<%--脚本片段的再实现--%> -<% - int x = 10; - out.print(x); -%> -

这是一个JSP文档

-<% - int y = 2; - out.print(y); -%> -
-<%--在代码中嵌入html元素--%> -<%for (int i = 0; i < 10; i++) {%> -

HelloWorld <%=i%>

-<%}%> - -<%--jsp声明--%> -<%! - static { - System.out.println("Loading Servlet!"); - } - private int globalVar = 0; - public void test(){ - System.out.println("进入了方法!"); - } -%> - - diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar deleted file mode 100644 index 844ec7f..0000000 Binary files a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar and /dev/null differ diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar deleted file mode 100644 index 8b3333a..0000000 Binary files a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar and /dev/null differ diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/jsp-api-2.1.jar b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/jsp-api-2.1.jar deleted file mode 100644 index c0195af..0000000 Binary files a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/jsp-api-2.1.jar and /dev/null differ diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/jstl-1.2.jar b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/jstl-1.2.jar deleted file mode 100644 index c07eb6c..0000000 Binary files a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/jstl-1.2.jar and /dev/null differ diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/jstl-api-1.2.jar b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/jstl-api-1.2.jar deleted file mode 100644 index 30d4d92..0000000 Binary files a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/jstl-api-1.2.jar and /dev/null differ diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/servlet-api-2.5.jar b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/servlet-api-2.5.jar deleted file mode 100644 index fb52493..0000000 Binary files a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/servlet-api-2.5.jar and /dev/null differ diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/standard-1.1.2.jar b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/standard-1.1.2.jar deleted file mode 100644 index bc528ac..0000000 Binary files a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/lib/standard-1.1.2.jar and /dev/null differ diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/web.xml b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/web.xml deleted file mode 100644 index 2083379..0000000 --- a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/WEB-INF/web.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - 404 - /error/error404.jsp - - - 500 - /error/error500.jsp - - \ No newline at end of file diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/common/footer.jsp b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/common/footer.jsp deleted file mode 100644 index 54562fd..0000000 --- a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/common/footer.jsp +++ /dev/null @@ -1,16 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/4 - Time: 0:42 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Footer - - -

我是Footer

- - diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/common/header.jsp b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/common/header.jsp deleted file mode 100644 index 68e6e6d..0000000 --- a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/common/header.jsp +++ /dev/null @@ -1,16 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/4 - Time: 0:42 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Header - - -

我是Header

- - diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/corefor.jsp b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/corefor.jsp deleted file mode 100644 index dc5aef1..0000000 --- a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/corefor.jsp +++ /dev/null @@ -1,38 +0,0 @@ -<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> -<%@ page import="java.util.ArrayList" %><%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/5 - Time: 19:07 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - -<% - ArrayList people = new ArrayList(); - people.add(0,"张三"); - people.add(1,"李四"); - people.add(2,"王五"); - people.add(3,"赵六"); - people.add(4,"田七"); - request.setAttribute("list",people); -%> - -<%-- -var 每一次遍历出来的变量 -items 要遍历的对象 -begin 哪里开始 -end 到哪里 -step 步长 ---%> - - -
-
- - - diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/coreif.jsp b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/coreif.jsp deleted file mode 100644 index 553b6ba..0000000 --- a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/coreif.jsp +++ /dev/null @@ -1,22 +0,0 @@ - -<%@ page contentType="text/html;charset=UTF-8" language="java" %> -<%--引入对应的taglib--%> -<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> - - - Title - - -
- - -
- - - - - -<%--自闭合标签--%> - - - diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/corewhen.jsp b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/corewhen.jsp deleted file mode 100644 index 32893f7..0000000 --- a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/corewhen.jsp +++ /dev/null @@ -1,35 +0,0 @@ -<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/5 - Time: 18:59 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - - - - - - 成绩优秀 - - - 成绩良好 - - - 成绩一般 - - - 成绩及格 - - - 继续努力 - - - - diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/error/error404.jsp b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/error/error404.jsp deleted file mode 100644 index 5b736d4..0000000 --- a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/error/error404.jsp +++ /dev/null @@ -1,19 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/4 - Time: 0:14 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> -<%@page isErrorPage="true" %> - - - 404 - - - - 404 - - - diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/error/error500.jsp b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/error/error500.jsp deleted file mode 100644 index d1b9492..0000000 --- a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/error/error500.jsp +++ /dev/null @@ -1,18 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/4 - Time: 0:20 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - 500 - - - - 500 - - - diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/images/404.png b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/images/404.png deleted file mode 100644 index 62c8b9d..0000000 Binary files a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/images/404.png and /dev/null differ diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/images/500.png b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/images/500.png deleted file mode 100644 index 5a250b5..0000000 Binary files a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/images/500.png and /dev/null differ diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/index.jsp b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/index.jsp deleted file mode 100644 index 355909d..0000000 --- a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/index.jsp +++ /dev/null @@ -1,16 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/3 - Time: 22:16 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - - - - diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/jsp2.jsp b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/jsp2.jsp deleted file mode 100644 index 9bfca7b..0000000 --- a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/jsp2.jsp +++ /dev/null @@ -1,19 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/4 - Time: 0:25 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> -<%@page errorPage="error/error500.jsp" %> - - - error测试 - - -<% - int x = 1/0; -%> - - diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/jsp3.jsp b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/jsp3.jsp deleted file mode 100644 index 0a0ed83..0000000 --- a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/jsp3.jsp +++ /dev/null @@ -1,29 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/4 - Time: 0:41 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - - 拼接JSP指令 - - - -<%--<%@include file="common/header.jsp"%>--%> -<%--

网页主体

--%> -<%--<%@include file="common/footer.jsp"%>--%> -<%--
--%> - -<%--jsp标签 - jsp:include:拼接页面,但本质上还是三个,避免对象冲突--%> - -

网页主体

- -
- - - diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/jsptag.jsp b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/jsptag.jsp deleted file mode 100644 index c17206c..0000000 --- a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/jsptag.jsp +++ /dev/null @@ -1,19 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/5 - Time: 14:42 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - - - - -z - - diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/jsptag2.jsp b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/jsptag2.jsp deleted file mode 100644 index 4cd06cd..0000000 --- a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/jsptag2.jsp +++ /dev/null @@ -1,18 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/5 - Time: 17:43 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - -

jsp2

-name=<%=request.getParameter("name")%> -age=<%=request.getParameter("age")%> - - diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/pageContextDemo01.jsp b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/pageContextDemo01.jsp deleted file mode 100644 index eed8df0..0000000 --- a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/pageContextDemo01.jsp +++ /dev/null @@ -1,33 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/4 - Time: 18:34 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - -<% - pageContext.setAttribute("name1","小凯1"); - request.setAttribute("name2","小凯2"); - session.setAttribute("name3","小凯3"); - application.setAttribute("name4","小凯4"); -%> -<% - String name1 = (String) pageContext.findAttribute("name1"); - String name2 = (String) pageContext.findAttribute("name2"); - String name3 = (String) pageContext.findAttribute("name3"); - String name4 = (String) pageContext.findAttribute("name4"); - String name5 = (String) pageContext.findAttribute("name5"); -%> -<%=name1%> -<%=name2%> -<%=name3%> -<%=name4%> -<%=name5%> - - diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/pageContextDemo02.jsp b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/pageContextDemo02.jsp deleted file mode 100644 index c7edb08..0000000 --- a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/pageContextDemo02.jsp +++ /dev/null @@ -1,27 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/4 - Time: 19:18 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - -<% - String name1 = (String) pageContext.findAttribute("name1"); - String name2 = (String) pageContext.findAttribute("name2"); - String name3 = (String) pageContext.findAttribute("name3"); - String name4 = (String) pageContext.findAttribute("name4"); - -%> -<%=name1%> -<%=name2%> -<%=name3%> -<%=name4%> - - - diff --git a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/pageContextDemo03.jsp b/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/pageContextDemo03.jsp deleted file mode 100644 index 097b9e7..0000000 --- a/javaweb-jsp/target/javaweb-jsp-1.0-SNAPSHOT/pageContextDemo03.jsp +++ /dev/null @@ -1,19 +0,0 @@ -<%-- - Created by IntelliJ IDEA. - User: guanxiaokai - Date: 2021/7/4 - Time: 19:23 - To change this template use File | Settings | File Templates. ---%> -<%@ page contentType="text/html;charset=UTF-8" language="java" %> - - - Title - - -<% - pageContext.forward("/Test.jsp"); -// request.getRequestDispatcher("/Test.jsp").forward(request,response); -%> - - diff --git "a/javaweb-jsp/\345\211\252\345\210\207\346\235\277.md" "b/javaweb-jsp/\345\211\252\345\210\207\346\235\277.md" deleted file mode 100644 index 1401aa3..0000000 --- "a/javaweb-jsp/\345\211\252\345\210\207\346\235\277.md" +++ /dev/null @@ -1,68 +0,0 @@ -```html - - - - - -``` - -```xml - - - - - src/main/resources - - **/*.properties - **/*.xml - - false - - - src/main/java - - **/*.properties - **/*.xml - - false - - - -``` -```xml - - - - javax.servlet - javax.servlet-api - 4.0.1 - - - - javax.servlet.jsp - javax.servlet.jsp-api - 2.3.3 - - - - - javax.servlet.jsp.jstl - jstl-api - 1.2 - - - - - taglibs - standard - 1.1.2 - - - - -``` \ No newline at end of file diff --git a/javaweb-session-cookie/.idea/.gitignore b/javaweb-session-cookie/.idea/.gitignore deleted file mode 100644 index 73f69e0..0000000 --- a/javaweb-session-cookie/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/javaweb-session-cookie/.idea/compiler.xml b/javaweb-session-cookie/.idea/compiler.xml deleted file mode 100644 index ae201be..0000000 --- a/javaweb-session-cookie/.idea/compiler.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-session-cookie/.idea/jarRepositories.xml b/javaweb-session-cookie/.idea/jarRepositories.xml deleted file mode 100644 index 980588c..0000000 --- a/javaweb-session-cookie/.idea/jarRepositories.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-session-cookie/.idea/misc.xml b/javaweb-session-cookie/.idea/misc.xml deleted file mode 100644 index 79a352f..0000000 --- a/javaweb-session-cookie/.idea/misc.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/javaweb-session-cookie/pom.xml b/javaweb-session-cookie/pom.xml deleted file mode 100644 index 97e0b47..0000000 --- a/javaweb-session-cookie/pom.xml +++ /dev/null @@ -1,56 +0,0 @@ - - - - 4.0.0 - - com.xiaokai - javaweb-session-cookie - 1.0-SNAPSHOT - war - - javaweb-session-cookie Maven Webapp - - http://www.example.com - - - UTF-8 - 1.8 - 1.8 - - - - - - - src/main/resources - - **/*.properties - **/*.xml - - false - - - src/main/java - - **/*.properties - **/*.xml - - false - - - - - - javax.servlet - javax.servlet-api - 4.0.1 - - - javax.servlet.jsp - javax.servlet.jsp-api - 2.3.3 - - - - diff --git a/javaweb-session-cookie/src/main/java/CookieDemo01.java b/javaweb-session-cookie/src/main/java/CookieDemo01.java deleted file mode 100644 index a095c93..0000000 --- a/javaweb-session-cookie/src/main/java/CookieDemo01.java +++ /dev/null @@ -1,45 +0,0 @@ -import javax.servlet.ServletException; -import javax.servlet.http.Cookie; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.io.PrintWriter; -import java.util.Date; - -public class CookieDemo01 extends HttpServlet { - - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - resp.setContentType("text/html"); - req.setCharacterEncoding("utf-8"); - resp.setCharacterEncoding("utf-8"); - - PrintWriter out = resp.getWriter(); - Cookie[] cookies = req.getCookies(); - if (cookies != null){ - out.write("上一次登录的时间是:"); - for (int i = 0; i < cookies.length; i++) { - Cookie cookie = cookies[i]; - if (cookie.getName().equals("LastLoginTime")){ - String value = cookie.getValue(); - long Date = Long.parseLong(value); - out.write(new Date(Date).toLocaleString()); - } - - } - }else { - out.write("这是第一次登录"); - } - //给服务器端一个响应Cookie - Cookie lastLoginTime = new Cookie("LastLoginTime", System.currentTimeMillis() + ""); - lastLoginTime.setMaxAge(24*60*60); - resp.addCookie(lastLoginTime); - - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } -} diff --git a/javaweb-session-cookie/src/main/java/Person.java b/javaweb-session-cookie/src/main/java/Person.java deleted file mode 100644 index 31b6824..0000000 --- a/javaweb-session-cookie/src/main/java/Person.java +++ /dev/null @@ -1,33 +0,0 @@ -public class Person { - private String name; - private int age; - - public Person(String name, int age) { - this.name = name; - this.age = age; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public int getAge() { - return age; - } - - public void setAge(int age) { - this.age = age; - } - - @Override - public String toString() { - return "Person{" + - "name='" + name + '\'' + - ", age=" + age + - '}'; - } -} diff --git a/javaweb-session-cookie/src/main/java/SessionDemo01.java b/javaweb-session-cookie/src/main/java/SessionDemo01.java deleted file mode 100644 index 6e8b03a..0000000 --- a/javaweb-session-cookie/src/main/java/SessionDemo01.java +++ /dev/null @@ -1,30 +0,0 @@ -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpSession; -import java.io.IOException; -import java.net.URLEncoder; - -public class SessionDemo01 extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - resp.setContentType("text/html"); - resp.setCharacterEncoding("utf-8"); - req.setCharacterEncoding("utf-8"); - - HttpSession session = req.getSession(); - session.setAttribute("name", URLEncoder.encode("小凯","utf-8")); - String sessionId = session.getId(); - if (session.isNew()){ - resp.getWriter().write("sessionID创建成功,id:"+sessionId); - }else { - resp.getWriter().write("sessionID已经存在,id:"+sessionId); - } - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } -} diff --git a/javaweb-session-cookie/src/main/java/SessionDemo02.java b/javaweb-session-cookie/src/main/java/SessionDemo02.java deleted file mode 100644 index 33e88e7..0000000 --- a/javaweb-session-cookie/src/main/java/SessionDemo02.java +++ /dev/null @@ -1,27 +0,0 @@ -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpSession; -import java.io.IOException; -import java.net.URLEncoder; - -public class SessionDemo02 extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - resp.setContentType("text/html"); - resp.setCharacterEncoding("utf-8"); - req.setCharacterEncoding("utf-8"); - - HttpSession session = req.getSession(); - session.setAttribute("name", new Person("xiaokai", 25)); - String sessionId = session.getId(); - Person person = (Person) session.getAttribute("name"); - System.out.println(person.toString()); - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } -} diff --git a/javaweb-session-cookie/src/main/java/SessionDemo03.java b/javaweb-session-cookie/src/main/java/SessionDemo03.java deleted file mode 100644 index e9af9fa..0000000 --- a/javaweb-session-cookie/src/main/java/SessionDemo03.java +++ /dev/null @@ -1,26 +0,0 @@ -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpSession; -import java.io.IOException; -import java.net.URLEncoder; - -public class SessionDemo03 extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - resp.setContentType("text/html"); - resp.setCharacterEncoding("utf-8"); - req.setCharacterEncoding("utf-8"); - - HttpSession session = req.getSession(); - session.removeAttribute("name"); - //手动注销session - session.invalidate(); - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } -} diff --git a/javaweb-session-cookie/src/main/webapp/WEB-INF/web.xml b/javaweb-session-cookie/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index f50dc6d..0000000 --- a/javaweb-session-cookie/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,47 +0,0 @@ - - - - - - 10 - - - cookie01 - CookieDemo01 - - - cookie01 - /c1 - - - session01 - SessionDemo01 - - - session01 - /s1 - - - - session02 - SessionDemo02 - - - session02 - /s2 - - - - session03 - SessionDemo03 - - - session03 - /s3 - - \ No newline at end of file diff --git a/javaweb-session-cookie/src/main/webapp/index.jsp b/javaweb-session-cookie/src/main/webapp/index.jsp deleted file mode 100644 index c38169b..0000000 --- a/javaweb-session-cookie/src/main/webapp/index.jsp +++ /dev/null @@ -1,5 +0,0 @@ - - -

Hello World!

- - diff --git a/javaweb-session-cookie/target/classes/CookieDemo01.class b/javaweb-session-cookie/target/classes/CookieDemo01.class deleted file mode 100644 index 8b325fc..0000000 Binary files a/javaweb-session-cookie/target/classes/CookieDemo01.class and /dev/null differ diff --git a/javaweb-session-cookie/target/classes/Person.class b/javaweb-session-cookie/target/classes/Person.class deleted file mode 100644 index 48d97ab..0000000 Binary files a/javaweb-session-cookie/target/classes/Person.class and /dev/null differ diff --git a/javaweb-session-cookie/target/classes/SessionDemo01.class b/javaweb-session-cookie/target/classes/SessionDemo01.class deleted file mode 100644 index 50972a1..0000000 Binary files a/javaweb-session-cookie/target/classes/SessionDemo01.class and /dev/null differ diff --git a/javaweb-session-cookie/target/classes/SessionDemo02.class b/javaweb-session-cookie/target/classes/SessionDemo02.class deleted file mode 100644 index 59179f8..0000000 Binary files a/javaweb-session-cookie/target/classes/SessionDemo02.class and /dev/null differ diff --git a/javaweb-session-cookie/target/classes/SessionDemo03.class b/javaweb-session-cookie/target/classes/SessionDemo03.class deleted file mode 100644 index 73637f3..0000000 Binary files a/javaweb-session-cookie/target/classes/SessionDemo03.class and /dev/null differ diff --git a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT.war b/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT.war deleted file mode 100644 index b28d92a..0000000 Binary files a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT.war and /dev/null differ diff --git a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/META-INF/MANIFEST.MF b/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/META-INF/MANIFEST.MF deleted file mode 100644 index 1d10c5b..0000000 --- a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/META-INF/MANIFEST.MF +++ /dev/null @@ -1,5 +0,0 @@ -Manifest-Version: 1.0 -Created-By: IntelliJ IDEA -Built-By: guanxiaokai -Build-Jdk: version 1.8.0_281 - diff --git a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/classes/CookieDemo01.class b/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/classes/CookieDemo01.class deleted file mode 100644 index 8b325fc..0000000 Binary files a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/classes/CookieDemo01.class and /dev/null differ diff --git a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/classes/Person.class b/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/classes/Person.class deleted file mode 100644 index 48d97ab..0000000 Binary files a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/classes/Person.class and /dev/null differ diff --git a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/classes/SessionDemo01.class b/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/classes/SessionDemo01.class deleted file mode 100644 index 50972a1..0000000 Binary files a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/classes/SessionDemo01.class and /dev/null differ diff --git a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/classes/SessionDemo02.class b/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/classes/SessionDemo02.class deleted file mode 100644 index 59179f8..0000000 Binary files a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/classes/SessionDemo02.class and /dev/null differ diff --git a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/classes/SessionDemo03.class b/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/classes/SessionDemo03.class deleted file mode 100644 index 73637f3..0000000 Binary files a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/classes/SessionDemo03.class and /dev/null differ diff --git a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar b/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar deleted file mode 100644 index 844ec7f..0000000 Binary files a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar and /dev/null differ diff --git a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar b/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar deleted file mode 100644 index 8b3333a..0000000 Binary files a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar and /dev/null differ diff --git a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/web.xml b/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/web.xml deleted file mode 100644 index f50dc6d..0000000 --- a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/WEB-INF/web.xml +++ /dev/null @@ -1,47 +0,0 @@ - - - - - - 10 - - - cookie01 - CookieDemo01 - - - cookie01 - /c1 - - - session01 - SessionDemo01 - - - session01 - /s1 - - - - session02 - SessionDemo02 - - - session02 - /s2 - - - - session03 - SessionDemo03 - - - session03 - /s3 - - \ No newline at end of file diff --git a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/index.jsp b/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/index.jsp deleted file mode 100644 index c38169b..0000000 --- a/javaweb-session-cookie/target/javaweb-session-cookie-1.0-SNAPSHOT/index.jsp +++ /dev/null @@ -1,5 +0,0 @@ - - -

Hello World!

- - diff --git "a/javaweb-session-cookie/\345\211\252\345\210\207\346\235\277.md" "b/javaweb-session-cookie/\345\211\252\345\210\207\346\235\277.md" deleted file mode 100644 index 91de8b2..0000000 --- "a/javaweb-session-cookie/\345\211\252\345\210\207\346\235\277.md" +++ /dev/null @@ -1,51 +0,0 @@ -```html - - - - - -``` - -```xml - - - - - src/main/resources - - **/*.properties - **/*.xml - - false - - - src/main/java - - **/*.properties - **/*.xml - - false - - - -``` -```xml - - - javax.servlet - javax.servlet-api - 4.0.1 - - - javax.servlet.jsp - javax.servlet.jsp-api - 2.3.3 - - - -``` \ No newline at end of file diff --git a/jdbc/.idea/.gitignore b/jdbc/.idea/.gitignore deleted file mode 100644 index 0e0e578..0000000 --- a/jdbc/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/../../../../:\code\jdbc\.idea/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/jdbc/.idea/dataSources.xml b/jdbc/.idea/dataSources.xml deleted file mode 100644 index 1c9a3ba..0000000 --- a/jdbc/.idea/dataSources.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - mysql - true - com.mysql.jdbc.Driver - jdbc:mysql://localhost:3306 - $ProjectFileDir$ - - - \ No newline at end of file diff --git a/jdbc/.idea/dataSources/62df63ae-0c57-44f4-8838-30b8a600bb6a.xml b/jdbc/.idea/dataSources/62df63ae-0c57-44f4-8838-30b8a600bb6a.xml deleted file mode 100644 index 670d651..0000000 --- a/jdbc/.idea/dataSources/62df63ae-0c57-44f4-8838-30b8a600bb6a.xml +++ /dev/null @@ -1,807 +0,0 @@ - - - - - 5.7.19 - InnoDB - InnoDB - lower/lower - - - 1 - utf8_general_ci - - - utf8_general_ci - - - latin1_swedish_ci - - - utf8_general_ci - - - utf8_general_ci - - - utf8_general_ci - - - utf8_general_ci - - - armscii8 - - - armscii8 - 1 - - - ascii - - - ascii - 1 - - - big5 - - - big5 - 1 - - - binary - 1 - - - cp1250 - - - cp1250 - - - cp1250 - - - cp1250 - 1 - - - cp1250 - - - cp1251 - - - cp1251 - - - cp1251 - 1 - - - cp1251 - - - cp1251 - - - cp1256 - - - cp1256 - 1 - - - cp1257 - - - cp1257 - 1 - - - cp1257 - - - cp850 - - - cp850 - 1 - - - cp852 - - - cp852 - 1 - - - cp866 - - - cp866 - 1 - - - cp932 - - - cp932 - 1 - - - dec8 - - - dec8 - 1 - - - eucjpms - - - eucjpms - 1 - - - euckr - - - euckr - 1 - - - gb18030 - - - gb18030 - 1 - - - gb18030 - - - gb2312 - - - gb2312 - 1 - - - gbk - - - gbk - 1 - - - geostd8 - - - geostd8 - 1 - - - greek - - - greek - 1 - - - hebrew - - - hebrew - 1 - - - hp8 - - - hp8 - 1 - - - keybcs2 - - - keybcs2 - 1 - - - koi8r - - - koi8r - 1 - - - koi8u - - - koi8u - 1 - - - latin1 - - - latin1 - - - latin1 - - - latin1 - - - latin1 - - - latin1 - - - latin1 - - - latin1 - 1 - - - latin2 - - - latin2 - - - latin2 - - - latin2 - 1 - - - latin2 - - - latin5 - - - latin5 - 1 - - - latin7 - - - latin7 - - - latin7 - 1 - - - latin7 - - - macce - - - macce - 1 - - - macroman - - - macroman - 1 - - - sjis - - - sjis - 1 - - - swe7 - - - swe7 - 1 - - - tis620 - - - tis620 - 1 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - 1 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ucs2 - - - ujis - - - ujis - 1 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - 1 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16 - - - utf16le - - - utf16le - 1 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - 1 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf32 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - 1 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - 1 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - utf8mb4 - - - localhost - SUPER -SELECT|performance_schema -SELECT|mysql.user - - - - localhost - TRIGGER|sys -SELECT|sys.sys_config - - - - localhost - ALL PRIVILEGES! - - - -
- - 1 - int(4)|0s - 1 - null - - - 2 - varchar(20)|0s - 1 - - - 3 - decimal(9,2 digit)|0s - 1 - - - 1 - id - 1 - - - 1 - int(11)|0s - 1 - - - 2 - varchar(40)|0s - - - 3 - varchar(40)|0s - - - 4 - varchar(60)|0s - - - 5 - date|0s - - - 1 - id - 1 - - - \ No newline at end of file diff --git a/jdbc/.idea/dataSources/62df63ae-0c57-44f4-8838-30b8a600bb6a/storage_v2/_src_/schema/information_schema.FNRwLQ.meta b/jdbc/.idea/dataSources/62df63ae-0c57-44f4-8838-30b8a600bb6a/storage_v2/_src_/schema/information_schema.FNRwLQ.meta deleted file mode 100644 index 1ff3db2..0000000 --- a/jdbc/.idea/dataSources/62df63ae-0c57-44f4-8838-30b8a600bb6a/storage_v2/_src_/schema/information_schema.FNRwLQ.meta +++ /dev/null @@ -1,2 +0,0 @@ -#n:information_schema -! [null, 0, null, null, -2147483648, -2147483648] diff --git a/jdbc/.idea/libraries/lib.xml b/jdbc/.idea/libraries/lib.xml deleted file mode 100644 index fa8838a..0000000 --- a/jdbc/.idea/libraries/lib.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/jdbc/.idea/misc.xml b/jdbc/.idea/misc.xml deleted file mode 100644 index 0548357..0000000 --- a/jdbc/.idea/misc.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/jdbc/.idea/modules.xml b/jdbc/.idea/modules.xml deleted file mode 100644 index c03f2fd..0000000 --- a/jdbc/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/jdbc/.idea/uiDesigner.xml b/jdbc/.idea/uiDesigner.xml deleted file mode 100644 index e96534f..0000000 --- a/jdbc/.idea/uiDesigner.xml +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/jdbc/jdbc.iml b/jdbc/jdbc.iml deleted file mode 100644 index fb8e866..0000000 --- a/jdbc/jdbc.iml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/jdbc/lib/c3p0-0.9.5.5.jar b/jdbc/lib/c3p0-0.9.5.5.jar deleted file mode 100644 index ca427bb..0000000 Binary files a/jdbc/lib/c3p0-0.9.5.5.jar and /dev/null differ diff --git a/jdbc/lib/commons-dbcp-1.4.jar b/jdbc/lib/commons-dbcp-1.4.jar deleted file mode 100644 index c4c1c4f..0000000 Binary files a/jdbc/lib/commons-dbcp-1.4.jar and /dev/null differ diff --git a/jdbc/lib/commons-pool-1.6.jar b/jdbc/lib/commons-pool-1.6.jar deleted file mode 100644 index 72ca75a..0000000 Binary files a/jdbc/lib/commons-pool-1.6.jar and /dev/null differ diff --git a/jdbc/lib/mchange-commons-java-0.2.19.jar b/jdbc/lib/mchange-commons-java-0.2.19.jar deleted file mode 100644 index ec33786..0000000 Binary files a/jdbc/lib/mchange-commons-java-0.2.19.jar and /dev/null differ diff --git a/jdbc/lib/mysql-connector-java-5.1.49.jar b/jdbc/lib/mysql-connector-java-5.1.49.jar deleted file mode 100644 index d3c8b41..0000000 Binary files a/jdbc/lib/mysql-connector-java-5.1.49.jar and /dev/null differ diff --git a/jdbc/out/production/jdbc/c3p0-config.xml b/jdbc/out/production/jdbc/c3p0-config.xml deleted file mode 100644 index 3733827..0000000 --- a/jdbc/out/production/jdbc/c3p0-config.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - com.mysql.jdbc.Driver - jdbc:mysql://localhost:3306/jdbcStudy?useUnicode=true&characterEncoding=utf8&useSSL=true - root - 123456 - - 5 - 10 - 5 - 20 - - - - - com.mysql.jdbc.Driver - jdbc:mysql://localhost:3306/jdbcStudy?useUnicode=true&characterEncoding=utf8&useSSL=true - root - 123456 - - 5 - 10 - 5 - 20 - - - \ No newline at end of file diff --git a/jdbc/out/production/jdbc/com/xiaokai/lesson01/JdbcFirstDemo.class b/jdbc/out/production/jdbc/com/xiaokai/lesson01/JdbcFirstDemo.class deleted file mode 100644 index 011cbe4..0000000 Binary files a/jdbc/out/production/jdbc/com/xiaokai/lesson01/JdbcFirstDemo.class and /dev/null differ diff --git a/jdbc/out/production/jdbc/com/xiaokai/lesson02/SqlBug.class b/jdbc/out/production/jdbc/com/xiaokai/lesson02/SqlBug.class deleted file mode 100644 index 0971619..0000000 Binary files a/jdbc/out/production/jdbc/com/xiaokai/lesson02/SqlBug.class and /dev/null differ diff --git a/jdbc/out/production/jdbc/com/xiaokai/lesson02/TestDelete.class b/jdbc/out/production/jdbc/com/xiaokai/lesson02/TestDelete.class deleted file mode 100644 index e5c24f1..0000000 Binary files a/jdbc/out/production/jdbc/com/xiaokai/lesson02/TestDelete.class and /dev/null differ diff --git a/jdbc/out/production/jdbc/com/xiaokai/lesson02/TestInsert.class b/jdbc/out/production/jdbc/com/xiaokai/lesson02/TestInsert.class deleted file mode 100644 index 025a8d1..0000000 Binary files a/jdbc/out/production/jdbc/com/xiaokai/lesson02/TestInsert.class and /dev/null differ diff --git a/jdbc/out/production/jdbc/com/xiaokai/lesson02/TestSelect.class b/jdbc/out/production/jdbc/com/xiaokai/lesson02/TestSelect.class deleted file mode 100644 index f7ff9e2..0000000 Binary files a/jdbc/out/production/jdbc/com/xiaokai/lesson02/TestSelect.class and /dev/null differ diff --git a/jdbc/out/production/jdbc/com/xiaokai/lesson02/TestUpdate.class b/jdbc/out/production/jdbc/com/xiaokai/lesson02/TestUpdate.class deleted file mode 100644 index 0cdbb48..0000000 Binary files a/jdbc/out/production/jdbc/com/xiaokai/lesson02/TestUpdate.class and /dev/null differ diff --git a/jdbc/out/production/jdbc/com/xiaokai/lesson02/utils/JdbcUtils.class b/jdbc/out/production/jdbc/com/xiaokai/lesson02/utils/JdbcUtils.class deleted file mode 100644 index 5e9fda2..0000000 Binary files a/jdbc/out/production/jdbc/com/xiaokai/lesson02/utils/JdbcUtils.class and /dev/null differ diff --git a/jdbc/out/production/jdbc/com/xiaokai/lesson03/SqlBugTest2.class b/jdbc/out/production/jdbc/com/xiaokai/lesson03/SqlBugTest2.class deleted file mode 100644 index e2f602c..0000000 Binary files a/jdbc/out/production/jdbc/com/xiaokai/lesson03/SqlBugTest2.class and /dev/null differ diff --git a/jdbc/out/production/jdbc/com/xiaokai/lesson03/TestDelete2.class b/jdbc/out/production/jdbc/com/xiaokai/lesson03/TestDelete2.class deleted file mode 100644 index a4a9e16..0000000 Binary files a/jdbc/out/production/jdbc/com/xiaokai/lesson03/TestDelete2.class and /dev/null differ diff --git a/jdbc/out/production/jdbc/com/xiaokai/lesson03/TestInsert2.class b/jdbc/out/production/jdbc/com/xiaokai/lesson03/TestInsert2.class deleted file mode 100644 index 0fa4e70..0000000 Binary files a/jdbc/out/production/jdbc/com/xiaokai/lesson03/TestInsert2.class and /dev/null differ diff --git a/jdbc/out/production/jdbc/com/xiaokai/lesson03/TestUpdate2.class b/jdbc/out/production/jdbc/com/xiaokai/lesson03/TestUpdate2.class deleted file mode 100644 index 3645030..0000000 Binary files a/jdbc/out/production/jdbc/com/xiaokai/lesson03/TestUpdate2.class and /dev/null differ diff --git a/jdbc/out/production/jdbc/com/xiaokai/lesson03/utils/JdbcUtils2.class b/jdbc/out/production/jdbc/com/xiaokai/lesson03/utils/JdbcUtils2.class deleted file mode 100644 index 501851d..0000000 Binary files a/jdbc/out/production/jdbc/com/xiaokai/lesson03/utils/JdbcUtils2.class and /dev/null differ diff --git a/jdbc/out/production/jdbc/com/xiaokai/lesson04/TestTransaction1.class b/jdbc/out/production/jdbc/com/xiaokai/lesson04/TestTransaction1.class deleted file mode 100644 index 20bd930..0000000 Binary files a/jdbc/out/production/jdbc/com/xiaokai/lesson04/TestTransaction1.class and /dev/null differ diff --git a/jdbc/out/production/jdbc/com/xiaokai/lesson04/TestTransaction2.class b/jdbc/out/production/jdbc/com/xiaokai/lesson04/TestTransaction2.class deleted file mode 100644 index 7996715..0000000 Binary files a/jdbc/out/production/jdbc/com/xiaokai/lesson04/TestTransaction2.class and /dev/null differ diff --git a/jdbc/out/production/jdbc/db.properties b/jdbc/out/production/jdbc/db.properties deleted file mode 100644 index ebbd3e9..0000000 --- a/jdbc/out/production/jdbc/db.properties +++ /dev/null @@ -1,4 +0,0 @@ -driver=com.mysql.jdbc.Driver -url=jdbc:mysql://localhost:3306/jdbcStudy?useUnicode=true&characterEncoding=utf8&useSSL=true -username=root -password=123456 \ No newline at end of file diff --git a/jdbc/out/production/jdbc/dbcpconfig.properties b/jdbc/out/production/jdbc/dbcpconfig.properties deleted file mode 100644 index b4cff25..0000000 --- a/jdbc/out/production/jdbc/dbcpconfig.properties +++ /dev/null @@ -1,34 +0,0 @@ -#连接设置 -driverClassName=com.mysql.jdbc.Driver -url=jdbc:mysql://localhost:3306/jdbcStudy?useUnicode=true&characterEncoding=utf8&useSSL=true -username=root -password=123456 - -#!-- 初始化连接 -- -initialSize=10 - -#最大连接数量 -maxActive=50 - -#!-- 最大空闲连接 -- -maxIdle=20 - -#!-- 最小空闲连接 -- -minIdle=5 - -#!-- 超时等待时间以毫秒为单位 6000毫秒/1000等于60秒 -- -maxWait=60000 -#JDBC驱动建立连接时附带的连接属性属性的格式必须为这样:【属性名=property;】 -#注意:user 与 password 两个属性会被明确地传递,因此这里不需要包含他们。 -connectionProperties=useUnicode=true;characterEncoding=UTF8 - -#指定由连接池所创建的连接的自动提交(auto-commit)状态。 -defaultAutoCommit=true - -#driver default 指定由连接池所创建的连接的只读(read-only)状态。 -#如果没有设置该值,则“setReadOnly”方法将不被调用。(某些驱动并不支持只读模式,如:Informix) -defaultReadOnly= - -#driver default 指定由连接池所创建的连接的事务级别(TransactionIsolation)。 -#可用值为下列之一:(详情可见javadoc。)NONE,READ_UNCOMMITTED, READ_COMMITTED, REPEATABLE_READ, SERIALIZABLE -defaultTransactionIsolation=READ_UNCOMMITTED \ No newline at end of file diff --git a/jdbc/out/production/jdbc/lesson05/C3P0Test.class b/jdbc/out/production/jdbc/lesson05/C3P0Test.class deleted file mode 100644 index 62cffc1..0000000 Binary files a/jdbc/out/production/jdbc/lesson05/C3P0Test.class and /dev/null differ diff --git a/jdbc/out/production/jdbc/lesson05/DBCPTest.class b/jdbc/out/production/jdbc/lesson05/DBCPTest.class deleted file mode 100644 index 89b77b6..0000000 Binary files a/jdbc/out/production/jdbc/lesson05/DBCPTest.class and /dev/null differ diff --git a/jdbc/out/production/jdbc/lesson05/utils/JdbcUtils_C3P0.class b/jdbc/out/production/jdbc/lesson05/utils/JdbcUtils_C3P0.class deleted file mode 100644 index 458f519..0000000 Binary files a/jdbc/out/production/jdbc/lesson05/utils/JdbcUtils_C3P0.class and /dev/null differ diff --git a/jdbc/out/production/jdbc/lesson05/utils/JdbcUtils_DBPC.class b/jdbc/out/production/jdbc/lesson05/utils/JdbcUtils_DBPC.class deleted file mode 100644 index 722457d..0000000 Binary files a/jdbc/out/production/jdbc/lesson05/utils/JdbcUtils_DBPC.class and /dev/null differ diff --git a/jdbc/src/c3p0-config.xml b/jdbc/src/c3p0-config.xml deleted file mode 100644 index 3733827..0000000 --- a/jdbc/src/c3p0-config.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - com.mysql.jdbc.Driver - jdbc:mysql://localhost:3306/jdbcStudy?useUnicode=true&characterEncoding=utf8&useSSL=true - root - 123456 - - 5 - 10 - 5 - 20 - - - - - com.mysql.jdbc.Driver - jdbc:mysql://localhost:3306/jdbcStudy?useUnicode=true&characterEncoding=utf8&useSSL=true - root - 123456 - - 5 - 10 - 5 - 20 - - - \ No newline at end of file diff --git a/jdbc/src/com/xiaokai/lesson01/JdbcFirstDemo.java b/jdbc/src/com/xiaokai/lesson01/JdbcFirstDemo.java deleted file mode 100644 index d99a964..0000000 --- a/jdbc/src/com/xiaokai/lesson01/JdbcFirstDemo.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.xiaokai.lesson01; - -import com.mysql.jdbc.Driver; - -import java.sql.*; - -public class JdbcFirstDemo { - public static void main(String[] args) throws ClassNotFoundException, SQLException { - //1.加载驱动 - Class.forName("com.mysql.jdbc.Driver"); - - //2.获取与数据库的连接 - String url = "jdbc:mysql://localhost:3306/jdbcStudy?useUnicode=true&characterEncoding=utf8&useSSL=true"; - String user = "root"; - String pwd = "123456"; - - Connection connection = DriverManager.getConnection(url, user, pwd); - - //3.创建statement对象用于操作sql - Statement statement = connection.createStatement(); - String sql = "SELECT * FROM `users`;"; - ResultSet resultSet = statement.executeQuery(sql); - - //4.获取结果集并解析输出 - while (resultSet.next()){ - System.out.println("id="+resultSet.getObject("id") + "\t" - + "name="+resultSet.getObject("NAME") + "\t" - + "password="+resultSet.getObject("PASSWORD") + "\t" - + "email="+resultSet.getObject("email") + "\t" - + "birth="+resultSet.getObject("birthday") + "\n" - ); - } - //5.关闭链接 - resultSet.close(); - statement.close(); - connection.close(); - } -} diff --git a/jdbc/src/com/xiaokai/lesson02/SqlBug.java b/jdbc/src/com/xiaokai/lesson02/SqlBug.java deleted file mode 100644 index adb748e..0000000 --- a/jdbc/src/com/xiaokai/lesson02/SqlBug.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.xiaokai.lesson02; - -import com.xiaokai.lesson02.utils.JdbcUtils; - -import java.sql.Connection; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.sql.Statement; - -public class SqlBug { - public static void main(String[] args) { - SqlBug sqlBug = new SqlBug(); - sqlBug.login("xiaokai","123456"); - System.out.println("=================================="); - //利用sql拼接,输入非法sql语句,造成sql短路,窃取数据库信息; - sqlBug.login("' or '1=1","' or '1=1"); - } - private void login(String username, String password){ - Connection connection = null; - Statement statement = null; - ResultSet resultSet = null; - - try { - connection = JdbcUtils.getConnection(); - statement = connection.createStatement(); - String sql = "SELECT * FROM `users` WHERE `NAME`='"+username+"' AND `PASSWORD`='"+password+"';"; - resultSet = statement.executeQuery(sql); - while (resultSet.next()){ - System.out.println("id="+resultSet.getObject("id") + "\t" - + "name="+resultSet.getObject("NAME") + "\t" - + "password="+resultSet.getObject("PASSWORD") + "\t" - + "email="+resultSet.getObject("email") + "\t" - + "birth="+resultSet.getObject("birthday") + "\n" - ); - } - } catch (SQLException throwables) { - throwables.printStackTrace(); - }finally { - JdbcUtils.release(connection,statement,resultSet); - } - } -} diff --git a/jdbc/src/com/xiaokai/lesson02/TestDelete.java b/jdbc/src/com/xiaokai/lesson02/TestDelete.java deleted file mode 100644 index cc09642..0000000 --- a/jdbc/src/com/xiaokai/lesson02/TestDelete.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.xiaokai.lesson02; - -import com.xiaokai.lesson02.utils.JdbcUtils; - -import java.sql.Connection; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.sql.Statement; - -public class TestDelete { - public static void main(String[] args) { - Connection connection = null; - Statement statement = null; - ResultSet resultSet = null; - - try { - connection = JdbcUtils.getConnection(); - statement = connection.createStatement(); - String sql = "DELETE FROM users WHERE id = 5;"; - int num = statement.executeUpdate(sql); - if (num > 0){ - System.out.println("删除成功!"); - } - } catch (SQLException throwables) { - throwables.printStackTrace(); - }finally { - JdbcUtils.release(connection,statement,resultSet); - } - } -} diff --git a/jdbc/src/com/xiaokai/lesson02/TestInsert.java b/jdbc/src/com/xiaokai/lesson02/TestInsert.java deleted file mode 100644 index bd38e4d..0000000 --- a/jdbc/src/com/xiaokai/lesson02/TestInsert.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.xiaokai.lesson02; - -import com.xiaokai.lesson02.utils.JdbcUtils; - -import java.sql.Connection; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.sql.Statement; - -public class TestInsert { - public static void main(String[] args) { - Connection connection = null; - Statement statement = null; - ResultSet resultSet = null; - - try { - connection = JdbcUtils.getConnection(); - statement = connection.createStatement(); - String sql = "INSERT INTO `users`(id,`NAME`,`PASSWORD`,`email`,birthday)" + "VALUES(5,'aaaa','123456','123@123.com','1980-12-04');"; - int num = statement.executeUpdate(sql); - if (num > 0){ - System.out.println("插入成功!"); - } - - } catch (SQLException throwables) { - throwables.printStackTrace(); - }finally { - JdbcUtils.release(connection,statement,resultSet); - } - } -} diff --git a/jdbc/src/com/xiaokai/lesson02/TestSelect.java b/jdbc/src/com/xiaokai/lesson02/TestSelect.java deleted file mode 100644 index 221e0aa..0000000 --- a/jdbc/src/com/xiaokai/lesson02/TestSelect.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.xiaokai.lesson02; - -import com.xiaokai.lesson02.utils.JdbcUtils; - -import java.sql.Connection; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.sql.Statement; - -public class TestSelect { - public static void main(String[] args) { - Connection connection = null; - Statement statement = null; - ResultSet resultSet = null; - - try { - connection = JdbcUtils.getConnection(); - statement = connection.createStatement(); - String sql = "SELECT * FROM `users`;"; - resultSet = statement.executeQuery(sql); - while (resultSet.next()){ - System.out.println("id="+resultSet.getObject("id") + "\t" - + "name="+resultSet.getObject("NAME") + "\t" - + "password="+resultSet.getObject("PASSWORD") + "\t" - + "email="+resultSet.getObject("email") + "\t" - + "birth="+resultSet.getObject("birthday") + "\n" - ); - } - } catch (SQLException throwables) { - throwables.printStackTrace(); - }finally { - JdbcUtils.release(connection,statement,resultSet); - } - } -} diff --git a/jdbc/src/com/xiaokai/lesson02/TestUpdate.java b/jdbc/src/com/xiaokai/lesson02/TestUpdate.java deleted file mode 100644 index 7337bd3..0000000 --- a/jdbc/src/com/xiaokai/lesson02/TestUpdate.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.xiaokai.lesson02; - -import com.xiaokai.lesson02.utils.JdbcUtils; - -import java.sql.Connection; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.sql.Statement; - -public class TestUpdate { - public static void main(String[] args) { - Connection connection = null; - Statement statement = null; - ResultSet resultSet = null; - - try { - connection = JdbcUtils.getConnection(); - statement = connection.createStatement(); - String sql = "UPDATE `users` SET `NAME`='xiaokai' WHERE id=4;"; - int num = statement.executeUpdate(sql); - if (num > 0){ - System.out.println("修改成功!"); - } - } catch (SQLException throwables) { - throwables.printStackTrace(); - }finally { - JdbcUtils.release(connection,statement,resultSet); - } - } -} diff --git a/jdbc/src/com/xiaokai/lesson02/utils/JdbcUtils.java b/jdbc/src/com/xiaokai/lesson02/utils/JdbcUtils.java deleted file mode 100644 index 1ce1919..0000000 --- a/jdbc/src/com/xiaokai/lesson02/utils/JdbcUtils.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.xiaokai.lesson02.utils; - -import java.io.InputStream; -import java.sql.*; -import java.util.Properties; - -public class JdbcUtils { - private static String driver = null; - private static String url = null; - private static String username = null; - private static String password = null; - //静态代码块 用于读取数据库配置信息 加载驱动 - static { - try{ - InputStream inputStream = JdbcUtils.class.getClassLoader().getResourceAsStream("db.properties"); - Properties properties = new Properties(); - properties.load(inputStream); - - driver = properties.getProperty("driver"); - url = properties.getProperty("url"); - username = properties.getProperty("username"); - password = properties.getProperty("password"); - - Class.forName(driver); - - }catch (Exception e){ - throw new ExceptionInInitializerError(e); - } - } - //链接数据库并返回connection - public static Connection getConnection() throws SQLException { - return DriverManager.getConnection(url,username,password); - } - //关闭数据库连接释放资源 - public static void release(Connection connection, Statement statement, ResultSet resultSet){ - try { - if (resultSet!=null) - resultSet.close(); - } catch (SQLException throwables) { - throwables.printStackTrace(); - } - try { - if (statement!=null) - statement.close(); - } catch (SQLException throwables) { - throwables.printStackTrace(); - } - try { - if (connection!=null) - connection.close(); - } catch (SQLException throwables) { - throwables.printStackTrace(); - } - } -} diff --git a/jdbc/src/com/xiaokai/lesson03/SqlBugTest2.java b/jdbc/src/com/xiaokai/lesson03/SqlBugTest2.java deleted file mode 100644 index 1b8864c..0000000 --- a/jdbc/src/com/xiaokai/lesson03/SqlBugTest2.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.xiaokai.lesson03; - -import com.xiaokai.lesson02.SqlBug; -import com.xiaokai.lesson02.utils.JdbcUtils; -import com.xiaokai.lesson03.utils.JdbcUtils2; - -import java.sql.*; - -public class SqlBugTest2 { - public static void main(String[] args) { - SqlBugTest2 sqlBugTest2 = new SqlBugTest2(); - sqlBugTest2.login("gggg","123456"); - System.out.println("=================================="); - - sqlBugTest2.login("' or '1=1","' or '1=1"); - } - private void login(String username, String password){ - Connection connection = null; - PreparedStatement preparedStatement = null; - ResultSet resultSet = null; - - try { - connection = JdbcUtils2.getConnection(); - String sql = "select * from users where `NAME` = ? and `PASSWORD`=?"; - preparedStatement = connection.prepareStatement(sql); - preparedStatement.setString(1,username); - preparedStatement.setString(2,password); - - resultSet = preparedStatement.executeQuery(); - while (resultSet.next()){ - System.out.println("id="+resultSet.getObject("id") + "\t" - + "name="+resultSet.getObject("NAME") + "\t" - + "password="+resultSet.getObject("PASSWORD") + "\t" - + "email="+resultSet.getObject("email") + "\t" - + "birth="+resultSet.getObject("birthday") + "\n" - ); - } - } catch (SQLException throwables) { - throwables.printStackTrace(); - }finally { - JdbcUtils2.release(connection,preparedStatement,resultSet); - } - } -} diff --git a/jdbc/src/com/xiaokai/lesson03/TestDelete2.java b/jdbc/src/com/xiaokai/lesson03/TestDelete2.java deleted file mode 100644 index a2d4e98..0000000 --- a/jdbc/src/com/xiaokai/lesson03/TestDelete2.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.xiaokai.lesson03; - -import com.xiaokai.lesson03.utils.JdbcUtils2; - -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; - -public class TestDelete2 { - public static void main(String[] args) { - Connection connection = null; - PreparedStatement preparedStatement = null; - ResultSet resultSet = null; - - try { - connection = JdbcUtils2.getConnection(); - String sql = "delete from users where id = ?"; - preparedStatement = connection.prepareStatement(sql); - preparedStatement.setInt(1,5); - - int num = preparedStatement.executeUpdate(); - if (num > 0){ - System.out.println("删除成功!"); - } - } catch (SQLException throwables) { - throwables.printStackTrace(); - }finally { - JdbcUtils2.release(connection,preparedStatement,resultSet); - } - } -} diff --git a/jdbc/src/com/xiaokai/lesson03/TestInsert2.java b/jdbc/src/com/xiaokai/lesson03/TestInsert2.java deleted file mode 100644 index 42a129f..0000000 --- a/jdbc/src/com/xiaokai/lesson03/TestInsert2.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.xiaokai.lesson03; - -import com.xiaokai.lesson03.utils.JdbcUtils2; - -import java.sql.*; - -public class TestInsert2 { - public static void main(String[] args) { - Connection connection = null; - PreparedStatement preparedStatement = null; - ResultSet resultSet = null; - - try { - connection = JdbcUtils2.getConnection(); - String sql = "insert into users (id,`name`,`password`,`email`,`birthday`) values(?,?,?,?,?)"; - preparedStatement = connection.prepareStatement(sql); - preparedStatement.setInt(1,5); - preparedStatement.setString(2,"zzzzz"); - preparedStatement.setString(3,"111111"); - preparedStatement.setString(4,"ababab@123.com"); - preparedStatement.setDate(5,new java.sql.Date(new java.util.Date().getTime())); - - int num = preparedStatement.executeUpdate(); - if (num > 0){ - System.out.println("插入成功!"); - } - } catch (SQLException throwables) { - throwables.printStackTrace(); - }finally { - JdbcUtils2.release(connection,preparedStatement,resultSet); - } - } -} diff --git a/jdbc/src/com/xiaokai/lesson03/TestUpdate2.java b/jdbc/src/com/xiaokai/lesson03/TestUpdate2.java deleted file mode 100644 index 9e430e6..0000000 --- a/jdbc/src/com/xiaokai/lesson03/TestUpdate2.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.xiaokai.lesson03; - -import com.xiaokai.lesson03.utils.JdbcUtils2; - -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; - -public class TestUpdate2 { - public static void main(String[] args) { - Connection connection = null; - PreparedStatement preparedStatement = null; - ResultSet resultSet = null; - - try { - connection = JdbcUtils2.getConnection(); - String sql = "SELECT * FROM `users`;"; - preparedStatement = connection.prepareStatement(sql); - - resultSet = preparedStatement.executeQuery(sql); - while (resultSet.next()){ - System.out.println("id="+resultSet.getObject("id") + "\t" - + "name="+resultSet.getObject("NAME") + "\t" - + "password="+resultSet.getObject("PASSWORD") + "\t" - + "email="+resultSet.getObject("email") + "\t" - + "birth="+resultSet.getObject("birthday") + "\n" - ); - } - } catch (SQLException throwables) { - throwables.printStackTrace(); - }finally { - JdbcUtils2.release(connection,preparedStatement,resultSet); - } - } -} diff --git a/jdbc/src/com/xiaokai/lesson03/utils/JdbcUtils2.java b/jdbc/src/com/xiaokai/lesson03/utils/JdbcUtils2.java deleted file mode 100644 index 2204053..0000000 --- a/jdbc/src/com/xiaokai/lesson03/utils/JdbcUtils2.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.xiaokai.lesson03.utils; - -import com.xiaokai.lesson02.utils.JdbcUtils; - -import java.io.InputStream; -import java.sql.*; -import java.util.Properties; - -public class JdbcUtils2 { - private static String driver = null; - private static String url = null; - private static String username = null; - private static String password = null; - //静态代码块 用于读取数据库配置信息 加载驱动 - static { - try{ - InputStream inputStream = JdbcUtils.class.getClassLoader().getResourceAsStream("db.properties"); - Properties properties = new Properties(); - properties.load(inputStream); - - driver = properties.getProperty("driver"); - url = properties.getProperty("url"); - username = properties.getProperty("username"); - password = properties.getProperty("password"); - - Class.forName(driver); - - }catch (Exception e){ - throw new ExceptionInInitializerError(e); - } - } - //链接数据库并返回connection - public static Connection getConnection() throws SQLException { - return DriverManager.getConnection(url,username,password); - } - //关闭数据库连接释放资源 - public static void release(Connection connection, PreparedStatement preparedStatement, ResultSet resultSet) { - try { - if (resultSet != null) - resultSet.close(); - } catch (SQLException throwables) { - throwables.printStackTrace(); - } - try { - if (preparedStatement != null) - preparedStatement.close(); - } catch (SQLException throwables) { - throwables.printStackTrace(); - } - try { - if (connection != null) - connection.close(); - } catch (SQLException throwables) { - throwables.printStackTrace(); - } - } -} diff --git a/jdbc/src/com/xiaokai/lesson04/TestTransaction1.java b/jdbc/src/com/xiaokai/lesson04/TestTransaction1.java deleted file mode 100644 index 8399d84..0000000 --- a/jdbc/src/com/xiaokai/lesson04/TestTransaction1.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.xiaokai.lesson04; - -import com.xiaokai.lesson03.utils.JdbcUtils2; - -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.text.DecimalFormat; - -public class TestTransaction1 { - public static void main(String[] args) { - TestTransaction1 transaction1 = new TestTransaction1(); - transaction1.testTransfer("A","B"); - } - - public void testTransfer(String A, String B){ - Connection connection = null; - PreparedStatement preparedStatement = null; - ResultSet resultSet = null; - - try { - connection = JdbcUtils2.getConnection(); - connection.setAutoCommit(false);//关闭数据库自动提交,同时自动开启事务 - - String sql1 = "update account set money=money-100 where `name`= ?;"; - preparedStatement = connection.prepareStatement(sql1); - preparedStatement.setString(1,A); - preparedStatement.executeUpdate(); - - String sql2 = "update account set money=money+100 where `name`= ?;"; - preparedStatement = connection.prepareStatement(sql2); - preparedStatement.setString(1,B); - preparedStatement.executeUpdate(); - - connection.commit();//提交事务 - System.out.println("转账成功!"); - - - } catch (SQLException throwables) { - throwables.printStackTrace(); - }finally { - JdbcUtils2.release(connection,preparedStatement,resultSet); - } - } -} diff --git a/jdbc/src/com/xiaokai/lesson04/TestTransaction2.java b/jdbc/src/com/xiaokai/lesson04/TestTransaction2.java deleted file mode 100644 index 5877c67..0000000 --- a/jdbc/src/com/xiaokai/lesson04/TestTransaction2.java +++ /dev/null @@ -1,53 +0,0 @@ -package com.xiaokai.lesson04; - -import com.xiaokai.lesson03.utils.JdbcUtils2; - -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; - -public class TestTransaction2 { - public static void main(String[] args) { - TestTransaction2 transaction2 = new TestTransaction2(); - transaction2.testTransfer2("A","B"); - } - - private void testTransfer2(String A, String B){ - Connection connection = null; - PreparedStatement preparedStatement = null; - ResultSet resultSet = null; - - try { - connection = JdbcUtils2.getConnection(); - connection.setAutoCommit(false);//关闭数据库自动提交,同时自动开启事务 - - String sql1 = "update account set money=money-100 where `name`= ?;"; - preparedStatement = connection.prepareStatement(sql1); - preparedStatement.setString(1,A); - preparedStatement.executeUpdate(); - - int x = 1/0; //模拟转账中的错误 - - String sql2 = "update account set money=money+100 where `name`= ?;"; - preparedStatement = connection.prepareStatement(sql2); - preparedStatement.setString(1,B); - preparedStatement.executeUpdate(); - - connection.commit();//提交事务 - System.out.println("转账成功!"); - - - } catch (Exception throwables) { - throwables.printStackTrace(); - System.out.println("转账失败!"); - try { - connection.rollback();//显示定义回滚,默认也会回滚,是隐式; - } catch (SQLException e) { - e.printStackTrace(); - } - }finally { - JdbcUtils2.release(connection,preparedStatement,resultSet); - } - } -} diff --git a/jdbc/src/db.properties b/jdbc/src/db.properties deleted file mode 100644 index ebbd3e9..0000000 --- a/jdbc/src/db.properties +++ /dev/null @@ -1,4 +0,0 @@ -driver=com.mysql.jdbc.Driver -url=jdbc:mysql://localhost:3306/jdbcStudy?useUnicode=true&characterEncoding=utf8&useSSL=true -username=root -password=123456 \ No newline at end of file diff --git a/jdbc/src/dbcpconfig.properties b/jdbc/src/dbcpconfig.properties deleted file mode 100644 index b4cff25..0000000 --- a/jdbc/src/dbcpconfig.properties +++ /dev/null @@ -1,34 +0,0 @@ -#连接设置 -driverClassName=com.mysql.jdbc.Driver -url=jdbc:mysql://localhost:3306/jdbcStudy?useUnicode=true&characterEncoding=utf8&useSSL=true -username=root -password=123456 - -#!-- 初始化连接 -- -initialSize=10 - -#最大连接数量 -maxActive=50 - -#!-- 最大空闲连接 -- -maxIdle=20 - -#!-- 最小空闲连接 -- -minIdle=5 - -#!-- 超时等待时间以毫秒为单位 6000毫秒/1000等于60秒 -- -maxWait=60000 -#JDBC驱动建立连接时附带的连接属性属性的格式必须为这样:【属性名=property;】 -#注意:user 与 password 两个属性会被明确地传递,因此这里不需要包含他们。 -connectionProperties=useUnicode=true;characterEncoding=UTF8 - -#指定由连接池所创建的连接的自动提交(auto-commit)状态。 -defaultAutoCommit=true - -#driver default 指定由连接池所创建的连接的只读(read-only)状态。 -#如果没有设置该值,则“setReadOnly”方法将不被调用。(某些驱动并不支持只读模式,如:Informix) -defaultReadOnly= - -#driver default 指定由连接池所创建的连接的事务级别(TransactionIsolation)。 -#可用值为下列之一:(详情可见javadoc。)NONE,READ_UNCOMMITTED, READ_COMMITTED, REPEATABLE_READ, SERIALIZABLE -defaultTransactionIsolation=READ_UNCOMMITTED \ No newline at end of file diff --git a/jdbc/src/lesson05/C3P0Test.java b/jdbc/src/lesson05/C3P0Test.java deleted file mode 100644 index 627e2f9..0000000 --- a/jdbc/src/lesson05/C3P0Test.java +++ /dev/null @@ -1,38 +0,0 @@ -package lesson05; - -import lesson05.utils.JdbcUtils_C3P0; - -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; - -public class C3P0Test { - public static void main(String[] args) { - Connection connection = null; - PreparedStatement preparedStatement = null; - ResultSet resultSet = null; - - try { - connection = JdbcUtils_C3P0.getConnection(); - String sql = "select * from users;"; - preparedStatement = connection.prepareStatement(sql); - resultSet = preparedStatement.executeQuery(); - - while (resultSet.next()){ - System.out.println("id="+resultSet.getObject("id") + "\t" - + "name="+resultSet.getObject("NAME") + "\t" - + "password="+resultSet.getObject("PASSWORD") + "\t" - + "email="+resultSet.getObject("email") + "\t" - + "birth="+resultSet.getObject("birthday") + "\n" - ); - } - } catch (SQLException throwables) { - throwables.printStackTrace(); - }finally { - JdbcUtils_C3P0.release(connection,preparedStatement,resultSet); - } - } - -} - diff --git a/jdbc/src/lesson05/DBCPTest.java b/jdbc/src/lesson05/DBCPTest.java deleted file mode 100644 index 394669d..0000000 --- a/jdbc/src/lesson05/DBCPTest.java +++ /dev/null @@ -1,36 +0,0 @@ -package lesson05; - -import lesson05.utils.JdbcUtils_DBPC; - -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; - -public class DBCPTest { - public static void main(String[] args) { - Connection connection = null; - PreparedStatement preparedStatement = null; - ResultSet resultSet = null; - - try { - connection = JdbcUtils_DBPC.getConnection(); - String sql = "select * from users;"; - preparedStatement = connection.prepareStatement(sql); - resultSet = preparedStatement.executeQuery(); - - while (resultSet.next()){ - System.out.println("id="+resultSet.getObject("id") + "\t" - + "name="+resultSet.getObject("NAME") + "\t" - + "password="+resultSet.getObject("PASSWORD") + "\t" - + "email="+resultSet.getObject("email") + "\t" - + "birth="+resultSet.getObject("birthday") + "\n" - ); - } - } catch (SQLException throwables) { - throwables.printStackTrace(); - }finally { - JdbcUtils_DBPC.release(connection,preparedStatement,resultSet); - } - } -} diff --git a/jdbc/src/lesson05/utils/JdbcUtils_C3P0.java b/jdbc/src/lesson05/utils/JdbcUtils_C3P0.java deleted file mode 100644 index 5928567..0000000 --- a/jdbc/src/lesson05/utils/JdbcUtils_C3P0.java +++ /dev/null @@ -1,64 +0,0 @@ -package lesson05.utils; - -import com.mchange.v2.c3p0.ComboPooledDataSource; -import org.apache.commons.dbcp.BasicDataSourceFactory; - -import javax.sql.DataSource; -import java.io.IOException; -import java.io.InputStream; -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.util.Properties; - -public class JdbcUtils_C3P0 { - private static ComboPooledDataSource ds = null; - static{ - try { -// //代码方式设置数据源 不推荐 高耦合 -// ds = new ComboPooledDataSource(); -// ds.setDriverClass("com.mysql.jdbc.Driver"); -// ds.setJdbcUrl("jdbc:mysql://localhost:3306/jdbcStudy"); -// ds.setUser("root"); -// ds.setPassword("123456"); -// ds.setInitialPoolSize(10); -// ds.setMinPoolSize(5); -// ds.setMaxPoolSize(20); - - //读取配置 - //创建数据源 - ds = new ComboPooledDataSource("MySQL"); - - } catch (Exception e) { - e.printStackTrace(); - } - - } - //从数据源中获取数据库连接 - public static Connection getConnection() throws SQLException { - return ds.getConnection(); - } - - //关闭连接释放资源 - public static void release(Connection connection, PreparedStatement preparedStatement, ResultSet resultSet) { - try { - if (resultSet != null) - resultSet.close(); - } catch (SQLException throwables) { - throwables.printStackTrace(); - } - try { - if (preparedStatement != null) - preparedStatement.close(); - } catch (SQLException throwables) { - throwables.printStackTrace(); - } - try { - if (connection != null) - connection.close(); - } catch (SQLException throwables) { - throwables.printStackTrace(); - } - } -} diff --git a/jdbc/src/lesson05/utils/JdbcUtils_DBPC.java b/jdbc/src/lesson05/utils/JdbcUtils_DBPC.java deleted file mode 100644 index 3eceafa..0000000 --- a/jdbc/src/lesson05/utils/JdbcUtils_DBPC.java +++ /dev/null @@ -1,61 +0,0 @@ -package lesson05.utils; - -import org.apache.commons.dbcp.BasicDataSourceFactory; - -import javax.sql.DataSource; -import java.io.IOException; -import java.io.InputStream; -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.util.Properties; - -//DBPC连接池 JDBC数据库工具类 -public class JdbcUtils_DBPC { - private static DataSource ds = null; - static{ - try { - //读取配置 - InputStream inputStream = JdbcUtils_DBPC.class.getClassLoader().getResourceAsStream("dbcpconfig.properties"); - Properties properties = new Properties(); - properties.load(inputStream); - - //创建数据源 - ds = BasicDataSourceFactory.createDataSource(properties); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } - - } - //从数据源中获取数据库连接 - public static Connection getConnection() throws SQLException { - return ds.getConnection(); - } - - //关闭连接释放资源 - public static void release(Connection connection, PreparedStatement preparedStatement, ResultSet resultSet) { - try { - if (resultSet != null) - resultSet.close(); - } catch (SQLException throwables) { - throwables.printStackTrace(); - } - try { - if (preparedStatement != null) - preparedStatement.close(); - } catch (SQLException throwables) { - throwables.printStackTrace(); - } - try { - if (connection != null) - connection.close(); - } catch (SQLException throwables) { - throwables.printStackTrace(); - } - } - -} diff --git a/jdbcTest/.idea/.gitignore b/jdbcTest/.idea/.gitignore deleted file mode 100644 index 73f69e0..0000000 --- a/jdbcTest/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/jdbcTest/.idea/compiler.xml b/jdbcTest/.idea/compiler.xml deleted file mode 100644 index 40324ec..0000000 --- a/jdbcTest/.idea/compiler.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/jdbcTest/.idea/dataSources.xml b/jdbcTest/.idea/dataSources.xml deleted file mode 100644 index 9ae57dc..0000000 --- a/jdbcTest/.idea/dataSources.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - mysql.8 - true - com.mysql.cj.jdbc.Driver - jdbc:mysql://localhost:3306 - $ProjectFileDir$ - - - \ No newline at end of file diff --git a/jdbcTest/.idea/jarRepositories.xml b/jdbcTest/.idea/jarRepositories.xml deleted file mode 100644 index 980588c..0000000 --- a/jdbcTest/.idea/jarRepositories.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/jdbcTest/.idea/misc.xml b/jdbcTest/.idea/misc.xml deleted file mode 100644 index 132404b..0000000 --- a/jdbcTest/.idea/misc.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/jdbcTest/.idea/vcs.xml b/jdbcTest/.idea/vcs.xml deleted file mode 100644 index 6c0b863..0000000 --- a/jdbcTest/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/jdbcTest/pom.xml b/jdbcTest/pom.xml deleted file mode 100644 index 428ec16..0000000 --- a/jdbcTest/pom.xml +++ /dev/null @@ -1,83 +0,0 @@ - - - 4.0.0 - - org.example - jdbcTest - 1.0-SNAPSHOT - - - - - junit - junit - 4.12 - test - - - - javax.servlet - javax.servlet-api - 4.0.1 - - - - javax.servlet.jsp - javax.servlet.jsp-api - 2.3.3 - - - - - javax.servlet.jsp.jstl - jstl-api - 1.2 - - - - - taglibs - standard - 1.1.2 - - - - mysql - mysql-connector-java - 5.1.47 - - - junit - junit - 4.13 - compile - - - - - - - - - src/main/resources - - **/*.properties - **/*.xml - - false - - - src/main/java - - **/*.properties - **/*.xml - - false - - - - - - \ No newline at end of file diff --git a/jdbcTest/src/main/java/com/xiaokai/jdbctest/TestAccount.java b/jdbcTest/src/main/java/com/xiaokai/jdbctest/TestAccount.java deleted file mode 100644 index 0cd773a..0000000 --- a/jdbcTest/src/main/java/com/xiaokai/jdbctest/TestAccount.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.xiaokai.jdbctest; - -import org.junit.Test; - -import java.sql.Connection; -import java.sql.DriverManager; -import java.sql.SQLException; -import java.util.ConcurrentModificationException; - -public class TestAccount { - @Test - public void test(){ - String url = "jdbc:mysql://localhost:3306/jdbcstudy?useUnicode=true&characterEncoding=utf-8"; - String username = "root"; - String password = "123456"; - - Connection connection = null; - - try { - Class.forName("com.mysql.jdbc.Driver"); - try { - connection = DriverManager.getConnection(url, username, password); - connection.setAutoCommit(false); - String sql1 = "update account set money = money - 100 where NAME = 'A'"; - String sql2 = "update account set money = money + 100 where NAME = 'B'"; - connection.prepareStatement(sql1).executeUpdate(); - connection.prepareStatement(sql2).executeUpdate(); - connection.commit(); - System.out.println("success"); - - } catch (SQLException throwables) { - throwables.printStackTrace(); - } - } catch (ClassNotFoundException e) { - e.printStackTrace(); - } finally { - try { - connection.close(); - } catch (SQLException throwables) { - throwables.printStackTrace(); - } - } - } -} diff --git a/jdbcTest/src/main/java/com/xiaokai/jdbctest/TestJDBC01.java b/jdbcTest/src/main/java/com/xiaokai/jdbctest/TestJDBC01.java deleted file mode 100644 index c4c4571..0000000 --- a/jdbcTest/src/main/java/com/xiaokai/jdbctest/TestJDBC01.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.xiaokai.jdbctest; - -import java.sql.*; - -public class TestJDBC01 { - public static void main(String[] args) throws ClassNotFoundException, SQLException { - String url = "jdbc:mysql://localhost:3306/jdbcstudy?useUnicode=true&characterEncoding=utf-8"; - String username = "root"; - String password = "123456"; - - Class.forName("com.mysql.jdbc.Driver"); - Connection connection = DriverManager.getConnection(url, username, password); - Statement statement = connection.createStatement(); - - String sql = "select * from users"; - ResultSet resultSet = statement.executeQuery(sql); - - while (resultSet.next()){ - System.out.print("name="+resultSet.getObject("NAME")+"\t"); - System.out.print("password="+resultSet.getObject("PASSWORD")+"\t"); - System.out.print("email="+resultSet.getObject("email")+"\t"); - System.out.println("birthday="+resultSet.getObject("birthday")); - - } - - resultSet.close(); - statement.close(); - connection.close(); - - } -} diff --git a/jdbcTest/src/main/java/com/xiaokai/jdbctest/TestJDBC02.java b/jdbcTest/src/main/java/com/xiaokai/jdbctest/TestJDBC02.java deleted file mode 100644 index 510bf52..0000000 --- a/jdbcTest/src/main/java/com/xiaokai/jdbctest/TestJDBC02.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.xiaokai.jdbctest; - -import java.sql.*; - -public class TestJDBC02 { - public static void main(String[] args) throws ClassNotFoundException, SQLException { - String url = "jdbc:mysql://localhost:3306/jdbcstudy?useUnicode=true&characterEncoding=utf-8"; - String username = "root"; - String password = "123456"; - - Class.forName("com.mysql.jdbc.Driver"); - Connection connection = DriverManager.getConnection(url, username, password); - - String sql = "insert into users(id, NAME, PASSWORD, email, birthday) VALUES (?,?,?,?,?)"; - PreparedStatement preparedStatement = connection.prepareStatement(sql); - preparedStatement.setInt(1, 6); - preparedStatement.setString(2, "sasaas"); - preparedStatement.setString(3, "2131213"); - preparedStatement.setString(4, "23312@wew.com"); - preparedStatement.setDate(5, new Date(new java.util.Date().getTime())); - - int x = preparedStatement.executeUpdate(); - if (x > 0) { - System.out.println("插入成功"); - } - - preparedStatement.close(); - connection.close(); - } -} diff --git a/jdbcTest/target/classes/com/xiaokai/jdbctest/TestAccount.class b/jdbcTest/target/classes/com/xiaokai/jdbctest/TestAccount.class deleted file mode 100644 index d1e2cad..0000000 Binary files a/jdbcTest/target/classes/com/xiaokai/jdbctest/TestAccount.class and /dev/null differ diff --git a/jdbcTest/target/classes/com/xiaokai/jdbctest/TestJDBC01.class b/jdbcTest/target/classes/com/xiaokai/jdbctest/TestJDBC01.class deleted file mode 100644 index 54033ba..0000000 Binary files a/jdbcTest/target/classes/com/xiaokai/jdbctest/TestJDBC01.class and /dev/null differ diff --git a/jdbcTest/target/classes/com/xiaokai/jdbctest/TestJDBC02.class b/jdbcTest/target/classes/com/xiaokai/jdbctest/TestJDBC02.class deleted file mode 100644 index e82a93a..0000000 Binary files a/jdbcTest/target/classes/com/xiaokai/jdbctest/TestJDBC02.class and /dev/null differ diff --git a/smbms/.idea/.gitignore b/smbms/.idea/.gitignore deleted file mode 100644 index 73f69e0..0000000 --- a/smbms/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/smbms/.idea/compiler.xml b/smbms/.idea/compiler.xml deleted file mode 100644 index 2643af6..0000000 --- a/smbms/.idea/compiler.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/smbms/.idea/dataSources.xml b/smbms/.idea/dataSources.xml deleted file mode 100644 index ec0620a..0000000 --- a/smbms/.idea/dataSources.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - mysql.8 - true - com.mysql.cj.jdbc.Driver - jdbc:mysql://localhost:3306/smbms - $ProjectFileDir$ - - - \ No newline at end of file diff --git a/smbms/.idea/encodings.xml b/smbms/.idea/encodings.xml deleted file mode 100644 index 973a0b8..0000000 --- a/smbms/.idea/encodings.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/smbms/.idea/jarRepositories.xml b/smbms/.idea/jarRepositories.xml deleted file mode 100644 index 980588c..0000000 --- a/smbms/.idea/jarRepositories.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/smbms/.idea/misc.xml b/smbms/.idea/misc.xml deleted file mode 100644 index 79a352f..0000000 --- a/smbms/.idea/misc.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/smbms/.idea/uiDesigner.xml b/smbms/.idea/uiDesigner.xml deleted file mode 100644 index e96534f..0000000 --- a/smbms/.idea/uiDesigner.xml +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/smbms/.idea/vcs.xml b/smbms/.idea/vcs.xml deleted file mode 100644 index 6c0b863..0000000 --- a/smbms/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/smbms/pom.xml b/smbms/pom.xml deleted file mode 100644 index 079b6ff..0000000 --- a/smbms/pom.xml +++ /dev/null @@ -1,79 +0,0 @@ - - - - 4.0.0 - - com.xiaokai - smbms - 1.0-SNAPSHOT - - - smbms Maven Webapp - - http://www.example.com - - UTF-8 - 1.8 - 1.8 - - - - - - junit - junit - 4.12 - test - - - - javax.servlet - javax.servlet-api - 4.0.1 - - - - javax.servlet.jsp - javax.servlet.jsp-api - 2.3.3 - - - - - javax.servlet.jsp.jstl - jstl-api - 1.2 - - - - - taglibs - standard - 1.1.2 - - - - mysql - mysql-connector-java - 5.1.47 - - - junit - junit - 4.13 - - - - - com.alibaba - fastjson - 1.2.76 - - - - - - - - diff --git a/smbms/src/main/Resources/database.properties b/smbms/src/main/Resources/database.properties deleted file mode 100644 index 09a8664..0000000 --- a/smbms/src/main/Resources/database.properties +++ /dev/null @@ -1,4 +0,0 @@ -driver=com.mysql.jdbc.Driver -url=jdbc:mysql://127.0.0.1:3306/smbms?useUnicode=true&characterEncoding=utf-8&useSSL=false -user=root -password=123456 \ No newline at end of file diff --git a/smbms/src/main/java/com/xiaokai/dao/BaseDao.java b/smbms/src/main/java/com/xiaokai/dao/BaseDao.java deleted file mode 100644 index aa8b141..0000000 --- a/smbms/src/main/java/com/xiaokai/dao/BaseDao.java +++ /dev/null @@ -1,138 +0,0 @@ -package com.xiaokai.dao; - -import org.junit.Test; - -import java.io.IOException; -import java.io.InputStream; -import java.sql.*; -import java.util.Properties; - -public class BaseDao { - //静态代码块,在类加载的时候执行 - static{ - init(); - } - - private static String driver; - private static String url; - private static String user; - private static String password; - - //初始化连接参数,从配置文件里获得 - public static void init(){ - Properties params=new Properties(); - String configFile = "database.properties"; - InputStream is = BaseDao.class.getClassLoader().getResourceAsStream(configFile); - try { - params.load(is); - driver=params.getProperty("driver"); - url=params.getProperty("url"); - user=params.getProperty("user"); - password=params.getProperty("password"); - } catch (IOException e) { - e.printStackTrace(); - } - - - } - - //获取数据库连接 - public static Connection getConnection() { - Connection connection = null; - try { - Class.forName(driver); - connection = DriverManager.getConnection(url, user, password); - } catch (Exception e) { - - e.printStackTrace(); - } - - return connection; - } - - //编写数据库查询公共类 - public static ResultSet execute(Connection connection, PreparedStatement preparedStatement, String sql, Object[] params, ResultSet resultSet) throws SQLException { - //sql预编译 - preparedStatement = connection.prepareStatement(sql); - //params参数数组是冲0开始,遍历从0开始,但是setObject的占位符index要求从1开始,所以index=i+1; - for (int i = 0; i < params.length; i++) { - preparedStatement.setObject(i + 1, params[i]); - } - resultSet = preparedStatement.executeQuery(); - return resultSet; - } - - //编写数据库增删改工具类 - public static int executeUpdate(Connection connection, PreparedStatement preparedStatement, String sql, Object[] params) throws SQLException { - preparedStatement = connection.prepareStatement(sql); - //params参数数组是冲0开始,遍历从0开始,但是setObject的占位符index要求从1开始,所以index=i+1; - for (int i = 0; i < params.length; i++) { - preparedStatement.setObject(i + 1, params[i]); - } - int executeUpdate = preparedStatement.executeUpdate(); - return executeUpdate; - } - - //关闭资源类 - public static boolean closeResource(Connection connection, PreparedStatement preparedStatement, ResultSet resultSet) { - boolean flag = true; - if (resultSet != null) { - try { - resultSet.close(); - //GC垃圾回收 - resultSet = null; - } catch (SQLException throwables) { - throwables.printStackTrace(); - //发生异常,释放资源失败返回false - flag = false; - } - } - if (preparedStatement != null) { - try { - preparedStatement.close(); - preparedStatement = null; - } catch (SQLException throwables) { - throwables.printStackTrace(); - flag = false; - } - } - if (connection != null) { - try { - connection.close(); - connection = null; - } catch (SQLException throwables) { - throwables.printStackTrace(); - flag = false; - } - } - return flag; - } -//@Test -//public void test(){ -// BaseDao baseDao = new BaseDao(); -// Connection connection = BaseDao.getConnection(); -// PreparedStatement preparedStatement = null; -// ResultSet resultSet = null; -// String sql = "select * from smbms_user where userCode = ?"; -// Object[] params = {"admin"}; -// try { -// resultSet = baseDao.execute(connection,preparedStatement,sql,params,resultSet); -// } catch (SQLException throwables) { -// throwables.printStackTrace(); -// } -// try { -// System.out.println(resultSet.getString("userPassword")); -// } catch (SQLException throwables) { -// throwables.printStackTrace(); -// } -////} -//@Test -// public void test2(){ -// new BaseDao(); -//} - - -} - - - diff --git a/smbms/src/main/java/com/xiaokai/dao/bill/BillDao.java b/smbms/src/main/java/com/xiaokai/dao/bill/BillDao.java deleted file mode 100644 index 0f0abd8..0000000 --- a/smbms/src/main/java/com/xiaokai/dao/bill/BillDao.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.xiaokai.dao.bill; - -import com.xiaokai.pojo.Bill; - -import java.sql.Connection; -import java.util.List; - -public interface BillDao { - //增加订单 - public int add(Connection connection, Bill bill)throws Exception; - - //通过条件查询获取供应商列表 - public List getBillList(Connection connection, Bill bill)throws Exception; - - //通过delId删除Bill - public int deleteBillById(Connection connection, String delId)throws Exception; - - //通过billId获取Bill - public Bill getBillById(Connection connection, String id)throws Exception; - - //修改订单信息 - public int modify(Connection connection, Bill bill)throws Exception; - - //根据供应商ID查询订单数量 - public int getBillCountByProviderId(Connection connection, String providerId)throws Exception; -} diff --git a/smbms/src/main/java/com/xiaokai/dao/bill/BillDaoImpl.java b/smbms/src/main/java/com/xiaokai/dao/bill/BillDaoImpl.java deleted file mode 100644 index 61309f1..0000000 --- a/smbms/src/main/java/com/xiaokai/dao/bill/BillDaoImpl.java +++ /dev/null @@ -1,190 +0,0 @@ -package com.xiaokai.dao.bill; - -import com.mysql.jdbc.StringUtils; -import com.xiaokai.dao.BaseDao; -import com.xiaokai.pojo.Bill; - -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.util.ArrayList; -import java.util.List; - -public class BillDaoImpl implements BillDao { - @Override - public int add(Connection connection, Bill bill) throws Exception { - PreparedStatement preparedStatement = null; - int execute = 0; - if (connection!=null){ - String sql = "insert into smbms_bill(billCode, productName, productDesc, productUnit," + - "productCount, totalPrice, isPayment, createdBy, creationDate, providerId) " + - "values (?,?,?,?,?,?,?,?,?,?);"; - Object[] Params = {bill.getBillCode(),bill.getProductName(),bill.getProductDesc(), - bill.getProductUnit(),bill.getProductCount(),bill.getTotalPrice(),bill.getIsPayment(), - bill.getCreatedBy(),bill.getCreationDate(),bill.getProviderId()}; - execute = BaseDao.executeUpdate(connection,preparedStatement,sql,Params); - BaseDao.closeResource(null,preparedStatement,null); - } - return execute; - } - - @Override - public List getBillList(Connection connection, Bill bill) throws Exception { -// PreparedStatement preparedStatement = null; -// ResultSet resultSet = null; -// List billList = new ArrayList();//结果集 -// StringBuffer sql = new StringBuffer();//可以动态变化的sql查询语句 -// if (connection!=null){ -// //拼接sql条件 -// sql.append("select b.*,p.proName as providerName from smbms_bill as b ,smbms_provider as p where b.providerId = p.id "); -// List list = new ArrayList<>();//存params -// if (!StringUtils.isNullOrEmpty(bill.getProductName())){ -// sql.append(" and b.productName like ? "); -// list.add("%"+bill.getProductName()+"%"); -// } -// if (bill.getProviderId() > 0){ -// sql.append(" and b.providerId = ? "); -// list.add(bill.getProviderId()); -// } -// if (bill.getIsPayment() > 0){ -// sql.append(" and b.isPayment = ? "); -// list.add(bill.getIsPayment()); -// } -//// sql.append(";"); -// System.out.println("sql------>"+sql.toString()); -// -// Object[] params = list.toArray(); -// resultSet = BaseDao.execute(connection, preparedStatement, sql.toString(), params, resultSet); -// //使用多个Bill对象存储查询结果,每次将Bill存入billList -// while (resultSet.next()){ -// Bill _bill = new Bill(); -// _bill.setId(resultSet.getInt("id")); -// _bill.setBillCode(resultSet.getString("billCode")); -// _bill.setProductName(resultSet.getString("productName")); -// _bill.setProductDesc(resultSet.getString("productDesc")); -// _bill.setProductUnit(resultSet.getString("productUnit")); -// _bill.setProductCount(resultSet.getBigDecimal("productCount")); -// _bill.setTotalPrice(resultSet.getBigDecimal("totalPrice")); -// _bill.setIsPayment(resultSet.getInt("isPayment")); -// _bill.setProviderId(resultSet.getInt("providerId")); -// _bill.setProviderName(resultSet.getString("providerName")); -// _bill.setCreationDate(resultSet.getTimestamp("creationDate")); -// _bill.setCreatedBy(resultSet.getInt("createdBy")); -// billList.add(_bill); -// } -// BaseDao.closeResource(null,preparedStatement,resultSet); -// } -// return billList; - - PreparedStatement pstm = null; - ResultSet rs = null; - List billList = new ArrayList(); - if(connection != null){ - StringBuffer sql = new StringBuffer(); - sql.append("select b.*,p.proName as providerName from smbms_bill b, smbms_provider p where b.providerId = p.id"); - List list = new ArrayList(); - if(!StringUtils.isNullOrEmpty(bill.getProductName())){ - sql.append(" and productName like ?"); - list.add("%"+bill.getProductName()+"%"); - } - if(bill.getProviderId() > 0){ - sql.append(" and providerId = ?"); - list.add(bill.getProviderId()); - } - if(bill.getIsPayment() > 0){ - sql.append(" and isPayment = ?"); - list.add(bill.getIsPayment()); - } - Object[] params = list.toArray(); - System.out.println("sql --------- > " + sql.toString()); - rs = BaseDao.execute(connection,pstm,sql.toString(),params,rs); - while(rs.next()){ - Bill _bill = new Bill(); - _bill.setId(rs.getInt("id")); - _bill.setBillCode(rs.getString("billCode")); - _bill.setProductName(rs.getString("productName")); - _bill.setProductDesc(rs.getString("productDesc")); - _bill.setProductUnit(rs.getString("productUnit")); - _bill.setProductCount(rs.getBigDecimal("productCount")); - _bill.setTotalPrice(rs.getBigDecimal("totalPrice")); - _bill.setIsPayment(rs.getInt("isPayment")); - _bill.setProviderId(rs.getInt("providerId")); - _bill.setProviderName(rs.getString("providerName")); - _bill.setCreationDate(rs.getTimestamp("creationDate")); - _bill.setCreatedBy(rs.getInt("createdBy")); - billList.add(_bill); - } - BaseDao.closeResource(null, pstm, rs); - } - return billList; - } - - @Override - public int deleteBillById(Connection connection, String delId) throws Exception { - PreparedStatement preparedStatement = null; - int execute = 0; - if (connection!=null){ - String sql = "delete from smbms_bill where id = ? ;"; - //注意delId是int类型,要转换 - Object[] params = {Integer.valueOf(delId)}; - execute = BaseDao.executeUpdate(connection,preparedStatement,sql,params); - } - return execute; - } - - @Override - public Bill getBillById(Connection connection, String id) throws Exception { - PreparedStatement preparedStatement = null; - ResultSet resultSet = null; - Bill bill = null; - if (connection!=null){ - String sql = "select * from smbms_bill where id = ? ;"; - Object[] params = {Integer.valueOf(id)}; - resultSet = BaseDao.execute(connection,preparedStatement,sql,params,resultSet); - if (resultSet.next()){ - bill.setId(resultSet.getInt("id")); - bill.setBillCode(resultSet.getString("billCode")); - bill.setProductName(resultSet.getString("productName")); - bill.setProductDesc(resultSet.getString("productDesc")); - bill.setProductUnit(resultSet.getString("productUnit")); - bill.setProductCount(resultSet.getBigDecimal("productCount")); - bill.setTotalPrice(resultSet.getBigDecimal("totalPrice")); - bill.setIsPayment(resultSet.getInt("isPayment")); - bill.setProviderId(resultSet.getInt("providerId")); - bill.setProviderName(resultSet.getString("providerName")); - bill.setModifyBy(resultSet.getInt("modifyBy")); - bill.setModifyDate(resultSet.getTimestamp("modifyDate")); - } - BaseDao.closeResource(null,preparedStatement,resultSet); - } - return bill; - } - - @Override - public int modify(Connection connection, Bill bill) throws Exception { - PreparedStatement preparedStatement = null; - int execute = 0; - if (connection!=null){ - String sql = "update smbms_bill set productName = ?,productDesc=?,productUnit=?,productCount=?," + - "totalPrice=?,isPayment=?,providerId=?,modifyBy=?,modifyDate=? where id = ?;"; - Object[] params = {bill.getProductName(),bill.getProductDesc(),bill.getProductUnit(),bill.getProductCount(), - bill.getTotalPrice(),bill.getIsPayment(),bill.getProviderId(),bill.getModifyBy(),bill.getModifyDate(),bill.getId()}; - execute = BaseDao.executeUpdate(connection,preparedStatement,sql,params); - } - return execute; - } - - @Override - public int getBillCountByProviderId(Connection connection, String providerId) throws Exception { - PreparedStatement preparedStatement = null; - ResultSet resultSet = null; - int billCount = 0; - if (connection!=null){ - String sql = "select count(1) as billCount from smbms_bill where providerId = ?;"; - Object[] params = {Integer.parseInt(providerId)}; - resultSet = BaseDao.execute(connection,preparedStatement,sql,params,resultSet); - billCount = resultSet.getInt("billCount"); - } - return billCount; - } -} diff --git a/smbms/src/main/java/com/xiaokai/dao/provider/ProviderDao.java b/smbms/src/main/java/com/xiaokai/dao/provider/ProviderDao.java deleted file mode 100644 index 4622746..0000000 --- a/smbms/src/main/java/com/xiaokai/dao/provider/ProviderDao.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.xiaokai.dao.provider; - -import com.xiaokai.pojo.Provider; - -import java.sql.Connection; -import java.util.List; - -public interface ProviderDao { - //增加供应商 - public int add(Connection connection, Provider provider)throws Exception; - - //通过供应商的名称和编码获取供应商信息 - public List getProviderList(Connection connection, String proName, String proCode)throws Exception; - - //通过proId删除Provider - public int deleteProviderById(Connection connection, String delId)throws Exception; - - //通过proId获取Provider - public Provider getProviderById(Connection connection, String id)throws Exception; - - //修改供应商信息 - public int modify(Connection connection, Provider provider)throws Exception; -} diff --git a/smbms/src/main/java/com/xiaokai/dao/provider/ProviderDaoImpl.java b/smbms/src/main/java/com/xiaokai/dao/provider/ProviderDaoImpl.java deleted file mode 100644 index ea15ad4..0000000 --- a/smbms/src/main/java/com/xiaokai/dao/provider/ProviderDaoImpl.java +++ /dev/null @@ -1,135 +0,0 @@ -package com.xiaokai.dao.provider; - -import com.mysql.jdbc.StringUtils; -import com.xiaokai.dao.BaseDao; -import com.xiaokai.pojo.Provider; - -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.util.ArrayList; -import java.util.List; - -public class ProviderDaoImpl implements ProviderDao { - @Override - public int add(Connection connection, Provider provider) throws Exception { - PreparedStatement preparedStatement = null; - int execute = 0; - if (connection!=null){ - String sql = "insert into smbms_provider(proCode, proName, proDesc, proContact, proPhone, " + - " proAddress, proFax, createdBy, creationDate) values (?,?,?,?,?,?,?,?,?);"; - Object[] params = {provider.getProCode(),provider.getProName(),provider.getProDesc(),provider.getProContact(), - provider.getProPhone(),provider.getProAddress(),provider.getProFax(),provider.getCreatedBy(),provider.getCreationDate()}; - try { - execute = BaseDao.executeUpdate(connection,preparedStatement,sql,params); - System.out.println("### ------> add provider success!......"); - } catch (SQLException throwables) { - throwables.printStackTrace(); - System.out.println("### ------> add provider filed!......"); - } - BaseDao.closeResource(null,preparedStatement,null); - } - return execute; - } - - @Override - public List getProviderList(Connection connection, String proName, String proCode) throws Exception { - PreparedStatement preparedStatement = null; - ResultSet resultSet = null; - List providerList = new ArrayList<>(); - - if (connection!=null){ - StringBuffer sql = new StringBuffer(); - List list = new ArrayList<>(); - sql.append("select * from smbms_provider where 1=1 "); - if (!StringUtils.isNullOrEmpty(proName)){ - sql.append(" and proName like ? "); - list.add("%"+proName+"%"); - } - if (!StringUtils.isNullOrEmpty(proCode)){ - sql.append(" and proCode like ? ;"); - list.add("%"+proCode+"%"); - } - sql.append(";"); - System.out.println("sql------>"+sql.toString()); - Object[] params = list.toArray(); - - resultSet = BaseDao.execute(connection,preparedStatement,sql.toString(),params,resultSet); - - while (resultSet.next()){ - Provider _provider = new Provider(); - _provider.setId(resultSet.getInt("id")); - _provider.setProCode(resultSet.getString("proCode")); - _provider.setProName(resultSet.getString("proName")); - _provider.setProDesc(resultSet.getString("proDesc")); - _provider.setProContact(resultSet.getString("proContact")); - _provider.setProPhone(resultSet.getString("proPhone")); - _provider.setProAddress(resultSet.getString("proAddress")); - _provider.setProFax(resultSet.getString("proFax")); - _provider.setCreationDate(resultSet.getTimestamp("creationDate")); - providerList.add(_provider); - } - BaseDao.closeResource(null,preparedStatement,resultSet); - } - return providerList; - } - - @Override - public int deleteProviderById(Connection connection, String delId) throws Exception { - PreparedStatement preparedStatement = null; - int execute = 0; - if (connection!=null){ - String sql = "delete from smbms_provider where id = ? ;"; - Object[] params = {Integer.parseInt(delId)}; - - execute = BaseDao.executeUpdate(null,preparedStatement,sql,params); - - } - return execute; - } - - @Override - public Provider getProviderById(Connection connection, String id) throws Exception { - PreparedStatement preparedStatement = null; - ResultSet resultSet = null; - Provider provider = null; - if (connection!=null){ - String sql = "select * from smbms_provider where id = ? ;"; - Object[] params = {Integer.parseInt(id)}; - resultSet = BaseDao.execute(connection,preparedStatement,sql,params,resultSet); - while (resultSet.next()){ - provider = new Provider(); - provider.setId(resultSet.getInt("id")); - provider.setProCode(resultSet.getString("proCode")); - provider.setProName(resultSet.getString("proName")); - provider.setProDesc(resultSet.getString("proDesc")); - provider.setProContact(resultSet.getString("proContact")); - provider.setProPhone(resultSet.getString("proPhone")); - provider.setProAddress(resultSet.getString("proAddress")); - provider.setProFax(resultSet.getString("proFax")); - provider.setCreatedBy(resultSet.getInt("createdBy")); - provider.setCreationDate(resultSet.getTimestamp("creationDate")); - provider.setModifyBy(resultSet.getInt("modifyBy")); - provider.setModifyDate(resultSet.getTimestamp("modifyDate")); - } - BaseDao.closeResource(null,preparedStatement,resultSet); - } - return provider; - } - - @Override - public int modify(Connection connection, Provider provider) throws Exception { - PreparedStatement preparedStatement = null; - int execute = 0; - if (connection!=null){ - String sql = "update smbms_provider set proName=?,proDesc=?,proContact=?," + - "proPhone=?,proAddress=?,proFax=?,modifyBy=?,modifyDate=? where id = ? "; - Object[] params = {provider.getProName(),provider.getProDesc(),provider.getProContact(),provider.getProPhone(),provider.getProAddress(), - provider.getProFax(),provider.getModifyBy(),provider.getModifyDate(),provider.getId()}; - execute = BaseDao.executeUpdate(connection,preparedStatement,sql,params); - BaseDao.closeResource(null,preparedStatement,null); - } - return execute; - } -} diff --git a/smbms/src/main/java/com/xiaokai/dao/role/RoleDao.java b/smbms/src/main/java/com/xiaokai/dao/role/RoleDao.java deleted file mode 100644 index 5c919c5..0000000 --- a/smbms/src/main/java/com/xiaokai/dao/role/RoleDao.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.xiaokai.dao.role; - -import com.xiaokai.pojo.Role; - -import java.sql.Connection; -import java.util.List; - -public interface RoleDao { - //获取Role角色信息 - public List getRoleList(Connection connection)throws Exception; - -} diff --git a/smbms/src/main/java/com/xiaokai/dao/role/RoleDaoImpl.java b/smbms/src/main/java/com/xiaokai/dao/role/RoleDaoImpl.java deleted file mode 100644 index 9b5354e..0000000 --- a/smbms/src/main/java/com/xiaokai/dao/role/RoleDaoImpl.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.xiaokai.dao.role; - -import com.xiaokai.dao.BaseDao; -import com.xiaokai.pojo.Role; - -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.util.ArrayList; -import java.util.List; - -public class RoleDaoImpl implements RoleDao { - @Override - public List getRoleList(Connection connection) throws Exception { - PreparedStatement preparedStatement = null; - ResultSet resultSet = null; - List roleList = new ArrayList(); - if (connection != null){ - String sql = "select * from smbms_role ; "; - Object[] params = {}; - resultSet = BaseDao.execute(connection,preparedStatement,sql,params,resultSet); - while (resultSet.next()){ - Role role = new Role(); - role.setId(resultSet.getInt("id")); - role.setRoleCode(resultSet.getString("roleCode")); - role.setRoleName(resultSet.getString("roleName")); - roleList.add(role); - } - BaseDao.closeResource(null,preparedStatement,resultSet); - } - return roleList; - } -} diff --git a/smbms/src/main/java/com/xiaokai/dao/user/UserDao.java b/smbms/src/main/java/com/xiaokai/dao/user/UserDao.java deleted file mode 100644 index 4de9369..0000000 --- a/smbms/src/main/java/com/xiaokai/dao/user/UserDao.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.xiaokai.dao.user; - -import com.xiaokai.pojo.User; - -import java.sql.Connection; -import java.sql.SQLException; -import java.util.List; - -public interface UserDao { - //获取登录用户信息 - public User getUserLogin(Connection connection, String userCode) throws SQLException; - //修改密码 - public int updatePwd(Connection connection, int id, String password) throws SQLException; - //增加用户 - public int add(Connection connection, User user)throws Exception; - //通过条件查询userlist - public List getUserList(Connection connection, String userName, int userRole, int currentPageNo, int pageSize)throws Exception; - //通过条件查询用户表记录数 - public int getUserCount(Connection connection, String userName, int userRole)throws Exception; - //通过userid删除user - public int deleteUserById(Connection connection, Integer delId)throws Exception; - //通过userId获取user - public User getUserById(Connection connection, String id)throws Exception; - //修改用户user - public int modify(Connection connection, User user)throws Exception; - - -} diff --git a/smbms/src/main/java/com/xiaokai/dao/user/UserDaoImpl.java b/smbms/src/main/java/com/xiaokai/dao/user/UserDaoImpl.java deleted file mode 100644 index 0f09317..0000000 --- a/smbms/src/main/java/com/xiaokai/dao/user/UserDaoImpl.java +++ /dev/null @@ -1,197 +0,0 @@ -package com.xiaokai.dao.user; - -import com.mysql.jdbc.StringUtils; -import com.xiaokai.dao.BaseDao; -import com.xiaokai.pojo.User; - -import java.sql.*; -import java.util.ArrayList; -import java.util.List; - -public class UserDaoImpl implements UserDao { - //根据userCode获取User - public User getUserLogin(Connection connection, String userCode) throws SQLException { - ResultSet resultSet = null; - PreparedStatement preparedStatement = null; - User user = null; - if (connection!=null){ - String sql = "select * from smbms_user where userCode = ?"; - Object[] params = {userCode}; - //查询userCode对应的数据库信息 - resultSet = BaseDao.execute(connection,preparedStatement, sql, params,resultSet); - //获取User - if (resultSet.next()){ - user = new User(); - user.setId(resultSet.getInt("id")); - user.setUserCode(resultSet.getString("userCode")); - user.setUserName(resultSet.getString("userName")); - user.setUserPassword(resultSet.getString("userPassword")); - user.setGender(resultSet.getInt("gender")); - user.setBirthday(resultSet.getDate("birthday")); - user.setPhone(resultSet.getString("phone")); - user.setAddress(resultSet.getString("address")); - user.setUserRole(resultSet.getInt("userRole")); - user.setCreatedBy(resultSet.getInt("createdBy")); - user.setCreationDate(resultSet.getTimestamp("creationDate")); - user.setModifyBy(resultSet.getInt("modifyBy")); - user.setModifyDate(resultSet.getTimestamp("modifyDate")); - } - //关闭资源 - BaseDao.closeResource(connection,preparedStatement,resultSet); - - } - return user; - } - - //修改密码 - @Override - public int updatePwd(Connection connection, int id, String password) throws SQLException { - PreparedStatement preparedStatement = null; - int execute = 0; - if (connection!=null){ - String sql = "update smbms_user set userPassword = ? where id = ?"; - Object[] Params = {password,id}; - execute = BaseDao.executeUpdate(connection, preparedStatement, sql, Params); - } - return execute; - } - - @Override - public int add(Connection connection, User user) throws Exception { - PreparedStatement preparedStatement = null; - int execute = 0; - if (connection != null){ - String sql ="insert into smbms_user(userCode, userName, userPassword, gender, birthday,"+ - "phone, address, userRole,createdBy, creationDate)"+ - "VALUES (?,?,?,?,?,?,?,?,?,?);"; - Object[] params = {user.getUserCode(),user.getUserName(),user.getUserPassword(),user.getGender(), - user.getBirthday(),user.getPhone(),user.getAddress(),user.getUserRole(), - user.getCreatedBy(),user.getCreationDate()}; - execute = BaseDao.executeUpdate(connection, preparedStatement, sql, params); - BaseDao.closeResource(null,preparedStatement,null); - } - return execute; - } - - @Override - public List getUserList(Connection connection, String userName, int userRole, int currentPageNo, int pageSize) throws Exception { - PreparedStatement preparedStatement = null; - ResultSet resultSet = null; - ArrayList userList = new ArrayList<>();//结果集 - StringBuffer sql = new StringBuffer(); //可以动态变化的sql查询语句,便于增加查询条件 - List list = new ArrayList<>(); - if (connection != null){ - sql.append(" select u.*,r.roleName as userRoleName from smbms_user as u,smbms_role as r where u.userRole = r.id "); - if (!StringUtils.isNullOrEmpty(userName)){ - sql.append(" and u.userName like ? "); - list.add("%"+userName+"%"); - } - if (userRole > 0){ - sql.append(" and u.userRole = ? "); - list.add(userRole); - } - sql.append(" order by creationDate DESC limit ?,? ;"); - list.add((currentPageNo-1)*pageSize); - list.add(pageSize); - - Object[] params = list.toArray(); - System.out.println("sql------>"+sql.toString()); - resultSet = BaseDao.execute(connection, preparedStatement, sql.toString(), params, resultSet); - while (resultSet.next()){ - User _user = new User(); - _user.setId(resultSet.getInt("id")); - _user.setUserCode(resultSet.getString("userCode")); - _user.setUserName(resultSet.getString("userName")); - _user.setGender(resultSet.getInt("gender")); - _user.setBirthday(resultSet.getDate("birthday")); - _user.setPhone(resultSet.getString("phone")); - _user.setUserRole(resultSet.getInt("userRole")); - _user.setUserRoleName(resultSet.getString("userRoleName")); - userList.add(_user); - } - BaseDao.closeResource(null,preparedStatement,resultSet); - } - return userList; - } - - @Override - public int getUserCount(Connection connection, String userName, int userRole) throws Exception { - PreparedStatement preparedStatement = null; - ResultSet resultSet = null; - StringBuffer sql = new StringBuffer();//拼接sql条件 - ArrayList list = new ArrayList<>();//查询条件暂存 - int count = 0; - - if (connection!=null){ - sql.append("select count(1) as count from smbms_user as u ,smbms_role as r where u.userRole = r.id"); - if (StringUtils.isNullOrEmpty(userName)){ - sql.append(" and u.userName like ? "); - list.add("%"+userName+"%"); - } - if (userRole > 0){ - sql.append(" and u.userRole = ? "); - list.add(userRole); - } - sql.append(";"); - System.out.println("------>"+sql.toString()); - Object[] params = list.toArray(); - resultSet = BaseDao.execute(connection, preparedStatement, sql.toString(), params, resultSet); - if (resultSet.next()){ - count = resultSet.getInt("count"); - } - BaseDao.closeResource(null,preparedStatement,resultSet); - } - return count; - } - - @Override - public int deleteUserById(Connection connection, Integer delId) throws Exception { - PreparedStatement preparedStatement = null; - int flag = 0; - if (connection != null){ - String sql = "delete from smbms_user where `id` = ? ;"; - Object[] params = {delId}; - flag = BaseDao.executeUpdate(connection, preparedStatement, sql, params); - BaseDao.closeResource(null,preparedStatement,null); - } - return flag; - } - - @Override - public User getUserById(Connection connection, String id) throws Exception { - PreparedStatement preparedStatement = null; - ResultSet resultSet = null; - User user = null; - if (connection!=null){ - String sql = "select u.*,r.roleName as userRoleName from smbms_user u,smbms_role r where u.id=? and u.userRole = r.id"; - Object[] params = {id}; - resultSet = BaseDao.execute(connection, preparedStatement, sql, params, resultSet); - while (resultSet.next()) { - user.setId(resultSet.getInt("id")); - user.setUserCode(resultSet.getString("userCode")); - user.setUserName(resultSet.getString("userName")); - user.setGender(resultSet.getInt("gender")); - user.setBirthday(resultSet.getDate("birthday")); - user.setPhone(resultSet.getString("phone")); - user.setUserRole(resultSet.getInt("userRole")); - user.setUserRoleName(resultSet.getString("userRoleName")); - } - BaseDao.closeResource(null,preparedStatement,resultSet); - } - return user; - } - - @Override - public int modify(Connection connection, User user) throws Exception { - PreparedStatement preparedStatement = null; - int flag = 0; - if(null != connection) { - String sql = "update smbms_user set userName=?,gender=?,birthday=?,phone=?,address=?,userRole=?,modifyBy=?,modifyDate=? where id = ? "; - Object[] params = {user.getUserName(),user.getGender(),user.getBirthday(),user.getPhone(),user.getAddress(),user.getUserRole(),user.getModifyBy(),user.getModifyDate(),user.getId()}; - flag = BaseDao.executeUpdate(connection, preparedStatement, sql, params); - BaseDao.closeResource(null,preparedStatement,null); - } - return flag; - } - -} diff --git a/smbms/src/main/java/com/xiaokai/filter/CharacterEncodingFilter.java b/smbms/src/main/java/com/xiaokai/filter/CharacterEncodingFilter.java deleted file mode 100644 index ab8ad5a..0000000 --- a/smbms/src/main/java/com/xiaokai/filter/CharacterEncodingFilter.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.xiaokai.filter; - -import javax.servlet.*; -import java.io.IOException; -//字符编码过滤器,设置编码UTF-8 -public class CharacterEncodingFilter implements Filter { - public void init(FilterConfig filterConfig) throws ServletException { - - } - - public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { - servletRequest.setCharacterEncoding("utf-8"); - servletResponse.setCharacterEncoding("utf-8"); - //过滤器放行chain链 - filterChain.doFilter(servletRequest,servletResponse); - } - - public void destroy() { - - } -} diff --git a/smbms/src/main/java/com/xiaokai/filter/SysFilter.java b/smbms/src/main/java/com/xiaokai/filter/SysFilter.java deleted file mode 100644 index e720599..0000000 --- a/smbms/src/main/java/com/xiaokai/filter/SysFilter.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.xiaokai.filter; - -import com.xiaokai.pojo.User; -import com.xiaokai.util.Constants; - -import javax.servlet.*; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; - -public class SysFilter implements Filter { - @Override - public void init(FilterConfig filterConfig) throws ServletException { - Filter.super.init(filterConfig); - } - - @Override - public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { - HttpServletRequest request = (HttpServletRequest) servletRequest; - HttpServletResponse response = (HttpServletResponse) servletResponse; - - User user = (User) request.getSession().getAttribute(Constants.USER_SESSION); - //如果session为空说明没有登陆或者已经注销 - if (user == null){ - response.sendRedirect(request.getContextPath()+"/error.jsp"); - } - filterChain.doFilter(servletRequest,servletResponse); - } - - @Override - public void destroy() { - Filter.super.destroy(); - } -} diff --git a/smbms/src/main/java/com/xiaokai/pojo/Address.java b/smbms/src/main/java/com/xiaokai/pojo/Address.java deleted file mode 100644 index 7312e7a..0000000 --- a/smbms/src/main/java/com/xiaokai/pojo/Address.java +++ /dev/null @@ -1,97 +0,0 @@ -package com.xiaokai.pojo; - -import java.util.Date; - -public class Address { - private Integer id ;//主键id - private String contact;//联系人姓名 - private String addressDesc;//收货地址明细 - private String postCode;//邮编 - private String tel;//联系人电话 - private Integer createdBy;//创建者 - private Date creationDate;//创建时间 - private Integer modifyBy;//修改者 - private Date modifyDate;//修改时间 - private Integer userId;//用户ID - - - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } - - public String getContact() { - return contact; - } - - public void setContact(String contact) { - this.contact = contact; - } - - public String getAddressDesc() { - return addressDesc; - } - - public void setAddressDesc(String addressDesc) { - this.addressDesc = addressDesc; - } - - public String getPostCode() { - return postCode; - } - - public void setPostCode(String postCode) { - this.postCode = postCode; - } - - public String getTel() { - return tel; - } - - public void setTel(String tel) { - this.tel = tel; - } - - public Integer getCreatedBy() { - return createdBy; - } - - public void setCreatedBy(Integer createdBy) { - this.createdBy = createdBy; - } - - public Date getCreationDate() { - return creationDate; - } - - public void setCreationDate(Date creationDate) { - this.creationDate = creationDate; - } - - public Integer getModifyBy() { - return modifyBy; - } - - public void setModifyBy(Integer modifyBy) { - this.modifyBy = modifyBy; - } - - public Date getModifyDate() { - return modifyDate; - } - - public void setModifyDate(Date modifyDate) { - this.modifyDate = modifyDate; - } - - public Integer getUserId() { - return userId; - } - - public void setUserId(Integer userId) { - this.userId = userId; - } -} diff --git a/smbms/src/main/java/com/xiaokai/pojo/Bill.java b/smbms/src/main/java/com/xiaokai/pojo/Bill.java deleted file mode 100644 index 5cd69c8..0000000 --- a/smbms/src/main/java/com/xiaokai/pojo/Bill.java +++ /dev/null @@ -1,130 +0,0 @@ -package com.xiaokai.pojo; - -import java.math.BigDecimal; -import java.text.DecimalFormat; -import java.util.Date; - -public class Bill { - private Integer id; //id - private String billCode; //账单编码 - private String productName; //商品名称 - private String productDesc; //商品描述 - private String productUnit; //商品单位 - private BigDecimal productCount; //商品数量 - private BigDecimal totalPrice; //总金额 - private Integer isPayment; //是否支付 - private Integer providerId; //供应商ID - private Integer createdBy; //创建者 - private Date creationDate; //创建时间 - private Integer modifyBy; //更新者 - private Date modifyDate;//更新时间 - - private String providerName;//供应商名称 - - - public String getProviderName() { - return providerName; - } - public void setProviderName(String providerName) { - this.providerName = providerName; - } - public Integer getId() { - return id; - } - public void setId(Integer id) { - this.id = id; - } - public String getBillCode() { - return billCode; - } - public void setBillCode(String billCode) { - this.billCode = billCode; - } - public String getProductName() { - return productName; - } - public void setProductName(String productName) { - this.productName = productName; - } - public String getProductDesc() { - return productDesc; - } - public void setProductDesc(String productDesc) { - this.productDesc = productDesc; - } - public String getProductUnit() { - return productUnit; - } - public void setProductUnit(String productUnit) { - this.productUnit = productUnit; - } - public BigDecimal getProductCount() { - return productCount; - } - public void setProductCount(BigDecimal productCount) { - this.productCount = productCount; - } - public BigDecimal getTotalPrice() { - return totalPrice; - } - public void setTotalPrice(BigDecimal totalPrice) { - this.totalPrice = totalPrice; - } - public Integer getIsPayment() { - return isPayment; - } - public void setIsPayment(Integer isPayment) { - this.isPayment = isPayment; - } - - public Integer getProviderId() { - return providerId; - } - public void setProviderId(Integer providerId) { - this.providerId = providerId; - } - public Integer getCreatedBy() { - return createdBy; - } - public void setCreatedBy(Integer createdBy) { - this.createdBy = createdBy; - } - public Date getCreationDate() { - return creationDate; - } - public void setCreationDate(Date creationDate) { - this.creationDate = creationDate; - } - public Integer getModifyBy() { - return modifyBy; - } - public void setModifyBy(Integer modifyBy) { - this.modifyBy = modifyBy; - } - public Date getModifyDate() { - return modifyDate; - } - public void setModifyDate(Date modifyDate) { - this.modifyDate = modifyDate; - } - - @Override - public String toString() { - return "Bill{" + - "id=" + id + - ", billCode='" + billCode + '\'' + - ", productName='" + productName + '\'' + - ", productDesc='" + productDesc + '\'' + - ", productUnit='" + productUnit + '\'' + - ", productCount=" + productCount + - ", totalPrice=" + totalPrice + - ", isPayment=" + isPayment + - ", providerId=" + providerId + - ", createdBy=" + createdBy + - ", creationDate=" + creationDate + - ", modifyBy=" + modifyBy + - ", modifyDate=" + modifyDate + - ", providerName='" + providerName + '\'' + - '}'; - } -} diff --git a/smbms/src/main/java/com/xiaokai/pojo/Provider.java b/smbms/src/main/java/com/xiaokai/pojo/Provider.java deleted file mode 100644 index 01bfe01..0000000 --- a/smbms/src/main/java/com/xiaokai/pojo/Provider.java +++ /dev/null @@ -1,108 +0,0 @@ -package com.xiaokai.pojo; - -import java.util.Date; - -public class Provider { - private Integer id; //id - private String proCode; //供应商编码 - private String proName; //供应商名称 - private String proDesc; //供应商描述 - private String proContact; //供应商联系人 - private String proPhone; //供应商电话 - private String proAddress; //供应商地址 - private String proFax; //供应商传真 - private Integer createdBy; //创建者 - private Date creationDate; //创建时间 - private Integer modifyBy; //更新者 - private Date modifyDate;//更新时间 - public Integer getId() { - return id; - } - public void setId(Integer id) { - this.id = id; - } - public String getProCode() { - return proCode; - } - public void setProCode(String proCode) { - this.proCode = proCode; - } - public String getProName() { - return proName; - } - public void setProName(String proName) { - this.proName = proName; - } - public String getProDesc() { - return proDesc; - } - public void setProDesc(String proDesc) { - this.proDesc = proDesc; - } - public String getProContact() { - return proContact; - } - public void setProContact(String proContact) { - this.proContact = proContact; - } - public String getProPhone() { - return proPhone; - } - public void setProPhone(String proPhone) { - this.proPhone = proPhone; - } - public String getProAddress() { - return proAddress; - } - public void setProAddress(String proAddress) { - this.proAddress = proAddress; - } - public String getProFax() { - return proFax; - } - public void setProFax(String proFax) { - this.proFax = proFax; - } - public Integer getCreatedBy() { - return createdBy; - } - public void setCreatedBy(Integer createdBy) { - this.createdBy = createdBy; - } - public Date getCreationDate() { - return creationDate; - } - public void setCreationDate(Date creationDate) { - this.creationDate = creationDate; - } - public Integer getModifyBy() { - return modifyBy; - } - public void setModifyBy(Integer modifyBy) { - this.modifyBy = modifyBy; - } - public Date getModifyDate() { - return modifyDate; - } - public void setModifyDate(Date modifyDate) { - this.modifyDate = modifyDate; - } - - @Override - public String toString() { - return "Provider{" + - "id=" + id + - ", proCode='" + proCode + '\'' + - ", proName='" + proName + '\'' + - ", proDesc='" + proDesc + '\'' + - ", proContact='" + proContact + '\'' + - ", proPhone='" + proPhone + '\'' + - ", proAddress='" + proAddress + '\'' + - ", proFax='" + proFax + '\'' + - ", createdBy=" + createdBy + - ", creationDate=" + creationDate + - ", modifyBy=" + modifyBy + - ", modifyDate=" + modifyDate + - '}'; - } -} diff --git a/smbms/src/main/java/com/xiaokai/pojo/Role.java b/smbms/src/main/java/com/xiaokai/pojo/Role.java deleted file mode 100644 index 57c0e0f..0000000 --- a/smbms/src/main/java/com/xiaokai/pojo/Role.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.xiaokai.pojo; - -import java.util.Date; - -public class Role { - private Integer id; //id - private String roleCode; //角色编码 - private String roleName; //角色名称 - private Integer createdBy; //创建者 - private Date creationDate; //创建时间 - private Integer modifyBy; //更新者 - private Date modifyDate;//更新时间 - - public Integer getId() { - return id; - } - public void setId(Integer id) { - this.id = id; - } - public String getRoleCode() { - return roleCode; - } - public void setRoleCode(String roleCode) { - this.roleCode = roleCode; - } - public String getRoleName() { - return roleName; - } - public void setRoleName(String roleName) { - this.roleName = roleName; - } - public Integer getCreatedBy() { - return createdBy; - } - public void setCreatedBy(Integer createdBy) { - this.createdBy = createdBy; - } - public Date getCreationDate() { - return creationDate; - } - public void setCreationDate(Date creationDate) { - this.creationDate = creationDate; - } - public Integer getModifyBy() { - return modifyBy; - } - public void setModifyBy(Integer modifyBy) { - this.modifyBy = modifyBy; - } - public Date getModifyDate() { - return modifyDate; - } - public void setModifyDate(Date modifyDate) { - this.modifyDate = modifyDate; - } - -} diff --git a/smbms/src/main/java/com/xiaokai/pojo/User.java b/smbms/src/main/java/com/xiaokai/pojo/User.java deleted file mode 100644 index 608a5af..0000000 --- a/smbms/src/main/java/com/xiaokai/pojo/User.java +++ /dev/null @@ -1,116 +0,0 @@ -package com.xiaokai.pojo; - -import java.util.Date; - -public class User { - private Integer id; //id - private String userCode; //用户编码 - private String userName; //用户名称 - private String userPassword; //用户密码 - private Integer gender; //性别 - private Date birthday; //出生日期 - private String phone; //电话 - private String address; //地址 - private Integer userRole; //用户角色 - private Integer createdBy; //创建者 - private Date creationDate; //创建时间 - private Integer modifyBy; //更新者 - private Date modifyDate; //更新时间 - - private Integer age;//年龄 - - private String userRoleName; //用户角色名称 - - - public String getUserRoleName() { - return userRoleName; - } - public void setUserRoleName(String userRoleName) { - this.userRoleName = userRoleName; - } - public Integer getAge() { - /*long time = System.currentTimeMillis()-birthday.getTime(); - Integer age = Long.valueOf(time/365/24/60/60/1000).IntegerValue();*/ - Date date = new Date(); - Integer age = date.getYear()-birthday.getYear(); - return age; - } - public Integer getId() { - return id; - } - public void setId(Integer id) { - this.id = id; - } - public String getUserCode() { - return userCode; - } - public void setUserCode(String userCode) { - this.userCode = userCode; - } - public String getUserName() { - return userName; - } - public void setUserName(String userName) { - this.userName = userName; - } - public String getUserPassword() { - return userPassword; - } - public void setUserPassword(String userPassword) { - this.userPassword = userPassword; - } - public Integer getGender() { - return gender; - } - public void setGender(Integer gender) { - this.gender = gender; - } - public Date getBirthday() { - return birthday; - } - public void setBirthday(Date birthday) { - this.birthday = birthday; - } - public String getPhone() { - return phone; - } - public void setPhone(String phone) { - this.phone = phone; - } - public String getAddress() { - return address; - } - public void setAddress(String address) { - this.address = address; - } - public Integer getUserRole() { - return userRole; - } - public void setUserRole(Integer userRole) { - this.userRole = userRole; - } - public Integer getCreatedBy() { - return createdBy; - } - public void setCreatedBy(Integer createdBy) { - this.createdBy = createdBy; - } - public Date getCreationDate() { - return creationDate; - } - public void setCreationDate(Date creationDate) { - this.creationDate = creationDate; - } - public Integer getModifyBy() { - return modifyBy; - } - public void setModifyBy(Integer modifyBy) { - this.modifyBy = modifyBy; - } - public Date getModifyDate() { - return modifyDate; - } - public void setModifyDate(Date modifyDate) { - this.modifyDate = modifyDate; - } -} diff --git a/smbms/src/main/java/com/xiaokai/service/bill/BillService.java b/smbms/src/main/java/com/xiaokai/service/bill/BillService.java deleted file mode 100644 index 64f35b4..0000000 --- a/smbms/src/main/java/com/xiaokai/service/bill/BillService.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.xiaokai.service.bill; - -import com.xiaokai.pojo.Bill; - -import java.util.List; - -public interface BillService { - //增加订单 - public boolean add(Bill bill); - - //通过条件获取订单列表 - public List getBillList(Bill bill); - - //通过billId删除Bill - public boolean deleteBillById(String delId); - - //通过billId获取Bill - public Bill getBillById(String id); - - //修改订单信息 - public boolean modify(Bill bill); -} diff --git a/smbms/src/main/java/com/xiaokai/service/bill/BillServiceImpl.java b/smbms/src/main/java/com/xiaokai/service/bill/BillServiceImpl.java deleted file mode 100644 index 3d600b3..0000000 --- a/smbms/src/main/java/com/xiaokai/service/bill/BillServiceImpl.java +++ /dev/null @@ -1,135 +0,0 @@ -package com.xiaokai.service.bill; - -import com.xiaokai.dao.BaseDao; -import com.xiaokai.dao.bill.BillDao; -import com.xiaokai.dao.bill.BillDaoImpl; -import com.xiaokai.pojo.Bill; - -import java.sql.Connection; -import java.sql.SQLException; -import java.util.ArrayList; -import java.util.List; - -public class BillServiceImpl implements BillService { - private BillDao billDao = new BillDaoImpl(); - - @Override - public boolean add(Bill bill) { - Connection connection = null; - connection = BaseDao.getConnection(); - boolean flag = false; - try { - connection.setAutoCommit(false); - int add = billDao.add(connection, bill); - if (add > 0){ - flag = true; - } - connection.commit(); - } catch (Exception e) { - e.printStackTrace(); - try { - connection.rollback(); - System.out.println("rollback=================="); - } catch (SQLException throwables) { - throwables.printStackTrace(); - } - }finally { - BaseDao.closeResource(connection,null,null); - } - return flag; - } - - @Override - public List getBillList(Bill bill) { -// Connection connection = null; -// List billList = null; -// -// System.out.println("query productName ---- > " + bill.getProductName()); -// System.out.println("query providerId ---- > " + bill.getProviderId()); -// System.out.println("query isPayment ---- > " + bill.getIsPayment()); -// -// try { -// connection = BaseDao.getConnection(); -// System.out.println(bill.toString()); -// billList = billDao.getBillList(connection,bill); -// -// } catch (Exception e) { -// e.printStackTrace(); -// } finally { -// BaseDao.closeResource(connection,null,null); -// } -// return billList; - - Connection connection = null; - List billList = null; - System.out.println("query productName ---- > " + bill.getProductName()); - System.out.println("query providerId ---- > " + bill.getProviderId()); - System.out.println("query isPayment ---- > " + bill.getIsPayment()); - - try { - connection = BaseDao.getConnection(); - System.out.println(bill.toString()); - billList = billDao.getBillList(connection, bill); - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - }finally{ - BaseDao.closeResource(connection, null, null); - } - return billList; - } - - @Override - public boolean deleteBillById(String delId) { - Connection connection = null; - boolean flag = false; - try { - connection = BaseDao.getConnection(); - int i = billDao.deleteBillById(connection, delId); - if (i>0){ - flag = true; - } - } catch (Exception e) { - e.printStackTrace(); - } finally { - BaseDao.closeResource(connection,null,null); - } - return flag; - } - - @Override - public Bill getBillById(String id) { - Connection connection = null; - Bill bill = null; - try { - connection = BaseDao.getConnection(); - bill = billDao.getBillById(connection, id); - } catch (Exception e) { - e.printStackTrace(); - } finally { - BaseDao.closeResource(connection,null,null); - } - return bill; - } - - @Override - public boolean modify(Bill bill) { - Connection connection = null; - boolean flag = false; - - try { - connection = BaseDao.getConnection(); - connection.setAutoCommit(false); - int i = billDao.modify(connection, bill); - if (i>0){ - flag = true; - } - connection.commit(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - BaseDao.closeResource(connection,null,null); - } - return flag; - } -} diff --git a/smbms/src/main/java/com/xiaokai/service/provider/ProviderService.java b/smbms/src/main/java/com/xiaokai/service/provider/ProviderService.java deleted file mode 100644 index 9d5a7bc..0000000 --- a/smbms/src/main/java/com/xiaokai/service/provider/ProviderService.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.xiaokai.service.provider; - -import com.xiaokai.pojo.Provider; - -import java.sql.SQLException; -import java.util.List; - -public interface ProviderService { - //增加供应商 - public boolean add(Provider provider) throws SQLException; - - //通过供应商名称或者编码获取供应商列表(模糊查询) - public List getProviderList(String proName, String proCode); - - //通过proId删除供应商 - public int deleteProviderById(String delId); - - //通过proId查询供应商 - public Provider getProviderById(String id); - - //修改供应商信息 - public boolean modify(Provider provider); -} diff --git a/smbms/src/main/java/com/xiaokai/service/provider/ProviderServiceImpl.java b/smbms/src/main/java/com/xiaokai/service/provider/ProviderServiceImpl.java deleted file mode 100644 index d6b5503..0000000 --- a/smbms/src/main/java/com/xiaokai/service/provider/ProviderServiceImpl.java +++ /dev/null @@ -1,108 +0,0 @@ -package com.xiaokai.service.provider; - -import com.xiaokai.dao.BaseDao; -import com.xiaokai.dao.provider.ProviderDao; -import com.xiaokai.dao.provider.ProviderDaoImpl; -import com.xiaokai.pojo.Provider; - -import java.sql.Connection; -import java.sql.SQLException; -import java.util.List; - -public class ProviderServiceImpl implements ProviderService { - private ProviderDao providerDao = new ProviderDaoImpl(); - @Override - public boolean add(Provider provider) throws SQLException { - Connection connection = null; - boolean flag = false; - try { - connection = BaseDao.getConnection(); - connection.setAutoCommit(false); - int add = providerDao.add(connection, provider); - if (add > 0){ - flag = true; - } - connection.commit(); - } catch (Exception e) { - connection.rollback(); - e.printStackTrace(); - } finally { - BaseDao.closeResource(connection,null,null); - } - return flag; - } - - @Override - public List getProviderList(String proName, String proCode) { - Connection connection = null; - List providerList = null; - - System.out.println("query proName ---- > " + proName); - System.out.println("query proCode ---- > " + proCode); - - try { - connection = BaseDao.getConnection(); - providerList = providerDao.getProviderList(connection, proName, proCode); - - } catch (Exception e) { - e.printStackTrace(); - } finally { - BaseDao.closeResource(connection,null,null); - } - return providerList; - } - - @Override - public int deleteProviderById(String delId) { - Connection connection = null; - int del = 0; - - try { - connection = BaseDao.getConnection(); - del = providerDao.deleteProviderById(connection,delId); - if (del > 0){ - - } - } catch (Exception e) { - e.printStackTrace(); - } finally { - } - return del; - } - - @Override - public Provider getProviderById(String id) { - Connection connection = null; - Provider provider = null; - try { - connection = BaseDao.getConnection(); - provider = providerDao.getProviderById(connection, id); - } catch (Exception e) { - e.printStackTrace(); - } finally { - BaseDao.closeResource(connection,null,null); - } - return provider; - } - - @Override - public boolean modify(Provider provider) { - Connection connection = null; - boolean flag = false; - - try { - connection = BaseDao.getConnection(); - connection.setAutoCommit(false); - int modify = providerDao.modify(connection, provider); - if (modify > 0){ - flag = true; - } - connection.commit(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - BaseDao.closeResource(connection,null,null); - } - return flag; - } -} diff --git a/smbms/src/main/java/com/xiaokai/service/role/RoleService.java b/smbms/src/main/java/com/xiaokai/service/role/RoleService.java deleted file mode 100644 index 5799aef..0000000 --- a/smbms/src/main/java/com/xiaokai/service/role/RoleService.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.xiaokai.service.role; - -import com.xiaokai.pojo.Role; - -import java.util.List; - -public interface RoleService { - public List getRoleList(); -} diff --git a/smbms/src/main/java/com/xiaokai/service/role/RoleServiceImpl.java b/smbms/src/main/java/com/xiaokai/service/role/RoleServiceImpl.java deleted file mode 100644 index c5c5339..0000000 --- a/smbms/src/main/java/com/xiaokai/service/role/RoleServiceImpl.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.xiaokai.service.role; - -import com.xiaokai.pojo.Role; - -import java.util.List; - -public class RoleServiceImpl implements RoleService { - @Override - public List getRoleList() { - return null; - } -} diff --git a/smbms/src/main/java/com/xiaokai/service/user/UserService.java b/smbms/src/main/java/com/xiaokai/service/user/UserService.java deleted file mode 100644 index b61e7ab..0000000 --- a/smbms/src/main/java/com/xiaokai/service/user/UserService.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.xiaokai.service.user; - -import com.xiaokai.pojo.User; - -import java.sql.Connection; -import java.sql.SQLException; -import java.util.List; - -public interface UserService { - //用户登录 - public User login(String userCode, String password); - //根据用户ID修改密码 - public boolean updatePwd(int id, String password) ; - //增加用户 - public boolean add(User user); - //根据条件分页查询用户列表 - public List getUserList(String queryUserName, int queryUserRole, int currentPageNo, int pageSize); - //根据条件查询用户表记录数 - public int getUserCount(String queryUserName, int queryUserRole); - //根据userCode查询用户 - public User selectUserCodeExist(String userCode); - //根据id删除User - public boolean deleteUserById(Integer delId); - //根据id查找User - public User getUserById(String id); - //更新修改用户信息 - public boolean modify(User user); - -} diff --git a/smbms/src/main/java/com/xiaokai/service/user/UserServiceImpl.java b/smbms/src/main/java/com/xiaokai/service/user/UserServiceImpl.java deleted file mode 100644 index c2e05ed..0000000 --- a/smbms/src/main/java/com/xiaokai/service/user/UserServiceImpl.java +++ /dev/null @@ -1,203 +0,0 @@ -package com.xiaokai.service.user; - -import com.xiaokai.dao.BaseDao; -import com.xiaokai.dao.user.UserDao; -import com.xiaokai.dao.user.UserDaoImpl; -import com.xiaokai.pojo.User; -import org.junit.Test; - -import java.sql.Connection; -import java.sql.SQLException; -import java.util.ArrayList; -import java.util.List; - -public class UserServiceImpl implements UserService { - //业务层都会调用Dao层,所以引入Dao层 - private UserDao userDao; - public UserServiceImpl() { - userDao = new UserDaoImpl(); - } - - public User login(String userCode, String password) { - Connection connection = null; - User user = null; - try { - connection = BaseDao.getConnection(); - //通过业务层调用具体的数据库操作 - user = userDao.getUserLogin(connection,userCode); - } catch (SQLException throwables) { - throwables.printStackTrace(); - }finally { - BaseDao.closeResource(connection,null,null); - } - if (password.equals(user.getUserPassword())){ - return user; - }else { - return null; - } - - - } - //根据用户id修改密码 - @Override - public boolean updatePwd( int id, String password) { - Connection connection = null; - boolean flag = false; - try { - connection = BaseDao.getConnection(); - if (userDao.updatePwd(connection, id, password) > 0){ - flag = true; - } - } catch (SQLException throwables) { - throwables.printStackTrace(); - }finally { - BaseDao.closeResource(connection,null,null); - } - return flag; - } - - //增加用户 - @Override - public boolean add(User user) { - Connection connection = null; - boolean flag = false; - - try { - connection = BaseDao.getConnection(); - connection.setAutoCommit(false); - int updateRows =userDao.add(connection,user); - if (updateRows > 0){ - flag = true; - System.out.println("### add success!"); - }else { - System.out.println("### add failed!"); - } - - } catch (SQLException throwables) { - try { - //sql执行错误回滚 - connection.rollback(); - System.out.println("### rollback========>"); - } catch (SQLException e) { - e.printStackTrace(); - - } - throwables.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - }finally { - //在service层进行connection的连接控制 - BaseDao.closeResource(connection,null,null); - } - return flag; - } - - @Override - public List getUserList(String queryUserName, int queryUserRole, int currentPageNo, int pageSize) { - Connection connection = null; - List userList = null; - System.out.println("### queryUserName======>"+queryUserName); - System.out.println("### queryUserRole======>"+queryUserRole); - System.out.println("### currentPageNo======>"+currentPageNo); - System.out.println("### pageSize======>"+pageSize); - - try { - connection = BaseDao.getConnection(); - userList = userDao.getUserList(connection, queryUserName, queryUserRole, currentPageNo, pageSize); - } catch (Exception e) { - e.printStackTrace(); - } finally { - BaseDao.closeResource(connection,null,null); - } - return userList; - } - - @Override - public int getUserCount(String queryUserName, int queryUserRole) { - int userCount = 0; - Connection connection = null; - - try { - connection = BaseDao.getConnection(); - userCount = userDao.getUserCount(connection,queryUserName,queryUserRole); - } catch (Exception e) { - e.printStackTrace(); - } finally { - BaseDao.closeResource(connection,null,null); - } - return userCount; - } - - @Override - public User selectUserCodeExist(String userCode) { - User user = null; - Connection connection = null; - - try { - connection = BaseDao.getConnection(); - user = userDao.getUserById(connection,userCode); - } catch (Exception e) { - e.printStackTrace(); - } finally { - BaseDao.closeResource(connection,null,null); - } - return user; - } - - @Override - public boolean deleteUserById(Integer delId) { - boolean flag = false; - Connection connection = null; - - try { - connection = BaseDao.getConnection(); - int delRows = userDao.deleteUserById(connection,delId); - if (delRows > 0){ - flag = true; - } - } catch (Exception e) { - System.out.println("### delete failed!"); - e.printStackTrace(); - } finally { - BaseDao.closeResource(connection,null,null); - } - return flag; - } - - @Override - public User getUserById(String id) { - User user = null; - Connection connection = null; - - try { - connection = BaseDao.getConnection(); - user = userDao.getUserById(connection,id); - } catch (Exception e) { - e.printStackTrace(); - } finally { - BaseDao.closeResource(connection,null,null); - } - return user; - } - - @Override - public boolean modify(User user) { - boolean flag = false; - Connection connection = null; - - try { - connection = BaseDao.getConnection(); - int modify = userDao.modify(connection, user); - if (modify > 0){ - flag = true; - } - } catch (Exception e) { - System.out.println("### modify failed!"); - e.printStackTrace(); - } finally { - BaseDao.closeResource(connection,null,null); - } - return flag; - } - -} diff --git a/smbms/src/main/java/com/xiaokai/servlet/bill/BillServlet.java b/smbms/src/main/java/com/xiaokai/servlet/bill/BillServlet.java deleted file mode 100644 index 2978517..0000000 --- a/smbms/src/main/java/com/xiaokai/servlet/bill/BillServlet.java +++ /dev/null @@ -1,243 +0,0 @@ -package com.xiaokai.servlet.bill; - -import com.alibaba.fastjson.JSONArray; -import com.mysql.jdbc.StringUtils; -import com.xiaokai.pojo.Bill; -import com.xiaokai.pojo.Provider; -import com.xiaokai.pojo.User; -import com.xiaokai.service.bill.BillService; -import com.xiaokai.service.bill.BillServiceImpl; -import com.xiaokai.service.provider.ProviderService; -import com.xiaokai.service.provider.ProviderServiceImpl; -import com.xiaokai.util.Constants; - -import javax.print.DocFlavor; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.io.PrintWriter; -import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.Date; -import java.util.HashMap; -import java.util.List; - -public class BillServlet extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - - String method = req.getParameter("method"); - if(method != null && method.equals("query")){ - this.query(req,resp); - }else if(method != null && method.equals("add")){ - this.add(req,resp); - }else if(method != null && method.equals("view")){ - this.getBillById(req,resp,"billview.jsp"); - }else if(method != null && method.equals("modify")){ - this.getBillById(req,resp,"billmodify.jsp"); - }else if(method != null && method.equals("modifysave")){ - this.modify(req,resp); - }else if(method != null && method.equals("delbill")){ - this.delBill(req,resp); - }else if(method != null && method.equals("getproviderlist")){ - this.getProviderlist(req,resp); - } - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req, resp); - } - - private void query(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { -// String queryProductName = req.getParameter("queryProductName"); -// String queryProviderId = req.getParameter("queryProviderId"); -// String queryIsPayment = req.getParameter("queryIsPayment"); -// -// Bill bill = new Bill(); -// List billList = new ArrayList<>(); -// BillService billService = new BillServiceImpl(); -// -// if (StringUtils.isNullOrEmpty(queryProductName)){ -// queryProductName = ""; -// bill.setProviderName(""); -// } -// if (StringUtils.isNullOrEmpty(queryProviderId)){ -// bill.setProviderId(0); -// }else { -// bill.setProviderId(Integer.parseInt(queryProviderId)); -// } -// if (StringUtils.isNullOrEmpty(queryIsPayment)){ -// bill.setIsPayment(0); -// }else { -// bill.setIsPayment(Integer.parseInt(queryIsPayment)); -// } -// bill.setProductName(queryProductName); -// billList = billService.getBillList(bill); -// -// req.setAttribute("billList",billList); -// req.setAttribute("queryProductName",queryProductName); -// req.setAttribute("queryProviderId",queryProviderId); -// req.setAttribute("queryIsPayment",queryIsPayment); -// -// req.getRequestDispatcher("billlist.jsp").forward(req,resp); - - List providerList = new ArrayList(); - ProviderService providerService = new ProviderServiceImpl(); - providerList = providerService.getProviderList("",""); - req.setAttribute("providerList", providerList); - - String queryProductName = req.getParameter("queryProductName"); - String queryProviderId = req.getParameter("queryProviderId"); - String queryIsPayment = req.getParameter("queryIsPayment"); - if(StringUtils.isNullOrEmpty(queryProductName)){ - queryProductName = ""; - } - - List billList = new ArrayList(); - BillService billService = new BillServiceImpl(); - Bill bill = new Bill(); - if (StringUtils.isNullOrEmpty(queryProductName)){ - queryProductName = ""; - bill.setProviderName(""); - }else { - bill.setProductName(queryProductName); - } - if(StringUtils.isNullOrEmpty(queryIsPayment)){ - bill.setIsPayment(0); - }else{ - bill.setIsPayment(Integer.parseInt(queryIsPayment)); - } - - if(StringUtils.isNullOrEmpty(queryProviderId)){ - bill.setProviderId(0); - }else{ - bill.setProviderId(Integer.parseInt(queryProviderId)); - } - - bill.setProductName(queryProductName); - billList = billService.getBillList(bill); - req.setAttribute("billList", billList); - req.setAttribute("queryProductName", queryProductName); - req.setAttribute("queryProviderId", queryProviderId); - req.setAttribute("queryIsPayment", queryIsPayment); - req.getRequestDispatcher("billlist.jsp").forward(req, resp); - - }; - - private void add(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - Bill bill = new Bill(); - boolean flag = false; - BillService billService = new BillServiceImpl(); - - String billCode = req.getParameter("billCode"); - String productName = req.getParameter("productName"); - String productUnit = req.getParameter("productUnit"); - String productCount = req.getParameter("productCount"); - String totalPrice = req.getParameter("totalPrice"); - String providerId = req.getParameter("providerId"); - String isPayment = req.getParameter("isPayment"); - - bill.setBillCode(billCode); - bill.setProductName(productName); - bill.setProductUnit(productUnit); - bill.setProductCount(new BigDecimal(productCount).setScale(2,BigDecimal.ROUND_DOWN)); - bill.setTotalPrice(new BigDecimal(totalPrice).setScale(2,BigDecimal.ROUND_DOWN)); - bill.setProviderId(Integer.parseInt(providerId)); - bill.setIsPayment(Integer.parseInt(isPayment)); - bill.setCreatedBy(((User)req.getSession().getAttribute(Constants.USER_SESSION)).getId()); - bill.setCreationDate(new Date()); - - flag = billService.add(bill); - if (flag){ - resp.sendRedirect(req.getContextPath()+"/jsp/bill.do?method=query"); - }else { - req.getRequestDispatcher("billadd.jsp").forward(req,resp); - } - }; - - private void getBillById(HttpServletRequest req, HttpServletResponse resp, String url) throws ServletException, IOException { - String billid = req.getParameter("billid"); - Bill bill = new Bill(); - BillServiceImpl billService = new BillServiceImpl(); - bill = billService.getBillById(billid); - req.setAttribute("bill",bill); - req.getRequestDispatcher(url).forward(req,resp); - }; - - private void modify(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - String billCode = req.getParameter("billCode"); - String productName = req.getParameter("productName"); - String productUnit = req.getParameter("productUnit"); - String productCount = req.getParameter("productCount"); - String totalPrice = req.getParameter("totalPrice"); - String providerId = req.getParameter("providerId"); - String isPayment = req.getParameter("isPayment"); - - Bill bill = new Bill(); - BillServiceImpl billService = new BillServiceImpl(); - boolean flag = false; - - bill.setBillCode(billCode); - bill.setProductName(productName); - bill.setProductUnit(productUnit); - bill.setProductCount(new BigDecimal(productCount).setScale(2,BigDecimal.ROUND_DOWN)); - bill.setTotalPrice(new BigDecimal(totalPrice).setScale(2,BigDecimal.ROUND_DOWN)); - bill.setProviderId(Integer.parseInt(providerId)); - bill.setIsPayment(Integer.parseInt(isPayment)); - bill.setModifyBy(((User)req.getSession().getAttribute(Constants.USER_SESSION)).getId()); - bill.setModifyDate(new Date()); - - flag = billService.modify(bill); - - if (flag){ - resp.sendRedirect(req.getContextPath()+"/bill.do?method=query"); - }else { - req.getRequestDispatcher("billmodify.jsp").forward(req,resp); - } - - }; - - private void delBill(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - String billid = req.getParameter("billid"); - HashMap resultMap = new HashMap<>(); - if (!StringUtils.isNullOrEmpty(billid)){ - BillServiceImpl billService = new BillServiceImpl(); - boolean flag = billService.deleteBillById(billid); - if (flag){ - resultMap.put("delResult","true"); - }else { - resultMap.put("delResult","false"); - } - }else { - resultMap.put("delResult","notexist"); - } - - //转化为json - resp.setContentType("application/json"); - PrintWriter respWriter = resp.getWriter(); - respWriter.write(JSONArray.toJSONString(resultMap)); - respWriter.flush(); - respWriter.close(); - }; - - private void getProviderlist(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - - ProviderServiceImpl providerService = new ProviderServiceImpl(); - List providerList= new ArrayList(); - System.out.println("getproviderlist ========================="); - providerList = providerService.getProviderList("", ""); - System.out.println(providerList.get(0).toString()); - - - resp.setContentType("application/json"); - PrintWriter respWriter = resp.getWriter(); - respWriter.write(JSONArray.toJSONString(providerList)); - respWriter.flush(); - respWriter.close(); - - }; - -} diff --git a/smbms/src/main/java/com/xiaokai/servlet/provider/ProviderServlet.java b/smbms/src/main/java/com/xiaokai/servlet/provider/ProviderServlet.java deleted file mode 100644 index f384ed6..0000000 --- a/smbms/src/main/java/com/xiaokai/servlet/provider/ProviderServlet.java +++ /dev/null @@ -1,162 +0,0 @@ -package com.xiaokai.servlet.provider; - -import com.alibaba.fastjson.JSONArray; -import com.mysql.jdbc.StringUtils; -import com.xiaokai.pojo.Provider; -import com.xiaokai.pojo.User; -import com.xiaokai.service.provider.ProviderService; -import com.xiaokai.service.provider.ProviderServiceImpl; -import com.xiaokai.util.Constants; - -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.io.PrintWriter; -import java.sql.SQLException; -import java.util.ArrayList; -import java.util.Date; -import java.util.HashMap; -import java.util.List; - -public class ProviderServlet extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - String method = req.getParameter("method"); - if(method != null && method.equals("query")){ - this.query(req,resp); - }else if(method != null && method.equals("add")){ - try { - this.add(req,resp); - } catch (SQLException throwables) { - throwables.printStackTrace(); - } - }else if(method != null && method.equals("view")){ - this.getProviderById(req,resp,"providerview.jsp"); - }else if(method != null && method.equals("modify")){ - this.getProviderById(req,resp,"providermodify.jsp"); - }else if(method != null && method.equals("modifysave")){ - this.modify(req,resp); - }else if(method != null && method.equals("delprovider")){ - this.delProvider(req,resp); - } - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req, resp); - } - - private void query(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - String queryProCode = req.getParameter("queryProCode"); - String queryProName = req.getParameter("queryProName"); - if (StringUtils.isNullOrEmpty(queryProCode)){ - queryProCode = ""; - } - if (StringUtils.isNullOrEmpty(queryProName)){ - queryProName = ""; - } - - List providerList = new ArrayList<>(); - ProviderServiceImpl providerService = new ProviderServiceImpl(); - providerList = providerService.getProviderList(queryProName, queryProCode); - - req.setAttribute("providerList",providerList); - req.setAttribute("queryProCode",queryProCode); - req.setAttribute("queryProName",queryProName); - - req.getRequestDispatcher("providerlist.jsp").forward(req,resp); - - }; - - private void add(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException, SQLException { - String proCode = req.getParameter("proCode"); - String proName = req.getParameter("proName"); - String proContact = req.getParameter("proContact"); - String proPhone = req.getParameter("proPhone"); - String proAddress = req.getParameter("proAddress"); - String proFax = req.getParameter("proFax"); - String proDesc = req.getParameter("proDesc"); - - Provider provider = new Provider(); - provider.setProCode(proCode); - provider.setProName(proName); - provider.setProContact(proContact); - provider.setProPhone(proPhone); - provider.setProAddress(proAddress); - provider.setProFax(proFax); - provider.setProDesc(proDesc); - provider.setCreatedBy(((User)(req.getSession().getAttribute(Constants.USER_SESSION))).getId()); - provider.setCreationDate(new Date()); - - ProviderServiceImpl providerService = new ProviderServiceImpl(); - boolean flag = false; - flag = providerService.add(provider); - if (flag){ - resp.sendRedirect(req.getContextPath()+"/jsp/provider.do?method=query"); - }else { - req.getRequestDispatcher("provideradd.jsp").forward(req,resp); - } - }; - - private void getProviderById(HttpServletRequest req, HttpServletResponse resp,String url) throws ServletException, IOException { - String proid = req.getParameter("proid"); - ProviderServiceImpl providerService = new ProviderServiceImpl(); - Provider provider = null; - provider = providerService.getProviderById(proid); - req.setAttribute("provider",provider); - req.getRequestDispatcher(url).forward(req,resp); - }; - - private void modify(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - String proCode = req.getParameter("proCode"); - String proName = req.getParameter("proName"); - String proContact = req.getParameter("proContact"); - String proPhone = req.getParameter("proPhone"); - String proAddress = req.getParameter("proAddress"); - String proFax = req.getParameter("proFax"); - String proDesc = req.getParameter("proDesc"); - - Provider provider = new Provider(); - provider.setProCode(proCode); - provider.setProName(proName); - provider.setProContact(proContact); - provider.setProPhone(proPhone); - provider.setProAddress(proAddress); - provider.setProFax(proFax); - provider.setProDesc(proDesc); - provider.setModifyBy(((User)req.getSession().getAttribute(Constants.USER_SESSION)).getId()); - provider.setModifyDate(new Date()); - - ProviderService providerService = new ProviderServiceImpl(); - boolean flag = providerService.modify(provider); - if (flag){ - resp.sendRedirect(req.getContextPath()+"/jsp/provider.do?method=query"); - }else { - req.getRequestDispatcher("providermodify.jsp").forward(req,resp); - } - }; - - private void delProvider(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - String proid = req.getParameter("proid"); - ProviderService providerService = new ProviderServiceImpl(); - HashMap resultMap = new HashMap<>(); - if (StringUtils.isNullOrEmpty(proid)) { - int flag = providerService.deleteProviderById(proid); - if (flag > 0) { - resultMap.put("delResult", "true"); - }else { - resultMap.put("delResult","false"); - } - }else { - resultMap.put("delResult","notexist"); - } - - resp.setContentType("application/json"); - PrintWriter respWriter = resp.getWriter(); - respWriter.write(JSONArray.toJSONString(resultMap)); - respWriter.flush(); - respWriter.close(); - }; -} diff --git a/smbms/src/main/java/com/xiaokai/servlet/user/LoginServlet.java b/smbms/src/main/java/com/xiaokai/servlet/user/LoginServlet.java deleted file mode 100644 index 318d675..0000000 --- a/smbms/src/main/java/com/xiaokai/servlet/user/LoginServlet.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.xiaokai.servlet.user; - -import com.xiaokai.pojo.User; -import com.xiaokai.service.user.UserService; -import com.xiaokai.service.user.UserServiceImpl; -import com.xiaokai.util.Constants; - -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; - -public class LoginServlet extends HttpServlet { - //控制层调用业务层的代码 - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - System.out.println("###LoginServlet--start..."); - //获取用户名和密码 - String userCode = req.getParameter("userCode"); - String userPassword = req.getParameter("userPassword"); - - //使用业务层代码,查询数据库,比对登录信息 - UserService userService = new UserServiceImpl(); - User user = userService.login(userCode, userPassword); - - //如果查询不为空,说明用户存在, - if (user!=null){ - //将用户信息放到session - req.getSession().setAttribute(Constants.USER_SESSION,user); - //跳转到内部主页 - resp.sendRedirect("/jsp/frame.jsp"); - }else { - //查无此人,返回登录,提示错误 - req.setAttribute("error","用户名或者密码错误"); - req.getRequestDispatcher("login.jsp").forward(req,resp); - } - - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req, resp); - } -} diff --git a/smbms/src/main/java/com/xiaokai/servlet/user/LogoutServlet.java b/smbms/src/main/java/com/xiaokai/servlet/user/LogoutServlet.java deleted file mode 100644 index afef21d..0000000 --- a/smbms/src/main/java/com/xiaokai/servlet/user/LogoutServlet.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.xiaokai.servlet.user; - -import com.xiaokai.util.Constants; - -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; - -public class LogoutServlet extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - //清除session - req.getSession().removeAttribute(Constants.USER_SESSION); - //返回登录 - resp.sendRedirect(req.getContextPath()+"/login.jsp"); - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } -} diff --git a/smbms/src/main/java/com/xiaokai/servlet/user/UserServlet.java b/smbms/src/main/java/com/xiaokai/servlet/user/UserServlet.java deleted file mode 100644 index f999de6..0000000 --- a/smbms/src/main/java/com/xiaokai/servlet/user/UserServlet.java +++ /dev/null @@ -1,353 +0,0 @@ -package com.xiaokai.servlet.user; - -import com.alibaba.fastjson.JSONArray; -import com.mysql.jdbc.StringUtils; -import com.xiaokai.pojo.Role; -import com.xiaokai.pojo.User; -import com.xiaokai.service.role.RoleService; -import com.xiaokai.service.role.RoleServiceImpl; -import com.xiaokai.service.user.UserService; -import com.xiaokai.service.user.UserServiceImpl; -import com.xiaokai.util.Constants; -import com.xiaokai.util.PageSupport; -import org.apache.taglibs.standard.tlv.JstlSqlTLV; - -import javax.servlet.ServletException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.io.PrintWriter; -import java.sql.Connection; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Date; -import java.util.HashMap; -import java.util.List; - -public class UserServlet extends HttpServlet { - @Override - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - String method = req.getParameter("method"); - if (method!=null && method.equals("savepwd")){ - this.updatePwd(req,resp); - }else if (method!=null && method.equals("pwdmodify")){ - this.pwdmodify(req,resp); - }else if(method != null && method.equals("add")){ - this.add(req,resp); - }else if(method != null && method.equals("query")){ - this.query(req,resp); - }else if(method != null && method.equals("getrolelist")){ - this.getRoleList(req,resp); - }else if(method != null && method.equals("ucexist")){ - this.userCodeExist(req,resp); - }else if(method != null && method.equals("deluser")){ - this.delUser(req,resp); - }else if(method != null && method.equals("view")){ - this.getUserById(req,resp,"userview.jsp"); - }else if(method != null && method.equals("modify")){ - this.getUserById(req,resp,"usermodify.jsp"); - }else if(method != null && method.equals("modifyexe")){ - this.modify(req,resp); - } - } - - @Override - protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - doGet(req,resp); - } - //提取方法,修改密码 - public void updatePwd(HttpServletRequest req, HttpServletResponse resp){ - //从session里面拿ID - Object o = req.getSession().getAttribute(Constants.USER_SESSION); - String newpassword = req.getParameter("newpassword"); - - boolean flag = false; - - if (o!=null && !StringUtils.isNullOrEmpty(newpassword)){ - UserService userService = new UserServiceImpl(); - flag = userService.updatePwd(((User) o).getId(),newpassword); - - if (flag){ - req.setAttribute("message","修改密码成功,请使用新密码重新登陆"); - //修改密码成功后,移除当前session - req.getSession().removeAttribute(Constants.USER_SESSION); - }else { - req.setAttribute("message","密码修改失败"); - } - }else { - req.setAttribute("message","新密码有问题"); - } - try { - req.getRequestDispatcher("pwdmodify.jsp").forward(req,resp); - } catch (ServletException e) { - e.printStackTrace(); - } catch (IOException e) { - e.printStackTrace(); - } - } - - //Ajax·验证旧密码 - public void pwdmodify(HttpServletRequest request,HttpServletResponse response){ - Object o = request.getSession().getAttribute(Constants.USER_SESSION); - String oldpassword = request.getParameter("oldpassword"); - - //结果集resultMap - HashMap resultMap = new HashMap(); - - //判断旧密码与session中的密码是否一致 - if (o == null){ - //说明session过期或者没有session - resultMap.put("result","sessionerror"); - } else if (StringUtils.isNullOrEmpty(oldpassword)){ - //说明旧密码为空 - resultMap.put("result","error"); - }else if (!((User)o).getUserPassword().equals(oldpassword)){ - //旧密码不正确 - resultMap.put("result","false"); - }else if (((User)o).getUserPassword().equals(oldpassword)){ - resultMap.put("result","true"); - } - - response.setContentType("application/json"); - try { - //将HashMap转化为JSON给到前端js - PrintWriter writer = response.getWriter(); - writer.write(JSONArray.toJSONString(resultMap)); - writer.flush(); - writer.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - - //增加用户 - public void add(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - System.out.println("add()================"); - String userCode = req.getParameter("userCode"); - String userName = req.getParameter("userName"); - String userPassword = req.getParameter("userPassword"); - String gender = req.getParameter("gender"); - String birthday = req.getParameter("birthday"); - String phone = req.getParameter("phone"); - String address = req.getParameter("address"); - String userRole = req.getParameter("userRole"); - - User user = new User(); - user.setUserCode(userCode); - user.setUserName(userName); - user.setUserPassword(userPassword); - user.setGender(Integer.valueOf(gender)); - try { - user.setBirthday(new SimpleDateFormat("yyyy-MM-dd").parse(birthday)); - } catch (ParseException e) { - e.printStackTrace(); - } - user.setPhone(phone); - user.setAddress(address); - user.setUserRole(Integer.valueOf(userRole)); - - UserServiceImpl userService = new UserServiceImpl(); - if (userService.add(user)){ - resp.setContentType(req.getContextPath()+"/jsp/user.do?method=query"); - }else { - req.getRequestDispatcher("useradd.jsp").forward(req,resp); - } - } - - //分页查询用户信息 - public void query(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException { - //从前端获取数据 - String queryUserName = req.getParameter("queryname"); - String temp = req.getParameter("queryUserRole"); - String pageIndex = req.getParameter("pageIndex"); - int queryUserRole = 0; - - //获取用户列表 - UserServiceImpl userService = new UserServiceImpl(); - List userList = null; - //默认页面大小 - int pageSize = Constants.pageSize; - //第一次默认查询一定是第一页的,默认为1 - int currentPageNo = 1; - System.out.println("### queryname servlet======>"+queryUserName); - System.out.println("### queryUserRole servlet======>"+temp); - System.out.println("### pageIndex servlet======>"+pageIndex); - - //给查询调整参数符合规范 - if (queryUserName == null){ - queryUserName = ""; - } - if (temp != null && !temp.equals("")){ - queryUserRole = Integer.parseInt(temp); - } - if (pageIndex != null){ - try { - currentPageNo = Integer.valueOf(pageIndex); - } catch (NumberFormatException e) { - resp.sendRedirect("error.jsp"); - } - } - - //查询总数 - int totalCount = userService.getUserCount(queryUserName,queryUserRole); - //总页数 - PageSupport pageSupport = new PageSupport(); - pageSupport.setCurrentPageNo(currentPageNo); - pageSupport.setPageSize(pageSize); - pageSupport.setTotalPageCount(totalCount); - - int totalPageCount = pageSupport.getTotalPageCount(); - - //控制首页尾页 - if (currentPageNo < 1){ - currentPageNo = 1; - }else if (currentPageNo > totalPageCount){ - currentPageNo = totalPageCount; - } - - //查询 - userList = userService.getUserList(queryUserName,queryUserRole,currentPageNo,pageSize); - req.setAttribute("userList",userList); - List roleList = null; - RoleService roleService = new RoleServiceImpl(); - roleList = roleService.getRoleList(); - req.setAttribute("roleList",roleList); - req.setAttribute("queryUserName",queryUserName); - req.setAttribute("queryUserRole",queryUserRole); - req.setAttribute("totalPageCount",totalPageCount); - req.setAttribute("totalCount",totalCount); - req.setAttribute("currentPageNo",currentPageNo); - req.getRequestDispatcher("userlist.jsp").forward(req,resp); - } - - //在add或者modify用户时使用ajax获取可选择的角色list - public void getRoleList(HttpServletRequest req, HttpServletResponse resp) throws IOException { - List roleList = null; - RoleService roleService = new RoleServiceImpl(); - roleList = roleService.getRoleList(); - //将roleList装换成json数据输出 - resp.setContentType("application/json"); - PrintWriter writer = resp.getWriter(); - writer.write(JSONArray.toJSONString(roleList)); - writer.flush(); - writer.close(); - } - - //ajax后台验证--userCode是否已存在 - public void userCodeExist(HttpServletRequest req, HttpServletResponse resp) throws IOException { - //判断用户账号是否可用 - //前端获取数据 - String userCode = req.getParameter("userCode"); - //Ajax结果集 - HashMap resultMap = new HashMap(); - - //判断是否存在 - if (StringUtils.isNullOrEmpty(userCode)){ - resultMap.put("result","exist"); - } else { - UserService userService = new UserServiceImpl(); - User user = userService.selectUserCodeExist(userCode); - if (user != null){ - resultMap.put("result","exist"); - }else { - resultMap.put("result","notexist"); - } - } - - //配置将HashMap转化为json; - //配置响应文本类型 - resp.setContentType("application/json"); - //获取输出对象 - PrintWriter respWriter = resp.getWriter(); - respWriter.write(JSONArray.toJSONString(resultMap)); - respWriter.flush(); - respWriter.close(); - } - - //删除用户 - public void delUser(HttpServletRequest req, HttpServletResponse resp) throws IOException { - //根据前端传的id删除用户 - String userid = req.getParameter("userid"); - int delId = 0; - try { - delId = Integer.parseInt(userid); - } catch (NumberFormatException e) { - delId = 0; - } - //ajax结果集 - HashMap resultMap = new HashMap(); - if (delId <= 0 ){ - resultMap.put("result","notexist"); - }else { - UserService userService = new UserServiceImpl(); - boolean flag = userService.deleteUserById(delId); - if (!flag){ - resultMap.put("result","false"); - }else { - resultMap.put("result","true"); - } - } - //将HashMap转化为Json - resp.setContentType("application/json"); - PrintWriter respWriter = resp.getWriter(); - respWriter.write(JSONArray.toJSONString(resultMap)); - respWriter.flush(); - respWriter.close(); - } - - //通过id获取详细用户信息 - public void getUserById(HttpServletRequest req, HttpServletResponse resp,String url) throws ServletException, IOException { - String uid = req.getParameter("uid"); - if (StringUtils.isNullOrEmpty(uid)){ - UserService userService = new UserServiceImpl(); - User user = userService.getUserById(uid); - req.setAttribute("user",user); - req.getRequestDispatcher(url).forward(req,resp); - } - } - - //修改用户信息 - public void modify(HttpServletRequest req, HttpServletResponse resp){ - String id = req.getParameter("uid"); - String userName = req.getParameter("userName"); - String gender = req.getParameter("gender"); - String birthday = req.getParameter("birthday"); - String phone = req.getParameter("phone"); - String address = req.getParameter("address"); - String userRole = req.getParameter("userRole"); - - UserServiceImpl userService = new UserServiceImpl(); - User user = new User(); - - user.setId(Integer.valueOf(id)); - user.setUserName(userName); - user.setGender(Integer.valueOf(gender)); - try { - user.setBirthday(new SimpleDateFormat("yyyy-MM-dd").parse(birthday)); - } catch (ParseException e) { - e.printStackTrace(); - } - user.setPhone(phone); - user.setAddress(address); - user.setUserRole(Integer.valueOf(userRole)); - user.setModifyBy(((User)req.getSession().getAttribute(Constants.USER_SESSION)).getId()); - user.setModifyDate(new Date()); - - if (userService.modify(user)){ - resp.setContentType(req.getContextPath()+"/jsp/user.do?method=query"); - } else { - try { - req.getRequestDispatcher("usermodify.jsp").forward(req,resp); - } catch (ServletException e) { - e.printStackTrace(); - } catch (IOException e) { - e.printStackTrace(); - } - } - - - - } -} diff --git a/smbms/src/main/java/com/xiaokai/util/Constants.java b/smbms/src/main/java/com/xiaokai/util/Constants.java deleted file mode 100644 index c8bfec0..0000000 --- a/smbms/src/main/java/com/xiaokai/util/Constants.java +++ /dev/null @@ -1,7 +0,0 @@ -package com.xiaokai.util; - -public class Constants { - public static final String USER_SESSION = "userSession"; - public final static String SYS_MESSAGE = "message"; - public final static int pageSize = 5; -} diff --git a/smbms/src/main/java/com/xiaokai/util/PageSupport.java b/smbms/src/main/java/com/xiaokai/util/PageSupport.java deleted file mode 100644 index a1e7450..0000000 --- a/smbms/src/main/java/com/xiaokai/util/PageSupport.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.xiaokai.util; -//页面条目管理 -public class PageSupport { - //当前页码-来自于用户输入 - private int currentPageNo = 1; - - //总数量(表) - private int totalCount = 0; - - //页面容量 - private int pageSize = 0; - - //总页数-totalCount/pageSize(+1) - private int totalPageCount = 1; - - public int getCurrentPageNo() { - return currentPageNo; - } - - public void setCurrentPageNo(int currentPageNo) { - if(currentPageNo > 0){ - this.currentPageNo = currentPageNo; - } - } - - public int getTotalCount() { - return totalCount; - } - - public void setTotalCount(int totalCount) { - if(totalCount > 0){ - this.totalCount = totalCount; - //设置总页数 - this.setTotalPageCountByRs(); - } - } - public int getPageSize() { - return pageSize; - } - - public void setPageSize(int pageSize) { - if(pageSize > 0){ - this.pageSize = pageSize; - } - } - - public int getTotalPageCount() { - return totalPageCount; - } - - public void setTotalPageCount(int totalPageCount) { - this.totalPageCount = totalPageCount; - } - - //计算总页数 - public void setTotalPageCountByRs(){ - if(this.totalCount % this.pageSize == 0){ - this.totalPageCount = this.totalCount / this.pageSize; - }else if(this.totalCount % this.pageSize > 0){ - this.totalPageCount = this.totalCount / this.pageSize + 1; - }else{ - this.totalPageCount = 0; - } - } - -} diff --git a/smbms/src/main/webapp/WEB-INF/web.xml b/smbms/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index d64059f..0000000 --- a/smbms/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,81 +0,0 @@ - - - - - - 30 - - - - CharacterEncodingFilter - com.xiaokai.filter.CharacterEncodingFilter - - - CharacterEncodingFilter - /* - - - - SysFilter - com.xiaokai.filter.SysFilter - - - SysFilter - /jsp/* - - - - /login.jsp - - - - LoginServlet - com.xiaokai.servlet.user.LoginServlet - - - LoginServlet - /login.do - - - - LogoutServlet - com.xiaokai.servlet.user.LogoutServlet - - - LogoutServlet - /jsp/logout.do - - - - UserServlet - com.xiaokai.servlet.user.UserServlet - - - UserServlet - /jsp/user.do - - - - BillServlet - com.xiaokai.servlet.bill.BillServlet - - - BillServlet - /jsp/bill.do - - - - ProviderServlet - com.xiaokai.servlet.provider.ProviderServlet - - - ProviderServlet - /jsp/provider.do - - - diff --git a/smbms/src/main/webapp/calendar/My97DatePicker.htm b/smbms/src/main/webapp/calendar/My97DatePicker.htm deleted file mode 100644 index 82c5ca8..0000000 --- a/smbms/src/main/webapp/calendar/My97DatePicker.htm +++ /dev/null @@ -1,49 +0,0 @@ - - - -My97DatePicker - - - - - - - - \ No newline at end of file diff --git a/smbms/src/main/webapp/calendar/WdatePicker.js b/smbms/src/main/webapp/calendar/WdatePicker.js deleted file mode 100644 index eec5c31..0000000 --- a/smbms/src/main/webapp/calendar/WdatePicker.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * My97 DatePicker 4.7 Beta5 - * License: http://www.my97.net/dp/license.asp - */ -var $dp,WdatePicker;(function(){var _={ -$wdate:true, -$dpPath:"", -$crossFrame:true, -doubleCalendar:false, -enableKeyboard:true, -autoUpdateOnChanged:null, -whichDayIsfirstWeek:4, -position:{}, -lang:"auto", -skin:"default", -dateFmt:"yyyy-MM-dd", -realDateFmt:"yyyy-MM-dd", -realTimeFmt:"HH:mm:ss", -realFullFmt:"%Date %Time", -minDate:"1900-01-01 00:00:00", -maxDate:"2099-12-31 23:59:59", -startDate:"", -alwaysUseStartDate:false, -yearOffset:1911, -firstDayOfWeek:0, -isShowWeek:false, -highLineWeekDay:true, -isShowClear:true, -isShowToday:true, -isShowOK:true, -isShowOthers:true, -readOnly:false, -errDealMode:0, -autoPickDate:null, -qsEnabled:true, - -specialDates:null,specialDays:null,disabledDates:null,disabledDays:null,opposite:false,onpicking:null,onpicked:null,onclearing:null,oncleared:null,ychanging:null,ychanged:null,Mchanging:null,Mchanged:null,dchanging:null,dchanged:null,Hchanging:null,Hchanged:null,mchanging:null,mchanged:null,schanging:null,schanged:null,eCont:null,vel:null,errMsg:"",quickSel:[],has:{}};WdatePicker=U;var X=window,O="document",J="documentElement",C="getElementsByTagName",V,A,T,I,b;switch(navigator.appName){case"Microsoft Internet Explorer":T=true;break;case"Opera":b=true;break;default:I=true;break}A=L();if(_.$wdate)M(A+"skin/WdatePicker.css");V=X;if(_.$crossFrame){try{while(V.parent[O]!=V[O]&&V.parent[O][C]("frameset").length==0)V=V.parent}catch(P){}}if(!V.$dp)V.$dp={ff:I,ie:T,opera:b,el:null,win:X,status:0,defMinDate:_.minDate,defMaxDate:_.maxDate,flatCfgs:[]};B();if($dp.status==0)Z(X,function(){U(null,true)});if(!X[O].docMD){E(X[O],"onmousedown",D);X[O].docMD=true}if(!V[O].docMD){E(V[O],"onmousedown",D);V[O].docMD=true}E(X,"onunload",function(){if($dp.dd)Q($dp.dd,"none")});function B(){V.$dp=V.$dp||{};obj={$:function($){return(typeof $=="string")?X[O].getElementById($):$},$D:function($,_){return this.$DV(this.$($).value,_)},$DV:function(_,$){if(_!=""){this.dt=$dp.cal.splitDate(_,$dp.cal.dateFmt);if($)for(var B in $)if(this.dt[B]===undefined)this.errMsg="invalid property:"+B;else{this.dt[B]+=$[B];if(B=="M"){var C=$["M"]>0?1:0,A=new Date(this.dt["y"],this.dt["M"],0).getDate();this.dt["d"]=Math.min(A+C,this.dt["d"])}}if(this.dt.refresh())return this.dt}return""},show:function(){Q(this.dd,"block")},hide:function(){Q(this.dd,"none")},attachEvent:E};for(var $ in obj)V.$dp[$]=obj[$];$dp=V.$dp}function E(A,$,_){if(T)A.attachEvent($,_);else{var B=$.replace(/on/,"");_._ieEmuEventHandler=function($){return _($)};A.addEventListener(B,_._ieEmuEventHandler,false)}}function L(){var _,A,$=X[O][C]("script");for(var B=0;B<$.length;B++){_=$[B].src.substring(0,$[B].src.toLowerCase().indexOf("wdatepicker.js"));A=_.lastIndexOf("/");if(A>0)_=_.substring(0,A+1);if(_)break}return _}function F(F){var E,C;if(F.substring(0,1)!="/"&&F.indexOf("://")==-1){E=V.location.href;C=location.href;if(E.indexOf("?")>-1)E=E.substring(0,E.indexOf("?"));if(C.indexOf("?")>-1)C=C.substring(0,C.indexOf("?"));var G,I,$="",D="",A="",J,H,B="";for(J=0;J_.scrollTop||A.scrollLeft>_.scrollLeft))?A:_;return{"top":B.scrollTop,"left":B.scrollLeft}}function D($){src=$?($.srcElement||$.target):null;if($dp&&$dp.cal&&!$dp.eCont&&$dp.dd&&src!=$dp.el&&$dp.dd.style.display=="block")$dp.cal.close()}function Y(){$dp.status=2;H()}function H(){if($dp.flatCfgs.length>0){var $=$dp.flatCfgs.shift();$.el={innerHTML:""};$.autoPickDate=true;$.qsEnabled=false;K($)}}var R,$;function U(J,C){$dp.win=X;B();J=J||{};if(C){if(!G()){$=$||setInterval(function(){if(V[O].readyState=="complete")clearInterval($);U(null,true)},50);return}if($dp.status==0){$dp.status=1;K({el:{innerHTML:""}},true)}else return}else if(J.eCont){J.eCont=$dp.$(J.eCont);$dp.flatCfgs.push(J);if($dp.status==2)H()}else{if($dp.status==0){U(null,true);return}if($dp.status!=2)return;var F=D();if(F){$dp.srcEl=F.srcElement||F.target;F.cancelBubble=true}J.el=$dp.$(J.el||$dp.srcEl);if(!J.el||J.el["My97Mark"]===true||J.el.disabled||(J.el==$dp.el&&Q($dp.dd)!="none"&&$dp.dd.style.left!="-1970px")){J.el["My97Mark"]=false;return}K(J);if(J.el.nodeType==1&&J.el["My97Mark"]===undefined){$dp.el["My97Mark"]=false;var _,A;if(F.type=="focus"){_="onclick";A="onfocus"}else{_="onfocus";A="onclick"}E(J.el,_,J.el[A])}}function G(){if(T&&V!=X&&V[O].readyState!="complete")return false;return true}function D(){if(I){func=D.caller;while(func!=null){var $=func.arguments[0];if($&&($+"").indexOf("Event")>=0)return $;func=func.caller}return null}return event}}function S(_,$){return _.currentStyle?_.currentStyle[$]:document.defaultView.getComputedStyle(_,false)[$]}function Q(_,$){if(_)if($!=null)_.style.display=$;else return S(_,"display")}function K(H,$){for(var D in _)if(D.substring(0,1)!="$")$dp[D]=_[D];for(D in H)if($dp[D]!==undefined)$dp[D]=H[D];var E=$dp.el?$dp.el.nodeName:"INPUT";if($||$dp.eCont||new RegExp(/input|textarea|div|span|p|a/ig).test(E))$dp.elProp=E=="INPUT"?"value":"innerHTML";else return;if($dp.lang=="auto")$dp.lang=T?navigator.browserLanguage.toLowerCase():navigator.language.toLowerCase();if(!$dp.dd||$dp.eCont||($dp.lang&&$dp.realLang&&$dp.realLang.name!=$dp.lang&&$dp.getLangIndex&&$dp.getLangIndex($dp.lang)>=0)){if($dp.dd&&!$dp.eCont)V[O].body.removeChild($dp.dd);if(_.$dpPath=="")F(A);var B="";if($dp.eCont){$dp.eCont.innerHTML=B;Z($dp.eCont.childNodes[0],Y)}else{$dp.dd=V[O].createElement("DIV");$dp.dd.style.cssText="position:absolute;z-index:19700";$dp.dd.innerHTML=B;V[O].body.appendChild($dp.dd);Z($dp.dd.childNodes[0],Y);if($)$dp.dd.style.left=$dp.dd.style.top="-1970px";else{$dp.show();C()}}}else if($dp.cal){$dp.show();$dp.cal.init();if(!$dp.eCont)C()}function C(){var F=$dp.position.left,B=$dp.position.top,C=$dp.el;if(C!=$dp.srcEl&&(Q(C)=="none"||C.type=="hidden"))C=$dp.srcEl;var H=W(C),$=G(X),D=N(V),A=a(V),E=$dp.dd.offsetHeight,_=$dp.dd.offsetWidth;if(isNaN(B)){if(B=="above"||(B!="under"&&(($.topM+H.bottom+E>D.height)&&($.topM+H.top-E>0))))B=A.top+$.topM+H.top-E-3;else B=A.top+$.topM+Math.min(H.bottom,D.height-E);B+=T?-1:1}else B+=A.top+$.topM;if(isNaN(F))F=A.left+Math.min($.leftM+H.left,D.width-_-5)-(T?2:0);else F+=A.left+$.leftM;$dp.dd.style.top=B+"px";$dp.dd.style.left=F+"px"}}})() \ No newline at end of file diff --git a/smbms/src/main/webapp/calendar/calendar.js b/smbms/src/main/webapp/calendar/calendar.js deleted file mode 100644 index 5bac81f..0000000 --- a/smbms/src/main/webapp/calendar/calendar.js +++ /dev/null @@ -1,5 +0,0 @@ -/* - * My97 DatePicker 4.7 Beta5 - * License: http://www.my97.net/dp/license.asp - */ -eval(function(B,D,A,G,E,F){function C(A){return A<62?String.fromCharCode(A+=A<26?65:A<52?71:-4):A<63?'_':A<64?'$':C(A>>6)+C(A&63)}while(A>0)E[C(G--)]=D[--A];return B.replace(/[\w\$]+/g,function(A){return E[A]==F[A]?A:E[A]})}('l f;e(FP){FD.Co.__defineSetter__("Fd",9(c){e(!c){q.Bq();}4 c;});FD.Co.__defineGetter__("FL",9(){l c=q.GG;DH(c.FZ!=V){c=c.parentNode;}4 c;});HTMLElement.Co.C8=9(b,A){l c=b.6(/Ez/,"");A.El=9(c){GA.BZ=c;4 A();};q.addEventListener(c,A.El,2);};}9 EX(){f=q;q.Cj=[];d=Bs.createElement("m");d._="EN";d.BW=\'
&Dw;
\';GC(d,9(){C5();});c();j.Bb=[Bs,d.BV,d.BA,d.CT,d.DF,d.DR,d.CR,d.Bp,d.Bc];p(l A=U;A=U?BS+V:V;e(BS%Y==U){d.BA.Bw();4;}d.BA.1=k.T+V;d.BA.CK();};}}EX.Co={Fj:9(){BS=U;j.cal=q;e(j.Cz&&j.g.Cz!=u){j.g.Cz=s;j.g.D6();}c();q.FC();k=q.E2=o BN();BI=o BN();BF=q.B8=o BN();q.Bl=q.CW(j.Bl);q.CL=j.CL==u?(j.n.Bu&&j.n.Bu?2:s):j.CL;j.CD=j.CD==u?(j.D4&&j.n.N?2:s):j.CD;q.D8=q.Cs("disabledDates");q.FK=q.Cs("disabledDays");q.E$=q.Cs("specialDates");q.Fk=q.Cs("specialDays");q.Bd=q.DB(j.Bd,j.Bd!=j.Eq?j.Bk:j.CY,j.Eq);q.Bh=q.DB(j.Bh,j.Bh!=j.GB?j.Bk:j.CY,j.GB);e(q.Bd.By(q.Bh)>U){j.EE=0.err_1;}e(q.Ba()){q.Ep();q.CH=j.g[j.BH];}r{q.Bx(2,W);}Dz(k);d.Fx.BW=0.timeStr;d.CR.1=0.clearStr;d.Bp.1=0.todayStr;d.Bc.1=0.okStr;d.Bc.BT=!f.BB(BF);q.Ef();q.E5();e(j.EE){alert(j.EE);}q.EL();e(j.g.FZ==V&&j.g.D5===EH){j.C8(j.g,"EP",EK);}f.$=j.g;C5();9 c(){l b,c;p(b=U;(c=Bs.Dj("link")[b]);b++){e(c.rel.8("y")!=-V&&c.F6){c.BT=s;e(c.F6==j.skin){c.BT=2;}}}}},Ep:9(){l b=q.CE();e(b!=U){l c;e(b>U){c=q.Bh;}r{c=q.Bd;}e(j.n.DO){k.T=c.T;k.K=c.K;k.N=c.N;}e(j.n.Bu){k.H=c.H;k.Q=c.Q;k.S=c.S;}}},C2:9(K,F,Ee,b,D,B,A,Ed,G){l E;e(K&&K.Ba){E=K;}r{E=o BN();e(K!=""){F=F||j.Bl;l J,Dk=U,I,C=/C9|Cu|Db|T|CC|Ce|Dy|K|Bm|N|%CV|FA|H|E9|Q|Ff|S|CG|D|FY|Cy|Dl/BR,CI=F.ES(C);C.DL=U;e(G){I=K.D9(/\\Cy+/);}r{l c=U,H="^";DH((I=C.DP(F))!==u){e(c>=U){H+=F.Ca(c,I.DN);}c=I.DN-c;c=C.DL;Cp(I[U]){t"C9":H+="(\\\\N{BL})";z;t"Cu":H+="(\\\\N{X})";z;t"CC":t"Ce":t"CG":t"D":H+="(\\\\D+)";z;F$:H+="(\\\\N\\\\N?)";z;}}H+=".*c";I=o Dd(H).DP(K);Dk=V;}e(I){p(J=U;J=U){c=c.6(/%CV/BR,"U");b.N=U;b.K=Cn(b.K)+V;}b.Be();}4 b;},Ba:9(){l A,b;e(j.alwaysUseStartDate||(j.Eb!=""&&j.g[j.BH]=="")){A=q.CW(j.Eb);b=j.Bk;}r{A=j.g[j.BH];b=q.Bl;}k.CA(q.C2(A,b));e(A!=""){l c=V;e(j.n.DO&&!q.EQ(k)){k.T=BI.T;k.K=BI.K;k.N=BI.N;c=U;}e(j.n.Bu&&!q.Do(k)){k.H=BI.H;k.Q=BI.Q;k.S=BI.S;c=U;}4 c&&q.BB(k);}4 V;},EQ:9(c){e(c.T!=u){c=CQ(c.T,BL)+"-"+c.K+"-"+c.N;}4 c.ES(/^((\\N{W}(([Et][048])|([E6][26]))[\\-\\/\\S]?((((U?[E8])|(V[Fb]))[\\-\\/\\S]?((U?[V-a])|([V-W][U-a])|(X[Fa])))|(((U?[Ev])|(EA))[\\-\\/\\S]?((U?[V-a])|([V-W][U-a])|(Cd)))|(U?W[\\-\\/\\S]?((U?[V-a])|([V-W][U-a])))))|(\\N{W}(([Et][1235679])|([E6][01345789]))[\\-\\/\\S]?((((U?[E8])|(V[Fb]))[\\-\\/\\S]?((U?[V-a])|([V-W][U-a])|(X[Fa])))|(((U?[Ev])|(EA))[\\-\\/\\S]?((U?[V-a])|([V-W][U-a])|(Cd)))|(U?W[\\-\\/\\S]?((U?[V-a])|(V[U-a])|(W[U-Dh]))))))(\\S(((U?[U-a])|([V-W][U-X]))\\:([U-Y]?[U-a])((\\S)|(\\:([U-Y]?[U-a])))))?c/);},Do:9(c){e(c.H!=u){c=c.H+":"+c.Q+":"+c.S;}4 c.ES(/^([U-a]|([U-V][U-a])|([W][U-X])):([U-a]|([U-Y][U-a])):([U-a]|([U-Y][U-a]))c/);},CE:9(b,c){b=b||k;l A=b.By(q.Bd,c);e(A>U){A=b.By(q.Bh,c);e(AV){C-=Z;}G.L("");G.L("");e(j.Fg){G.L(""+A[U]+"");}p(b=U;b"+A[(B+b)%Z+V]+"");}G.L("");p(b=V,F=C;b");p(c=U;c"+Dx(J,j.F8==U?V:U)+"");}G.L(""+J.N+"");}r{G.L(">");}}G.L("");}G.L("");4 G.P();},Fe:9(b){l c=q.D3(b,q.D8);4(q.D8&&j.Fo)?!c:c;},E3:9(c){4 q.D2(c,q.FK);},F0:9(c){4 q.D3(c,q.E$,V);},FV:9(c){4 q.D2(c,q.Fk,V);},D3:9(c,b){4 b?b.Fz(q.DI(j.Bk,c)):U;},D2:9(b,c){4 c?c.Fz(b):U;},Cq:9(R,M,Dn,Eh,Bv){l S=o B$(),Df=Bv?"Dn"+R:R;E1=k[R];S.L("\');p(l P=U;P"+(R=="K"?0.B2[k[R]-V]:k[R])+"");}S.L("");}S.L("");k[R]=E1;4 S.P();},De:9(b,A){e(b){l c=b.offsetLeft;e(Ei){c=b.getBoundingClientRect().Bz;}A.y.Bz=c;}},_fM:9(c){q.De(c,d.C7);d.C7.BW=q.Cq("K",W,BQ,"O+P*BQ+V",c==d.Br);},Dq:9(A,c){l b=o B$();c=Cl(c,k.T-Y);b.L(q.Cq("T",W,Y,c+"+O+P*Y",A==d.B6));b.L("\\u2190\\FEc+B9?"x=\'BG\' CB=\\"q._=\'Ci\'\\" B0=\\"q._=\'BG\'\\" C_=\'e(BZ.Bq)BZ.Bq();BZ.Dg=s;f.Dq(U,"+(c+B9)+")\'":"x=\'D0\'");b.L(">\\u2192");q.De(A,d.Cb);d.Cb.BW=b.P();},DV:9(c,A,b){d[c+"D"].BW=q.Cq(c,BQ,A,b);},_fH:9(){q.DV("H",BL,"O * BQ + P");},_fm:9(){q.DV("Q",W,"O * Cd + P * Y");},_fs:9(){q.DV("S",V,"P * B9");},EC:9(c){q.Fv();l C=q.Cj,B=C.y,A=o B$();A.L("");A.L(\'\'+0.quickStr+"");e(!c){A.L(\'\\FE\');}A.L("");p(l b=U;b\');A.L("&Dw;"+q.DI(u,C[b]));A.L("");}r{A.L("&Dw;");}}A.L("");d.BK.BW=A.P();},FC:9(){c(/Dl/);c(/FY|Cy/);c(/CG|D/);c(/C9|Cu|Db|T/);c(/CC|Ce|Dy|K/);c(/Bm|N/);c(/FA|H/);c(/E9|Q/);c(/Ff|S/);j.n.DO=(j.n.T||j.n.K||j.n.N)?s:2;j.n.Bu=(j.n.H||j.n.Q||j.n.S)?s:2;j.CY=j.CY.6(/%BO/,j.GD).6(/%Time/,j.Fp);e(j.n.DO){e(j.n.Bu){j.Bk=j.CY;}r{j.Bk=j.GD;}}r{j.Bk=j.Fp;}9 c(b){l c=(b+"").EB(V,W);j.n[c]=b.DP(j.Bl)?(j.n.Cw=c,s):2;}},Ef:9(){l c=U;j.n.T?(c=V,Bj(d.BA,d.DW,d.DA)):v(d.BA,d.DW,d.DA);j.n.K?(c=V,Bj(d.BV,d.Cx,d.DX)):v(d.BV,d.Cx,d.DX);c?Bj(d.D1):v(d.D1);e(j.n.Bu){Bj(d.Cv);DS(d.CT,j.n.H);DS(d.DF,j.n.Q);DS(d.DR,j.n.S);}r{v(d.Cv);}CS(d.CR,j.E0);CS(d.Bp,j.FI);CS(d.Bc,j.D4);CS(d.EO,(!j.Fy&&j.n.N&&j.qsEnabled));e(j.Fn||!(j.E0||j.FI||j.D4)){v(d.C0);}r{Bj(d.C0);}},Bx:9(B,c){l b=j.g,D=FP?"x":"_";e(B){C(b);}r{e(c==u){c=j.errDealMode;}Cp(c){t U:e(confirm(0.errAlertMsg)){b[j.BH]=q.CH;C(b);}r{A(b);}z;t V:b[j.BH]=q.CH;C(b);z;t W:A(b);z;}}9 C(c){l A=c._;e(A){l b=A.6(/F2/BR,"");e(A!=b){c.FU(D,b);}}}9 A(c){c.FU(D,c._+" F2");}},Bf:9(c,G,E){E=E||BF;l H,F=[c+c,c],b,C=E[c],A=9(c){4 CQ(C,c.5);};Cp(c){t"Dl":C=Bi(E);z;t"D":l B=Bi(E)+V;A=9(c){4 c.5==W?0.aLongWeekStr[B]:0.F9[B];};z;t"Cy":C=Dx(E);z;t"T":F=["C9","Cu","Db","T"];G=G||F[U];A=9(c){4 CQ((c.5-V&&c!="T"&&!j.n[c]){e("Hms".8(c)>-V){C=U;}r{C=V;}}l D=[];p(H=U;H=U){D[H]=A(b);G=G.6(b,"{"+H+"}");}}p(H=U;H=U){l b=o BN();b.CA(B);b.N=U;b.K=Cn(b.K)+V;b.Be();D=D.6(/%CV/BR,b.N);}l A="ydHmswW";p(l c=U;c");c.L(q.C4());c.L("");k.B4("K",V);c.L(q.C4());d.Br=d.BV.FJ(s);d.B6=d.BA.FJ(s);d.DE.EV(d.Br);d.DE.EV(d.B6);d.Br.1=0.B2[k.K-V];d.Br.DU=k.K;d.B6.1=k.T;EJ("Fu,Fl");d.Br._=d.B6._="Da";k.B4("K",-V);c.L("");d.Cg.BW=c.P();}r{d._="EN";d.Cg.BW=q.C4();}e(!j.n.N){q.EC(s);DG(d.BK);}r{v(d.BK);}q.FB();},FB:9(){l C=parent.Bs.Dj("iframe");p(l B=U;B=b){c+=b;d.y.Bo=c;}r{d.y.Bo=A;}C[B].y.Bo=D7.max(c,d.CJ)+"Fw";}}d.BK.y.Cm=d.Cg.FM;d.BK.y.Bo=d.Cg.CJ;},Di:9(){k.N=D7.min(o BO(k.T,k.K,U).CU(),k.N);q.B1();e(!j.Fn){e(q.BB(k)){f.Bx(s);j.g.D5=s;j.g.Bw();v(j.Bm);}r{f.Bx(2);}}e(j.Ec){Bn("Ec");}r{e(q.CH!=j.g[j.BH]&&j.g.GE){DK(j.g,"Eo");}}},E5:9(){d.CR.7=9(){e(!Bn("onclearing")){j.g[j.BH]="";f.C$("");j.g.D5=s;j.g.Bw();v(j.Bm);e(j.F3){Bn("F3");}r{e(f.CH!=j.g[j.BH]&&j.g.GE){DK(j.g,"Eo");}}}};d.Bc.7=9(){CP();};e(q.BB(BI)){d.Bp.BT=2;d.Bp.7=9(){k.CA(BI);CP();};}r{d.Bp.BT=s;}},Fv:9(){l H,B,C,A,F=[],E=Y,b=j.FF.5,G=j.n.Cw;e(b>E){b=E;}r{e(G=="Q"||G=="S"){F=[U,D$,Cd,Ft,Fm,-60,-Ft,-Cd,-D$,-V];}r{p(H=U;H=U){BY=C1(BY,U,Fm);}}}e(BF[R]!=BY&&!Bn(R+"changing")){l F_=\'Bg("\'+R+\'",\'+BY+")",DQ=f.CE();e(DQ==U){Cc(F_);}r{e(DQU){EU(f.Bh);}}}d.Bc.BT=!f.BB(BF);e("yMd".8(R)>=U){f.EL();}Bn(R+"changed");}9 EU(c){Dz(f.BB(c)?c:BF);}}9 Dz(c){Bg("T",c.T);Bg("K",c.K);Bg("N",c.N);Bg("H",c.H);Bg("Q",c.Q);Bg("S",c.S);}9 CP(A,D,F,c,E,B){l C=o BN(k.T,k.K,k.N,k.H,k.Q,k.S);k.Ba(A,D,F,c,E,B);e(!Bn("onpicking")){l b=C.T==A&&C.K==D&&C.N==F;e(!b&&Ch.5!=U){M("T",A);M("K",D);M("N",F);f.$=j.g;e(j.CD){f.B1();}}e(f.CL||b||Ch.5==U){f.Di();}}r{k=C;}}9 Bn(c){l b;e(j[c]){b=j[c].ET(j.g,j);}4 b;}9 Bg(b,c){e(c==u){c=k[b];}BF[b]=k[b]=c;e("yHms".8(b)>=U){d[b+"BE"].1=c;}e(b=="K"){d.BV.DU=c;d.BV.1=0.B2[c-V];}}9 C1(A,b,c){e(Ac){A=c;}}4 A;}9 GC(c,b){c.C8("EP",9(){l A=BZ,c=(A.Dv==EH)?A.EG:A.Dv;e(c==a){b();}});}9 CQ(c,b){c=c+"";DH(c.5=U?C:Y;p(l c=U;c<=C;c++){A=b.CZ(c);D=q[A]-B[A];e(D>U){4 V;}r{e(D=U){l c=q.N;e(A=="K"){q.N=V;}q[A]+=b;q.Be();q.N=c;}}};9 Cn(c){4 parseInt(c,B9);}9 CO(c,b){4 Cl(Cn(c),b);}9 3(b,c,A){4 CO(b,Cl(c,A));}9 Cl(c,b){4 c==u||FW(c)?b:c;}9 DK(c,b){e(Ei){c.DK("Ez"+b);}r{l A=Bs.createEvent("HTMLEvents");A.initEvent(b,s,s);c.dispatchEvent(A);}}9 DY(A){l c,b,B="T,K,H,Q,S,Fl,Fu".D9(",");p(b=U;b=FQ&&C<=40){l b;e(f.$==j.g||f.$==d.Bc){e(j.n.N){b="N";e(C==FR){k[b]-=Z;}r{e(C==FO){k[b]+=V;}r{e(C==FQ){k[b]-=V;}r{k[b]+=Z;}}}k.Be();M("T",k.T);M("K",k.K);M("N",k[b]);DM(B);4;}r{b=j.n.Cw;d[b+"BE"].Bw();}}b=b||DY(f.$);e(b){e(C==FR||C==FO){k[b]+=V;}r{k[b]-=V;}k.Be();f.$.1=k[b];C6.ET(f.$,s);f.$.Fh();}}r{e(f.$==j.g&&j.Bm.y.CM=="DD"){4;}e(C==a){l D=A.Ct;p(l c=U;c=48&&C<=57)||(C>=96&&C<=105)||C==Dh||C==46)){DM(B);}}','J|K|M|a|c|d|i|j|m|p|s|y|0|1|2|3|5|7|9|_|$|$d|if|$c|el|td|tr|$dp|$dt|var|div|has|new|for|this|else|true|case|null|hide|divs|class|style|break|$lang|value|false|pInt3|return|length|replace|onclick|indexOf|function|className|currFocus|yI|checkValid|table|L|I|$sdt|menu|elProp|$tdt|input|qsDivSel|4|id|DPDate|Date|arr|6|g|$ny|disabled|button|MI|innerHTML|ipts|pv|event|loadDate|focusArr|okI|minDate|refresh|getP|sv|maxDate|getDay|show|realFmt|dateFmt|dd|callFunc|height|todayI|preventDefault|rMI|document|9700|st|isR|focus|mark|compareWith|left|onmouseout|update|aMonStr|border|attr|cellpadding|ryI|tmpEval|date|10|cellspacing|sb|loadFromDate|onmouseover|MMMM|autoUpdateOnChanged|checkRange|float|DD|oldValue|Q|offsetHeight|onblur|autoPickDate|display|nowrap|pInt2|day_Click|doStr|clearI|shorH|HI|getDate|ld|doExp|menuSel|realFullFmt|charAt|substring|yD|eval|30|MMM|12|dDiv|arguments|menuOn|QS|yMdHms|rtn|width|pInt|prototype|switch|_f|100|_initRe|nextCtrl|yyy|tDiv|minUnit|leftImg|W|readOnly|bDiv|makeInRange|splitDate|navImg|_fd|hideSel|_blur|MD|attachEvent|yyyy|onmousedown|setRealValue|navRightImg|doCustomDate|type|none|rMD|mI|showB|while|getDateStr|href|fireEvent|lastIndex|_cancelKey|index|sd|exec|rv|sI|disHMS|ps|realValue|_fHMS|navLeftImg|rightImg|_foundInput|setDisp|yminput|yy|dpButton|RegExp|_fMyPos|fp|cancelBubble|8|pickDate|getElementsByTagName|P|w|getNewDateStr|r|isTime|close|_fy|align|getMinutes|span|getHours|which|nbsp|getWeek|MM|_setAll|invalidMenu|titleDiv|testDay|testDate|isShowOK|My97Mark|blur|Math|ddateRe|split|getSeconds|15|11|slice|_fillQS|maxlength|errMsg|getFullYear|keyCode|undefined|updownEvent|_inputBindEvent|_tab|draw|btns|WdateDiv|qsDiv|onkeydown|isDate|getMonth|match|call|_setFrom|appendChild|upButton|My97DP|showDiv|right|toLowerCase|startDate|onpicked|N|O|initShowAndHide|HD|e|$IE|v|readonly|_ieEmuEventHandler|2000|body|change|_makeDateInRange|defMinDate|_focus|downButton|02468|highLineWeekDay|469|isShowOthers|valign|oldv|on|isShowClear|bak|newdate|testDisDay|yearOffset|initBtn|13579|MTitle|13578|mm|yminputfocus|sdateRe|HH|autoSize|_dealFmt|Event|xd7|quickSel|mD|coverDate|isShowToday|cloneNode|ddayRe|srcElement|offsetWidth|aLongMonStr|39|$FF|37|38|spans|checkAndUpdate|setAttribute|testSpeDay|isNaN|13|WW|nodeType|01|02|tm|returnValue|testDisDate|ss|isShowWeek|select|tE|init|sdayRe|ry|59|eCont|opposite|realTimeFmt|re|sD|top|45|rM|initQS|px|timeSpan|doubleCalendar|test|testSpeDate|center|WdateFmtErr|oncleared|WdayTable|block|title|valueOf|firstDayOfWeek|aWeekStr|func|default|window|defMaxDate|attachTabEvent|realDateFmt|onchange|setDate|target'.split('|'),383,390,{},{})) \ No newline at end of file diff --git a/smbms/src/main/webapp/calendar/config.js b/smbms/src/main/webapp/calendar/config.js deleted file mode 100644 index 20db8dd..0000000 --- a/smbms/src/main/webapp/calendar/config.js +++ /dev/null @@ -1,12 +0,0 @@ -var langList = -[ - {name:'en', charset:'UTF-8'}, - {name:'zh-cn', charset:'UTF-8'}, - {name:'zh-tw', charset:'UTF-8'} -]; - -var skinList = -[ - {name:'default', charset:'UTF-8'}, - {name:'whyGreen', charset:'UTF-8'} -]; \ No newline at end of file diff --git a/smbms/src/main/webapp/calendar/lang/en.js b/smbms/src/main/webapp/calendar/lang/en.js deleted file mode 100644 index 3159885..0000000 --- a/smbms/src/main/webapp/calendar/lang/en.js +++ /dev/null @@ -1,14 +0,0 @@ -var $lang={ -errAlertMsg: "Invalid date or the date out of range,redo or not?", -aWeekStr: ["wk", "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], -aLongWeekStr:["wk","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"], -aMonStr: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], -aLongMonStr: ["January","February","March","April","May","June","July","August","September","October","November","December"], -clearStr: "Clear", -todayStr: "Today", -okStr: "OK", -updateStr: "OK", -timeStr: "Time", -quickStr: "Quick Selection", -err_1: 'MinDate Cannot be bigger than MaxDate!' -} \ No newline at end of file diff --git a/smbms/src/main/webapp/calendar/lang/zh-cn.js b/smbms/src/main/webapp/calendar/lang/zh-cn.js deleted file mode 100644 index 70e5e4f..0000000 --- a/smbms/src/main/webapp/calendar/lang/zh-cn.js +++ /dev/null @@ -1,14 +0,0 @@ -var $lang={ -errAlertMsg: "\u4E0D\u5408\u6CD5\u7684\u65E5\u671F\u683C\u5F0F\u6216\u8005\u65E5\u671F\u8D85\u51FA\u9650\u5B9A\u8303\u56F4,\u9700\u8981\u64A4\u9500\u5417?", -aWeekStr: ["\u5468","\u65E5","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D"], -aLongWeekStr:["\u5468","\u661F\u671F\u65E5","\u661F\u671F\u4E00","\u661F\u671F\u4E8C","\u661F\u671F\u4E09","\u661F\u671F\u56DB","\u661F\u671F\u4E94","\u661F\u671F\u516D"], -aMonStr: ["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00","\u5341\u4E8C"], -aLongMonStr: ["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"], -clearStr: "\u6E05\u7A7A", -todayStr: "\u4ECA\u5929", -okStr: "\u786E\u5B9A", -updateStr: "\u786E\u5B9A", -timeStr: "\u65F6\u95F4", -quickStr: "\u5FEB\u901F\u9009\u62E9", -err_1: '\u6700\u5C0F\u65E5\u671F\u4E0D\u80FD\u5927\u4E8E\u6700\u5927\u65E5\u671F!' -} \ No newline at end of file diff --git a/smbms/src/main/webapp/calendar/lang/zh-tw.js b/smbms/src/main/webapp/calendar/lang/zh-tw.js deleted file mode 100644 index b92e0ee..0000000 --- a/smbms/src/main/webapp/calendar/lang/zh-tw.js +++ /dev/null @@ -1,14 +0,0 @@ -var $lang={ -errAlertMsg: "\u4E0D\u5408\u6CD5\u7684\u65E5\u671F\u683C\u5F0F\u6216\u8005\u65E5\u671F\u8D85\u51FA\u9650\u5B9A\u7BC4\u570D,\u9700\u8981\u64A4\u92B7\u55CE?", -aWeekStr: ["\u5468","\u65E5","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D"], -aLongWeekStr:["\u5468","\u661F\u671F\u65E5","\u661F\u671F\u4E00","\u661F\u671F\u4E8C","\u661F\u671F\u4E09","\u661F\u671F\u56DB","\u661F\u671F\u4E94","\u661F\u671F\u516D"], -aMonStr: ["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00","\u5341\u4E8C"], -aLongMonStr: ["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"], -clearStr: "\u6E05\u7A7A", -todayStr: "\u4ECA\u5929", -okStr: "\u78BA\u5B9A", -updateStr: "\u78BA\u5B9A", -timeStr: "\u6642\u9593", -quickStr: "\u5FEB\u901F\u9078\u64C7", -err_1: '\u6700\u5C0F\u65E5\u671F\u4E0D\u80FD\u5927\u65BC\u6700\u5927\u65E5\u671F!' -} \ No newline at end of file diff --git a/smbms/src/main/webapp/calendar/skin/WdatePicker.css b/smbms/src/main/webapp/calendar/skin/WdatePicker.css deleted file mode 100644 index 8d447b5..0000000 --- a/smbms/src/main/webapp/calendar/skin/WdatePicker.css +++ /dev/null @@ -1,10 +0,0 @@ -.Wdate{ - border:#999 1px solid; - height:20px; - background:#fff url(datePicker.gif) no-repeat right; -} - -.WdateFmtErr{ - font-weight:bold; - color:red; -} \ No newline at end of file diff --git a/smbms/src/main/webapp/calendar/skin/datePicker.gif b/smbms/src/main/webapp/calendar/skin/datePicker.gif deleted file mode 100644 index d6bf40c..0000000 Binary files a/smbms/src/main/webapp/calendar/skin/datePicker.gif and /dev/null differ diff --git a/smbms/src/main/webapp/calendar/skin/default/datepicker.css b/smbms/src/main/webapp/calendar/skin/default/datepicker.css deleted file mode 100644 index 29d5432..0000000 --- a/smbms/src/main/webapp/calendar/skin/default/datepicker.css +++ /dev/null @@ -1,246 +0,0 @@ -/* - * My97 DatePicker 4.7 - */ - -.WdateDiv{ - width:180px; - background-color:#FFFFFF; - border:#bbb 1px solid; - padding:2px; -} - -.WdateDiv2{ - width:360px; -} -.WdateDiv *{font-size:9pt;} - -.WdateDiv .NavImg a{ - display:block; - cursor:pointer; - height:16px; - width:16px; -} - -.WdateDiv .NavImgll a{ - float:left; - background:transparent url(img.gif) no-repeat scroll 0 0; -} -.WdateDiv .NavImgl a{ - float:left; - background:transparent url(img.gif) no-repeat scroll -16px 0; -} -.WdateDiv .NavImgr a{ - float:right; - background:transparent url(img.gif) no-repeat scroll -32px 0; -} -.WdateDiv .NavImgrr a{ - float:right; - background:transparent url(img.gif) no-repeat scroll -48px 0; -} - -.WdateDiv #dpTitle{ - height:24px; - margin-bottom:2px; - padding:1px; -} - -.WdateDiv .yminput{ - margin-top:2px; - text-align:center; - height:20px; - border:0px; - width:50px; - cursor:pointer; -} - -.WdateDiv .yminputfocus{ - margin-top:2px; - text-align:center; - font-weight:bold; - height:20px; - color:blue; - border:#ccc 1px solid; - width:50px; -} - -.WdateDiv .menuSel{ - z-index:1; - position:absolute; - background-color:#FFFFFF; - border:#ccc 1px solid; - display:none; -} - -.WdateDiv .menu{ - cursor:pointer; - background-color:#fff; -} - -.WdateDiv .menuOn{ - cursor:pointer; - background-color:#BEEBEE; -} - -.WdateDiv .invalidMenu{ - color:#aaa; -} - -.WdateDiv .YMenu{ - margin-top:20px; - -} - -.WdateDiv .MMenu{ - margin-top:20px; - *width:62px; -} - -.WdateDiv .hhMenu{ - margin-top:-90px; - margin-left:26px; -} - -.WdateDiv .mmMenu{ - margin-top:-46px; - margin-left:26px; -} - -.WdateDiv .ssMenu{ - margin-top:-24px; - margin-left:26px; -} - - .WdateDiv .Wweek { - text-align:center; - background:#DAF3F5; - border-right:#BDEBEE 1px solid; - } - -.WdateDiv .MTitle{ - background-color:#BDEBEE; -} -.WdateDiv .WdayTable2{ - border-collapse:collapse; - border:#c5d9e8 1px solid; -} -.WdateDiv .WdayTable2 table{ - border:0; -} - -.WdateDiv .WdayTable{ - line-height:20px; - border:#c5d9e8 1px solid; -} -.WdateDiv .WdayTable td{ - text-align:center; -} - -.WdateDiv .Wday{ - cursor:pointer; -} - -.WdateDiv .WdayOn{ - cursor:pointer; - background-color:#C0EBEF; -} - -.WdateDiv .Wwday{ - cursor:pointer; - color:#FF2F2F; -} - -.WdateDiv .WwdayOn{ - cursor:pointer; - color:#000; - background-color:#C0EBEF; -} -.WdateDiv .Wtoday{ - cursor:pointer; - color:blue; -} -.WdateDiv .Wselday{ - background-color:#A9E4E9; -} -.WdateDiv .WspecialDay{ - background-color:#66F4DF; -} - -.WdateDiv .WotherDay{ - cursor:pointer; - color:#6A6AFF; -} - -.WdateDiv .WotherDayOn{ - cursor:pointer; - background-color:#C0EBEF; -} - -.WdateDiv .WinvalidDay{ - color:#aaa; -} - -.WdateDiv #dpTime{ - float:left; - margin-top:3px; - margin-right:30px; -} - -.WdateDiv #dpTime #dpTimeStr{ - margin-left:1px; -} - -.WdateDiv #dpTime input{ - width:18px; - height:20px; - text-align:center; - border:#ccc 1px solid; -} - -.WdateDiv #dpTime .tB{ - border-right:0px; -} - -.WdateDiv #dpTime .tE{ - border-left:0; - border-right:0; -} - -.WdateDiv #dpTime .tm{ - width:7px; - border-left:0; - border-right:0; -} - -.WdateDiv #dpTime #dpTimeUp{ - height:10px; - width:13px; - border:0px; - background:url(img.gif) no-repeat -32px -16px; -} - -.WdateDiv #dpTime #dpTimeDown{ - height:10px; - width:13px; - border:0px; - background:url(img.gif) no-repeat -48px -16px; -} - - .WdateDiv #dpQS { - float:left; - margin-right:3px; - margin-top:3px; - background:url(img.gif) no-repeat 0px -16px; - width:20px; - height:20px; - cursor:pointer; - } -.WdateDiv #dpControl { - text-align:right; -} -.WdateDiv .dpButton{ - height:20px; - width:45px; - border:#ccc 1px solid; - margin-top:2px; - margin-right:1px; -} \ No newline at end of file diff --git a/smbms/src/main/webapp/calendar/skin/default/img.gif b/smbms/src/main/webapp/calendar/skin/default/img.gif deleted file mode 100644 index 053205d..0000000 Binary files a/smbms/src/main/webapp/calendar/skin/default/img.gif and /dev/null differ diff --git a/smbms/src/main/webapp/calendar/skin/whyGreen/bg.jpg b/smbms/src/main/webapp/calendar/skin/whyGreen/bg.jpg deleted file mode 100644 index 75516a6..0000000 Binary files a/smbms/src/main/webapp/calendar/skin/whyGreen/bg.jpg and /dev/null differ diff --git a/smbms/src/main/webapp/calendar/skin/whyGreen/datepicker.css b/smbms/src/main/webapp/calendar/skin/whyGreen/datepicker.css deleted file mode 100644 index f8426f5..0000000 --- a/smbms/src/main/webapp/calendar/skin/whyGreen/datepicker.css +++ /dev/null @@ -1,256 +0,0 @@ -/* - * My97 DatePicker 4.7 Skin:whyGreen - */ -.WdateDiv{ - width:180px; - background-color:#fff; - border:#C5E1E4 1px solid; - padding:2px; -} - -.WdateDiv2{ - width:360px; -} -.WdateDiv *{font-size:9pt;} - -.WdateDiv .NavImg a{ - cursor:pointer; - display:block; - width:16px; - height:16px; - margin-top:1px; -} - -.WdateDiv .NavImgll a{ - float:left; - background:url(img.gif) no-repeat; -} -.WdateDiv .NavImgl a{ - float:left; - background:url(img.gif) no-repeat -16px 0px; -} -.WdateDiv .NavImgr a{ - float:right; - background:url(img.gif) no-repeat -32px 0px; -} -.WdateDiv .NavImgrr a{ - float:right; - background:url(img.gif) no-repeat -48px 0px; -} - -.WdateDiv #dpTitle{ - height:24px; - padding:1px; - border:#c5d9e8 1px solid; - background:url(bg.jpg); - margin-bottom:2px; -} - -.WdateDiv .yminput{ - margin-top:2px; - text-align:center; - border:0px; - height:20px; - width:50px; - color:#034c50; - background-color:transparent; - cursor:pointer; -} - -.WdateDiv .yminputfocus{ - margin-top:2px; - text-align:center; - border:#939393 1px solid; - font-weight:bold; - color:#034c50; - height:20px; - width:50px; -} - -.WdateDiv .menuSel{ - z-index:1; - position:absolute; - background-color:#FFFFFF; - border:#A3C6C8 1px solid; - display:none; -} - -.WdateDiv .menu{ - cursor:pointer; - background-color:#fff; - color:#11777C; -} - -.WdateDiv .menuOn{ - cursor:pointer; - background-color:#BEEBEE; -} - -.WdateDiv .invalidMenu{ - color:#aaa; -} - -.WdateDiv .YMenu{ - margin-top:20px; -} - -.WdateDiv .MMenu{ - margin-top:20px; - *width:62px; -} - -.WdateDiv .hhMenu{ - margin-top:-90px; - margin-left:26px; -} - -.WdateDiv .mmMenu{ - margin-top:-46px; - margin-left:26px; -} - -.WdateDiv .ssMenu{ - margin-top:-24px; - margin-left:26px; -} - - .WdateDiv .Wweek { - text-align:center; - background:#DAF3F5; - border-right:#BDEBEE 1px solid; - } - -.WdateDiv .MTitle{ - color:#13777e; - background-color:#bdebee; -} -.WdateDiv .WdayTable2{ - border-collapse:collapse; - border:#BEE9F0 1px solid; -} -.WdateDiv .WdayTable2 table{ - border:0; -} - -.WdateDiv .WdayTable{ - line-height:20px; - color:#13777e; - background-color:#edfbfb; - border:#BEE9F0 1px solid; -} -.WdateDiv .WdayTable td{ - text-align:center; -} - -.WdateDiv .Wday{ - cursor:pointer; -} - -.WdateDiv .WdayOn{ - cursor:pointer; - background-color:#74d2d9 ; -} - -.WdateDiv .Wwday{ - cursor:pointer; - color:#ab1e1e; -} - -.WdateDiv .WwdayOn{ - cursor:pointer; - background-color:#74d2d9; -} -.WdateDiv .Wtoday{ - cursor:pointer; - color:blue; -} -.WdateDiv .Wselday{ - background-color:#A7E2E7; -} -.WdateDiv .WspecialDay{ - background-color:#66F4DF; -} - -.WdateDiv .WotherDay{ - cursor:pointer; - color:#0099CC; -} - -.WdateDiv .WotherDayOn{ - cursor:pointer; - background-color:#C0EBEF; -} - -.WdateDiv .WinvalidDay{ - color:#aaa; -} - -.WdateDiv #dpTime{ - float:left; - margin-top:3px; - margin-right:30px; -} - -.WdateDiv #dpTime #dpTimeStr{ - margin-left:1px; - color:#497F7F; -} - -.WdateDiv #dpTime input{ - height:20px; - width:18px; - text-align:center; - color:#333; - border:#61CAD0 1px solid; -} - -.WdateDiv #dpTime .tB{ - border-right:0px; -} - -.WdateDiv #dpTime .tE{ - border-left:0; - border-right:0; -} - -.WdateDiv #dpTime .tm{ - width:7px; - border-left:0; - border-right:0; -} - -.WdateDiv #dpTime #dpTimeUp{ - height:10px; - width:13px; - border:0px; - background:url(img.gif) no-repeat -32px -16px; -} - -.WdateDiv #dpTime #dpTimeDown{ - height:10px; - width:13px; - border:0px; - background:url(img.gif) no-repeat -48px -16px; -} - - .WdateDiv #dpQS { - float:left; - margin-right:3px; - margin-top:3px; - background:url(img.gif) no-repeat 0px -16px; - width:20px; - height:20px; - cursor:pointer; - } -.WdateDiv #dpControl { - text-align:right; - margin-top:3px; -} -.WdateDiv .dpButton{ - height:20px; - width:45px; - margin-top:2px; - border:#38B1B9 1px solid; - background-color:#CFEBEE; - color:#08575B; -} \ No newline at end of file diff --git a/smbms/src/main/webapp/calendar/skin/whyGreen/img.gif b/smbms/src/main/webapp/calendar/skin/whyGreen/img.gif deleted file mode 100644 index 4003f20..0000000 Binary files a/smbms/src/main/webapp/calendar/skin/whyGreen/img.gif and /dev/null differ diff --git a/smbms/src/main/webapp/css/public.css b/smbms/src/main/webapp/css/public.css deleted file mode 100644 index b7dfc43..0000000 --- a/smbms/src/main/webapp/css/public.css +++ /dev/null @@ -1,284 +0,0 @@ -*{ - margin: 0; - padding: 0; -} -body{ - font-size: 12px; - background: #4287c2; -} -.clear:after{ - content: ''; - display: block; - clear: both; -} -a{ - text-decoration: none; -} -li{ - list-style: none; -} - -/*公共样式,头部*/ -.publicHeader{ - height: 48px; - line-height: 48px; - font-size: 14px; - background: linear-gradient(to bottom,#60acf0,#64a5df,#62a0dd,#5994d6,#4f8ace,#4880ca); - background:-webkit-linear-gradient(to bottom,#60acf0,#64a5df,#62a0dd,#5994d6,#4f8ace,#4880ca); - background:-moz-linear-gradient(to bottom,#60acf0,#64a5df,#62a0dd,#5994d6,#4f8ace,#4880ca); - background:-ms-linear-gradient(to bottom,#60acf0,#64a5df,#62a0dd,#5994d6,#4f8ace,#4880ca); -} -.publicHeader h1{ - float: left; - color: #fff; - font-size: 22px; - padding-left:80px; - text-shadow: 2px 1px #000; - background: url("../images/buy.png") 30px center no-repeat; - -} -.publicHeaderR{ - float: right; - color: #fff; - margin-right: 50px; - -} -.publicHeaderR p{ - display: inline-block; - font-weight: bold; -} -.publicHeaderR a{ - width: 50px; - height: 28px; - display: inline-block; - border: 1px solid #679e43; - background: linear-gradient(to bottom,#baf076,#a2d866,#9cd055,#8dc838,#8bc93a); - line-height: 28px; - text-align: center; - border-radius: 4px; - font-weight: bold; - color: #fff; - -} -.publicHeaderR a:hover,.publicHeaderR a:active{ - border: 1px solid #192b02; - border-radius: 4px; - font-weight: bold; - background: linear-gradient(to bottom,#70b21c,#5c9613,#47740e,#3b6209,#2b4906); -} -/*时间*/ -.publicTime{ - height: 28px; - line-height: 28px; - font-size: 12px; - background: linear-gradient(to bottom,#f5f9f8,#eef2fb,#e2ecf5,#e2ecf5,#e0edf6); - padding-left: 20px; - color: #808589; -} -#time{ - float: left; - background: url("../images/time.png") 0 center no-repeat; - padding-left: 26px; -} -.publicTime a{ - float: right; - margin-right: 50px; - color: #626367; -} - -/*公共部分主体内容*/ -.publicMian{ - border-top: 1px solid #c2ccd5; - display: flex; /*变为弹性盒模型*/ - display: -webkit-flex; - background: #fff; -} -/*左边*/ -.left{ - width: 168px; - background: url("../images/leftBg.png") 0 0 repeat-y; - margin-right: 10px; - /*height: 520px;*/ - min-height: 520px; - -} -.leftH2{ - width: 140px; - height: 30px; - border-radius: 4px; - line-height: 30px; - text-align: center; - color: #fff; - background: #60b3e7; - margin: 10px auto; - box-shadow:4px 4px rgba(212,212,212,0.7); -} -.leftH2 span{ - width: 10px; - height: 10px; - display: inline-block; - background: radial-gradient(#70c2f4,#3a8dc1, #035384, #4696c7,#83d1f5); - border-radius: 50%; -} -.span1{ - margin-right: 10px; -} -.span2{ - margin-left: 12px; -} - -.list{ - margin: 0 20px; - font-weight: bold; -} -.list li{ - height: 40px; - line-height: 40px; - border-bottom: 1px solid rgba(212,212,212,0.5) ; -} -.list li:nth-child(1){ - background: url("../images/zd.png") 0 center no-repeat; -} -.list li:nth-child(2){ - background: url("../images/gys.png") 0 center no-repeat; -} -.list li:nth-child(3){ - background: url("../images/yh.png") 0 center no-repeat; -} -.list li:nth-child(4){ - background: url("../images/mm.png") 0 center no-repeat; -} -.list li:nth-child(5){ - background: url("../images/tc.png") 0 center no-repeat; -} -.list li:hover{ - background-color: #acd5f5; - border-radius: 4px; -} -.list li:active, #active{ - background-color: #92c609; - border-radius: 4px; -} -.list a{ - color: #0042a8; - display: inline-block; - padding-left: 40px; - width: 90%; -} - - -/*右边*/ -.right{ - width: 85%; -} -/*右边所在位置栏*/ -.location{ - height: 30px; - line-height: 30px; - border: 1px solid #e6eaf6; - border-radius: 8px; - background: linear-gradient(to bottom, #fefefe,#ffffff,#f6fafd); - color: #4a4a4a; - padding-left: 30px; -} -.location strong{ - background: url("../images/home.png") 0 center no-repeat; - display: inline-block; - padding-left: 30px; -} -.location span{ - color: #2179a9; - font-weight: bold; -} -/*搜索信息栏*/ -.search{ - height:50px; - line-height:50px; - background: #f6fafd; - padding-left: 24px; - color: #000; -} -.search input[type='text']{ - width: 200px; - height: 30px; - outline: none; - padding-left: 10px; - border: 1px solid #8ab2d5; - border-radius: 4px; -} -.search input[type='button']{ - margin-left: 20px; - width: 100px; - padding: 0 20px; - height: 30px; - border: 1px solid #7ba92c; - border-radius: 4px; - color: #fff; - font-weight: bold; - background:#87c212 url("../images/search.png") 10px center no-repeat; -} -.search input[type='button']:focus{ - outline: none; - background-color: #5d8410; -} -.search a{ - width: 80px; - padding-left:40px; - float: right; - margin: 10px 60px; - height: 30px; - line-height: 30px; - border: 1px solid #0c89de; - border-radius: 4px; - color: #fff; - font-weight: bold; - background:#47acf1 url("../images/tianjia.png") 10px center no-repeat; - display: inline-block; -} -.search a:hover,.search a:active{ - background-color: #0778c5; -} -.search span{ - margin-left: 10px; -} -.search select{ - margin: 10px; - width: 100px; - height: 30px; - border-radius: 4px; - border: 1px solid #0c89de; - outline: none; -} - -/*底部*/ -.footer{ - width: 100%; - line-height: 40px; - text-align: center; - color: #fff; -} - -#searchbutton{ - margin-left: 20px; - width: 100px; - padding: 0 20px; - height: 30px; - border: 1px solid #7ba92c; - border-radius: 4px; - color: #fff; - font-weight: bold; - background:#87c212 url("../images/search.png") 10px center no-repeat; -} -#searchbutton:focus{ - outline: none; - background-color: #5d8410; -} - - - - - - - - - diff --git a/smbms/src/main/webapp/css/style.css b/smbms/src/main/webapp/css/style.css deleted file mode 100644 index 07e1441..0000000 --- a/smbms/src/main/webapp/css/style.css +++ /dev/null @@ -1,443 +0,0 @@ -* { - margin: 0; - padding: 0; -} - -/*登录页面*/ -.login_bg { - background: url("../images/loginBg.jpg") 0 0 repeat-x; -} - -.loginBox { - width: 1000px; - margin: 0 auto; - background: url("../images/login_bg.jpg") 0 0 no-repeat; -} - -.loginHeader { - padding-top: 102px; - text-align: center; - padding-bottom: 30px; -} - -.loginHeader h1 { - color: #fff; - text-shadow: 2px 2px #000; -} - -.loginCont { - width: 388px; - height: 284px; - /*border: 1px solid red ;*/ - margin: 0 auto; -} - -.formBox { - position: relative; -} - -/*输入框里默认输入字体*/ -::-webkit-input-placeholder { - color: rgb(190, 188, 188); - /*font-style: italic;*/ -} - -input:-moz-placeholder, -textarea:-moz-placeholder { - color: rgb(190, 188, 188); - font-style: italic; -} - -input { - outline: none; -} - -.loginForm { - background: url("../images/formBg.png") 0 0 no-repeat; - width: 320px; - height: 140px; - border-radius: 8px; - padding: 90px 38px 48px 30px; - /*border: 1px solid green;*/ -} - -.loginForm label { - width: 20%; - display: inline-block; -} - -.inputbox { - height: 60px; -} - -.info { - color: red; - font-weight:bold; -} - -.inputbox input { - width: 66%; - padding: 10px 5px 10px 20px; - border: 1px solid rgb(178, 178, 178); - border-radius: 3px; - -webkit-box-shadow: 0px 1px 4px 0px rgba(168, 168, 168, 0.6) inset; - -moz-box-shadow: 0px 1px 4px 0px rgba(168, 168, 168, 0.6) inset; - box-shadow: 0px 1px 4px 0px rgba(168, 168, 168, 0.6) inset; - -} - -/*输入框得到焦点的效果*/ -.inputbox input:active, .providerAdd input:focus, -.inputbox input:focus { - border: 1px solid rgba(91, 90, 90, 0.7); - background: rgba(238, 236, 240, 0.2); - -webkit-box-shadow: 0px 1px 4px 0px rgba(168, 168, 168, 0.9) inset; - -moz-box-shadow: 0px 1px 4px 0px rgba(168, 168, 168, 0.9) inset; - box-shadow: 0px 1px 4px 0px rgba(168, 168, 168, 0.9) inset; -} - -.subBtn { - margin-left: 70px; -} - -/*/!*登录页登录和重置按钮*!/.providerView a是供应商管理页面下信息查看也得返回按钮的样式*/ -input[type='submit'], input[type='reset'], .providerView a { - width: 30%; - cursor: pointer; - background: #54a4d7; - padding: 6px 18px; - font-family: 'BebasNeueRegular', 'Arial Narrow', Arial, sans-serif; - color: #fff; - font-size: 18px; - border: 1px solid #4682be; - margin-bottom: 10px; - margin-right: 22px; - text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5); - -webkit-border-radius: 3px; - -moz-border-radius: 3px; - border-radius: 3px; - -webkit-box-shadow: 0px 1px 4px 4px rgba(0, 0, 0, 0.07) inset, - 0px 0px 0px 3px rgb(254, 254, 254), - 0px 5px 3px 3px rgb(210, 210, 210); - -moz-box-shadow: 0px 1px 4px 4px rgba(0, 0, 0, 0.07) inset, - 0px 0px 0px 3px rgb(254, 254, 254), - 0px 5px 3px 3px rgb(210, 210, 210); - box-shadow: 0px 1px 4px 4px rgba(0, 0, 0, 0.07) inset, - 0px 0px 0px 3px rgb(254, 254, 254), - 0px 5px 3px 3px rgb(210, 210, 210); - -} - -input[type='submit']:hover, input[type='reset']:hover { - background: rgb(74, 179, 198); -} - -input[type='submit']:active, input[type='submit']:focus, -input[type='reset']:active, input[type='reset']:focus, .providerView a:hover, .providerView a:active { - background: #2a5989; - border: 1px solid rgb(12, 76, 87); - -webkit-box-shadow: 0px 1px 6px 4px rgba(0, 0, 0, 0.2) inset; - -moz-box-shadow: 0px 1px 6px 4px rgba(0, 0, 0, 0.2) inset; - box-shadow: 0px 1px 6px 4px rgba(0, 0, 0, 0.2) inset; -} - -/*欢迎登录页*/ -.wColck { - width: 88px; - height: 108px; - margin: 50px; - float: left; -} - -.wFont { - float: left; - margin-top: 50px; -} - -.wFont h2 { - font-size: 30px; - line-height: 50px; - color: #0a5eb6; -} - -.wFont p { - font-size: 14px; - line-height: 30px; - color: #5a656c; -} - -/*供应商管理页面*/ -.providerTable { - width: 100%; - border: 1px solid #ccc; -} - -.providerTable tr { - height: 30px; - line-height: 30px; - text-align: center; -} - -.providerTable tr:nth-child(odd) { - background: #f6f7f9; -} - -.providerTable tr:hover { - background: #e9f9ca; -} - -.firstTr { - border: 1px solid #d6dfe6; - background: linear-gradient(to bottom, #f3f8fc, #ebf4f9, #e3f1fa, #e0f0fd, #d8e9fd); -} - -.firstTr th { - border-right: 2px solid rgba(209, 218, 223, 0.4); -} - -.providerTable td a { - margin-top: 10px; - display: inline-block; - margin-right: 10px; - -} - -/*供应商管理页面-->下面的信息查看页面*/ -.providerView { - margin: 20px 0; - font-size: 18px; - line-height: 30px; - padding-top: 30px; - border: 1px dashed #3d4f1b; -} - -.providerView strong { - display: inline-block; - width: 200px; - text-align: right; -} - -.providerView span { - color: #bd644e; -} - -.providerView a { - margin-left: 520px; - position: relative; - top: 60px; -} - -/*供应商管理页面-->供应商添加页面*/ -.providerAdd { - border: 1px solid #9ac70f; - padding: 20px; - margin: 20px; -} - -.providerAdd form { - -} - -.providerAdd div { - margin-top: 12px; - margin-bottom: 12px; -} - -.providerAdd label { - width: 200px; - display: inline-block; - text-align: right; -} - -.providerAdd input ,.providerAdd select{ - width: 260px; - height: 30px; - line-height: 30px; - border-radius: 4px; - outline: none; - padding-left: 10px; - border: 1px solid #4987c0; - box-shadow: 1px 1px 1px #99afc4; -} - -.providerAdd input:focus,.providerAdd select:focus { - border: 1px solid #0e56a8; - background: rgba(238, 236, 240, 0.2); - -webkit-box-shadow: 0px 1px 4px 0px rgba(168, 168, 168, 0.9) inset; - -moz-box-shadow: 0px 1px 4px 0px rgba(168, 168, 168, 0.9) inset; - box-shadow: 0px 1px 4px 0px rgba(168, 168, 168, 0.9) inset; -} - -.providerAdd span { - margin-left: 20px; - color: #faca0d; -} - -/*验证错误*/ -.providerAdd .error span { - color: red; -} - -.providerAdd .error input { - border: 1px solid red; -} - -/*验证成功*/ -.providerAdd .ok span { - color: green; -} - -.providerAdd .ok input { - border: 1px solid green; -} - -.providerAddBtn { - margin-left: 240px; - padding-top: 20px; -} - -.providerAddBtn a , -.providerAddBtn input[type='submit'], -.providerAddBtn input[type='button'] { - display: inline-block; - width: 100px; - height: 30px; - line-height: 30px; - text-align: center; - border-radius: 4px; - border: transparent; - background: linear-gradient(to bottom, #85c0ec, #6aa7d6, #508dc6, #306fb4, #17559e); - color: #fff; - cursor: pointer; - font-weight: bold; - font-size: 14px; - vertical-align: top; -} - -.providerAddBtn a:active, -.providerAddBtn a:focus, -.providerAddBtn a:hover, -.providerAddBtn input[type='submit']:hover, -.providerAddBtn input[type='submit']:focus{ - background: linear-gradient(to bottom, #7aaed4, #578bb4, #406e99, #225792, #0d2d54); -} - -.providerAdd input[type='radio']{ - width: 20px; - height: 14px; - line-height:12px; - border-radius: 4px; - outline: none; - padding-left: 10px; - border: none; - box-shadow: none; -} - -/*点击删除按钮后弹出的层*/ -.zhezhao { - display: none; /* 修改这里可以让遮罩层消失*/ - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - background: #000; - opacity: 0.7; - filter: alpha(opacity=70); - overflow: hidden; -} -.remove{ - display: none; /* 修改这里可以让删除框消失*/ - width: 400px; - height: 190px; - position: absolute; - top: 200px; - left:500px; - background: #fff; - border-radius: 4px; -} -.removerChid{ - margin: 4px; - border: 1px solid #ccc; -} -.removerChid h2{ - padding-left: 8px; - font-size: 14px; - line-height: 30px; - margin: 4px 8px; - border-bottom: 1px solid #99cc33; -} -.removeMain{ - margin-top: 38px; - text-align: center; - margin-bottom: 30px; - border-radius: 4px; -} -.removeMain a{ - padding: 0 20px; - display: inline-block; - height: 30px; - line-height: 30px; - border-radius: 4px; - border: 1px solid #5e8809; - margin-top: 30px; - background: #99cc33; - color: #fff; -} -.removeMain a:hover,.removeMain a:active{ - background: #679016; - -} - -/*页码*/ -.page-bar -{ - position:relative; - margin-top:10px; -} -.page-num-ul li -{ - float:left; -} -.page-num-ul li a -{ - display:inline-block; - padding:3px 5px; - margin:0px 3px; - border:1px solid #b8b8b8; -} -.page-num-ul a:hover,.page-num-ul .thisclass -{ - border:1px solid #c5063f; - background-color:#c5063f; - color:#FFF; - text-decoration:none; -} -.page-key -{ - width:50px; -} -.page-btn -{ - border:1px solid #b8b8b8; - background-color:#fff3f8; - display:inline-block; - width:52px; - height:25px; - line-height:25px; - font-weight:20px; -} -.page-go-form -{ - position:absolute; - display:inline-block; - right:50px; - top:0px; -} -.page-go-form input,label,button -{ - margin:0px 5px; -} - - - diff --git a/smbms/src/main/webapp/error.jsp b/smbms/src/main/webapp/error.jsp deleted file mode 100644 index 892f699..0000000 --- a/smbms/src/main/webapp/error.jsp +++ /dev/null @@ -1,13 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> - - - - -Insert title here - - -

请登录后再访问该页面!

-返回 - - \ No newline at end of file diff --git a/smbms/src/main/webapp/images/buy.png b/smbms/src/main/webapp/images/buy.png deleted file mode 100644 index 77eb4e2..0000000 Binary files a/smbms/src/main/webapp/images/buy.png and /dev/null differ diff --git a/smbms/src/main/webapp/images/clock.jpg b/smbms/src/main/webapp/images/clock.jpg deleted file mode 100644 index 910af63..0000000 Binary files a/smbms/src/main/webapp/images/clock.jpg and /dev/null differ diff --git a/smbms/src/main/webapp/images/formBg.png b/smbms/src/main/webapp/images/formBg.png deleted file mode 100644 index a138397..0000000 Binary files a/smbms/src/main/webapp/images/formBg.png and /dev/null differ diff --git a/smbms/src/main/webapp/images/gys.png b/smbms/src/main/webapp/images/gys.png deleted file mode 100644 index 594f1d6..0000000 Binary files a/smbms/src/main/webapp/images/gys.png and /dev/null differ diff --git a/smbms/src/main/webapp/images/home.png b/smbms/src/main/webapp/images/home.png deleted file mode 100644 index 180d601..0000000 Binary files a/smbms/src/main/webapp/images/home.png and /dev/null differ diff --git a/smbms/src/main/webapp/images/leftBg.png b/smbms/src/main/webapp/images/leftBg.png deleted file mode 100644 index 3956769..0000000 Binary files a/smbms/src/main/webapp/images/leftBg.png and /dev/null differ diff --git a/smbms/src/main/webapp/images/loginBg.jpg b/smbms/src/main/webapp/images/loginBg.jpg deleted file mode 100644 index c221917..0000000 Binary files a/smbms/src/main/webapp/images/loginBg.jpg and /dev/null differ diff --git a/smbms/src/main/webapp/images/login_bg.jpg b/smbms/src/main/webapp/images/login_bg.jpg deleted file mode 100644 index 4b2c76a..0000000 Binary files a/smbms/src/main/webapp/images/login_bg.jpg and /dev/null differ diff --git a/smbms/src/main/webapp/images/login_img.png b/smbms/src/main/webapp/images/login_img.png deleted file mode 100644 index 2435ad8..0000000 Binary files a/smbms/src/main/webapp/images/login_img.png and /dev/null differ diff --git a/smbms/src/main/webapp/images/mm.png b/smbms/src/main/webapp/images/mm.png deleted file mode 100644 index afc1aee..0000000 Binary files a/smbms/src/main/webapp/images/mm.png and /dev/null differ diff --git a/smbms/src/main/webapp/images/n.png b/smbms/src/main/webapp/images/n.png deleted file mode 100644 index 7ba2708..0000000 Binary files a/smbms/src/main/webapp/images/n.png and /dev/null differ diff --git a/smbms/src/main/webapp/images/read.png b/smbms/src/main/webapp/images/read.png deleted file mode 100644 index 2c1dfeb..0000000 Binary files a/smbms/src/main/webapp/images/read.png and /dev/null differ diff --git a/smbms/src/main/webapp/images/schu.png b/smbms/src/main/webapp/images/schu.png deleted file mode 100644 index 142d9b3..0000000 Binary files a/smbms/src/main/webapp/images/schu.png and /dev/null differ diff --git a/smbms/src/main/webapp/images/search.png b/smbms/src/main/webapp/images/search.png deleted file mode 100644 index 7334d2e..0000000 Binary files a/smbms/src/main/webapp/images/search.png and /dev/null differ diff --git a/smbms/src/main/webapp/images/tc.png b/smbms/src/main/webapp/images/tc.png deleted file mode 100644 index 362b783..0000000 Binary files a/smbms/src/main/webapp/images/tc.png and /dev/null differ diff --git a/smbms/src/main/webapp/images/tianjia.png b/smbms/src/main/webapp/images/tianjia.png deleted file mode 100644 index a7d2dec..0000000 Binary files a/smbms/src/main/webapp/images/tianjia.png and /dev/null differ diff --git a/smbms/src/main/webapp/images/time.png b/smbms/src/main/webapp/images/time.png deleted file mode 100644 index 8dd66a9..0000000 Binary files a/smbms/src/main/webapp/images/time.png and /dev/null differ diff --git a/smbms/src/main/webapp/images/xiugai.png b/smbms/src/main/webapp/images/xiugai.png deleted file mode 100644 index 74581ec..0000000 Binary files a/smbms/src/main/webapp/images/xiugai.png and /dev/null differ diff --git a/smbms/src/main/webapp/images/y.png b/smbms/src/main/webapp/images/y.png deleted file mode 100644 index 99eb2a4..0000000 Binary files a/smbms/src/main/webapp/images/y.png and /dev/null differ diff --git a/smbms/src/main/webapp/images/yh.png b/smbms/src/main/webapp/images/yh.png deleted file mode 100644 index 5e65b52..0000000 Binary files a/smbms/src/main/webapp/images/yh.png and /dev/null differ diff --git a/smbms/src/main/webapp/images/zd.png b/smbms/src/main/webapp/images/zd.png deleted file mode 100644 index aeb7e83..0000000 Binary files a/smbms/src/main/webapp/images/zd.png and /dev/null differ diff --git a/smbms/src/main/webapp/index.jsp b/smbms/src/main/webapp/index.jsp deleted file mode 100644 index c38169b..0000000 --- a/smbms/src/main/webapp/index.jsp +++ /dev/null @@ -1,5 +0,0 @@ - - -

Hello World!

- - diff --git a/smbms/src/main/webapp/js/billadd.js b/smbms/src/main/webapp/js/billadd.js deleted file mode 100644 index 3c8c7ce..0000000 --- a/smbms/src/main/webapp/js/billadd.js +++ /dev/null @@ -1,152 +0,0 @@ -var billCode = null; -var productName = null; -var productUnit = null; -var productCount = null; -var totalPrice = null; -var providerId = null; -var addBtn = null; -var backBtn = null; - -function priceReg (value){ - value = value.replace(/[^\d.]/g,""); //清除“数字”和“.”以外的字符 - value = value.replace(/^\./g,""); //验证第一个字符是数字而不是. - value = value.replace(/\.{2,}/g,"."); //只保留第一个. 清除多余的. - value = value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");//去掉特殊符号¥ - if(value.indexOf(".")>0){ - value = value.substring(0,value.indexOf(".")+3); - } - return value; -} - - -$(function(){ - billCode = $("#billCode"); - productName = $("#productName"); - productUnit = $("#productUnit"); - productCount = $("#productCount"); - totalPrice = $("#totalPrice"); - providerId = $("#providerId"); - addBtn = $("#add"); - backBtn = $("#back"); - //初始化的时候,要把所有的提示信息变为:* 以提示必填项,更灵活,不要写在页面上 - billCode.next().html("*"); - productName.next().html("*"); - productUnit.next().html("*"); - productCount.next().html("*"); - totalPrice.next().html("*"); - providerId.next().html("*"); - - $.ajax({ - type:"GET",//请求类型 - url:path+"/jsp/bill.do",//请求的url - data:{method:"getproviderlist"},//请求参数 - dataType:"json",//ajax接口(请求url)返回的数据类型 - success:function(data){//data:返回数据(json对象) - if(data != null){ - $("select").html("");//通过标签选择器,得到select标签,适用于页面里只有一个select - var options = ""; - for(var i = 0; i < data.length; i++){ - //alert(data[i].id); - //alert(data[i].proName); - options += ""; - } - $("select").html(options); - } - }, - error:function(data){//当访问时候,404,500 等非200的错误状态码 - validateTip(providerId.next(),{"color":"red"},imgNo+" 获取供应商列表error",false); - } - }); - /* - * 验证 - * 失焦\获焦 - * jquery的方法传递 - */ - billCode.on("blur",function(){ - if(billCode.val() != null && billCode.val() != ""){ - validateTip(billCode.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(billCode.next(),{"color":"red"},imgNo+" 编码不能为空,请重新输入",false); - } - }).on("focus",function(){ - //显示友情提示 - validateTip(billCode.next(),{"color":"#666666"},"* 请输入订单编码",false); - }).focus(); - - productName.on("focus",function(){ - validateTip(productName.next(),{"color":"#666666"},"* 请输入商品名称",false); - }).on("blur",function(){ - if(productName.val() != null && productName.val() != ""){ - validateTip(productName.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(productName.next(),{"color":"red"},imgNo+" 商品名称不能为空,请重新输入",false); - } - - }); - - productUnit.on("focus",function(){ - validateTip(productUnit.next(),{"color":"#666666"},"* 请输入商品单位",false); - }).on("blur",function(){ - if(productUnit.val() != null && productUnit.val() != ""){ - validateTip(productUnit.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(productUnit.next(),{"color":"red"},imgNo+" 单位不能为空,请重新输入",false); - } - - }); - - providerId.on("focus",function(){ - validateTip(providerId.next(),{"color":"#666666"},"* 请选择供应商",false); - }).on("blur",function(){ - if(providerId.val() != null && providerId.val() != "" && providerId.val() != 0){ - validateTip(providerId.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(providerId.next(),{"color":"red"},imgNo+" 供应商不能为空,请选择",false); - } - - }); - - productCount.on("focus",function(){ - validateTip(productCount.next(),{"color":"#666666"},"* 请输入大于0的正自然数,小数点后保留2位",false); - }).on("keyup",function(){ - this.value = priceReg(this.value); - }).on("blur",function(){ - this.value = priceReg(this.value); - }); - - totalPrice.on("focus",function(){ - validateTip(totalPrice.next(),{"color":"#666666"},"* 请输入大于0的正自然数,小数点后保留2位",false); - }).on("keyup",function(){ - this.value = priceReg(this.value); - }).on("blur",function(){ - this.value = priceReg(this.value); - }); - - addBtn.on("click",function(){ - if(billCode.attr("validateStatus") != "true"){ - billCode.blur(); - }else if(productName.attr("validateStatus") != "true"){ - productName.blur(); - }else if(productUnit.attr("validateStatus") != "true"){ - productUnit.blur(); - }else if(providerId.attr("validateStatus") != "true"){ - providerId.blur(); - }else{ - if(confirm("是否确认提交数据")){ - $("#billForm").submit(); - } - } - }); - - backBtn.on("click",function(){ - if(referer != undefined - && null != referer - && "" != referer - && "null" != referer - && referer.length > 4){ - window.location.href = referer; - }else{ - history.back(-1); - } - }); -}); \ No newline at end of file diff --git a/smbms/src/main/webapp/js/billlist.js b/smbms/src/main/webapp/js/billlist.js deleted file mode 100644 index f462b8d..0000000 --- a/smbms/src/main/webapp/js/billlist.js +++ /dev/null @@ -1,91 +0,0 @@ -var billObj; - -//订单管理页面上点击删除按钮弹出删除框(billlist.jsp) -function deleteBill(obj){ - $.ajax({ - type:"GET", - url:path+"/jsp/bill.do", - data:{method:"delbill",billid:obj.attr("billid")}, - dataType:"json", - success:function(data){ - if(data.delResult == "true"){//删除成功:移除删除行 - cancleBtn(); - obj.parents("tr").remove(); - }else if(data.delResult == "false"){//删除失败 - //alert("对不起,删除订单【"+obj.attr("billcc")+"】失败"); - changeDLGContent("对不起,删除订单【"+obj.attr("billcc")+"】失败"); - }else if(data.delResult == "notexist"){ - //alert("对不起,订单【"+obj.attr("billcc")+"】不存在"); - changeDLGContent("对不起,订单【"+obj.attr("billcc")+"】不存在"); - } - }, - error:function(data){ - alert("对不起,删除失败"); - } - }); -} - -function openYesOrNoDLG(){ - $('.zhezhao').css('display', 'block'); - $('#removeBi').fadeIn(); -} - -function cancleBtn(){ - $('.zhezhao').css('display', 'none'); - $('#removeBi').fadeOut(); -} -function changeDLGContent(contentStr){ - var p = $(".removeMain").find("p"); - p.html(contentStr); -} - -$(function(){ - $(".viewBill").on("click",function(){ - //将被绑定的元素(a)转换成jquery对象,可以使用jquery方法 - var obj = $(this); - window.location.href=path+"/jsp/bill.do?method=view&billid="+ obj.attr("billid"); - }); - - $(".modifyBill").on("click",function(){ - var obj = $(this); - window.location.href=path+"/jsp/bill.do?method=modify&billid="+ obj.attr("billid"); - }); - $('#no').click(function () { - cancleBtn(); - }); - - $('#yes').click(function () { - deleteBill(billObj); - }); - - $(".deleteBill").on("click",function(){ - billObj = $(this); - changeDLGContent("你确定要删除订单【"+billObj.attr("billcc")+"】吗?"); - openYesOrNoDLG(); - }); - - /*$(".deleteBill").on("click",function(){ - var obj = $(this); - if(confirm("你确定要删除订单【"+obj.attr("billcc")+"】吗?")){ - $.ajax({ - type:"GET", - url:path+"/bill.do", - data:{method:"delbill",billid:obj.attr("billid")}, - dataType:"json", - success:function(data){ - if(data.delResult == "true"){//删除成功:移除删除行 - alert("删除成功"); - obj.parents("tr").remove(); - }else if(data.delResult == "false"){//删除失败 - alert("对不起,删除订单【"+obj.attr("billcc")+"】失败"); - }else if(data.delResult == "notexist"){ - alert("对不起,订单【"+obj.attr("billcc")+"】不存在"); - } - }, - error:function(data){ - alert("对不起,删除失败"); - } - }); - } - });*/ -}); \ No newline at end of file diff --git a/smbms/src/main/webapp/js/billmodify.js b/smbms/src/main/webapp/js/billmodify.js deleted file mode 100644 index 6227f00..0000000 --- a/smbms/src/main/webapp/js/billmodify.js +++ /dev/null @@ -1,147 +0,0 @@ -var billCode = null; -var productName = null; -var productUnit = null; -var productCount = null; -var totalPrice = null; -var providerId = null; -var saveBtn = null; -var backBtn = null; - -function priceReg (value){ - value = value.replace(/[^\d.]/g,""); //清除“数字”和“.”以外的字符 - value = value.replace(/^\./g,""); //验证第一个字符是数字而不是. - value = value.replace(/\.{2,}/g,"."); //只保留第一个. 清除多余的. - value = value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");//去掉特殊符号¥ - if(value.indexOf(".")>0){ - value = value.substring(0,value.indexOf(".")+3); - } - return value; -} - - -$(function(){ - billCode = $("#billCode"); - productName = $("#productName"); - productUnit = $("#productUnit"); - productCount = $("#productCount"); - totalPrice = $("#totalPrice"); - providerId = $("#providerId"); - addBtn = $("#save"); - backBtn = $("#back"); - - //初始化的时候,要把所有的提示信息变为:* 以提示必填项,更灵活,不要写在页面上 - billCode.next().html("*"); - productName.next().html("*"); - productUnit.next().html("*"); - productCount.next().html("*"); - totalPrice.next().html("*"); - providerId.next().html("*"); - - $.ajax({ - type:"GET",//请求类型 - url:path+"/jsp/bill.do",//请求的url - data:{method:"getproviderlist"},//请求参数 - dataType:"json",//ajax接口(请求url)返回的数据类型 - success:function(data){//data:返回数据(json对象) - if(data != null){ - var pid = $("#pid").val(); - $("select").html("");//通过标签选择器,得到select标签,适用于页面里只有一个select - var options = ""; - for(var i = 0; i < data.length; i++){ - //alert(data[i].id); - //alert(data[i].proName); - if(pid != null && pid != undefined && data[i].id == pid ){ - options += ""; - }else{ - options += ""; - } - - } - $("select").html(options); - } - }, - error:function(data){//当访问时候,404,500 等非200的错误状态码 - validateTip(providerId.next(),{"color":"red"},imgNo+" 获取供应商列表error",false); - } - }); - /* - * 验证 - * 失焦\获焦 - * jquery的方法传递 - */ - - productName.on("focus",function(){ - validateTip(productName.next(),{"color":"#666666"},"* 请输入商品名称",false); - }).on("blur",function(){ - if(productName.val() != null && productName.val() != ""){ - validateTip(productName.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(productName.next(),{"color":"red"},imgNo+" 商品名称不能为空,请重新输入",false); - } - - }); - - productUnit.on("focus",function(){ - validateTip(productUnit.next(),{"color":"#666666"},"* 请输入商品单位",false); - }).on("blur",function(){ - if(productUnit.val() != null && productUnit.val() != ""){ - validateTip(productUnit.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(productUnit.next(),{"color":"red"},imgNo+" 单位不能为空,请重新输入",false); - } - - }); - - providerId.on("focus",function(){ - validateTip(providerId.next(),{"color":"#666666"},"* 请选择供应商",false); - }).on("blur",function(){ - if(providerId.val() != null && providerId.val() != "" && providerId.val() != 0){ - validateTip(providerId.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(providerId.next(),{"color":"red"},imgNo+" 供应商不能为空,请选择",false); - } - - }); - - productCount.on("focus",function(){ - validateTip(productCount.next(),{"color":"#666666"},"* 请输入大于0的正自然数,小数点后保留2位",false); - }).on("keyup",function(){ - this.value = priceReg(this.value); - }).on("blur",function(){ - this.value = priceReg(this.value); - }); - - totalPrice.on("focus",function(){ - validateTip(totalPrice.next(),{"color":"#666666"},"* 请输入大于0的正自然数,小数点后保留2位",false); - }).on("keyup",function(){ - this.value = priceReg(this.value); - }).on("blur",function(){ - this.value = priceReg(this.value); - }); - - addBtn.on("click",function(){ - productName.blur(); - productUnit.blur(); - providerId.blur(); - if(productName.attr("validateStatus") == "true" - && productUnit.attr("validateStatus") == "true" - && providerId.attr("validateStatus") == "true"){ - if(confirm("是否确认提交数据")){ - $("#billForm").submit(); - } - } - }); - - backBtn.on("click",function(){ - //alert("modify: "+referer); - if(referer != undefined - && null != referer - && "" != referer - && "null" != referer - && referer.length > 4){ - window.location.href = referer; - }else{ - history.back(-1); - } - }); -}); \ No newline at end of file diff --git a/smbms/src/main/webapp/js/billview.js b/smbms/src/main/webapp/js/billview.js deleted file mode 100644 index 7388947..0000000 --- a/smbms/src/main/webapp/js/billview.js +++ /dev/null @@ -1,17 +0,0 @@ -var backBtn = null; - -$(function(){ - backBtn = $("#back"); - backBtn.on("click",function(){ - //alert("view : "+referer); - if(referer != undefined - && null != referer - && "" != referer - && "null" != referer - && referer.length > 4){ - window.location.href = referer; - }else{ - history.back(-1); - } - }); -}); \ No newline at end of file diff --git a/smbms/src/main/webapp/js/common.js b/smbms/src/main/webapp/js/common.js deleted file mode 100644 index 2a549b2..0000000 --- a/smbms/src/main/webapp/js/common.js +++ /dev/null @@ -1,17 +0,0 @@ -var path = $("#path").val(); -var imgYes = ""; -var imgNo = ""; -/** - * 提示信息显示 - * element:显示提示信息的元素(font) - * css:提示样式 - * tipString:提示信息 - * status:true/false --验证是否通过 - */ -function validateTip(element,css,tipString,status){ - element.css(css); - element.html(tipString); - - element.prev().attr("validateStatus",status); -} -var referer = $("#referer").val(); \ No newline at end of file diff --git a/smbms/src/main/webapp/js/jquery-1.8.3.min.js b/smbms/src/main/webapp/js/jquery-1.8.3.min.js deleted file mode 100644 index 3883779..0000000 --- a/smbms/src/main/webapp/js/jquery-1.8.3.min.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! jQuery v1.8.3 jquery.com | jquery.org/license */ -(function(e,t){function _(e){var t=M[e]={};return v.each(e.split(y),function(e,n){t[n]=!0}),t}function H(e,n,r){if(r===t&&e.nodeType===1){var i="data-"+n.replace(P,"-$1").toLowerCase();r=e.getAttribute(i);if(typeof r=="string"){try{r=r==="true"?!0:r==="false"?!1:r==="null"?null:+r+""===r?+r:D.test(r)?v.parseJSON(r):r}catch(s){}v.data(e,n,r)}else r=t}return r}function B(e){var t;for(t in e){if(t==="data"&&v.isEmptyObject(e[t]))continue;if(t!=="toJSON")return!1}return!0}function et(){return!1}function tt(){return!0}function ut(e){return!e||!e.parentNode||e.parentNode.nodeType===11}function at(e,t){do e=e[t];while(e&&e.nodeType!==1);return e}function ft(e,t,n){t=t||0;if(v.isFunction(t))return v.grep(e,function(e,r){var i=!!t.call(e,r,e);return i===n});if(t.nodeType)return v.grep(e,function(e,r){return e===t===n});if(typeof t=="string"){var r=v.grep(e,function(e){return e.nodeType===1});if(it.test(t))return v.filter(t,r,!n);t=v.filter(t,r)}return v.grep(e,function(e,r){return v.inArray(e,t)>=0===n})}function lt(e){var t=ct.split("|"),n=e.createDocumentFragment();if(n.createElement)while(t.length)n.createElement(t.pop());return n}function Lt(e,t){return e.getElementsByTagName(t)[0]||e.appendChild(e.ownerDocument.createElement(t))}function At(e,t){if(t.nodeType!==1||!v.hasData(e))return;var n,r,i,s=v._data(e),o=v._data(t,s),u=s.events;if(u){delete o.handle,o.events={};for(n in u)for(r=0,i=u[n].length;r").appendTo(i.body),n=t.css("display");t.remove();if(n==="none"||n===""){Pt=i.body.appendChild(Pt||v.extend(i.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!Ht||!Pt.createElement)Ht=(Pt.contentWindow||Pt.contentDocument).document,Ht.write(""),Ht.close();t=Ht.body.appendChild(Ht.createElement(e)),n=Dt(t,"display"),i.body.removeChild(Pt)}return Wt[e]=n,n}function fn(e,t,n,r){var i;if(v.isArray(t))v.each(t,function(t,i){n||sn.test(e)?r(e,i):fn(e+"["+(typeof i=="object"?t:"")+"]",i,n,r)});else if(!n&&v.type(t)==="object")for(i in t)fn(e+"["+i+"]",t[i],n,r);else r(e,t)}function Cn(e){return function(t,n){typeof t!="string"&&(n=t,t="*");var r,i,s,o=t.toLowerCase().split(y),u=0,a=o.length;if(v.isFunction(n))for(;u)[^>]*$|#([\w\-]*)$)/,E=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,S=/^[\],:{}\s]*$/,x=/(?:^|:|,)(?:\s*\[)+/g,T=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,N=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,C=/^-ms-/,k=/-([\da-z])/gi,L=function(e,t){return(t+"").toUpperCase()},A=function(){i.addEventListener?(i.removeEventListener("DOMContentLoaded",A,!1),v.ready()):i.readyState==="complete"&&(i.detachEvent("onreadystatechange",A),v.ready())},O={};v.fn=v.prototype={constructor:v,init:function(e,n,r){var s,o,u,a;if(!e)return this;if(e.nodeType)return this.context=this[0]=e,this.length=1,this;if(typeof e=="string"){e.charAt(0)==="<"&&e.charAt(e.length-1)===">"&&e.length>=3?s=[null,e,null]:s=w.exec(e);if(s&&(s[1]||!n)){if(s[1])return n=n instanceof v?n[0]:n,a=n&&n.nodeType?n.ownerDocument||n:i,e=v.parseHTML(s[1],a,!0),E.test(s[1])&&v.isPlainObject(n)&&this.attr.call(e,n,!0),v.merge(this,e);o=i.getElementById(s[2]);if(o&&o.parentNode){if(o.id!==s[2])return r.find(e);this.length=1,this[0]=o}return this.context=i,this.selector=e,this}return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e)}return v.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),v.makeArray(e,this))},selector:"",jquery:"1.8.3",length:0,size:function(){return this.length},toArray:function(){return l.call(this)},get:function(e){return e==null?this.toArray():e<0?this[this.length+e]:this[e]},pushStack:function(e,t,n){var r=v.merge(this.constructor(),e);return r.prevObject=this,r.context=this.context,t==="find"?r.selector=this.selector+(this.selector?" ":"")+n:t&&(r.selector=this.selector+"."+t+"("+n+")"),r},each:function(e,t){return v.each(this,e,t)},ready:function(e){return v.ready.promise().done(e),this},eq:function(e){return e=+e,e===-1?this.slice(e):this.slice(e,e+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(l.apply(this,arguments),"slice",l.call(arguments).join(","))},map:function(e){return this.pushStack(v.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:[].sort,splice:[].splice},v.fn.init.prototype=v.fn,v.extend=v.fn.extend=function(){var e,n,r,i,s,o,u=arguments[0]||{},a=1,f=arguments.length,l=!1;typeof u=="boolean"&&(l=u,u=arguments[1]||{},a=2),typeof u!="object"&&!v.isFunction(u)&&(u={}),f===a&&(u=this,--a);for(;a0)return;r.resolveWith(i,[v]),v.fn.trigger&&v(i).trigger("ready").off("ready")},isFunction:function(e){return v.type(e)==="function"},isArray:Array.isArray||function(e){return v.type(e)==="array"},isWindow:function(e){return e!=null&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return e==null?String(e):O[h.call(e)]||"object"},isPlainObject:function(e){if(!e||v.type(e)!=="object"||e.nodeType||v.isWindow(e))return!1;try{if(e.constructor&&!p.call(e,"constructor")&&!p.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(n){return!1}var r;for(r in e);return r===t||p.call(e,r)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw new Error(e)},parseHTML:function(e,t,n){var r;return!e||typeof e!="string"?null:(typeof t=="boolean"&&(n=t,t=0),t=t||i,(r=E.exec(e))?[t.createElement(r[1])]:(r=v.buildFragment([e],t,n?null:[]),v.merge([],(r.cacheable?v.clone(r.fragment):r.fragment).childNodes)))},parseJSON:function(t){if(!t||typeof t!="string")return null;t=v.trim(t);if(e.JSON&&e.JSON.parse)return e.JSON.parse(t);if(S.test(t.replace(T,"@").replace(N,"]").replace(x,"")))return(new Function("return "+t))();v.error("Invalid JSON: "+t)},parseXML:function(n){var r,i;if(!n||typeof n!="string")return null;try{e.DOMParser?(i=new DOMParser,r=i.parseFromString(n,"text/xml")):(r=new ActiveXObject("Microsoft.XMLDOM"),r.async="false",r.loadXML(n))}catch(s){r=t}return(!r||!r.documentElement||r.getElementsByTagName("parsererror").length)&&v.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&g.test(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(C,"ms-").replace(k,L)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,n,r){var i,s=0,o=e.length,u=o===t||v.isFunction(e);if(r){if(u){for(i in e)if(n.apply(e[i],r)===!1)break}else for(;s0&&e[0]&&e[a-1]||a===0||v.isArray(e));if(f)for(;u-1)a.splice(n,1),i&&(n<=o&&o--,n<=u&&u--)}),this},has:function(e){return v.inArray(e,a)>-1},empty:function(){return a=[],this},disable:function(){return a=f=n=t,this},disabled:function(){return!a},lock:function(){return f=t,n||c.disable(),this},locked:function(){return!f},fireWith:function(e,t){return t=t||[],t=[e,t.slice?t.slice():t],a&&(!r||f)&&(i?f.push(t):l(t)),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!r}};return c},v.extend({Deferred:function(e){var t=[["resolve","done",v.Callbacks("once memory"),"resolved"],["reject","fail",v.Callbacks("once memory"),"rejected"],["notify","progress",v.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return v.Deferred(function(n){v.each(t,function(t,r){var s=r[0],o=e[t];i[r[1]](v.isFunction(o)?function(){var e=o.apply(this,arguments);e&&v.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[s+"With"](this===i?n:this,[e])}:n[s])}),e=null}).promise()},promise:function(e){return e!=null?v.extend(e,r):r}},i={};return r.pipe=r.then,v.each(t,function(e,s){var o=s[2],u=s[3];r[s[1]]=o.add,u&&o.add(function(){n=u},t[e^1][2].disable,t[2][2].lock),i[s[0]]=o.fire,i[s[0]+"With"]=o.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t=0,n=l.call(arguments),r=n.length,i=r!==1||e&&v.isFunction(e.promise)?r:0,s=i===1?e:v.Deferred(),o=function(e,t,n){return function(r){t[e]=this,n[e]=arguments.length>1?l.call(arguments):r,n===u?s.notifyWith(t,n):--i||s.resolveWith(t,n)}},u,a,f;if(r>1){u=new Array(r),a=new Array(r),f=new Array(r);for(;t
a",n=p.getElementsByTagName("*"),r=p.getElementsByTagName("a")[0];if(!n||!r||!n.length)return{};s=i.createElement("select"),o=s.appendChild(i.createElement("option")),u=p.getElementsByTagName("input")[0],r.style.cssText="top:1px;float:left;opacity:.5",t={leadingWhitespace:p.firstChild.nodeType===3,tbody:!p.getElementsByTagName("tbody").length,htmlSerialize:!!p.getElementsByTagName("link").length,style:/top/.test(r.getAttribute("style")),hrefNormalized:r.getAttribute("href")==="/a",opacity:/^0.5/.test(r.style.opacity),cssFloat:!!r.style.cssFloat,checkOn:u.value==="on",optSelected:o.selected,getSetAttribute:p.className!=="t",enctype:!!i.createElement("form").enctype,html5Clone:i.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",boxModel:i.compatMode==="CSS1Compat",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},u.checked=!0,t.noCloneChecked=u.cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!o.disabled;try{delete p.test}catch(d){t.deleteExpando=!1}!p.addEventListener&&p.attachEvent&&p.fireEvent&&(p.attachEvent("onclick",h=function(){t.noCloneEvent=!1}),p.cloneNode(!0).fireEvent("onclick"),p.detachEvent("onclick",h)),u=i.createElement("input"),u.value="t",u.setAttribute("type","radio"),t.radioValue=u.value==="t",u.setAttribute("checked","checked"),u.setAttribute("name","t"),p.appendChild(u),a=i.createDocumentFragment(),a.appendChild(p.lastChild),t.checkClone=a.cloneNode(!0).cloneNode(!0).lastChild.checked,t.appendChecked=u.checked,a.removeChild(u),a.appendChild(p);if(p.attachEvent)for(l in{submit:!0,change:!0,focusin:!0})f="on"+l,c=f in p,c||(p.setAttribute(f,"return;"),c=typeof p[f]=="function"),t[l+"Bubbles"]=c;return v(function(){var n,r,s,o,u="padding:0;margin:0;border:0;display:block;overflow:hidden;",a=i.getElementsByTagName("body")[0];if(!a)return;n=i.createElement("div"),n.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px",a.insertBefore(n,a.firstChild),r=i.createElement("div"),n.appendChild(r),r.innerHTML="
t
",s=r.getElementsByTagName("td"),s[0].style.cssText="padding:0;margin:0;border:0;display:none",c=s[0].offsetHeight===0,s[0].style.display="",s[1].style.display="none",t.reliableHiddenOffsets=c&&s[0].offsetHeight===0,r.innerHTML="",r.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",t.boxSizing=r.offsetWidth===4,t.doesNotIncludeMarginInBodyOffset=a.offsetTop!==1,e.getComputedStyle&&(t.pixelPosition=(e.getComputedStyle(r,null)||{}).top!=="1%",t.boxSizingReliable=(e.getComputedStyle(r,null)||{width:"4px"}).width==="4px",o=i.createElement("div"),o.style.cssText=r.style.cssText=u,o.style.marginRight=o.style.width="0",r.style.width="1px",r.appendChild(o),t.reliableMarginRight=!parseFloat((e.getComputedStyle(o,null)||{}).marginRight)),typeof r.style.zoom!="undefined"&&(r.innerHTML="",r.style.cssText=u+"width:1px;padding:1px;display:inline;zoom:1",t.inlineBlockNeedsLayout=r.offsetWidth===3,r.style.display="block",r.style.overflow="visible",r.innerHTML="
",r.firstChild.style.width="5px",t.shrinkWrapBlocks=r.offsetWidth!==3,n.style.zoom=1),a.removeChild(n),n=r=s=o=null}),a.removeChild(p),n=r=s=o=u=a=p=null,t}();var D=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,P=/([A-Z])/g;v.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(v.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(e){return e=e.nodeType?v.cache[e[v.expando]]:e[v.expando],!!e&&!B(e)},data:function(e,n,r,i){if(!v.acceptData(e))return;var s,o,u=v.expando,a=typeof n=="string",f=e.nodeType,l=f?v.cache:e,c=f?e[u]:e[u]&&u;if((!c||!l[c]||!i&&!l[c].data)&&a&&r===t)return;c||(f?e[u]=c=v.deletedIds.pop()||v.guid++:c=u),l[c]||(l[c]={},f||(l[c].toJSON=v.noop));if(typeof n=="object"||typeof n=="function")i?l[c]=v.extend(l[c],n):l[c].data=v.extend(l[c].data,n);return s=l[c],i||(s.data||(s.data={}),s=s.data),r!==t&&(s[v.camelCase(n)]=r),a?(o=s[n],o==null&&(o=s[v.camelCase(n)])):o=s,o},removeData:function(e,t,n){if(!v.acceptData(e))return;var r,i,s,o=e.nodeType,u=o?v.cache:e,a=o?e[v.expando]:v.expando;if(!u[a])return;if(t){r=n?u[a]:u[a].data;if(r){v.isArray(t)||(t in r?t=[t]:(t=v.camelCase(t),t in r?t=[t]:t=t.split(" ")));for(i=0,s=t.length;i1,null,!1))},removeData:function(e){return this.each(function(){v.removeData(this,e)})}}),v.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=v._data(e,t),n&&(!r||v.isArray(n)?r=v._data(e,t,v.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=v.queue(e,t),r=n.length,i=n.shift(),s=v._queueHooks(e,t),o=function(){v.dequeue(e,t)};i==="inprogress"&&(i=n.shift(),r--),i&&(t==="fx"&&n.unshift("inprogress"),delete s.stop,i.call(e,o,s)),!r&&s&&s.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return v._data(e,n)||v._data(e,n,{empty:v.Callbacks("once memory").add(function(){v.removeData(e,t+"queue",!0),v.removeData(e,n,!0)})})}}),v.fn.extend({queue:function(e,n){var r=2;return typeof e!="string"&&(n=e,e="fx",r--),arguments.length1)},removeAttr:function(e){return this.each(function(){v.removeAttr(this,e)})},prop:function(e,t){return v.access(this,v.prop,e,t,arguments.length>1)},removeProp:function(e){return e=v.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e]}catch(n){}})},addClass:function(e){var t,n,r,i,s,o,u;if(v.isFunction(e))return this.each(function(t){v(this).addClass(e.call(this,t,this.className))});if(e&&typeof e=="string"){t=e.split(y);for(n=0,r=this.length;n=0)r=r.replace(" "+n[s]+" "," ");i.className=e?v.trim(r):""}}}return this},toggleClass:function(e,t){var n=typeof e,r=typeof t=="boolean";return v.isFunction(e)?this.each(function(n){v(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if(n==="string"){var i,s=0,o=v(this),u=t,a=e.split(y);while(i=a[s++])u=r?u:!o.hasClass(i),o[u?"addClass":"removeClass"](i)}else if(n==="undefined"||n==="boolean")this.className&&v._data(this,"__className__",this.className),this.className=this.className||e===!1?"":v._data(this,"__className__")||""})},hasClass:function(e){var t=" "+e+" ",n=0,r=this.length;for(;n=0)return!0;return!1},val:function(e){var n,r,i,s=this[0];if(!arguments.length){if(s)return n=v.valHooks[s.type]||v.valHooks[s.nodeName.toLowerCase()],n&&"get"in n&&(r=n.get(s,"value"))!==t?r:(r=s.value,typeof r=="string"?r.replace(R,""):r==null?"":r);return}return i=v.isFunction(e),this.each(function(r){var s,o=v(this);if(this.nodeType!==1)return;i?s=e.call(this,r,o.val()):s=e,s==null?s="":typeof s=="number"?s+="":v.isArray(s)&&(s=v.map(s,function(e){return e==null?"":e+""})),n=v.valHooks[this.type]||v.valHooks[this.nodeName.toLowerCase()];if(!n||!("set"in n)||n.set(this,s,"value")===t)this.value=s})}}),v.extend({valHooks:{option:{get:function(e){var t=e.attributes.value;return!t||t.specified?e.value:e.text}},select:{get:function(e){var t,n,r=e.options,i=e.selectedIndex,s=e.type==="select-one"||i<0,o=s?null:[],u=s?i+1:r.length,a=i<0?u:s?i:0;for(;a=0}),n.length||(e.selectedIndex=-1),n}}},attrFn:{},attr:function(e,n,r,i){var s,o,u,a=e.nodeType;if(!e||a===3||a===8||a===2)return;if(i&&v.isFunction(v.fn[n]))return v(e)[n](r);if(typeof e.getAttribute=="undefined")return v.prop(e,n,r);u=a!==1||!v.isXMLDoc(e),u&&(n=n.toLowerCase(),o=v.attrHooks[n]||(X.test(n)?F:j));if(r!==t){if(r===null){v.removeAttr(e,n);return}return o&&"set"in o&&u&&(s=o.set(e,r,n))!==t?s:(e.setAttribute(n,r+""),r)}return o&&"get"in o&&u&&(s=o.get(e,n))!==null?s:(s=e.getAttribute(n),s===null?t:s)},removeAttr:function(e,t){var n,r,i,s,o=0;if(t&&e.nodeType===1){r=t.split(y);for(;o=0}})});var $=/^(?:textarea|input|select)$/i,J=/^([^\.]*|)(?:\.(.+)|)$/,K=/(?:^|\s)hover(\.\S+|)\b/,Q=/^key/,G=/^(?:mouse|contextmenu)|click/,Y=/^(?:focusinfocus|focusoutblur)$/,Z=function(e){return v.event.special.hover?e:e.replace(K,"mouseenter$1 mouseleave$1")};v.event={add:function(e,n,r,i,s){var o,u,a,f,l,c,h,p,d,m,g;if(e.nodeType===3||e.nodeType===8||!n||!r||!(o=v._data(e)))return;r.handler&&(d=r,r=d.handler,s=d.selector),r.guid||(r.guid=v.guid++),a=o.events,a||(o.events=a={}),u=o.handle,u||(o.handle=u=function(e){return typeof v=="undefined"||!!e&&v.event.triggered===e.type?t:v.event.dispatch.apply(u.elem,arguments)},u.elem=e),n=v.trim(Z(n)).split(" ");for(f=0;f=0&&(y=y.slice(0,-1),a=!0),y.indexOf(".")>=0&&(b=y.split("."),y=b.shift(),b.sort());if((!s||v.event.customEvent[y])&&!v.event.global[y])return;n=typeof n=="object"?n[v.expando]?n:new v.Event(y,n):new v.Event(y),n.type=y,n.isTrigger=!0,n.exclusive=a,n.namespace=b.join("."),n.namespace_re=n.namespace?new RegExp("(^|\\.)"+b.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,h=y.indexOf(":")<0?"on"+y:"";if(!s){u=v.cache;for(f in u)u[f].events&&u[f].events[y]&&v.event.trigger(n,r,u[f].handle.elem,!0);return}n.result=t,n.target||(n.target=s),r=r!=null?v.makeArray(r):[],r.unshift(n),p=v.event.special[y]||{};if(p.trigger&&p.trigger.apply(s,r)===!1)return;m=[[s,p.bindType||y]];if(!o&&!p.noBubble&&!v.isWindow(s)){g=p.delegateType||y,l=Y.test(g+y)?s:s.parentNode;for(c=s;l;l=l.parentNode)m.push([l,g]),c=l;c===(s.ownerDocument||i)&&m.push([c.defaultView||c.parentWindow||e,g])}for(f=0;f=0:v.find(h,this,null,[s]).length),u[h]&&f.push(c);f.length&&w.push({elem:s,matches:f})}d.length>m&&w.push({elem:this,matches:d.slice(m)});for(r=0;r0?this.on(t,null,e,n):this.trigger(t)},Q.test(t)&&(v.event.fixHooks[t]=v.event.keyHooks),G.test(t)&&(v.event.fixHooks[t]=v.event.mouseHooks)}),function(e,t){function nt(e,t,n,r){n=n||[],t=t||g;var i,s,a,f,l=t.nodeType;if(!e||typeof e!="string")return n;if(l!==1&&l!==9)return[];a=o(t);if(!a&&!r)if(i=R.exec(e))if(f=i[1]){if(l===9){s=t.getElementById(f);if(!s||!s.parentNode)return n;if(s.id===f)return n.push(s),n}else if(t.ownerDocument&&(s=t.ownerDocument.getElementById(f))&&u(t,s)&&s.id===f)return n.push(s),n}else{if(i[2])return S.apply(n,x.call(t.getElementsByTagName(e),0)),n;if((f=i[3])&&Z&&t.getElementsByClassName)return S.apply(n,x.call(t.getElementsByClassName(f),0)),n}return vt(e.replace(j,"$1"),t,n,r,a)}function rt(e){return function(t){var n=t.nodeName.toLowerCase();return n==="input"&&t.type===e}}function it(e){return function(t){var n=t.nodeName.toLowerCase();return(n==="input"||n==="button")&&t.type===e}}function st(e){return N(function(t){return t=+t,N(function(n,r){var i,s=e([],n.length,t),o=s.length;while(o--)n[i=s[o]]&&(n[i]=!(r[i]=n[i]))})})}function ot(e,t,n){if(e===t)return n;var r=e.nextSibling;while(r){if(r===t)return-1;r=r.nextSibling}return 1}function ut(e,t){var n,r,s,o,u,a,f,l=L[d][e+" "];if(l)return t?0:l.slice(0);u=e,a=[],f=i.preFilter;while(u){if(!n||(r=F.exec(u)))r&&(u=u.slice(r[0].length)||u),a.push(s=[]);n=!1;if(r=I.exec(u))s.push(n=new m(r.shift())),u=u.slice(n.length),n.type=r[0].replace(j," ");for(o in i.filter)(r=J[o].exec(u))&&(!f[o]||(r=f[o](r)))&&(s.push(n=new m(r.shift())),u=u.slice(n.length),n.type=o,n.matches=r);if(!n)break}return t?u.length:u?nt.error(e):L(e,a).slice(0)}function at(e,t,r){var i=t.dir,s=r&&t.dir==="parentNode",o=w++;return t.first?function(t,n,r){while(t=t[i])if(s||t.nodeType===1)return e(t,n,r)}:function(t,r,u){if(!u){var a,f=b+" "+o+" ",l=f+n;while(t=t[i])if(s||t.nodeType===1){if((a=t[d])===l)return t.sizset;if(typeof a=="string"&&a.indexOf(f)===0){if(t.sizset)return t}else{t[d]=l;if(e(t,r,u))return t.sizset=!0,t;t.sizset=!1}}}else while(t=t[i])if(s||t.nodeType===1)if(e(t,r,u))return t}}function ft(e){return e.length>1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function lt(e,t,n,r,i){var s,o=[],u=0,a=e.length,f=t!=null;for(;u-1&&(s[f]=!(o[f]=c))}}else g=lt(g===o?g.splice(d,g.length):g),i?i(null,o,g,a):S.apply(o,g)})}function ht(e){var t,n,r,s=e.length,o=i.relative[e[0].type],u=o||i.relative[" "],a=o?1:0,f=at(function(e){return e===t},u,!0),l=at(function(e){return T.call(t,e)>-1},u,!0),h=[function(e,n,r){return!o&&(r||n!==c)||((t=n).nodeType?f(e,n,r):l(e,n,r))}];for(;a1&&ft(h),a>1&&e.slice(0,a-1).join("").replace(j,"$1"),n,a0,s=e.length>0,o=function(u,a,f,l,h){var p,d,v,m=[],y=0,w="0",x=u&&[],T=h!=null,N=c,C=u||s&&i.find.TAG("*",h&&a.parentNode||a),k=b+=N==null?1:Math.E;T&&(c=a!==g&&a,n=o.el);for(;(p=C[w])!=null;w++){if(s&&p){for(d=0;v=e[d];d++)if(v(p,a,f)){l.push(p);break}T&&(b=k,n=++o.el)}r&&((p=!v&&p)&&y--,u&&x.push(p))}y+=w;if(r&&w!==y){for(d=0;v=t[d];d++)v(x,m,a,f);if(u){if(y>0)while(w--)!x[w]&&!m[w]&&(m[w]=E.call(l));m=lt(m)}S.apply(l,m),T&&!u&&m.length>0&&y+t.length>1&&nt.uniqueSort(l)}return T&&(b=k,c=N),x};return o.el=0,r?N(o):o}function dt(e,t,n){var r=0,i=t.length;for(;r2&&(f=u[0]).type==="ID"&&t.nodeType===9&&!s&&i.relative[u[1].type]){t=i.find.ID(f.matches[0].replace($,""),t,s)[0];if(!t)return n;e=e.slice(u.shift().length)}for(o=J.POS.test(e)?-1:u.length-1;o>=0;o--){f=u[o];if(i.relative[l=f.type])break;if(c=i.find[l])if(r=c(f.matches[0].replace($,""),z.test(u[0].type)&&t.parentNode||t,s)){u.splice(o,1),e=r.length&&u.join("");if(!e)return S.apply(n,x.call(r,0)),n;break}}}return a(e,h)(r,t,s,n,z.test(e)),n}function mt(){}var n,r,i,s,o,u,a,f,l,c,h=!0,p="undefined",d=("sizcache"+Math.random()).replace(".",""),m=String,g=e.document,y=g.documentElement,b=0,w=0,E=[].pop,S=[].push,x=[].slice,T=[].indexOf||function(e){var t=0,n=this.length;for(;ti.cacheLength&&delete e[t.shift()],e[n+" "]=r},e)},k=C(),L=C(),A=C(),O="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",_=M.replace("w","w#"),D="([*^$|!~]?=)",P="\\["+O+"*("+M+")"+O+"*(?:"+D+O+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+_+")|)|)"+O+"*\\]",H=":("+M+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:"+P+")|[^:]|\\\\.)*|.*))\\)|)",B=":(even|odd|eq|gt|lt|nth|first|last)(?:\\("+O+"*((?:-\\d)?\\d*)"+O+"*\\)|)(?=[^-]|$)",j=new RegExp("^"+O+"+|((?:^|[^\\\\])(?:\\\\.)*)"+O+"+$","g"),F=new RegExp("^"+O+"*,"+O+"*"),I=new RegExp("^"+O+"*([\\x20\\t\\r\\n\\f>+~])"+O+"*"),q=new RegExp(H),R=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,U=/^:not/,z=/[\x20\t\r\n\f]*[+~]/,W=/:not\($/,X=/h\d/i,V=/input|select|textarea|button/i,$=/\\(?!\\)/g,J={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),NAME:new RegExp("^\\[name=['\"]?("+M+")['\"]?\\]"),TAG:new RegExp("^("+M.replace("w","w*")+")"),ATTR:new RegExp("^"+P),PSEUDO:new RegExp("^"+H),POS:new RegExp(B,"i"),CHILD:new RegExp("^:(only|nth|first|last)-child(?:\\("+O+"*(even|odd|(([+-]|)(\\d*)n|)"+O+"*(?:([+-]|)"+O+"*(\\d+)|))"+O+"*\\)|)","i"),needsContext:new RegExp("^"+O+"*[>+~]|"+B,"i")},K=function(e){var t=g.createElement("div");try{return e(t)}catch(n){return!1}finally{t=null}},Q=K(function(e){return e.appendChild(g.createComment("")),!e.getElementsByTagName("*").length}),G=K(function(e){return e.innerHTML="",e.firstChild&&typeof e.firstChild.getAttribute!==p&&e.firstChild.getAttribute("href")==="#"}),Y=K(function(e){e.innerHTML="";var t=typeof e.lastChild.getAttribute("multiple");return t!=="boolean"&&t!=="string"}),Z=K(function(e){return e.innerHTML="",!e.getElementsByClassName||!e.getElementsByClassName("e").length?!1:(e.lastChild.className="e",e.getElementsByClassName("e").length===2)}),et=K(function(e){e.id=d+0,e.innerHTML="
",y.insertBefore(e,y.firstChild);var t=g.getElementsByName&&g.getElementsByName(d).length===2+g.getElementsByName(d+0).length;return r=!g.getElementById(d),y.removeChild(e),t});try{x.call(y.childNodes,0)[0].nodeType}catch(tt){x=function(e){var t,n=[];for(;t=this[e];e++)n.push(t);return n}}nt.matches=function(e,t){return nt(e,null,null,t)},nt.matchesSelector=function(e,t){return nt(t,null,null,[e]).length>0},s=nt.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(i===1||i===9||i===11){if(typeof e.textContent=="string")return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=s(e)}else if(i===3||i===4)return e.nodeValue}else for(;t=e[r];r++)n+=s(t);return n},o=nt.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?t.nodeName!=="HTML":!1},u=nt.contains=y.contains?function(e,t){var n=e.nodeType===9?e.documentElement:e,r=t&&t.parentNode;return e===r||!!(r&&r.nodeType===1&&n.contains&&n.contains(r))}:y.compareDocumentPosition?function(e,t){return t&&!!(e.compareDocumentPosition(t)&16)}:function(e,t){while(t=t.parentNode)if(t===e)return!0;return!1},nt.attr=function(e,t){var n,r=o(e);return r||(t=t.toLowerCase()),(n=i.attrHandle[t])?n(e):r||Y?e.getAttribute(t):(n=e.getAttributeNode(t),n?typeof e[t]=="boolean"?e[t]?t:null:n.specified?n.value:null:null)},i=nt.selectors={cacheLength:50,createPseudo:N,match:J,attrHandle:G?{}:{href:function(e){return e.getAttribute("href",2)},type:function(e){return e.getAttribute("type")}},find:{ID:r?function(e,t,n){if(typeof t.getElementById!==p&&!n){var r=t.getElementById(e);return r&&r.parentNode?[r]:[]}}:function(e,n,r){if(typeof n.getElementById!==p&&!r){var i=n.getElementById(e);return i?i.id===e||typeof i.getAttributeNode!==p&&i.getAttributeNode("id").value===e?[i]:t:[]}},TAG:Q?function(e,t){if(typeof t.getElementsByTagName!==p)return t.getElementsByTagName(e)}:function(e,t){var n=t.getElementsByTagName(e);if(e==="*"){var r,i=[],s=0;for(;r=n[s];s++)r.nodeType===1&&i.push(r);return i}return n},NAME:et&&function(e,t){if(typeof t.getElementsByName!==p)return t.getElementsByName(name)},CLASS:Z&&function(e,t,n){if(typeof t.getElementsByClassName!==p&&!n)return t.getElementsByClassName(e)}},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace($,""),e[3]=(e[4]||e[5]||"").replace($,""),e[2]==="~="&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),e[1]==="nth"?(e[2]||nt.error(e[0]),e[3]=+(e[3]?e[4]+(e[5]||1):2*(e[2]==="even"||e[2]==="odd")),e[4]=+(e[6]+e[7]||e[2]==="odd")):e[2]&&nt.error(e[0]),e},PSEUDO:function(e){var t,n;if(J.CHILD.test(e[0]))return null;if(e[3])e[2]=e[3];else if(t=e[4])q.test(t)&&(n=ut(t,!0))&&(n=t.indexOf(")",t.length-n)-t.length)&&(t=t.slice(0,n),e[0]=e[0].slice(0,n)),e[2]=t;return e.slice(0,3)}},filter:{ID:r?function(e){return e=e.replace($,""),function(t){return t.getAttribute("id")===e}}:function(e){return e=e.replace($,""),function(t){var n=typeof t.getAttributeNode!==p&&t.getAttributeNode("id");return n&&n.value===e}},TAG:function(e){return e==="*"?function(){return!0}:(e=e.replace($,"").toLowerCase(),function(t){return t.nodeName&&t.nodeName.toLowerCase()===e})},CLASS:function(e){var t=k[d][e+" "];return t||(t=new RegExp("(^|"+O+")"+e+"("+O+"|$)"))&&k(e,function(e){return t.test(e.className||typeof e.getAttribute!==p&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r,i){var s=nt.attr(r,e);return s==null?t==="!=":t?(s+="",t==="="?s===n:t==="!="?s!==n:t==="^="?n&&s.indexOf(n)===0:t==="*="?n&&s.indexOf(n)>-1:t==="$="?n&&s.substr(s.length-n.length)===n:t==="~="?(" "+s+" ").indexOf(n)>-1:t==="|="?s===n||s.substr(0,n.length+1)===n+"-":!1):!0}},CHILD:function(e,t,n,r){return e==="nth"?function(e){var t,i,s=e.parentNode;if(n===1&&r===0)return!0;if(s){i=0;for(t=s.firstChild;t;t=t.nextSibling)if(t.nodeType===1){i++;if(e===t)break}}return i-=r,i===n||i%n===0&&i/n>=0}:function(t){var n=t;switch(e){case"only":case"first":while(n=n.previousSibling)if(n.nodeType===1)return!1;if(e==="first")return!0;n=t;case"last":while(n=n.nextSibling)if(n.nodeType===1)return!1;return!0}}},PSEUDO:function(e,t){var n,r=i.pseudos[e]||i.setFilters[e.toLowerCase()]||nt.error("unsupported pseudo: "+e);return r[d]?r(t):r.length>1?(n=[e,e,"",t],i.setFilters.hasOwnProperty(e.toLowerCase())?N(function(e,n){var i,s=r(e,t),o=s.length;while(o--)i=T.call(e,s[o]),e[i]=!(n[i]=s[o])}):function(e){return r(e,0,n)}):r}},pseudos:{not:N(function(e){var t=[],n=[],r=a(e.replace(j,"$1"));return r[d]?N(function(e,t,n,i){var s,o=r(e,null,i,[]),u=e.length;while(u--)if(s=o[u])e[u]=!(t[u]=s)}):function(e,i,s){return t[0]=e,r(t,null,s,n),!n.pop()}}),has:N(function(e){return function(t){return nt(e,t).length>0}}),contains:N(function(e){return function(t){return(t.textContent||t.innerText||s(t)).indexOf(e)>-1}}),enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return t==="input"&&!!e.checked||t==="option"&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},parent:function(e){return!i.pseudos.empty(e)},empty:function(e){var t;e=e.firstChild;while(e){if(e.nodeName>"@"||(t=e.nodeType)===3||t===4)return!1;e=e.nextSibling}return!0},header:function(e){return X.test(e.nodeName)},text:function(e){var t,n;return e.nodeName.toLowerCase()==="input"&&(t=e.type)==="text"&&((n=e.getAttribute("type"))==null||n.toLowerCase()===t)},radio:rt("radio"),checkbox:rt("checkbox"),file:rt("file"),password:rt("password"),image:rt("image"),submit:it("submit"),reset:it("reset"),button:function(e){var t=e.nodeName.toLowerCase();return t==="input"&&e.type==="button"||t==="button"},input:function(e){return V.test(e.nodeName)},focus:function(e){var t=e.ownerDocument;return e===t.activeElement&&(!t.hasFocus||t.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},active:function(e){return e===e.ownerDocument.activeElement},first:st(function(){return[0]}),last:st(function(e,t){return[t-1]}),eq:st(function(e,t,n){return[n<0?n+t:n]}),even:st(function(e,t){for(var n=0;n=0;)e.push(r);return e}),gt:st(function(e,t,n){for(var r=n<0?n+t:n;++r",e.querySelectorAll("[selected]").length||i.push("\\["+O+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),e.querySelectorAll(":checked").length||i.push(":checked")}),K(function(e){e.innerHTML="

",e.querySelectorAll("[test^='']").length&&i.push("[*^$]="+O+"*(?:\"\"|'')"),e.innerHTML="",e.querySelectorAll(":enabled").length||i.push(":enabled",":disabled")}),i=new RegExp(i.join("|")),vt=function(e,r,s,o,u){if(!o&&!u&&!i.test(e)){var a,f,l=!0,c=d,h=r,p=r.nodeType===9&&e;if(r.nodeType===1&&r.nodeName.toLowerCase()!=="object"){a=ut(e),(l=r.getAttribute("id"))?c=l.replace(n,"\\$&"):r.setAttribute("id",c),c="[id='"+c+"'] ",f=a.length;while(f--)a[f]=c+a[f].join("");h=z.test(e)&&r.parentNode||r,p=a.join(",")}if(p)try{return S.apply(s,x.call(h.querySelectorAll(p),0)),s}catch(v){}finally{l||r.removeAttribute("id")}}return t(e,r,s,o,u)},u&&(K(function(t){e=u.call(t,"div");try{u.call(t,"[test!='']:sizzle"),s.push("!=",H)}catch(n){}}),s=new RegExp(s.join("|")),nt.matchesSelector=function(t,n){n=n.replace(r,"='$1']");if(!o(t)&&!s.test(n)&&!i.test(n))try{var a=u.call(t,n);if(a||e||t.document&&t.document.nodeType!==11)return a}catch(f){}return nt(n,null,null,[t]).length>0})}(),i.pseudos.nth=i.pseudos.eq,i.filters=mt.prototype=i.pseudos,i.setFilters=new mt,nt.attr=v.attr,v.find=nt,v.expr=nt.selectors,v.expr[":"]=v.expr.pseudos,v.unique=nt.uniqueSort,v.text=nt.getText,v.isXMLDoc=nt.isXML,v.contains=nt.contains}(e);var nt=/Until$/,rt=/^(?:parents|prev(?:Until|All))/,it=/^.[^:#\[\.,]*$/,st=v.expr.match.needsContext,ot={children:!0,contents:!0,next:!0,prev:!0};v.fn.extend({find:function(e){var t,n,r,i,s,o,u=this;if(typeof e!="string")return v(e).filter(function(){for(t=0,n=u.length;t0)for(i=r;i=0:v.filter(e,this).length>0:this.filter(e).length>0)},closest:function(e,t){var n,r=0,i=this.length,s=[],o=st.test(e)||typeof e!="string"?v(e,t||this.context):0;for(;r-1:v.find.matchesSelector(n,e)){s.push(n);break}n=n.parentNode}}return s=s.length>1?v.unique(s):s,this.pushStack(s,"closest",e)},index:function(e){return e?typeof e=="string"?v.inArray(this[0],v(e)):v.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.prevAll().length:-1},add:function(e,t){var n=typeof e=="string"?v(e,t):v.makeArray(e&&e.nodeType?[e]:e),r=v.merge(this.get(),n);return this.pushStack(ut(n[0])||ut(r[0])?r:v.unique(r))},addBack:function(e){return this.add(e==null?this.prevObject:this.prevObject.filter(e))}}),v.fn.andSelf=v.fn.addBack,v.each({parent:function(e){var t=e.parentNode;return t&&t.nodeType!==11?t:null},parents:function(e){return v.dir(e,"parentNode")},parentsUntil:function(e,t,n){return v.dir(e,"parentNode",n)},next:function(e){return at(e,"nextSibling")},prev:function(e){return at(e,"previousSibling")},nextAll:function(e){return v.dir(e,"nextSibling")},prevAll:function(e){return v.dir(e,"previousSibling")},nextUntil:function(e,t,n){return v.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return v.dir(e,"previousSibling",n)},siblings:function(e){return v.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return v.sibling(e.firstChild)},contents:function(e){return v.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:v.merge([],e.childNodes)}},function(e,t){v.fn[e]=function(n,r){var i=v.map(this,t,n);return nt.test(e)||(r=n),r&&typeof r=="string"&&(i=v.filter(r,i)),i=this.length>1&&!ot[e]?v.unique(i):i,this.length>1&&rt.test(e)&&(i=i.reverse()),this.pushStack(i,e,l.call(arguments).join(","))}}),v.extend({filter:function(e,t,n){return n&&(e=":not("+e+")"),t.length===1?v.find.matchesSelector(t[0],e)?[t[0]]:[]:v.find.matches(e,t)},dir:function(e,n,r){var i=[],s=e[n];while(s&&s.nodeType!==9&&(r===t||s.nodeType!==1||!v(s).is(r)))s.nodeType===1&&i.push(s),s=s[n];return i},sibling:function(e,t){var n=[];for(;e;e=e.nextSibling)e.nodeType===1&&e!==t&&n.push(e);return n}});var ct="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ht=/ jQuery\d+="(?:null|\d+)"/g,pt=/^\s+/,dt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,vt=/<([\w:]+)/,mt=/]","i"),Et=/^(?:checkbox|radio)$/,St=/checked\s*(?:[^=]|=\s*.checked.)/i,xt=/\/(java|ecma)script/i,Tt=/^\s*\s*$/g,Nt={option:[1,""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},Ct=lt(i),kt=Ct.appendChild(i.createElement("div"));Nt.optgroup=Nt.option,Nt.tbody=Nt.tfoot=Nt.colgroup=Nt.caption=Nt.thead,Nt.th=Nt.td,v.support.htmlSerialize||(Nt._default=[1,"X
","
"]),v.fn.extend({text:function(e){return v.access(this,function(e){return e===t?v.text(this):this.empty().append((this[0]&&this[0].ownerDocument||i).createTextNode(e))},null,e,arguments.length)},wrapAll:function(e){if(v.isFunction(e))return this.each(function(t){v(this).wrapAll(e.call(this,t))});if(this[0]){var t=v(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstChild&&e.firstChild.nodeType===1)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return v.isFunction(e)?this.each(function(t){v(this).wrapInner(e.call(this,t))}):this.each(function(){var t=v(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=v.isFunction(e);return this.each(function(n){v(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){v.nodeName(this,"body")||v(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(e){(this.nodeType===1||this.nodeType===11)&&this.appendChild(e)})},prepend:function(){return this.domManip(arguments,!0,function(e){(this.nodeType===1||this.nodeType===11)&&this.insertBefore(e,this.firstChild)})},before:function(){if(!ut(this[0]))return this.domManip(arguments,!1,function(e){this.parentNode.insertBefore(e,this)});if(arguments.length){var e=v.clean(arguments);return this.pushStack(v.merge(e,this),"before",this.selector)}},after:function(){if(!ut(this[0]))return this.domManip(arguments,!1,function(e){this.parentNode.insertBefore(e,this.nextSibling)});if(arguments.length){var e=v.clean(arguments);return this.pushStack(v.merge(this,e),"after",this.selector)}},remove:function(e,t){var n,r=0;for(;(n=this[r])!=null;r++)if(!e||v.filter(e,[n]).length)!t&&n.nodeType===1&&(v.cleanData(n.getElementsByTagName("*")),v.cleanData([n])),n.parentNode&&n.parentNode.removeChild(n);return this},empty:function(){var e,t=0;for(;(e=this[t])!=null;t++){e.nodeType===1&&v.cleanData(e.getElementsByTagName("*"));while(e.firstChild)e.removeChild(e.firstChild)}return this},clone:function(e,t){return e=e==null?!1:e,t=t==null?e:t,this.map(function(){return v.clone(this,e,t)})},html:function(e){return v.access(this,function(e){var n=this[0]||{},r=0,i=this.length;if(e===t)return n.nodeType===1?n.innerHTML.replace(ht,""):t;if(typeof e=="string"&&!yt.test(e)&&(v.support.htmlSerialize||!wt.test(e))&&(v.support.leadingWhitespace||!pt.test(e))&&!Nt[(vt.exec(e)||["",""])[1].toLowerCase()]){e=e.replace(dt,"<$1>");try{for(;r1&&typeof f=="string"&&St.test(f))return this.each(function(){v(this).domManip(e,n,r)});if(v.isFunction(f))return this.each(function(i){var s=v(this);e[0]=f.call(this,i,n?s.html():t),s.domManip(e,n,r)});if(this[0]){i=v.buildFragment(e,this,l),o=i.fragment,s=o.firstChild,o.childNodes.length===1&&(o=s);if(s){n=n&&v.nodeName(s,"tr");for(u=i.cacheable||c-1;a0?this.clone(!0):this).get(),v(o[i])[t](r),s=s.concat(r);return this.pushStack(s,e,o.selector)}}),v.extend({clone:function(e,t,n){var r,i,s,o;v.support.html5Clone||v.isXMLDoc(e)||!wt.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(kt.innerHTML=e.outerHTML,kt.removeChild(o=kt.firstChild));if((!v.support.noCloneEvent||!v.support.noCloneChecked)&&(e.nodeType===1||e.nodeType===11)&&!v.isXMLDoc(e)){Ot(e,o),r=Mt(e),i=Mt(o);for(s=0;r[s];++s)i[s]&&Ot(r[s],i[s])}if(t){At(e,o);if(n){r=Mt(e),i=Mt(o);for(s=0;r[s];++s)At(r[s],i[s])}}return r=i=null,o},clean:function(e,t,n,r){var s,o,u,a,f,l,c,h,p,d,m,g,y=t===i&&Ct,b=[];if(!t||typeof t.createDocumentFragment=="undefined")t=i;for(s=0;(u=e[s])!=null;s++){typeof u=="number"&&(u+="");if(!u)continue;if(typeof u=="string")if(!gt.test(u))u=t.createTextNode(u);else{y=y||lt(t),c=t.createElement("div"),y.appendChild(c),u=u.replace(dt,"<$1>"),a=(vt.exec(u)||["",""])[1].toLowerCase(),f=Nt[a]||Nt._default,l=f[0],c.innerHTML=f[1]+u+f[2];while(l--)c=c.lastChild;if(!v.support.tbody){h=mt.test(u),p=a==="table"&&!h?c.firstChild&&c.firstChild.childNodes:f[1]===""&&!h?c.childNodes:[];for(o=p.length-1;o>=0;--o)v.nodeName(p[o],"tbody")&&!p[o].childNodes.length&&p[o].parentNode.removeChild(p[o])}!v.support.leadingWhitespace&&pt.test(u)&&c.insertBefore(t.createTextNode(pt.exec(u)[0]),c.firstChild),u=c.childNodes,c.parentNode.removeChild(c)}u.nodeType?b.push(u):v.merge(b,u)}c&&(u=c=y=null);if(!v.support.appendChecked)for(s=0;(u=b[s])!=null;s++)v.nodeName(u,"input")?_t(u):typeof u.getElementsByTagName!="undefined"&&v.grep(u.getElementsByTagName("input"),_t);if(n){m=function(e){if(!e.type||xt.test(e.type))return r?r.push(e.parentNode?e.parentNode.removeChild(e):e):n.appendChild(e)};for(s=0;(u=b[s])!=null;s++)if(!v.nodeName(u,"script")||!m(u))n.appendChild(u),typeof u.getElementsByTagName!="undefined"&&(g=v.grep(v.merge([],u.getElementsByTagName("script")),m),b.splice.apply(b,[s+1,0].concat(g)),s+=g.length)}return b},cleanData:function(e,t){var n,r,i,s,o=0,u=v.expando,a=v.cache,f=v.support.deleteExpando,l=v.event.special;for(;(i=e[o])!=null;o++)if(t||v.acceptData(i)){r=i[u],n=r&&a[r];if(n){if(n.events)for(s in n.events)l[s]?v.event.remove(i,s):v.removeEvent(i,s,n.handle);a[r]&&(delete a[r],f?delete i[u]:i.removeAttribute?i.removeAttribute(u):i[u]=null,v.deletedIds.push(r))}}}}),function(){var e,t;v.uaMatch=function(e){e=e.toLowerCase();var t=/(chrome)[ \/]([\w.]+)/.exec(e)||/(webkit)[ \/]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(e)||/(msie) ([\w.]+)/.exec(e)||e.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(e)||[];return{browser:t[1]||"",version:t[2]||"0"}},e=v.uaMatch(o.userAgent),t={},e.browser&&(t[e.browser]=!0,t.version=e.version),t.chrome?t.webkit=!0:t.webkit&&(t.safari=!0),v.browser=t,v.sub=function(){function e(t,n){return new e.fn.init(t,n)}v.extend(!0,e,this),e.superclass=this,e.fn=e.prototype=this(),e.fn.constructor=e,e.sub=this.sub,e.fn.init=function(r,i){return i&&i instanceof v&&!(i instanceof e)&&(i=e(i)),v.fn.init.call(this,r,i,t)},e.fn.init.prototype=e.fn;var t=e(i);return e}}();var Dt,Pt,Ht,Bt=/alpha\([^)]*\)/i,jt=/opacity=([^)]*)/,Ft=/^(top|right|bottom|left)$/,It=/^(none|table(?!-c[ea]).+)/,qt=/^margin/,Rt=new RegExp("^("+m+")(.*)$","i"),Ut=new RegExp("^("+m+")(?!px)[a-z%]+$","i"),zt=new RegExp("^([-+])=("+m+")","i"),Wt={BODY:"block"},Xt={position:"absolute",visibility:"hidden",display:"block"},Vt={letterSpacing:0,fontWeight:400},$t=["Top","Right","Bottom","Left"],Jt=["Webkit","O","Moz","ms"],Kt=v.fn.toggle;v.fn.extend({css:function(e,n){return v.access(this,function(e,n,r){return r!==t?v.style(e,n,r):v.css(e,n)},e,n,arguments.length>1)},show:function(){return Yt(this,!0)},hide:function(){return Yt(this)},toggle:function(e,t){var n=typeof e=="boolean";return v.isFunction(e)&&v.isFunction(t)?Kt.apply(this,arguments):this.each(function(){(n?e:Gt(this))?v(this).show():v(this).hide()})}}),v.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Dt(e,"opacity");return n===""?"1":n}}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":v.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(!e||e.nodeType===3||e.nodeType===8||!e.style)return;var s,o,u,a=v.camelCase(n),f=e.style;n=v.cssProps[a]||(v.cssProps[a]=Qt(f,a)),u=v.cssHooks[n]||v.cssHooks[a];if(r===t)return u&&"get"in u&&(s=u.get(e,!1,i))!==t?s:f[n];o=typeof r,o==="string"&&(s=zt.exec(r))&&(r=(s[1]+1)*s[2]+parseFloat(v.css(e,n)),o="number");if(r==null||o==="number"&&isNaN(r))return;o==="number"&&!v.cssNumber[a]&&(r+="px");if(!u||!("set"in u)||(r=u.set(e,r,i))!==t)try{f[n]=r}catch(l){}},css:function(e,n,r,i){var s,o,u,a=v.camelCase(n);return n=v.cssProps[a]||(v.cssProps[a]=Qt(e.style,a)),u=v.cssHooks[n]||v.cssHooks[a],u&&"get"in u&&(s=u.get(e,!0,i)),s===t&&(s=Dt(e,n)),s==="normal"&&n in Vt&&(s=Vt[n]),r||i!==t?(o=parseFloat(s),r||v.isNumeric(o)?o||0:s):s},swap:function(e,t,n){var r,i,s={};for(i in t)s[i]=e.style[i],e.style[i]=t[i];r=n.call(e);for(i in t)e.style[i]=s[i];return r}}),e.getComputedStyle?Dt=function(t,n){var r,i,s,o,u=e.getComputedStyle(t,null),a=t.style;return u&&(r=u.getPropertyValue(n)||u[n],r===""&&!v.contains(t.ownerDocument,t)&&(r=v.style(t,n)),Ut.test(r)&&qt.test(n)&&(i=a.width,s=a.minWidth,o=a.maxWidth,a.minWidth=a.maxWidth=a.width=r,r=u.width,a.width=i,a.minWidth=s,a.maxWidth=o)),r}:i.documentElement.currentStyle&&(Dt=function(e,t){var n,r,i=e.currentStyle&&e.currentStyle[t],s=e.style;return i==null&&s&&s[t]&&(i=s[t]),Ut.test(i)&&!Ft.test(t)&&(n=s.left,r=e.runtimeStyle&&e.runtimeStyle.left,r&&(e.runtimeStyle.left=e.currentStyle.left),s.left=t==="fontSize"?"1em":i,i=s.pixelLeft+"px",s.left=n,r&&(e.runtimeStyle.left=r)),i===""?"auto":i}),v.each(["height","width"],function(e,t){v.cssHooks[t]={get:function(e,n,r){if(n)return e.offsetWidth===0&&It.test(Dt(e,"display"))?v.swap(e,Xt,function(){return tn(e,t,r)}):tn(e,t,r)},set:function(e,n,r){return Zt(e,n,r?en(e,t,r,v.support.boxSizing&&v.css(e,"boxSizing")==="border-box"):0)}}}),v.support.opacity||(v.cssHooks.opacity={get:function(e,t){return jt.test((t&&e.currentStyle?e.currentStyle.filter:e.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":t?"1":""},set:function(e,t){var n=e.style,r=e.currentStyle,i=v.isNumeric(t)?"alpha(opacity="+t*100+")":"",s=r&&r.filter||n.filter||"";n.zoom=1;if(t>=1&&v.trim(s.replace(Bt,""))===""&&n.removeAttribute){n.removeAttribute("filter");if(r&&!r.filter)return}n.filter=Bt.test(s)?s.replace(Bt,i):s+" "+i}}),v(function(){v.support.reliableMarginRight||(v.cssHooks.marginRight={get:function(e,t){return v.swap(e,{display:"inline-block"},function(){if(t)return Dt(e,"marginRight")})}}),!v.support.pixelPosition&&v.fn.position&&v.each(["top","left"],function(e,t){v.cssHooks[t]={get:function(e,n){if(n){var r=Dt(e,t);return Ut.test(r)?v(e).position()[t]+"px":r}}}})}),v.expr&&v.expr.filters&&(v.expr.filters.hidden=function(e){return e.offsetWidth===0&&e.offsetHeight===0||!v.support.reliableHiddenOffsets&&(e.style&&e.style.display||Dt(e,"display"))==="none"},v.expr.filters.visible=function(e){return!v.expr.filters.hidden(e)}),v.each({margin:"",padding:"",border:"Width"},function(e,t){v.cssHooks[e+t]={expand:function(n){var r,i=typeof n=="string"?n.split(" "):[n],s={};for(r=0;r<4;r++)s[e+$t[r]+t]=i[r]||i[r-2]||i[0];return s}},qt.test(e)||(v.cssHooks[e+t].set=Zt)});var rn=/%20/g,sn=/\[\]$/,on=/\r?\n/g,un=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,an=/^(?:select|textarea)/i;v.fn.extend({serialize:function(){return v.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?v.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||an.test(this.nodeName)||un.test(this.type))}).map(function(e,t){var n=v(this).val();return n==null?null:v.isArray(n)?v.map(n,function(e,n){return{name:t.name,value:e.replace(on,"\r\n")}}):{name:t.name,value:n.replace(on,"\r\n")}}).get()}}),v.param=function(e,n){var r,i=[],s=function(e,t){t=v.isFunction(t)?t():t==null?"":t,i[i.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};n===t&&(n=v.ajaxSettings&&v.ajaxSettings.traditional);if(v.isArray(e)||e.jquery&&!v.isPlainObject(e))v.each(e,function(){s(this.name,this.value)});else for(r in e)fn(r,e[r],n,s);return i.join("&").replace(rn,"+")};var ln,cn,hn=/#.*$/,pn=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,dn=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,vn=/^(?:GET|HEAD)$/,mn=/^\/\//,gn=/\?/,yn=/)<[^<]*)*<\/script>/gi,bn=/([?&])_=[^&]*/,wn=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,En=v.fn.load,Sn={},xn={},Tn=["*/"]+["*"];try{cn=s.href}catch(Nn){cn=i.createElement("a"),cn.href="",cn=cn.href}ln=wn.exec(cn.toLowerCase())||[],v.fn.load=function(e,n,r){if(typeof e!="string"&&En)return En.apply(this,arguments);if(!this.length)return this;var i,s,o,u=this,a=e.indexOf(" ");return a>=0&&(i=e.slice(a,e.length),e=e.slice(0,a)),v.isFunction(n)?(r=n,n=t):n&&typeof n=="object"&&(s="POST"),v.ajax({url:e,type:s,dataType:"html",data:n,complete:function(e,t){r&&u.each(r,o||[e.responseText,t,e])}}).done(function(e){o=arguments,u.html(i?v("
").append(e.replace(yn,"")).find(i):e)}),this},v.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,t){v.fn[t]=function(e){return this.on(t,e)}}),v.each(["get","post"],function(e,n){v[n]=function(e,r,i,s){return v.isFunction(r)&&(s=s||i,i=r,r=t),v.ajax({type:n,url:e,data:r,success:i,dataType:s})}}),v.extend({getScript:function(e,n){return v.get(e,t,n,"script")},getJSON:function(e,t,n){return v.get(e,t,n,"json")},ajaxSetup:function(e,t){return t?Ln(e,v.ajaxSettings):(t=e,e=v.ajaxSettings),Ln(e,t),e},ajaxSettings:{url:cn,isLocal:dn.test(ln[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":Tn},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":e.String,"text html":!0,"text json":v.parseJSON,"text xml":v.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:Cn(Sn),ajaxTransport:Cn(xn),ajax:function(e,n){function T(e,n,s,a){var l,y,b,w,S,T=n;if(E===2)return;E=2,u&&clearTimeout(u),o=t,i=a||"",x.readyState=e>0?4:0,s&&(w=An(c,x,s));if(e>=200&&e<300||e===304)c.ifModified&&(S=x.getResponseHeader("Last-Modified"),S&&(v.lastModified[r]=S),S=x.getResponseHeader("Etag"),S&&(v.etag[r]=S)),e===304?(T="notmodified",l=!0):(l=On(c,w),T=l.state,y=l.data,b=l.error,l=!b);else{b=T;if(!T||e)T="error",e<0&&(e=0)}x.status=e,x.statusText=(n||T)+"",l?d.resolveWith(h,[y,T,x]):d.rejectWith(h,[x,T,b]),x.statusCode(g),g=t,f&&p.trigger("ajax"+(l?"Success":"Error"),[x,c,l?y:b]),m.fireWith(h,[x,T]),f&&(p.trigger("ajaxComplete",[x,c]),--v.active||v.event.trigger("ajaxStop"))}typeof e=="object"&&(n=e,e=t),n=n||{};var r,i,s,o,u,a,f,l,c=v.ajaxSetup({},n),h=c.context||c,p=h!==c&&(h.nodeType||h instanceof v)?v(h):v.event,d=v.Deferred(),m=v.Callbacks("once memory"),g=c.statusCode||{},b={},w={},E=0,S="canceled",x={readyState:0,setRequestHeader:function(e,t){if(!E){var n=e.toLowerCase();e=w[n]=w[n]||e,b[e]=t}return this},getAllResponseHeaders:function(){return E===2?i:null},getResponseHeader:function(e){var n;if(E===2){if(!s){s={};while(n=pn.exec(i))s[n[1].toLowerCase()]=n[2]}n=s[e.toLowerCase()]}return n===t?null:n},overrideMimeType:function(e){return E||(c.mimeType=e),this},abort:function(e){return e=e||S,o&&o.abort(e),T(0,e),this}};d.promise(x),x.success=x.done,x.error=x.fail,x.complete=m.add,x.statusCode=function(e){if(e){var t;if(E<2)for(t in e)g[t]=[g[t],e[t]];else t=e[x.status],x.always(t)}return this},c.url=((e||c.url)+"").replace(hn,"").replace(mn,ln[1]+"//"),c.dataTypes=v.trim(c.dataType||"*").toLowerCase().split(y),c.crossDomain==null&&(a=wn.exec(c.url.toLowerCase()),c.crossDomain=!(!a||a[1]===ln[1]&&a[2]===ln[2]&&(a[3]||(a[1]==="http:"?80:443))==(ln[3]||(ln[1]==="http:"?80:443)))),c.data&&c.processData&&typeof c.data!="string"&&(c.data=v.param(c.data,c.traditional)),kn(Sn,c,n,x);if(E===2)return x;f=c.global,c.type=c.type.toUpperCase(),c.hasContent=!vn.test(c.type),f&&v.active++===0&&v.event.trigger("ajaxStart");if(!c.hasContent){c.data&&(c.url+=(gn.test(c.url)?"&":"?")+c.data,delete c.data),r=c.url;if(c.cache===!1){var N=v.now(),C=c.url.replace(bn,"$1_="+N);c.url=C+(C===c.url?(gn.test(c.url)?"&":"?")+"_="+N:"")}}(c.data&&c.hasContent&&c.contentType!==!1||n.contentType)&&x.setRequestHeader("Content-Type",c.contentType),c.ifModified&&(r=r||c.url,v.lastModified[r]&&x.setRequestHeader("If-Modified-Since",v.lastModified[r]),v.etag[r]&&x.setRequestHeader("If-None-Match",v.etag[r])),x.setRequestHeader("Accept",c.dataTypes[0]&&c.accepts[c.dataTypes[0]]?c.accepts[c.dataTypes[0]]+(c.dataTypes[0]!=="*"?", "+Tn+"; q=0.01":""):c.accepts["*"]);for(l in c.headers)x.setRequestHeader(l,c.headers[l]);if(!c.beforeSend||c.beforeSend.call(h,x,c)!==!1&&E!==2){S="abort";for(l in{success:1,error:1,complete:1})x[l](c[l]);o=kn(xn,c,n,x);if(!o)T(-1,"No Transport");else{x.readyState=1,f&&p.trigger("ajaxSend",[x,c]),c.async&&c.timeout>0&&(u=setTimeout(function(){x.abort("timeout")},c.timeout));try{E=1,o.send(b,T)}catch(k){if(!(E<2))throw k;T(-1,k)}}return x}return x.abort()},active:0,lastModified:{},etag:{}});var Mn=[],_n=/\?/,Dn=/(=)\?(?=&|$)|\?\?/,Pn=v.now();v.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Mn.pop()||v.expando+"_"+Pn++;return this[e]=!0,e}}),v.ajaxPrefilter("json jsonp",function(n,r,i){var s,o,u,a=n.data,f=n.url,l=n.jsonp!==!1,c=l&&Dn.test(f),h=l&&!c&&typeof a=="string"&&!(n.contentType||"").indexOf("application/x-www-form-urlencoded")&&Dn.test(a);if(n.dataTypes[0]==="jsonp"||c||h)return s=n.jsonpCallback=v.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,o=e[s],c?n.url=f.replace(Dn,"$1"+s):h?n.data=a.replace(Dn,"$1"+s):l&&(n.url+=(_n.test(f)?"&":"?")+n.jsonp+"="+s),n.converters["script json"]=function(){return u||v.error(s+" was not called"),u[0]},n.dataTypes[0]="json",e[s]=function(){u=arguments},i.always(function(){e[s]=o,n[s]&&(n.jsonpCallback=r.jsonpCallback,Mn.push(s)),u&&v.isFunction(o)&&o(u[0]),u=o=t}),"script"}),v.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(e){return v.globalEval(e),e}}}),v.ajaxPrefilter("script",function(e){e.cache===t&&(e.cache=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),v.ajaxTransport("script",function(e){if(e.crossDomain){var n,r=i.head||i.getElementsByTagName("head")[0]||i.documentElement;return{send:function(s,o){n=i.createElement("script"),n.async="async",e.scriptCharset&&(n.charset=e.scriptCharset),n.src=e.url,n.onload=n.onreadystatechange=function(e,i){if(i||!n.readyState||/loaded|complete/.test(n.readyState))n.onload=n.onreadystatechange=null,r&&n.parentNode&&r.removeChild(n),n=t,i||o(200,"success")},r.insertBefore(n,r.firstChild)},abort:function(){n&&n.onload(0,1)}}}});var Hn,Bn=e.ActiveXObject?function(){for(var e in Hn)Hn[e](0,1)}:!1,jn=0;v.ajaxSettings.xhr=e.ActiveXObject?function(){return!this.isLocal&&Fn()||In()}:Fn,function(e){v.extend(v.support,{ajax:!!e,cors:!!e&&"withCredentials"in e})}(v.ajaxSettings.xhr()),v.support.ajax&&v.ajaxTransport(function(n){if(!n.crossDomain||v.support.cors){var r;return{send:function(i,s){var o,u,a=n.xhr();n.username?a.open(n.type,n.url,n.async,n.username,n.password):a.open(n.type,n.url,n.async);if(n.xhrFields)for(u in n.xhrFields)a[u]=n.xhrFields[u];n.mimeType&&a.overrideMimeType&&a.overrideMimeType(n.mimeType),!n.crossDomain&&!i["X-Requested-With"]&&(i["X-Requested-With"]="XMLHttpRequest");try{for(u in i)a.setRequestHeader(u,i[u])}catch(f){}a.send(n.hasContent&&n.data||null),r=function(e,i){var u,f,l,c,h;try{if(r&&(i||a.readyState===4)){r=t,o&&(a.onreadystatechange=v.noop,Bn&&delete Hn[o]);if(i)a.readyState!==4&&a.abort();else{u=a.status,l=a.getAllResponseHeaders(),c={},h=a.responseXML,h&&h.documentElement&&(c.xml=h);try{c.text=a.responseText}catch(p){}try{f=a.statusText}catch(p){f=""}!u&&n.isLocal&&!n.crossDomain?u=c.text?200:404:u===1223&&(u=204)}}}catch(d){i||s(-1,d)}c&&s(u,f,c,l)},n.async?a.readyState===4?setTimeout(r,0):(o=++jn,Bn&&(Hn||(Hn={},v(e).unload(Bn)),Hn[o]=r),a.onreadystatechange=r):r()},abort:function(){r&&r(0,1)}}}});var qn,Rn,Un=/^(?:toggle|show|hide)$/,zn=new RegExp("^(?:([-+])=|)("+m+")([a-z%]*)$","i"),Wn=/queueHooks$/,Xn=[Gn],Vn={"*":[function(e,t){var n,r,i=this.createTween(e,t),s=zn.exec(t),o=i.cur(),u=+o||0,a=1,f=20;if(s){n=+s[2],r=s[3]||(v.cssNumber[e]?"":"px");if(r!=="px"&&u){u=v.css(i.elem,e,!0)||n||1;do a=a||".5",u/=a,v.style(i.elem,e,u+r);while(a!==(a=i.cur()/o)&&a!==1&&--f)}i.unit=r,i.start=u,i.end=s[1]?u+(s[1]+1)*n:n}return i}]};v.Animation=v.extend(Kn,{tweener:function(e,t){v.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");var n,r=0,i=e.length;for(;r-1,f={},l={},c,h;a?(l=i.position(),c=l.top,h=l.left):(c=parseFloat(o)||0,h=parseFloat(u)||0),v.isFunction(t)&&(t=t.call(e,n,s)),t.top!=null&&(f.top=t.top-s.top+c),t.left!=null&&(f.left=t.left-s.left+h),"using"in t?t.using.call(e,f):i.css(f)}},v.fn.extend({position:function(){if(!this[0])return;var e=this[0],t=this.offsetParent(),n=this.offset(),r=er.test(t[0].nodeName)?{top:0,left:0}:t.offset();return n.top-=parseFloat(v.css(e,"marginTop"))||0,n.left-=parseFloat(v.css(e,"marginLeft"))||0,r.top+=parseFloat(v.css(t[0],"borderTopWidth"))||0,r.left+=parseFloat(v.css(t[0],"borderLeftWidth"))||0,{top:n.top-r.top,left:n.left-r.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||i.body;while(e&&!er.test(e.nodeName)&&v.css(e,"position")==="static")e=e.offsetParent;return e||i.body})}}),v.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,n){var r=/Y/.test(n);v.fn[e]=function(i){return v.access(this,function(e,i,s){var o=tr(e);if(s===t)return o?n in o?o[n]:o.document.documentElement[i]:e[i];o?o.scrollTo(r?v(o).scrollLeft():s,r?s:v(o).scrollTop()):e[i]=s},e,i,arguments.length,null)}}),v.each({Height:"height",Width:"width"},function(e,n){v.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i){v.fn[i]=function(i,s){var o=arguments.length&&(r||typeof i!="boolean"),u=r||(i===!0||s===!0?"margin":"border");return v.access(this,function(n,r,i){var s;return v.isWindow(n)?n.document.documentElement["client"+e]:n.nodeType===9?(s=n.documentElement,Math.max(n.body["scroll"+e],s["scroll"+e],n.body["offset"+e],s["offset"+e],s["client"+e])):i===t?v.css(n,r,i,u):v.style(n,r,i,u)},n,o?i:t,o,null)}})}),e.jQuery=e.$=v,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return v})})(window); \ No newline at end of file diff --git a/smbms/src/main/webapp/js/provideradd.js b/smbms/src/main/webapp/js/provideradd.js deleted file mode 100644 index ef3c73b..0000000 --- a/smbms/src/main/webapp/js/provideradd.js +++ /dev/null @@ -1,97 +0,0 @@ -var proCode = null; -var proName = null; -var proContact = null; -var proPhone = null; -var addBtn = null; -var backBtn = null; - -$(function(){ - proCode = $("#proCode"); - proName = $("#proName"); - proContact = $("#proContact"); - proPhone = $("#proPhone"); - addBtn = $("#add"); - backBtn = $("#back"); - //初始化的时候,要把所有的提示信息变为:* 以提示必填项,更灵活,不要写在页面上 - proCode.next().html("*"); - proName.next().html("*"); - proContact.next().html("*"); - proPhone.next().html("*"); - - /* - * 验证 - * 失焦\获焦 - * jquery的方法传递 - */ - proCode.on("blur",function(){ - if(proCode.val() != null && proCode.val() != ""){ - validateTip(proCode.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(proCode.next(),{"color":"red"},imgNo+" 编码不能为空,请重新输入",false); - } - }).on("focus",function(){ - //显示友情提示 - validateTip(proCode.next(),{"color":"#666666"},"* 请输入供应商编码",false); - }).focus(); - - proName.on("focus",function(){ - validateTip(proName.next(),{"color":"#666666"},"* 请输入供应商名称",false); - }).on("blur",function(){ - if(proName.val() != null && proName.val() != ""){ - validateTip(proName.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(proName.next(),{"color":"red"},imgNo+" 供应商名称不能为空,请重新输入",false); - } - - }); - - proContact.on("focus",function(){ - validateTip(proContact.next(),{"color":"#666666"},"* 请输入联系人",false); - }).on("blur",function(){ - if(proContact.val() != null && proContact.val() != ""){ - validateTip(proContact.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(proContact.next(),{"color":"red"},imgNo+" 联系人不能为空,请重新输入",false); - } - - }); - - proPhone.on("focus",function(){ - validateTip(proPhone.next(),{"color":"#666666"},"* 请输入手机号",false); - }).on("blur",function(){ - var patrn=/^(13[0-9]|15[0-9]|18[0-9])\d{8}$/; - if(proPhone.val().match(patrn)){ - validateTip(proPhone.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(proPhone.next(),{"color":"red"},imgNo + " 您输入的手机号格式不正确",false); - } - }); - - addBtn.bind("click",function(){ - if(proCode.attr("validateStatus") != "true"){ - proCode.blur(); - }else if(proName.attr("validateStatus") != "true"){ - proName.blur(); - }else if(proContact.attr("validateStatus") != "true"){ - proContact.blur(); - }else if(proPhone.attr("validateStatus") != "true"){ - proPhone.blur(); - }else{ - if(confirm("是否确认提交数据")){ - $("#providerForm").submit(); - } - } - }); - - backBtn.on("click",function(){ - if(referer != undefined - && null != referer - && "" != referer - && "null" != referer - && referer.length > 4){ - window.location.href = referer; - }else{ - history.back(-1); - } - }); -}); \ No newline at end of file diff --git a/smbms/src/main/webapp/js/providerlist.js b/smbms/src/main/webapp/js/providerlist.js deleted file mode 100644 index 5d574ef..0000000 --- a/smbms/src/main/webapp/js/providerlist.js +++ /dev/null @@ -1,97 +0,0 @@ -var providerObj; - -//供应商管理页面上点击删除按钮弹出删除框(providerlist.jsp) -function deleteProvider(obj){ - $.ajax({ - type:"GET", - url:path+"/jsp/provider.do", - data:{method:"delprovider",proid:obj.attr("proid")}, - dataType:"json", - success:function(data){ - if(data.delResult == "true"){//删除成功:移除删除行 - cancleBtn(); - obj.parents("tr").remove(); - }else if(data.delResult == "false"){//删除失败 - //alert("对不起,删除供应商【"+obj.attr("proname")+"】失败"); - changeDLGContent("对不起,删除供应商【"+obj.attr("proname")+"】失败"); - }else if(data.delResult == "notexist"){ - //alert("对不起,供应商【"+obj.attr("proname")+"】不存在"); - changeDLGContent("对不起,供应商【"+obj.attr("proname")+"】不存在"); - }else{ - //alert("对不起,该供应商【"+obj.attr("proname")+"】下有【"+data.delResult+"】条订单,不能删除"); - changeDLGContent("对不起,该供应商【"+obj.attr("proname")+"】下有【"+data.delResult+"】条订单,不能删除"); - } - }, - error:function(data){ - //alert("对不起,删除失败"); - changeDLGContent("对不起,删除失败"); - } - }); -} - -function openYesOrNoDLG(){ - $('.zhezhao').css('display', 'block'); - $('#removeProv').fadeIn(); -} - -function cancleBtn(){ - $('.zhezhao').css('display', 'none'); - $('#removeProv').fadeOut(); -} -function changeDLGContent(contentStr){ - var p = $(".removeMain").find("p"); - p.html(contentStr); -} -$(function(){ - $(".viewProvider").on("click",function(){ - //将被绑定的元素(a)转换成jquery对象,可以使用jquery方法 - var obj = $(this); - window.location.href=path+"/jsp/provider.do?method=view&proid="+ obj.attr("proid"); - }); - - $(".modifyProvider").on("click",function(){ - var obj = $(this); - window.location.href=path+"/jsp/provider.do?method=modify&proid="+ obj.attr("proid"); - }); - - $('#no').click(function () { - cancleBtn(); - }); - - $('#yes').click(function () { - deleteProvider(providerObj); - }); - - $(".deleteProvider").on("click",function(){ - providerObj = $(this); - changeDLGContent("你确定要删除供应商【"+providerObj.attr("proname")+"】吗?"); - openYesOrNoDLG(); - }); - -/* $(".deleteProvider").on("click",function(){ - var obj = $(this); - if(confirm("你确定要删除供应商【"+obj.attr("proname")+"】吗?")){ - $.ajax({ - type:"GET", - url:path+"/jsp/provider.do", - data:{method:"delprovider",proid:obj.attr("proid")}, - dataType:"json", - success:function(data){ - if(data.delResult == "true"){//删除成功:移除删除行 - alert("删除成功"); - obj.parents("tr").remove(); - }else if(data.delResult == "false"){//删除失败 - alert("对不起,删除供应商【"+obj.attr("proname")+"】失败"); - }else if(data.delResult == "notexist"){ - alert("对不起,供应商【"+obj.attr("proname")+"】不存在"); - }else{ - alert("对不起,该供应商【"+obj.attr("proname")+"】下有【"+data.delResult+"】条订单,不能删除"); - } - }, - error:function(data){ - alert("对不起,删除失败"); - } - }); - } - });*/ -}); \ No newline at end of file diff --git a/smbms/src/main/webapp/js/providermodify.js b/smbms/src/main/webapp/js/providermodify.js deleted file mode 100644 index f65d8c4..0000000 --- a/smbms/src/main/webapp/js/providermodify.js +++ /dev/null @@ -1,66 +0,0 @@ -var proContact = null; -var proPhone = null; -var saveBtn = null; -var backBtn = null; - -$(function(){ - proContact = $("#proContact"); - proPhone = $("#proPhone"); - saveBtn = $("#save"); - backBtn = $("#back"); - - //初始化的时候,要把所有的提示信息变为:* 以提示必填项,更灵活,不要写在页面上 - proContact.next().html("*"); - proPhone.next().html("*"); - - /* - * 验证 - * 失焦\获焦 - * jquery的方法传递 - */ - proContact.on("focus",function(){ - validateTip(proContact.next(),{"color":"#666666"},"* 请输入联系人",false); - }).on("blur",function(){ - if(proContact.val() != null && proContact.val() != ""){ - validateTip(proContact.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(proContact.next(),{"color":"red"},imgNo+" 联系人不能为空,请重新输入",false); - } - - }); - - proPhone.on("focus",function(){ - validateTip(proPhone.next(),{"color":"#666666"},"* 请输入手机号",false); - }).on("blur",function(){ - var patrn=/^(13[0-9]|15[0-9]|18[0-9])\d{8}$/; - if(proPhone.val().match(patrn)){ - validateTip(proPhone.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(proPhone.next(),{"color":"red"},imgNo + " 您输入的手机号格式不正确",false); - } - }); - - saveBtn.on("click",function(){ - proContact.blur(); - proPhone.blur(); - if(proContact.attr("validateStatus") == "true" && - proPhone.attr("validateStatus") == "true"){ - if(confirm("是否确认提交数据")){ - $("#providerForm").submit(); - } - } - }); - - backBtn.on("click",function(){ - //alert("modify: "+referer); - if(referer != undefined - && null != referer - && "" != referer - && "null" != referer - && referer.length > 4){ - window.location.href = referer; - }else{ - history.back(-1); - } - }); -}); \ No newline at end of file diff --git a/smbms/src/main/webapp/js/providerview.js b/smbms/src/main/webapp/js/providerview.js deleted file mode 100644 index 7388947..0000000 --- a/smbms/src/main/webapp/js/providerview.js +++ /dev/null @@ -1,17 +0,0 @@ -var backBtn = null; - -$(function(){ - backBtn = $("#back"); - backBtn.on("click",function(){ - //alert("view : "+referer); - if(referer != undefined - && null != referer - && "" != referer - && "null" != referer - && referer.length > 4){ - window.location.href = referer; - }else{ - history.back(-1); - } - }); -}); \ No newline at end of file diff --git a/smbms/src/main/webapp/js/pwdmodify.js b/smbms/src/main/webapp/js/pwdmodify.js deleted file mode 100644 index 8999915..0000000 --- a/smbms/src/main/webapp/js/pwdmodify.js +++ /dev/null @@ -1,81 +0,0 @@ -var oldpassword = null; -var newpassword = null; -var rnewpassword = null; -var saveBtn = null; - -$(function(){ - oldpassword = $("#oldpassword"); - newpassword = $("#newpassword"); - rnewpassword = $("#rnewpassword"); - saveBtn = $("#save"); - - oldpassword.next().html("*"); - newpassword.next().html("*"); - rnewpassword.next().html("*"); - - oldpassword.on("blur",function(){ - $.ajax({ - type:"GET", - url:path+"/jsp/user.do", - data:{method:"pwdmodify",oldpassword:oldpassword.val()}, - dataType:"json", - success:function(data){ - if(data.result == "true"){//旧密码正确 - validateTip(oldpassword.next(),{"color":"green"},imgYes,true); - }else if(data.result == "false"){//旧密码输入不正确 - validateTip(oldpassword.next(),{"color":"red"},imgNo + " 原密码输入不正确",false); - }else if(data.result == "sessionerror"){//当前用户session过期,请重新登录 - validateTip(oldpassword.next(),{"color":"red"},imgNo + " 当前用户session过期,请重新登录",false); - }else if(data.result == "error"){//旧密码输入为空 - validateTip(oldpassword.next(),{"color":"red"},imgNo + " 请输入旧密码",false); - } - }, - error:function(data){ - //请求出错 - validateTip(oldpassword.next(),{"color":"red"},imgNo + " 请求错误",false); - } - }); - - - }).on("focus",function(){ - validateTip(oldpassword.next(),{"color":"#666666"},"* 请输入原密码",false); - }); - - newpassword.on("focus",function(){ - validateTip(newpassword.next(),{"color":"#666666"},"* 密码长度必须是大于6小于20",false); - }).on("blur",function(){ - if(newpassword.val() != null && newpassword.val().length > 5 - && newpassword.val().length < 20 ){ - validateTip(newpassword.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(newpassword.next(),{"color":"red"},imgNo + " 密码输入不符合规范,请重新输入",false); - } - }); - - - rnewpassword.on("focus",function(){ - validateTip(rnewpassword.next(),{"color":"#666666"},"* 请输入与上面一致的密码",false); - }).on("blur",function(){ - if(rnewpassword.val() != null && rnewpassword.val().length > 5 - && rnewpassword.val().length < 20 && newpassword.val() == rnewpassword.val()){ - validateTip(rnewpassword.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(rnewpassword.next(),{"color":"red"},imgNo + " 两次密码输入不一致,请重新输入",false); - } - }); - - - saveBtn.on("click",function(){ - oldpassword.blur(); - newpassword.blur(); - rnewpassword.blur(); - if(oldpassword.attr("validateStatus") == "true" - && newpassword.attr("validateStatus") == "true" - && rnewpassword.attr("validateStatus") == "true"){ - if(confirm("确定要修改密码?")){ - $("#userForm").submit(); - } - } - - }); -}); \ No newline at end of file diff --git a/smbms/src/main/webapp/js/rollpage.js b/smbms/src/main/webapp/js/rollpage.js deleted file mode 100644 index e4c9e84..0000000 --- a/smbms/src/main/webapp/js/rollpage.js +++ /dev/null @@ -1,21 +0,0 @@ -function page_nav(frm,num){ - frm.pageIndex.value = num; - frm.submit(); -} - -function jump_to(frm,num){ - //alert(num); - //验证用户的输入 - var regexp=/^[1-9]\d*$/; - var totalPageCount = document.getElementById("totalPageCount").value; - //alert(totalPageCount); - if(!regexp.test(num)){ - alert("请输入大于0的正整数!"); - return false; - }else if((num-totalPageCount) > 0){ - alert("请输入小于总页数的页码"); - return false; - }else{ - page_nav(frm,num); - } -} \ No newline at end of file diff --git a/smbms/src/main/webapp/js/time.js b/smbms/src/main/webapp/js/time.js deleted file mode 100644 index 965c7e1..0000000 --- a/smbms/src/main/webapp/js/time.js +++ /dev/null @@ -1,43 +0,0 @@ -//时间 -function fn(){ - var time = new Date(); - var str= ""; - var div = document.getElementById("time"); -// console.log(time); - var year = time.getFullYear(); - var mon = time.getMonth()+1; - var day = time.getDate(); - var h = time.getHours(); - var m = time.getMinutes(); - var s = time.getSeconds(); - var week = time.getDay(); - switch (week){ - case 0:week="日"; - break; - case 1:week="一"; - break; - case 2:week="二"; - break; - case 3:week="三"; - break; - case 4:week="四"; - break; - case 5:week="五"; - break; - case 6:week="六"; - break; - } - str = year +"年"+totwo(mon)+"月"+totwo(day)+"日"+" "+totwo(h)+":"+totwo(m)+":"+totwo(s)+" "+"星期"+week; - div.innerHTML = str; -} -fn(); -setInterval(fn,1000); -function totwo(n){ - if(n<=9){ - return n = "0"+n; - } - else{ - return n =""+n; - } -} - diff --git a/smbms/src/main/webapp/js/useradd.js b/smbms/src/main/webapp/js/useradd.js deleted file mode 100644 index 2503499..0000000 --- a/smbms/src/main/webapp/js/useradd.js +++ /dev/null @@ -1,185 +0,0 @@ -var userCode = null; -var userName = null; -var userPassword = null; -var ruserPassword = null; -var phone = null; -var birthday = null; -var userRole = null; -var addBtn = null; -var backBtn = null; - - -$(function(){ - userCode = $("#userCode"); - userName = $("#userName"); - userPassword = $("#userPassword"); - ruserPassword = $("#ruserPassword"); - phone = $("#phone"); - birthday = $("#birthday"); - userRole = $("#userRole"); - addBtn = $("#add"); - backBtn = $("#back"); - //初始化的时候,要把所有的提示信息变为:* 以提示必填项,更灵活,不要写在页面上 - userCode.next().html("*"); - userName.next().html("*"); - userPassword.next().html("*"); - ruserPassword.next().html("*"); - phone.next().html("*"); - birthday.next().html("*"); - userRole.next().html("*"); - - $.ajax({ - type:"GET",//请求类型 - url:path+"/jsp/user.do",//请求的url - data:{method:"getrolelist"},//请求参数 - dataType:"json",//ajax接口(请求url)返回的数据类型 - success:function(data){//data:返回数据(json对象) - if(data != null){ - userRole.html(""); - var options = ""; - for(var i = 0; i < data.length; i++){ - //alert(data[i].id); - //alert(data[i].roleName); - options += ""; - } - userRole.html(options); - } - }, - error:function(data){//当访问时候,404,500 等非200的错误状态码 - validateTip(userRole.next(),{"color":"red"},imgNo+" 获取用户角色列表error",false); - } - }); - - - - /* - * 验证 - * 失焦\获焦 - * jquery的方法传递 - */ - userCode.bind("blur",function(){ - //ajax后台验证--userCode是否已存在 - //user.do?method=ucexist&userCode=** - $.ajax({ - type:"GET",//请求类型 - url:path+"/jsp/user.do",//请求的url - data:{method:"ucexist",userCode:userCode.val()},//请求参数 - dataType:"json",//ajax接口(请求url)返回的数据类型 - success:function(data){//data:返回数据(json对象) - if(data.userCode == "exist"){//账号已存在,错误提示 - validateTip(userCode.next(),{"color":"red"},imgNo+ " 该用户账号已存在",false); - }else{//账号可用,正确提示 - validateTip(userCode.next(),{"color":"green"},imgYes+" 该账号可以使用",true); - } - }, - error:function(data){//当访问时候,404,500 等非200的错误状态码 - validateTip(userCode.next(),{"color":"red"},imgNo+" 您访问的页面不存在",false); - } - }); - - - }).bind("focus",function(){ - //显示友情提示 - validateTip(userCode.next(),{"color":"#666666"},"* 用户编码是您登录系统的账号",false); - }).focus(); - - userName.bind("focus",function(){ - validateTip(userName.next(),{"color":"#666666"},"* 用户名长度必须是大于1小于10的字符",false); - }).bind("blur",function(){ - if(userName.val() != null && userName.val().length > 1 - && userName.val().length < 10){ - validateTip(userName.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(userName.next(),{"color":"red"},imgNo+" 用户名输入的不符合规范,请重新输入",false); - } - - }); - - userPassword.bind("focus",function(){ - validateTip(userPassword.next(),{"color":"#666666"},"* 密码长度必须是大于6小于20",false); - }).bind("blur",function(){ - if(userPassword.val() != null && userPassword.val().length > 6 - && userPassword.val().length < 20 ){ - validateTip(userPassword.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(userPassword.next(),{"color":"red"},imgNo + " 密码输入不符合规范,请重新输入",false); - } - }); - - ruserPassword.bind("focus",function(){ - validateTip(ruserPassword.next(),{"color":"#666666"},"* 请输入与上面一只的密码",false); - }).bind("blur",function(){ - if(ruserPassword.val() != null && ruserPassword.val().length > 6 - && ruserPassword.val().length < 20 && userPassword.val() == ruserPassword.val()){ - validateTip(ruserPassword.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(ruserPassword.next(),{"color":"red"},imgNo + " 两次密码输入不一致,请重新输入",false); - } - }); - - - birthday.bind("focus",function(){ - validateTip(birthday.next(),{"color":"#666666"},"* 点击输入框,选择日期",false); - }).bind("blur",function(){ - if(birthday.val() != null && birthday.val() != ""){ - validateTip(birthday.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(birthday.next(),{"color":"red"},imgNo + " 选择的日期不正确,请重新输入",false); - } - }); - - phone.bind("focus",function(){ - validateTip(phone.next(),{"color":"#666666"},"* 请输入手机号",false); - }).bind("blur",function(){ - var patrn=/^(13[0-9]|15[0-9]|18[0-9])\d{8}$/; - if(phone.val().match(patrn)){ - validateTip(phone.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(phone.next(),{"color":"red"},imgNo + " 您输入的手机号格式不正确",false); - } - }); - - userRole.bind("focus",function(){ - validateTip(userRole.next(),{"color":"#666666"},"* 请选择用户角色",false); - }).bind("blur",function(){ - if(userRole.val() != null && userRole.val() > 0){ - validateTip(userRole.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(userRole.next(),{"color":"red"},imgNo + " 请重新选择用户角色",false); - } - }); - - addBtn.bind("click",function(){ - if(userCode.attr("validateStatus") != "true"){ - userCode.blur(); - }else if(userName.attr("validateStatus") != "true"){ - userName.blur(); - }else if(userPassword.attr("validateStatus") != "true"){ - userPassword.blur(); - }else if(ruserPassword.attr("validateStatus") != "true"){ - ruserPassword.blur(); - }else if(birthday.attr("validateStatus") != "true"){ - birthday.blur(); - }else if(phone.attr("validateStatus") != "true"){ - phone.blur(); - }else if(userRole.attr("validateStatus") != "true"){ - userRole.blur(); - }else{ - if(confirm("是否确认提交数据")){ - $("#userForm").submit(); - } - } - }); - - backBtn.on("click",function(){ - if(referer != undefined - && null != referer - && "" != referer - && "null" != referer - && referer.length > 4){ - window.location.href = referer; - }else{ - history.back(-1); - } - }); -}); \ No newline at end of file diff --git a/smbms/src/main/webapp/js/userlist.js b/smbms/src/main/webapp/js/userlist.js deleted file mode 100644 index 322a7e1..0000000 --- a/smbms/src/main/webapp/js/userlist.js +++ /dev/null @@ -1,99 +0,0 @@ -var userObj; - -//用户管理页面上点击删除按钮弹出删除框(userlist.jsp) -function deleteUser(obj){ - $.ajax({ - type:"GET", - url:path+"/jsp/user.do", - data:{method:"deluser",uid:obj.attr("userid")}, - dataType:"json", - success:function(data){ - if(data.delResult == "true"){//删除成功:移除删除行 - cancleBtn(); - obj.parents("tr").remove(); - }else if(data.delResult == "false"){//删除失败 - //alert("对不起,删除用户【"+obj.attr("username")+"】失败"); - changeDLGContent("对不起,删除用户【"+obj.attr("username")+"】失败"); - }else if(data.delResult == "notexist"){ - //alert("对不起,用户【"+obj.attr("username")+"】不存在"); - changeDLGContent("对不起,用户【"+obj.attr("username")+"】不存在"); - } - }, - error:function(data){ - //alert("对不起,删除失败"); - changeDLGContent("对不起,删除失败"); - } - }); -} - -function openYesOrNoDLG(){ - $('.zhezhao').css('display', 'block'); - $('#removeUse').fadeIn(); -} - -function cancleBtn(){ - $('.zhezhao').css('display', 'none'); - $('#removeUse').fadeOut(); -} -function changeDLGContent(contentStr){ - var p = $(".removeMain").find("p"); - p.html(contentStr); -} - -$(function(){ - //通过jquery的class选择器(数组) - //对每个class为viewUser的元素进行动作绑定(click) - /** - * bind、live、delegate - * on - */ - $(".viewUser").on("click",function(){ - //将被绑定的元素(a)转换成jquery对象,可以使用jquery方法 - var obj = $(this); - window.location.href=path+"/jsp/user.do?method=view&uid="+ obj.attr("userid"); - }); - - $(".modifyUser").on("click",function(){ - var obj = $(this); - window.location.href=path+"/jsp/user.do?method=modify&uid="+ obj.attr("userid"); - }); - - $('#no').click(function () { - cancleBtn(); - }); - - $('#yes').click(function () { - deleteUser(userObj); - }); - - $(".deleteUser").on("click",function(){ - userObj = $(this); - changeDLGContent("你确定要删除用户【"+userObj.attr("username")+"】吗?"); - openYesOrNoDLG(); - }); - - /*$(".deleteUser").on("click",function(){ - var obj = $(this); - if(confirm("你确定要删除用户【"+obj.attr("username")+"】吗?")){ - $.ajax({ - type:"GET", - url:path+"/jsp/user.do", - data:{method:"deluser",uid:obj.attr("userid")}, - dataType:"json", - success:function(data){ - if(data.delResult == "true"){//删除成功:移除删除行 - alert("删除成功"); - obj.parents("tr").remove(); - }else if(data.delResult == "false"){//删除失败 - alert("对不起,删除用户【"+obj.attr("username")+"】失败"); - }else if(data.delResult == "notexist"){ - alert("对不起,用户【"+obj.attr("username")+"】不存在"); - } - }, - error:function(data){ - alert("对不起,删除失败"); - } - }); - } - });*/ -}); \ No newline at end of file diff --git a/smbms/src/main/webapp/js/usermodify.js b/smbms/src/main/webapp/js/usermodify.js deleted file mode 100644 index 18fd914..0000000 --- a/smbms/src/main/webapp/js/usermodify.js +++ /dev/null @@ -1,122 +0,0 @@ -var userName = null; -var birthday = null; -var phone = null; -var userRole = null; -var saveBtn = null; -var backBtn = null; - -$(function(){ - userName = $("#userName"); - birthday = $("#birthday"); - phone = $("#phone"); - userRole = $("#userRole"); - saveBtn = $("#save"); - backBtn = $("#back"); - - userName.next().html("*"); - birthday.next().html("*"); - phone.next().html("*"); - userRole.next().html("*"); - - - $.ajax({ - type:"GET",//请求类型 - url:path+"/jsp/user.do",//请求的url - data:{method:"getrolelist"},//请求参数 - dataType:"json",//ajax接口(请求url)返回的数据类型 - success:function(data){//data:返回数据(json对象) - if(data != null){ - var rid = $("#rid").val(); - userRole.html(""); - var options = ""; - for(var i = 0; i < data.length; i++){ - //alert(data[i].id); - //alert(data[i].roleName); - if(rid != null && rid != undefined && data[i].id == rid ){ - options += ""; - }else{ - options += ""; - } - - } - userRole.html(options); - } - }, - error:function(data){//当访问时候,404,500 等非200的错误状态码 - validateTip(userRole.next(),{"color":"red"},imgNo+" 获取用户角色列表error",false); - } - }); - - - userName.on("focus",function(){ - validateTip(userName.next(),{"color":"#666666"},"* 用户名长度必须是大于1小于10的字符",false); - }).on("blur",function(){ - if(userName.val() != null && userName.val().length > 1 - && userName.val().length < 10){ - validateTip(userName.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(userName.next(),{"color":"red"},imgNo+" 用户名输入的不符合规范,请重新输入",false); - } - - }); - - birthday.on("focus",function(){ - validateTip(birthday.next(),{"color":"#666666"},"* 点击输入框,选择日期",false); - }).on("blur",function(){ - if(birthday.val() != null && birthday.val() != ""){ - validateTip(birthday.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(birthday.next(),{"color":"red"},imgNo + " 选择的日期不正确,请重新输入",false); - } - }); - - phone.on("focus",function(){ - validateTip(phone.next(),{"color":"#666666"},"* 请输入手机号",false); - }).on("blur",function(){ - var patrn=/^(13[0-9]|15[0-9]|18[0-9])\d{8}$/; - if(phone.val().match(patrn)){ - validateTip(phone.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(phone.next(),{"color":"red"},imgNo + " 您输入的手机号格式不正确",false); - } - }); - - userRole.on("focus",function(){ - validateTip(userRole.next(),{"color":"#666666"},"* 请选择用户角色",false); - }).on("blur",function(){ - if(userRole.val() != null && userRole.val() > 0){ - validateTip(userRole.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(userRole.next(),{"color":"red"},imgNo+" 请重新选择用户角色",false); - } - - }); - - saveBtn.on("click",function(){ - userName.blur(); - phone.blur(); - birthday.blur(); - userRole.blur(); - if(userName.attr("validateStatus") == "true" - && phone.attr("validateStatus") == "true" - && birthday.attr("validateStatus") == "true" - && userRole.attr("validateStatus") == "true"){ - if(confirm("是否确认要提交数据?")){ - $("#userForm").submit(); - } - } - }); - - backBtn.on("click",function(){ - //alert("modify: "+referer); - if(referer != undefined - && null != referer - && "" != referer - && "null" != referer - && referer.length > 4){ - window.location.href = referer; - }else{ - history.back(-1); - } - }); -}); \ No newline at end of file diff --git a/smbms/src/main/webapp/js/userview.js b/smbms/src/main/webapp/js/userview.js deleted file mode 100644 index 7388947..0000000 --- a/smbms/src/main/webapp/js/userview.js +++ /dev/null @@ -1,17 +0,0 @@ -var backBtn = null; - -$(function(){ - backBtn = $("#back"); - backBtn.on("click",function(){ - //alert("view : "+referer); - if(referer != undefined - && null != referer - && "" != referer - && "null" != referer - && referer.length > 4){ - window.location.href = referer; - }else{ - history.back(-1); - } - }); -}); \ No newline at end of file diff --git a/smbms/src/main/webapp/jsp/billadd.jsp b/smbms/src/main/webapp/jsp/billadd.jsp deleted file mode 100644 index c3710e5..0000000 --- a/smbms/src/main/webapp/jsp/billadd.jsp +++ /dev/null @@ -1,60 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> - -
-
- 你现在所在的位置是: - 订单管理页面 >> 订单添加页面 -
-
-
- - -
- - - - -
-
- - - -
-
- - - -
-
- - - -
-
- - - -
-
- - - -
-
- - 未付款 - 已付款 -
-
- - -
- -
-
- -<%@include file="/jsp/common/foot.jsp" %> - \ No newline at end of file diff --git a/smbms/src/main/webapp/jsp/billlist.jsp b/smbms/src/main/webapp/jsp/billlist.jsp deleted file mode 100644 index 1337dc8..0000000 --- a/smbms/src/main/webapp/jsp/billlist.jsp +++ /dev/null @@ -1,99 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> - -
-
- 你现在所在的位置是: - 订单管理页面 -
- - -
- - - - - - - - - - - - - - - - - - - - -
订单编码商品名称供应商订单金额是否付款创建时间操作
- ${bill.billCode } - - ${bill.productName } - - ${bill.providerName} - - ${bill.totalPrice} - - - 未付款 - 已付款 - - - - - - - 查看 - 修改 - 删除 -
- - - - -
-
-
-

提示

-
-

你确定要删除该订单吗?

- 确定 - 取消 -
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - \ No newline at end of file diff --git a/smbms/src/main/webapp/jsp/billmodify.jsp b/smbms/src/main/webapp/jsp/billmodify.jsp deleted file mode 100644 index 2063a58..0000000 --- a/smbms/src/main/webapp/jsp/billmodify.jsp +++ /dev/null @@ -1,68 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> - -
-
- 你现在所在的位置是: - 订单管理页面 >> 订单添加页面 -
-
-
- - - -
- - -
-
- - - -
-
- - - -
-
- - - -
-
- - - -
-
- - - - -
-
- - - 未付款 - 已付款 - - - 未付款 - 已付款 - -
-
- - -
-
-
- -
- - -<%@include file="/jsp/common/foot.jsp" %> - \ No newline at end of file diff --git a/smbms/src/main/webapp/jsp/billview.jsp b/smbms/src/main/webapp/jsp/billview.jsp deleted file mode 100644 index 3461a58..0000000 --- a/smbms/src/main/webapp/jsp/billview.jsp +++ /dev/null @@ -1,29 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> -
-
- 你现在所在的位置是: - 订单管理页面 >> 信息查看 -
-
-

订单编号:${bill.billCode }

-

商品名称:${bill.productName }

-

商品单位:${bill.productUnit }

-

商品数量:${bill.productCount }

-

总金额:${bill.totalPrice }

-

供应商:${bill.providerName }

-

是否付款: - - 未付款 - 已付款 - -

-
- -
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - \ No newline at end of file diff --git a/smbms/src/main/webapp/jsp/common/foot.jsp b/smbms/src/main/webapp/jsp/common/foot.jsp deleted file mode 100644 index bbef6e6..0000000 --- a/smbms/src/main/webapp/jsp/common/foot.jsp +++ /dev/null @@ -1,12 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> - -
- 超市订单管理系统 -
- - - - - - \ No newline at end of file diff --git a/smbms/src/main/webapp/jsp/common/head.jsp b/smbms/src/main/webapp/jsp/common/head.jsp deleted file mode 100644 index cb9ebff..0000000 --- a/smbms/src/main/webapp/jsp/common/head.jsp +++ /dev/null @@ -1,42 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> -<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> - - - - - 超市订单管理系统 - - - - - -
-

超市订单管理系统

-
-

下午好! ${userSession.userName } , 欢迎你!

- 退出 -
-
- -
- 2015年1月1日 11:11 星期一 - 温馨提示:为了能正常浏览,请使用高版本浏览器!(IE10+) -
- -
- - - "/> \ No newline at end of file diff --git a/smbms/src/main/webapp/jsp/error.jsp b/smbms/src/main/webapp/jsp/error.jsp deleted file mode 100644 index 2289c4d..0000000 --- a/smbms/src/main/webapp/jsp/error.jsp +++ /dev/null @@ -1,13 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> - - - - -Insert title here - - -你要访问的页面,已经飞往火星! -返回 - - \ No newline at end of file diff --git a/smbms/src/main/webapp/jsp/frame.jsp b/smbms/src/main/webapp/jsp/frame.jsp deleted file mode 100644 index 881f9e6..0000000 --- a/smbms/src/main/webapp/jsp/frame.jsp +++ /dev/null @@ -1,11 +0,0 @@ -<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> -
- -
-

${userSession.userName }

-

欢迎来到超市订单管理系统!

-
-
-
-<%@include file="/jsp/common/foot.jsp" %> diff --git a/smbms/src/main/webapp/jsp/provideradd.jsp b/smbms/src/main/webapp/jsp/provideradd.jsp deleted file mode 100644 index ec7b01c..0000000 --- a/smbms/src/main/webapp/jsp/provideradd.jsp +++ /dev/null @@ -1,57 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> - -
-
- 你现在所在的位置是: - 供应商管理页面 >> 供应商添加页面 -
-
-
- - -
- - - - -
-
- - - -
-
- - - - -
-
- - - -
-
- - -
-
- - -
-
- - -
-
- - -
-
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - diff --git a/smbms/src/main/webapp/jsp/providerlist.jsp b/smbms/src/main/webapp/jsp/providerlist.jsp deleted file mode 100644 index 2fe8bb1..0000000 --- a/smbms/src/main/webapp/jsp/providerlist.jsp +++ /dev/null @@ -1,82 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> - -
-
- 你现在所在的位置是: - 供应商管理页面 -
- - - - - - - - - - - - - - - - - - - - - - - -
供应商编码供应商名称联系人联系电话传真创建时间操作
- ${provider.proCode } - - ${provider.proName } - - ${provider.proContact} - - ${provider.proPhone} - - ${provider.proFax} - - - - - - 查看 - 修改 - 删除 -
- -
- - - -
-
-
-

提示

-
-

你确定要删除该供应商吗?

- 确定 - 取消 -
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - diff --git a/smbms/src/main/webapp/jsp/providermodify.jsp b/smbms/src/main/webapp/jsp/providermodify.jsp deleted file mode 100644 index 2208a33..0000000 --- a/smbms/src/main/webapp/jsp/providermodify.jsp +++ /dev/null @@ -1,58 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> - -
-
- 你现在所在的位置是: - 供应商管理页面 >> 供应商修改页 -
-
-
- -
- - -
-
- - - -
- -
- - - -
- -
- - - -
- -
- - -
- -
- - -
- -
- - -
-
- - -
-
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - \ No newline at end of file diff --git a/smbms/src/main/webapp/jsp/providerview.jsp b/smbms/src/main/webapp/jsp/providerview.jsp deleted file mode 100644 index f683373..0000000 --- a/smbms/src/main/webapp/jsp/providerview.jsp +++ /dev/null @@ -1,23 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> -
-
- 你现在所在的位置是: - 供应商管理页面 >> 信息查看 -
-
-

供应商编码:${provider.proCode }

-

供应商名称:${provider.proName }

-

联系人:${provider.proContact }

-

联系电话:${provider.proPhone }

-

传真:${provider.proFax }

-

描述:${provider.proDesc}

-
- -
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - diff --git a/smbms/src/main/webapp/jsp/pwdmodify.jsp b/smbms/src/main/webapp/jsp/pwdmodify.jsp deleted file mode 100644 index 381479b..0000000 --- a/smbms/src/main/webapp/jsp/pwdmodify.jsp +++ /dev/null @@ -1,38 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> -
-
- 你现在所在的位置是: - 密码修改页面 -
-
-
- - -
${message}
-
- - - -
-
- - - -
-
- - - -
-
- - -
-
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - \ No newline at end of file diff --git a/smbms/src/main/webapp/jsp/rollpage.jsp b/smbms/src/main/webapp/jsp/rollpage.jsp deleted file mode 100644 index cd74989..0000000 --- a/smbms/src/main/webapp/jsp/rollpage.jsp +++ /dev/null @@ -1,34 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> - - - - -Insert title here - - - -
- - - 页 - - -
- - - \ No newline at end of file diff --git a/smbms/src/main/webapp/jsp/useradd.jsp b/smbms/src/main/webapp/jsp/useradd.jsp deleted file mode 100644 index 36da102..0000000 --- a/smbms/src/main/webapp/jsp/useradd.jsp +++ /dev/null @@ -1,72 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> - -
-
- 你现在所在的位置是: - 用户管理页面 >> 用户添加页面 -
-
-
- - -
- - - - -
-
- - - -
-
- - - -
-
- - - -
-
- - -
-
- - - -
-
- - - -
-
- - -
-
- - - - -
-
- - -
-
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - diff --git a/smbms/src/main/webapp/jsp/userlist.jsp b/smbms/src/main/webapp/jsp/userlist.jsp deleted file mode 100644 index 1c7638b..0000000 --- a/smbms/src/main/webapp/jsp/userlist.jsp +++ /dev/null @@ -1,96 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> -
-
- 你现在所在的位置是: - 用户管理页面 -
- - - - - - - - - - - - - - - - - - - - - - - -
用户编码用户名称性别年龄电话用户角色操作
- ${user.userCode } - - ${user.userName } - - - - - - - ${user.age} - - ${user.phone} - - ${user.userRoleName} - - 查看 - 修改 - 删除 -
- - - - - - -
- - - -
-
-
-

提示

-
-

你确定要删除该用户吗?

- 确定 - 取消 -
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - diff --git a/smbms/src/main/webapp/jsp/usermodify.jsp b/smbms/src/main/webapp/jsp/usermodify.jsp deleted file mode 100644 index 5775942..0000000 --- a/smbms/src/main/webapp/jsp/usermodify.jsp +++ /dev/null @@ -1,65 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> -
-
- 你现在所在的位置是: - 用户管理页面 >> 用户修改页面 -
-
-
- - -
- - - -
-
- - -
-
- - - -
- -
- - - -
-
- - -
-
- - - - - -
-
- - -
-
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - diff --git a/smbms/src/main/webapp/jsp/userview.jsp b/smbms/src/main/webapp/jsp/userview.jsp deleted file mode 100644 index 1a3650f..0000000 --- a/smbms/src/main/webapp/jsp/userview.jsp +++ /dev/null @@ -1,29 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> -
-
- 你现在所在的位置是: - 用户管理页面 >> 用户信息查看页面 -
-
-

用户编号:${user.userCode }

-

用户名称:${user.userName }

-

用户性别: - - - - -

-

出生日期:${user.birthday }

-

用户电话:${user.phone }

-

用户地址:${user.address }

-

用户角色:${user.userRoleName}

-
- -
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - \ No newline at end of file diff --git a/smbms/src/main/webapp/login.jsp b/smbms/src/main/webapp/login.jsp deleted file mode 100644 index 222bfae..0000000 --- a/smbms/src/main/webapp/login.jsp +++ /dev/null @@ -1,40 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> - - - - - 系统登录 - 超市订单管理系统 - - - - -
-
-

超市订单管理系统

-
-
-
-
${error}
-
- - -
-
- - -
-
- - - -
-
-
-
- - diff --git a/smbms/target/classes/com/xiaokai/dao/BaseDao.class b/smbms/target/classes/com/xiaokai/dao/BaseDao.class deleted file mode 100644 index e7fca68..0000000 Binary files a/smbms/target/classes/com/xiaokai/dao/BaseDao.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/dao/bill/BillDao.class b/smbms/target/classes/com/xiaokai/dao/bill/BillDao.class deleted file mode 100644 index bd4729b..0000000 Binary files a/smbms/target/classes/com/xiaokai/dao/bill/BillDao.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/dao/bill/BillDaoImpl.class b/smbms/target/classes/com/xiaokai/dao/bill/BillDaoImpl.class deleted file mode 100644 index d4ec07e..0000000 Binary files a/smbms/target/classes/com/xiaokai/dao/bill/BillDaoImpl.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/dao/provider/ProviderDao.class b/smbms/target/classes/com/xiaokai/dao/provider/ProviderDao.class deleted file mode 100644 index 083c281..0000000 Binary files a/smbms/target/classes/com/xiaokai/dao/provider/ProviderDao.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/dao/provider/ProviderDaoImpl.class b/smbms/target/classes/com/xiaokai/dao/provider/ProviderDaoImpl.class deleted file mode 100644 index 4a52325..0000000 Binary files a/smbms/target/classes/com/xiaokai/dao/provider/ProviderDaoImpl.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/dao/role/RoleDao.class b/smbms/target/classes/com/xiaokai/dao/role/RoleDao.class deleted file mode 100644 index 8cc6c13..0000000 Binary files a/smbms/target/classes/com/xiaokai/dao/role/RoleDao.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/dao/role/RoleDaoImpl.class b/smbms/target/classes/com/xiaokai/dao/role/RoleDaoImpl.class deleted file mode 100644 index b59513a..0000000 Binary files a/smbms/target/classes/com/xiaokai/dao/role/RoleDaoImpl.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/dao/user/UserDao.class b/smbms/target/classes/com/xiaokai/dao/user/UserDao.class deleted file mode 100644 index cccf4f1..0000000 Binary files a/smbms/target/classes/com/xiaokai/dao/user/UserDao.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/dao/user/UserDaoImpl.class b/smbms/target/classes/com/xiaokai/dao/user/UserDaoImpl.class deleted file mode 100644 index ecc94e2..0000000 Binary files a/smbms/target/classes/com/xiaokai/dao/user/UserDaoImpl.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/filter/CharacterEncodingFilter.class b/smbms/target/classes/com/xiaokai/filter/CharacterEncodingFilter.class deleted file mode 100644 index accd283..0000000 Binary files a/smbms/target/classes/com/xiaokai/filter/CharacterEncodingFilter.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/filter/SysFilter.class b/smbms/target/classes/com/xiaokai/filter/SysFilter.class deleted file mode 100644 index 829d2e7..0000000 Binary files a/smbms/target/classes/com/xiaokai/filter/SysFilter.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/pojo/Address.class b/smbms/target/classes/com/xiaokai/pojo/Address.class deleted file mode 100644 index 3274b33..0000000 Binary files a/smbms/target/classes/com/xiaokai/pojo/Address.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/pojo/Bill.class b/smbms/target/classes/com/xiaokai/pojo/Bill.class deleted file mode 100644 index 77068fd..0000000 Binary files a/smbms/target/classes/com/xiaokai/pojo/Bill.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/pojo/Provider.class b/smbms/target/classes/com/xiaokai/pojo/Provider.class deleted file mode 100644 index b95bef0..0000000 Binary files a/smbms/target/classes/com/xiaokai/pojo/Provider.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/pojo/Role.class b/smbms/target/classes/com/xiaokai/pojo/Role.class deleted file mode 100644 index 0c2d0ad..0000000 Binary files a/smbms/target/classes/com/xiaokai/pojo/Role.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/pojo/User.class b/smbms/target/classes/com/xiaokai/pojo/User.class deleted file mode 100644 index 85b37ee..0000000 Binary files a/smbms/target/classes/com/xiaokai/pojo/User.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/service/bill/BillService.class b/smbms/target/classes/com/xiaokai/service/bill/BillService.class deleted file mode 100644 index dd8e694..0000000 Binary files a/smbms/target/classes/com/xiaokai/service/bill/BillService.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/service/bill/BillServiceImpl.class b/smbms/target/classes/com/xiaokai/service/bill/BillServiceImpl.class deleted file mode 100644 index ca8d35e..0000000 Binary files a/smbms/target/classes/com/xiaokai/service/bill/BillServiceImpl.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/service/provider/ProviderService.class b/smbms/target/classes/com/xiaokai/service/provider/ProviderService.class deleted file mode 100644 index 766afeb..0000000 Binary files a/smbms/target/classes/com/xiaokai/service/provider/ProviderService.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/service/provider/ProviderServiceImpl.class b/smbms/target/classes/com/xiaokai/service/provider/ProviderServiceImpl.class deleted file mode 100644 index e92ca88..0000000 Binary files a/smbms/target/classes/com/xiaokai/service/provider/ProviderServiceImpl.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/service/role/RoleService.class b/smbms/target/classes/com/xiaokai/service/role/RoleService.class deleted file mode 100644 index 4c52ea4..0000000 Binary files a/smbms/target/classes/com/xiaokai/service/role/RoleService.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/service/role/RoleServiceImpl.class b/smbms/target/classes/com/xiaokai/service/role/RoleServiceImpl.class deleted file mode 100644 index f66f30d..0000000 Binary files a/smbms/target/classes/com/xiaokai/service/role/RoleServiceImpl.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/service/user/UserService.class b/smbms/target/classes/com/xiaokai/service/user/UserService.class deleted file mode 100644 index 8462a57..0000000 Binary files a/smbms/target/classes/com/xiaokai/service/user/UserService.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/service/user/UserServiceImpl.class b/smbms/target/classes/com/xiaokai/service/user/UserServiceImpl.class deleted file mode 100644 index ab0c110..0000000 Binary files a/smbms/target/classes/com/xiaokai/service/user/UserServiceImpl.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/servlet/bill/BillServlet.class b/smbms/target/classes/com/xiaokai/servlet/bill/BillServlet.class deleted file mode 100644 index 8bd1941..0000000 Binary files a/smbms/target/classes/com/xiaokai/servlet/bill/BillServlet.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/servlet/provider/ProviderServlet.class b/smbms/target/classes/com/xiaokai/servlet/provider/ProviderServlet.class deleted file mode 100644 index 7452525..0000000 Binary files a/smbms/target/classes/com/xiaokai/servlet/provider/ProviderServlet.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/servlet/user/LoginServlet.class b/smbms/target/classes/com/xiaokai/servlet/user/LoginServlet.class deleted file mode 100644 index ebe6fd3..0000000 Binary files a/smbms/target/classes/com/xiaokai/servlet/user/LoginServlet.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/servlet/user/LogoutServlet.class b/smbms/target/classes/com/xiaokai/servlet/user/LogoutServlet.class deleted file mode 100644 index ece50eb..0000000 Binary files a/smbms/target/classes/com/xiaokai/servlet/user/LogoutServlet.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/servlet/user/UserServlet.class b/smbms/target/classes/com/xiaokai/servlet/user/UserServlet.class deleted file mode 100644 index b0733ea..0000000 Binary files a/smbms/target/classes/com/xiaokai/servlet/user/UserServlet.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/util/Constants.class b/smbms/target/classes/com/xiaokai/util/Constants.class deleted file mode 100644 index 36c8dc1..0000000 Binary files a/smbms/target/classes/com/xiaokai/util/Constants.class and /dev/null differ diff --git a/smbms/target/classes/com/xiaokai/util/PageSupport.class b/smbms/target/classes/com/xiaokai/util/PageSupport.class deleted file mode 100644 index b3fa387..0000000 Binary files a/smbms/target/classes/com/xiaokai/util/PageSupport.class and /dev/null differ diff --git a/smbms/target/classes/database.properties b/smbms/target/classes/database.properties deleted file mode 100644 index 09a8664..0000000 --- a/smbms/target/classes/database.properties +++ /dev/null @@ -1,4 +0,0 @@ -driver=com.mysql.jdbc.Driver -url=jdbc:mysql://127.0.0.1:3306/smbms?useUnicode=true&characterEncoding=utf-8&useSSL=false -user=root -password=123456 \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT.war b/smbms/target/smbms-1.0-SNAPSHOT.war deleted file mode 100644 index e5b98d9..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT.war and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/META-INF/MANIFEST.MF b/smbms/target/smbms-1.0-SNAPSHOT/META-INF/MANIFEST.MF deleted file mode 100644 index 1d10c5b..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/META-INF/MANIFEST.MF +++ /dev/null @@ -1,5 +0,0 @@ -Manifest-Version: 1.0 -Created-By: IntelliJ IDEA -Built-By: guanxiaokai -Build-Jdk: version 1.8.0_281 - diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/BaseDao.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/BaseDao.class deleted file mode 100644 index e7fca68..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/BaseDao.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/bill/BillDao.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/bill/BillDao.class deleted file mode 100644 index bd4729b..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/bill/BillDao.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/bill/BillDaoImpl.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/bill/BillDaoImpl.class deleted file mode 100644 index d4ec07e..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/bill/BillDaoImpl.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/provider/ProviderDao.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/provider/ProviderDao.class deleted file mode 100644 index 083c281..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/provider/ProviderDao.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/provider/ProviderDaoImpl.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/provider/ProviderDaoImpl.class deleted file mode 100644 index 4a52325..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/provider/ProviderDaoImpl.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/role/RoleDao.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/role/RoleDao.class deleted file mode 100644 index 8cc6c13..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/role/RoleDao.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/role/RoleDaoImpl.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/role/RoleDaoImpl.class deleted file mode 100644 index b59513a..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/role/RoleDaoImpl.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/user/UserDao.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/user/UserDao.class deleted file mode 100644 index cccf4f1..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/user/UserDao.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/user/UserDaoImpl.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/user/UserDaoImpl.class deleted file mode 100644 index ecc94e2..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/dao/user/UserDaoImpl.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/filter/CharacterEncodingFilter.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/filter/CharacterEncodingFilter.class deleted file mode 100644 index accd283..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/filter/CharacterEncodingFilter.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/filter/SysFilter.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/filter/SysFilter.class deleted file mode 100644 index 829d2e7..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/filter/SysFilter.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/pojo/Address.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/pojo/Address.class deleted file mode 100644 index 3274b33..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/pojo/Address.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/pojo/Bill.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/pojo/Bill.class deleted file mode 100644 index 77068fd..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/pojo/Bill.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/pojo/Provider.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/pojo/Provider.class deleted file mode 100644 index b95bef0..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/pojo/Provider.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/pojo/Role.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/pojo/Role.class deleted file mode 100644 index 0c2d0ad..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/pojo/Role.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/pojo/User.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/pojo/User.class deleted file mode 100644 index 85b37ee..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/pojo/User.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/bill/BillService.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/bill/BillService.class deleted file mode 100644 index dd8e694..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/bill/BillService.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/bill/BillServiceImpl.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/bill/BillServiceImpl.class deleted file mode 100644 index ca8d35e..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/bill/BillServiceImpl.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/provider/ProviderService.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/provider/ProviderService.class deleted file mode 100644 index 766afeb..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/provider/ProviderService.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/provider/ProviderServiceImpl.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/provider/ProviderServiceImpl.class deleted file mode 100644 index e92ca88..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/provider/ProviderServiceImpl.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/role/RoleService.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/role/RoleService.class deleted file mode 100644 index 4c52ea4..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/role/RoleService.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/role/RoleServiceImpl.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/role/RoleServiceImpl.class deleted file mode 100644 index f66f30d..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/role/RoleServiceImpl.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/user/UserService.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/user/UserService.class deleted file mode 100644 index 8462a57..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/user/UserService.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/user/UserServiceImpl.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/user/UserServiceImpl.class deleted file mode 100644 index ab0c110..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/service/user/UserServiceImpl.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet/bill/BillServlet.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet/bill/BillServlet.class deleted file mode 100644 index 8bd1941..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet/bill/BillServlet.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet/provider/ProviderServlet.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet/provider/ProviderServlet.class deleted file mode 100644 index 7452525..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet/provider/ProviderServlet.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet/user/LoginServlet.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet/user/LoginServlet.class deleted file mode 100644 index ebe6fd3..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet/user/LoginServlet.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet/user/LogoutServlet.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet/user/LogoutServlet.class deleted file mode 100644 index ece50eb..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet/user/LogoutServlet.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet/user/UserServlet.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet/user/UserServlet.class deleted file mode 100644 index b0733ea..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/servlet/user/UserServlet.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/util/Constants.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/util/Constants.class deleted file mode 100644 index 36c8dc1..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/util/Constants.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/util/PageSupport.class b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/util/PageSupport.class deleted file mode 100644 index b3fa387..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/com/xiaokai/util/PageSupport.class and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/database.properties b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/database.properties deleted file mode 100644 index 09a8664..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/classes/database.properties +++ /dev/null @@ -1,4 +0,0 @@ -driver=com.mysql.jdbc.Driver -url=jdbc:mysql://127.0.0.1:3306/smbms?useUnicode=true&characterEncoding=utf-8&useSSL=false -user=root -password=123456 \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/hamcrest-core-1.3.jar b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/hamcrest-core-1.3.jar deleted file mode 100644 index 9d5fe16..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/hamcrest-core-1.3.jar and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar deleted file mode 100644 index 844ec7f..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet-api-4.0.1.jar and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar deleted file mode 100644 index 8b3333a..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/javax.servlet.jsp-api-2.3.3.jar and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/jsp-api-2.1.jar b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/jsp-api-2.1.jar deleted file mode 100644 index c0195af..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/jsp-api-2.1.jar and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/jstl-api-1.2.jar b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/jstl-api-1.2.jar deleted file mode 100644 index 30d4d92..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/jstl-api-1.2.jar and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/junit-4.13.jar b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/junit-4.13.jar deleted file mode 100644 index acc3c43..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/junit-4.13.jar and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/mysql-connector-java-5.1.47.jar b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/mysql-connector-java-5.1.47.jar deleted file mode 100644 index 8816c7e..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/mysql-connector-java-5.1.47.jar and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/servlet-api-2.5.jar b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/servlet-api-2.5.jar deleted file mode 100644 index fb52493..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/servlet-api-2.5.jar and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/standard-1.1.2.jar b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/standard-1.1.2.jar deleted file mode 100644 index bc528ac..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/lib/standard-1.1.2.jar and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/web.xml b/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/web.xml deleted file mode 100644 index d64059f..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/WEB-INF/web.xml +++ /dev/null @@ -1,81 +0,0 @@ - - - - - - 30 - - - - CharacterEncodingFilter - com.xiaokai.filter.CharacterEncodingFilter - - - CharacterEncodingFilter - /* - - - - SysFilter - com.xiaokai.filter.SysFilter - - - SysFilter - /jsp/* - - - - /login.jsp - - - - LoginServlet - com.xiaokai.servlet.user.LoginServlet - - - LoginServlet - /login.do - - - - LogoutServlet - com.xiaokai.servlet.user.LogoutServlet - - - LogoutServlet - /jsp/logout.do - - - - UserServlet - com.xiaokai.servlet.user.UserServlet - - - UserServlet - /jsp/user.do - - - - BillServlet - com.xiaokai.servlet.bill.BillServlet - - - BillServlet - /jsp/bill.do - - - - ProviderServlet - com.xiaokai.servlet.provider.ProviderServlet - - - ProviderServlet - /jsp/provider.do - - - diff --git a/smbms/target/smbms-1.0-SNAPSHOT/calendar/My97DatePicker.htm b/smbms/target/smbms-1.0-SNAPSHOT/calendar/My97DatePicker.htm deleted file mode 100644 index 82c5ca8..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/calendar/My97DatePicker.htm +++ /dev/null @@ -1,49 +0,0 @@ - - - -My97DatePicker - - - - - - - - \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/calendar/WdatePicker.js b/smbms/target/smbms-1.0-SNAPSHOT/calendar/WdatePicker.js deleted file mode 100644 index eec5c31..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/calendar/WdatePicker.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * My97 DatePicker 4.7 Beta5 - * License: http://www.my97.net/dp/license.asp - */ -var $dp,WdatePicker;(function(){var _={ -$wdate:true, -$dpPath:"", -$crossFrame:true, -doubleCalendar:false, -enableKeyboard:true, -autoUpdateOnChanged:null, -whichDayIsfirstWeek:4, -position:{}, -lang:"auto", -skin:"default", -dateFmt:"yyyy-MM-dd", -realDateFmt:"yyyy-MM-dd", -realTimeFmt:"HH:mm:ss", -realFullFmt:"%Date %Time", -minDate:"1900-01-01 00:00:00", -maxDate:"2099-12-31 23:59:59", -startDate:"", -alwaysUseStartDate:false, -yearOffset:1911, -firstDayOfWeek:0, -isShowWeek:false, -highLineWeekDay:true, -isShowClear:true, -isShowToday:true, -isShowOK:true, -isShowOthers:true, -readOnly:false, -errDealMode:0, -autoPickDate:null, -qsEnabled:true, - -specialDates:null,specialDays:null,disabledDates:null,disabledDays:null,opposite:false,onpicking:null,onpicked:null,onclearing:null,oncleared:null,ychanging:null,ychanged:null,Mchanging:null,Mchanged:null,dchanging:null,dchanged:null,Hchanging:null,Hchanged:null,mchanging:null,mchanged:null,schanging:null,schanged:null,eCont:null,vel:null,errMsg:"",quickSel:[],has:{}};WdatePicker=U;var X=window,O="document",J="documentElement",C="getElementsByTagName",V,A,T,I,b;switch(navigator.appName){case"Microsoft Internet Explorer":T=true;break;case"Opera":b=true;break;default:I=true;break}A=L();if(_.$wdate)M(A+"skin/WdatePicker.css");V=X;if(_.$crossFrame){try{while(V.parent[O]!=V[O]&&V.parent[O][C]("frameset").length==0)V=V.parent}catch(P){}}if(!V.$dp)V.$dp={ff:I,ie:T,opera:b,el:null,win:X,status:0,defMinDate:_.minDate,defMaxDate:_.maxDate,flatCfgs:[]};B();if($dp.status==0)Z(X,function(){U(null,true)});if(!X[O].docMD){E(X[O],"onmousedown",D);X[O].docMD=true}if(!V[O].docMD){E(V[O],"onmousedown",D);V[O].docMD=true}E(X,"onunload",function(){if($dp.dd)Q($dp.dd,"none")});function B(){V.$dp=V.$dp||{};obj={$:function($){return(typeof $=="string")?X[O].getElementById($):$},$D:function($,_){return this.$DV(this.$($).value,_)},$DV:function(_,$){if(_!=""){this.dt=$dp.cal.splitDate(_,$dp.cal.dateFmt);if($)for(var B in $)if(this.dt[B]===undefined)this.errMsg="invalid property:"+B;else{this.dt[B]+=$[B];if(B=="M"){var C=$["M"]>0?1:0,A=new Date(this.dt["y"],this.dt["M"],0).getDate();this.dt["d"]=Math.min(A+C,this.dt["d"])}}if(this.dt.refresh())return this.dt}return""},show:function(){Q(this.dd,"block")},hide:function(){Q(this.dd,"none")},attachEvent:E};for(var $ in obj)V.$dp[$]=obj[$];$dp=V.$dp}function E(A,$,_){if(T)A.attachEvent($,_);else{var B=$.replace(/on/,"");_._ieEmuEventHandler=function($){return _($)};A.addEventListener(B,_._ieEmuEventHandler,false)}}function L(){var _,A,$=X[O][C]("script");for(var B=0;B<$.length;B++){_=$[B].src.substring(0,$[B].src.toLowerCase().indexOf("wdatepicker.js"));A=_.lastIndexOf("/");if(A>0)_=_.substring(0,A+1);if(_)break}return _}function F(F){var E,C;if(F.substring(0,1)!="/"&&F.indexOf("://")==-1){E=V.location.href;C=location.href;if(E.indexOf("?")>-1)E=E.substring(0,E.indexOf("?"));if(C.indexOf("?")>-1)C=C.substring(0,C.indexOf("?"));var G,I,$="",D="",A="",J,H,B="";for(J=0;J_.scrollTop||A.scrollLeft>_.scrollLeft))?A:_;return{"top":B.scrollTop,"left":B.scrollLeft}}function D($){src=$?($.srcElement||$.target):null;if($dp&&$dp.cal&&!$dp.eCont&&$dp.dd&&src!=$dp.el&&$dp.dd.style.display=="block")$dp.cal.close()}function Y(){$dp.status=2;H()}function H(){if($dp.flatCfgs.length>0){var $=$dp.flatCfgs.shift();$.el={innerHTML:""};$.autoPickDate=true;$.qsEnabled=false;K($)}}var R,$;function U(J,C){$dp.win=X;B();J=J||{};if(C){if(!G()){$=$||setInterval(function(){if(V[O].readyState=="complete")clearInterval($);U(null,true)},50);return}if($dp.status==0){$dp.status=1;K({el:{innerHTML:""}},true)}else return}else if(J.eCont){J.eCont=$dp.$(J.eCont);$dp.flatCfgs.push(J);if($dp.status==2)H()}else{if($dp.status==0){U(null,true);return}if($dp.status!=2)return;var F=D();if(F){$dp.srcEl=F.srcElement||F.target;F.cancelBubble=true}J.el=$dp.$(J.el||$dp.srcEl);if(!J.el||J.el["My97Mark"]===true||J.el.disabled||(J.el==$dp.el&&Q($dp.dd)!="none"&&$dp.dd.style.left!="-1970px")){J.el["My97Mark"]=false;return}K(J);if(J.el.nodeType==1&&J.el["My97Mark"]===undefined){$dp.el["My97Mark"]=false;var _,A;if(F.type=="focus"){_="onclick";A="onfocus"}else{_="onfocus";A="onclick"}E(J.el,_,J.el[A])}}function G(){if(T&&V!=X&&V[O].readyState!="complete")return false;return true}function D(){if(I){func=D.caller;while(func!=null){var $=func.arguments[0];if($&&($+"").indexOf("Event")>=0)return $;func=func.caller}return null}return event}}function S(_,$){return _.currentStyle?_.currentStyle[$]:document.defaultView.getComputedStyle(_,false)[$]}function Q(_,$){if(_)if($!=null)_.style.display=$;else return S(_,"display")}function K(H,$){for(var D in _)if(D.substring(0,1)!="$")$dp[D]=_[D];for(D in H)if($dp[D]!==undefined)$dp[D]=H[D];var E=$dp.el?$dp.el.nodeName:"INPUT";if($||$dp.eCont||new RegExp(/input|textarea|div|span|p|a/ig).test(E))$dp.elProp=E=="INPUT"?"value":"innerHTML";else return;if($dp.lang=="auto")$dp.lang=T?navigator.browserLanguage.toLowerCase():navigator.language.toLowerCase();if(!$dp.dd||$dp.eCont||($dp.lang&&$dp.realLang&&$dp.realLang.name!=$dp.lang&&$dp.getLangIndex&&$dp.getLangIndex($dp.lang)>=0)){if($dp.dd&&!$dp.eCont)V[O].body.removeChild($dp.dd);if(_.$dpPath=="")F(A);var B="";if($dp.eCont){$dp.eCont.innerHTML=B;Z($dp.eCont.childNodes[0],Y)}else{$dp.dd=V[O].createElement("DIV");$dp.dd.style.cssText="position:absolute;z-index:19700";$dp.dd.innerHTML=B;V[O].body.appendChild($dp.dd);Z($dp.dd.childNodes[0],Y);if($)$dp.dd.style.left=$dp.dd.style.top="-1970px";else{$dp.show();C()}}}else if($dp.cal){$dp.show();$dp.cal.init();if(!$dp.eCont)C()}function C(){var F=$dp.position.left,B=$dp.position.top,C=$dp.el;if(C!=$dp.srcEl&&(Q(C)=="none"||C.type=="hidden"))C=$dp.srcEl;var H=W(C),$=G(X),D=N(V),A=a(V),E=$dp.dd.offsetHeight,_=$dp.dd.offsetWidth;if(isNaN(B)){if(B=="above"||(B!="under"&&(($.topM+H.bottom+E>D.height)&&($.topM+H.top-E>0))))B=A.top+$.topM+H.top-E-3;else B=A.top+$.topM+Math.min(H.bottom,D.height-E);B+=T?-1:1}else B+=A.top+$.topM;if(isNaN(F))F=A.left+Math.min($.leftM+H.left,D.width-_-5)-(T?2:0);else F+=A.left+$.leftM;$dp.dd.style.top=B+"px";$dp.dd.style.left=F+"px"}}})() \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/calendar/calendar.js b/smbms/target/smbms-1.0-SNAPSHOT/calendar/calendar.js deleted file mode 100644 index 5bac81f..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/calendar/calendar.js +++ /dev/null @@ -1,5 +0,0 @@ -/* - * My97 DatePicker 4.7 Beta5 - * License: http://www.my97.net/dp/license.asp - */ -eval(function(B,D,A,G,E,F){function C(A){return A<62?String.fromCharCode(A+=A<26?65:A<52?71:-4):A<63?'_':A<64?'$':C(A>>6)+C(A&63)}while(A>0)E[C(G--)]=D[--A];return B.replace(/[\w\$]+/g,function(A){return E[A]==F[A]?A:E[A]})}('l f;e(FP){FD.Co.__defineSetter__("Fd",9(c){e(!c){q.Bq();}4 c;});FD.Co.__defineGetter__("FL",9(){l c=q.GG;DH(c.FZ!=V){c=c.parentNode;}4 c;});HTMLElement.Co.C8=9(b,A){l c=b.6(/Ez/,"");A.El=9(c){GA.BZ=c;4 A();};q.addEventListener(c,A.El,2);};}9 EX(){f=q;q.Cj=[];d=Bs.createElement("m");d._="EN";d.BW=\'
&Dw;
\';GC(d,9(){C5();});c();j.Bb=[Bs,d.BV,d.BA,d.CT,d.DF,d.DR,d.CR,d.Bp,d.Bc];p(l A=U;A=U?BS+V:V;e(BS%Y==U){d.BA.Bw();4;}d.BA.1=k.T+V;d.BA.CK();};}}EX.Co={Fj:9(){BS=U;j.cal=q;e(j.Cz&&j.g.Cz!=u){j.g.Cz=s;j.g.D6();}c();q.FC();k=q.E2=o BN();BI=o BN();BF=q.B8=o BN();q.Bl=q.CW(j.Bl);q.CL=j.CL==u?(j.n.Bu&&j.n.Bu?2:s):j.CL;j.CD=j.CD==u?(j.D4&&j.n.N?2:s):j.CD;q.D8=q.Cs("disabledDates");q.FK=q.Cs("disabledDays");q.E$=q.Cs("specialDates");q.Fk=q.Cs("specialDays");q.Bd=q.DB(j.Bd,j.Bd!=j.Eq?j.Bk:j.CY,j.Eq);q.Bh=q.DB(j.Bh,j.Bh!=j.GB?j.Bk:j.CY,j.GB);e(q.Bd.By(q.Bh)>U){j.EE=0.err_1;}e(q.Ba()){q.Ep();q.CH=j.g[j.BH];}r{q.Bx(2,W);}Dz(k);d.Fx.BW=0.timeStr;d.CR.1=0.clearStr;d.Bp.1=0.todayStr;d.Bc.1=0.okStr;d.Bc.BT=!f.BB(BF);q.Ef();q.E5();e(j.EE){alert(j.EE);}q.EL();e(j.g.FZ==V&&j.g.D5===EH){j.C8(j.g,"EP",EK);}f.$=j.g;C5();9 c(){l b,c;p(b=U;(c=Bs.Dj("link")[b]);b++){e(c.rel.8("y")!=-V&&c.F6){c.BT=s;e(c.F6==j.skin){c.BT=2;}}}}},Ep:9(){l b=q.CE();e(b!=U){l c;e(b>U){c=q.Bh;}r{c=q.Bd;}e(j.n.DO){k.T=c.T;k.K=c.K;k.N=c.N;}e(j.n.Bu){k.H=c.H;k.Q=c.Q;k.S=c.S;}}},C2:9(K,F,Ee,b,D,B,A,Ed,G){l E;e(K&&K.Ba){E=K;}r{E=o BN();e(K!=""){F=F||j.Bl;l J,Dk=U,I,C=/C9|Cu|Db|T|CC|Ce|Dy|K|Bm|N|%CV|FA|H|E9|Q|Ff|S|CG|D|FY|Cy|Dl/BR,CI=F.ES(C);C.DL=U;e(G){I=K.D9(/\\Cy+/);}r{l c=U,H="^";DH((I=C.DP(F))!==u){e(c>=U){H+=F.Ca(c,I.DN);}c=I.DN-c;c=C.DL;Cp(I[U]){t"C9":H+="(\\\\N{BL})";z;t"Cu":H+="(\\\\N{X})";z;t"CC":t"Ce":t"CG":t"D":H+="(\\\\D+)";z;F$:H+="(\\\\N\\\\N?)";z;}}H+=".*c";I=o Dd(H).DP(K);Dk=V;}e(I){p(J=U;J=U){c=c.6(/%CV/BR,"U");b.N=U;b.K=Cn(b.K)+V;}b.Be();}4 b;},Ba:9(){l A,b;e(j.alwaysUseStartDate||(j.Eb!=""&&j.g[j.BH]=="")){A=q.CW(j.Eb);b=j.Bk;}r{A=j.g[j.BH];b=q.Bl;}k.CA(q.C2(A,b));e(A!=""){l c=V;e(j.n.DO&&!q.EQ(k)){k.T=BI.T;k.K=BI.K;k.N=BI.N;c=U;}e(j.n.Bu&&!q.Do(k)){k.H=BI.H;k.Q=BI.Q;k.S=BI.S;c=U;}4 c&&q.BB(k);}4 V;},EQ:9(c){e(c.T!=u){c=CQ(c.T,BL)+"-"+c.K+"-"+c.N;}4 c.ES(/^((\\N{W}(([Et][048])|([E6][26]))[\\-\\/\\S]?((((U?[E8])|(V[Fb]))[\\-\\/\\S]?((U?[V-a])|([V-W][U-a])|(X[Fa])))|(((U?[Ev])|(EA))[\\-\\/\\S]?((U?[V-a])|([V-W][U-a])|(Cd)))|(U?W[\\-\\/\\S]?((U?[V-a])|([V-W][U-a])))))|(\\N{W}(([Et][1235679])|([E6][01345789]))[\\-\\/\\S]?((((U?[E8])|(V[Fb]))[\\-\\/\\S]?((U?[V-a])|([V-W][U-a])|(X[Fa])))|(((U?[Ev])|(EA))[\\-\\/\\S]?((U?[V-a])|([V-W][U-a])|(Cd)))|(U?W[\\-\\/\\S]?((U?[V-a])|(V[U-a])|(W[U-Dh]))))))(\\S(((U?[U-a])|([V-W][U-X]))\\:([U-Y]?[U-a])((\\S)|(\\:([U-Y]?[U-a])))))?c/);},Do:9(c){e(c.H!=u){c=c.H+":"+c.Q+":"+c.S;}4 c.ES(/^([U-a]|([U-V][U-a])|([W][U-X])):([U-a]|([U-Y][U-a])):([U-a]|([U-Y][U-a]))c/);},CE:9(b,c){b=b||k;l A=b.By(q.Bd,c);e(A>U){A=b.By(q.Bh,c);e(AV){C-=Z;}G.L("");G.L("");e(j.Fg){G.L(""+A[U]+"");}p(b=U;b"+A[(B+b)%Z+V]+"");}G.L("");p(b=V,F=C;b");p(c=U;c"+Dx(J,j.F8==U?V:U)+"");}G.L(""+J.N+"");}r{G.L(">");}}G.L("");}G.L("");4 G.P();},Fe:9(b){l c=q.D3(b,q.D8);4(q.D8&&j.Fo)?!c:c;},E3:9(c){4 q.D2(c,q.FK);},F0:9(c){4 q.D3(c,q.E$,V);},FV:9(c){4 q.D2(c,q.Fk,V);},D3:9(c,b){4 b?b.Fz(q.DI(j.Bk,c)):U;},D2:9(b,c){4 c?c.Fz(b):U;},Cq:9(R,M,Dn,Eh,Bv){l S=o B$(),Df=Bv?"Dn"+R:R;E1=k[R];S.L("\');p(l P=U;P"+(R=="K"?0.B2[k[R]-V]:k[R])+"");}S.L("");}S.L("");k[R]=E1;4 S.P();},De:9(b,A){e(b){l c=b.offsetLeft;e(Ei){c=b.getBoundingClientRect().Bz;}A.y.Bz=c;}},_fM:9(c){q.De(c,d.C7);d.C7.BW=q.Cq("K",W,BQ,"O+P*BQ+V",c==d.Br);},Dq:9(A,c){l b=o B$();c=Cl(c,k.T-Y);b.L(q.Cq("T",W,Y,c+"+O+P*Y",A==d.B6));b.L("\\u2190\\FEc+B9?"x=\'BG\' CB=\\"q._=\'Ci\'\\" B0=\\"q._=\'BG\'\\" C_=\'e(BZ.Bq)BZ.Bq();BZ.Dg=s;f.Dq(U,"+(c+B9)+")\'":"x=\'D0\'");b.L(">\\u2192");q.De(A,d.Cb);d.Cb.BW=b.P();},DV:9(c,A,b){d[c+"D"].BW=q.Cq(c,BQ,A,b);},_fH:9(){q.DV("H",BL,"O * BQ + P");},_fm:9(){q.DV("Q",W,"O * Cd + P * Y");},_fs:9(){q.DV("S",V,"P * B9");},EC:9(c){q.Fv();l C=q.Cj,B=C.y,A=o B$();A.L("");A.L(\'\'+0.quickStr+"");e(!c){A.L(\'\\FE\');}A.L("");p(l b=U;b\');A.L("&Dw;"+q.DI(u,C[b]));A.L("");}r{A.L("&Dw;");}}A.L("");d.BK.BW=A.P();},FC:9(){c(/Dl/);c(/FY|Cy/);c(/CG|D/);c(/C9|Cu|Db|T/);c(/CC|Ce|Dy|K/);c(/Bm|N/);c(/FA|H/);c(/E9|Q/);c(/Ff|S/);j.n.DO=(j.n.T||j.n.K||j.n.N)?s:2;j.n.Bu=(j.n.H||j.n.Q||j.n.S)?s:2;j.CY=j.CY.6(/%BO/,j.GD).6(/%Time/,j.Fp);e(j.n.DO){e(j.n.Bu){j.Bk=j.CY;}r{j.Bk=j.GD;}}r{j.Bk=j.Fp;}9 c(b){l c=(b+"").EB(V,W);j.n[c]=b.DP(j.Bl)?(j.n.Cw=c,s):2;}},Ef:9(){l c=U;j.n.T?(c=V,Bj(d.BA,d.DW,d.DA)):v(d.BA,d.DW,d.DA);j.n.K?(c=V,Bj(d.BV,d.Cx,d.DX)):v(d.BV,d.Cx,d.DX);c?Bj(d.D1):v(d.D1);e(j.n.Bu){Bj(d.Cv);DS(d.CT,j.n.H);DS(d.DF,j.n.Q);DS(d.DR,j.n.S);}r{v(d.Cv);}CS(d.CR,j.E0);CS(d.Bp,j.FI);CS(d.Bc,j.D4);CS(d.EO,(!j.Fy&&j.n.N&&j.qsEnabled));e(j.Fn||!(j.E0||j.FI||j.D4)){v(d.C0);}r{Bj(d.C0);}},Bx:9(B,c){l b=j.g,D=FP?"x":"_";e(B){C(b);}r{e(c==u){c=j.errDealMode;}Cp(c){t U:e(confirm(0.errAlertMsg)){b[j.BH]=q.CH;C(b);}r{A(b);}z;t V:b[j.BH]=q.CH;C(b);z;t W:A(b);z;}}9 C(c){l A=c._;e(A){l b=A.6(/F2/BR,"");e(A!=b){c.FU(D,b);}}}9 A(c){c.FU(D,c._+" F2");}},Bf:9(c,G,E){E=E||BF;l H,F=[c+c,c],b,C=E[c],A=9(c){4 CQ(C,c.5);};Cp(c){t"Dl":C=Bi(E);z;t"D":l B=Bi(E)+V;A=9(c){4 c.5==W?0.aLongWeekStr[B]:0.F9[B];};z;t"Cy":C=Dx(E);z;t"T":F=["C9","Cu","Db","T"];G=G||F[U];A=9(c){4 CQ((c.5-V&&c!="T"&&!j.n[c]){e("Hms".8(c)>-V){C=U;}r{C=V;}}l D=[];p(H=U;H=U){D[H]=A(b);G=G.6(b,"{"+H+"}");}}p(H=U;H=U){l b=o BN();b.CA(B);b.N=U;b.K=Cn(b.K)+V;b.Be();D=D.6(/%CV/BR,b.N);}l A="ydHmswW";p(l c=U;c");c.L(q.C4());c.L("");k.B4("K",V);c.L(q.C4());d.Br=d.BV.FJ(s);d.B6=d.BA.FJ(s);d.DE.EV(d.Br);d.DE.EV(d.B6);d.Br.1=0.B2[k.K-V];d.Br.DU=k.K;d.B6.1=k.T;EJ("Fu,Fl");d.Br._=d.B6._="Da";k.B4("K",-V);c.L("");d.Cg.BW=c.P();}r{d._="EN";d.Cg.BW=q.C4();}e(!j.n.N){q.EC(s);DG(d.BK);}r{v(d.BK);}q.FB();},FB:9(){l C=parent.Bs.Dj("iframe");p(l B=U;B=b){c+=b;d.y.Bo=c;}r{d.y.Bo=A;}C[B].y.Bo=D7.max(c,d.CJ)+"Fw";}}d.BK.y.Cm=d.Cg.FM;d.BK.y.Bo=d.Cg.CJ;},Di:9(){k.N=D7.min(o BO(k.T,k.K,U).CU(),k.N);q.B1();e(!j.Fn){e(q.BB(k)){f.Bx(s);j.g.D5=s;j.g.Bw();v(j.Bm);}r{f.Bx(2);}}e(j.Ec){Bn("Ec");}r{e(q.CH!=j.g[j.BH]&&j.g.GE){DK(j.g,"Eo");}}},E5:9(){d.CR.7=9(){e(!Bn("onclearing")){j.g[j.BH]="";f.C$("");j.g.D5=s;j.g.Bw();v(j.Bm);e(j.F3){Bn("F3");}r{e(f.CH!=j.g[j.BH]&&j.g.GE){DK(j.g,"Eo");}}}};d.Bc.7=9(){CP();};e(q.BB(BI)){d.Bp.BT=2;d.Bp.7=9(){k.CA(BI);CP();};}r{d.Bp.BT=s;}},Fv:9(){l H,B,C,A,F=[],E=Y,b=j.FF.5,G=j.n.Cw;e(b>E){b=E;}r{e(G=="Q"||G=="S"){F=[U,D$,Cd,Ft,Fm,-60,-Ft,-Cd,-D$,-V];}r{p(H=U;H=U){BY=C1(BY,U,Fm);}}}e(BF[R]!=BY&&!Bn(R+"changing")){l F_=\'Bg("\'+R+\'",\'+BY+")",DQ=f.CE();e(DQ==U){Cc(F_);}r{e(DQU){EU(f.Bh);}}}d.Bc.BT=!f.BB(BF);e("yMd".8(R)>=U){f.EL();}Bn(R+"changed");}9 EU(c){Dz(f.BB(c)?c:BF);}}9 Dz(c){Bg("T",c.T);Bg("K",c.K);Bg("N",c.N);Bg("H",c.H);Bg("Q",c.Q);Bg("S",c.S);}9 CP(A,D,F,c,E,B){l C=o BN(k.T,k.K,k.N,k.H,k.Q,k.S);k.Ba(A,D,F,c,E,B);e(!Bn("onpicking")){l b=C.T==A&&C.K==D&&C.N==F;e(!b&&Ch.5!=U){M("T",A);M("K",D);M("N",F);f.$=j.g;e(j.CD){f.B1();}}e(f.CL||b||Ch.5==U){f.Di();}}r{k=C;}}9 Bn(c){l b;e(j[c]){b=j[c].ET(j.g,j);}4 b;}9 Bg(b,c){e(c==u){c=k[b];}BF[b]=k[b]=c;e("yHms".8(b)>=U){d[b+"BE"].1=c;}e(b=="K"){d.BV.DU=c;d.BV.1=0.B2[c-V];}}9 C1(A,b,c){e(Ac){A=c;}}4 A;}9 GC(c,b){c.C8("EP",9(){l A=BZ,c=(A.Dv==EH)?A.EG:A.Dv;e(c==a){b();}});}9 CQ(c,b){c=c+"";DH(c.5=U?C:Y;p(l c=U;c<=C;c++){A=b.CZ(c);D=q[A]-B[A];e(D>U){4 V;}r{e(D=U){l c=q.N;e(A=="K"){q.N=V;}q[A]+=b;q.Be();q.N=c;}}};9 Cn(c){4 parseInt(c,B9);}9 CO(c,b){4 Cl(Cn(c),b);}9 3(b,c,A){4 CO(b,Cl(c,A));}9 Cl(c,b){4 c==u||FW(c)?b:c;}9 DK(c,b){e(Ei){c.DK("Ez"+b);}r{l A=Bs.createEvent("HTMLEvents");A.initEvent(b,s,s);c.dispatchEvent(A);}}9 DY(A){l c,b,B="T,K,H,Q,S,Fl,Fu".D9(",");p(b=U;b=FQ&&C<=40){l b;e(f.$==j.g||f.$==d.Bc){e(j.n.N){b="N";e(C==FR){k[b]-=Z;}r{e(C==FO){k[b]+=V;}r{e(C==FQ){k[b]-=V;}r{k[b]+=Z;}}}k.Be();M("T",k.T);M("K",k.K);M("N",k[b]);DM(B);4;}r{b=j.n.Cw;d[b+"BE"].Bw();}}b=b||DY(f.$);e(b){e(C==FR||C==FO){k[b]+=V;}r{k[b]-=V;}k.Be();f.$.1=k[b];C6.ET(f.$,s);f.$.Fh();}}r{e(f.$==j.g&&j.Bm.y.CM=="DD"){4;}e(C==a){l D=A.Ct;p(l c=U;c=48&&C<=57)||(C>=96&&C<=105)||C==Dh||C==46)){DM(B);}}','J|K|M|a|c|d|i|j|m|p|s|y|0|1|2|3|5|7|9|_|$|$d|if|$c|el|td|tr|$dp|$dt|var|div|has|new|for|this|else|true|case|null|hide|divs|class|style|break|$lang|value|false|pInt3|return|length|replace|onclick|indexOf|function|className|currFocus|yI|checkValid|table|L|I|$sdt|menu|elProp|$tdt|input|qsDivSel|4|id|DPDate|Date|arr|6|g|$ny|disabled|button|MI|innerHTML|ipts|pv|event|loadDate|focusArr|okI|minDate|refresh|getP|sv|maxDate|getDay|show|realFmt|dateFmt|dd|callFunc|height|todayI|preventDefault|rMI|document|9700|st|isR|focus|mark|compareWith|left|onmouseout|update|aMonStr|border|attr|cellpadding|ryI|tmpEval|date|10|cellspacing|sb|loadFromDate|onmouseover|MMMM|autoUpdateOnChanged|checkRange|float|DD|oldValue|Q|offsetHeight|onblur|autoPickDate|display|nowrap|pInt2|day_Click|doStr|clearI|shorH|HI|getDate|ld|doExp|menuSel|realFullFmt|charAt|substring|yD|eval|30|MMM|12|dDiv|arguments|menuOn|QS|yMdHms|rtn|width|pInt|prototype|switch|_f|100|_initRe|nextCtrl|yyy|tDiv|minUnit|leftImg|W|readOnly|bDiv|makeInRange|splitDate|navImg|_fd|hideSel|_blur|MD|attachEvent|yyyy|onmousedown|setRealValue|navRightImg|doCustomDate|type|none|rMD|mI|showB|while|getDateStr|href|fireEvent|lastIndex|_cancelKey|index|sd|exec|rv|sI|disHMS|ps|realValue|_fHMS|navLeftImg|rightImg|_foundInput|setDisp|yminput|yy|dpButton|RegExp|_fMyPos|fp|cancelBubble|8|pickDate|getElementsByTagName|P|w|getNewDateStr|r|isTime|close|_fy|align|getMinutes|span|getHours|which|nbsp|getWeek|MM|_setAll|invalidMenu|titleDiv|testDay|testDate|isShowOK|My97Mark|blur|Math|ddateRe|split|getSeconds|15|11|slice|_fillQS|maxlength|errMsg|getFullYear|keyCode|undefined|updownEvent|_inputBindEvent|_tab|draw|btns|WdateDiv|qsDiv|onkeydown|isDate|getMonth|match|call|_setFrom|appendChild|upButton|My97DP|showDiv|right|toLowerCase|startDate|onpicked|N|O|initShowAndHide|HD|e|$IE|v|readonly|_ieEmuEventHandler|2000|body|change|_makeDateInRange|defMinDate|_focus|downButton|02468|highLineWeekDay|469|isShowOthers|valign|oldv|on|isShowClear|bak|newdate|testDisDay|yearOffset|initBtn|13579|MTitle|13578|mm|yminputfocus|sdateRe|HH|autoSize|_dealFmt|Event|xd7|quickSel|mD|coverDate|isShowToday|cloneNode|ddayRe|srcElement|offsetWidth|aLongMonStr|39|$FF|37|38|spans|checkAndUpdate|setAttribute|testSpeDay|isNaN|13|WW|nodeType|01|02|tm|returnValue|testDisDate|ss|isShowWeek|select|tE|init|sdayRe|ry|59|eCont|opposite|realTimeFmt|re|sD|top|45|rM|initQS|px|timeSpan|doubleCalendar|test|testSpeDate|center|WdateFmtErr|oncleared|WdayTable|block|title|valueOf|firstDayOfWeek|aWeekStr|func|default|window|defMaxDate|attachTabEvent|realDateFmt|onchange|setDate|target'.split('|'),383,390,{},{})) \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/calendar/config.js b/smbms/target/smbms-1.0-SNAPSHOT/calendar/config.js deleted file mode 100644 index 20db8dd..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/calendar/config.js +++ /dev/null @@ -1,12 +0,0 @@ -var langList = -[ - {name:'en', charset:'UTF-8'}, - {name:'zh-cn', charset:'UTF-8'}, - {name:'zh-tw', charset:'UTF-8'} -]; - -var skinList = -[ - {name:'default', charset:'UTF-8'}, - {name:'whyGreen', charset:'UTF-8'} -]; \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/calendar/lang/en.js b/smbms/target/smbms-1.0-SNAPSHOT/calendar/lang/en.js deleted file mode 100644 index 3159885..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/calendar/lang/en.js +++ /dev/null @@ -1,14 +0,0 @@ -var $lang={ -errAlertMsg: "Invalid date or the date out of range,redo or not?", -aWeekStr: ["wk", "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], -aLongWeekStr:["wk","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"], -aMonStr: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], -aLongMonStr: ["January","February","March","April","May","June","July","August","September","October","November","December"], -clearStr: "Clear", -todayStr: "Today", -okStr: "OK", -updateStr: "OK", -timeStr: "Time", -quickStr: "Quick Selection", -err_1: 'MinDate Cannot be bigger than MaxDate!' -} \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/calendar/lang/zh-cn.js b/smbms/target/smbms-1.0-SNAPSHOT/calendar/lang/zh-cn.js deleted file mode 100644 index 70e5e4f..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/calendar/lang/zh-cn.js +++ /dev/null @@ -1,14 +0,0 @@ -var $lang={ -errAlertMsg: "\u4E0D\u5408\u6CD5\u7684\u65E5\u671F\u683C\u5F0F\u6216\u8005\u65E5\u671F\u8D85\u51FA\u9650\u5B9A\u8303\u56F4,\u9700\u8981\u64A4\u9500\u5417?", -aWeekStr: ["\u5468","\u65E5","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D"], -aLongWeekStr:["\u5468","\u661F\u671F\u65E5","\u661F\u671F\u4E00","\u661F\u671F\u4E8C","\u661F\u671F\u4E09","\u661F\u671F\u56DB","\u661F\u671F\u4E94","\u661F\u671F\u516D"], -aMonStr: ["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00","\u5341\u4E8C"], -aLongMonStr: ["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"], -clearStr: "\u6E05\u7A7A", -todayStr: "\u4ECA\u5929", -okStr: "\u786E\u5B9A", -updateStr: "\u786E\u5B9A", -timeStr: "\u65F6\u95F4", -quickStr: "\u5FEB\u901F\u9009\u62E9", -err_1: '\u6700\u5C0F\u65E5\u671F\u4E0D\u80FD\u5927\u4E8E\u6700\u5927\u65E5\u671F!' -} \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/calendar/lang/zh-tw.js b/smbms/target/smbms-1.0-SNAPSHOT/calendar/lang/zh-tw.js deleted file mode 100644 index b92e0ee..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/calendar/lang/zh-tw.js +++ /dev/null @@ -1,14 +0,0 @@ -var $lang={ -errAlertMsg: "\u4E0D\u5408\u6CD5\u7684\u65E5\u671F\u683C\u5F0F\u6216\u8005\u65E5\u671F\u8D85\u51FA\u9650\u5B9A\u7BC4\u570D,\u9700\u8981\u64A4\u92B7\u55CE?", -aWeekStr: ["\u5468","\u65E5","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D"], -aLongWeekStr:["\u5468","\u661F\u671F\u65E5","\u661F\u671F\u4E00","\u661F\u671F\u4E8C","\u661F\u671F\u4E09","\u661F\u671F\u56DB","\u661F\u671F\u4E94","\u661F\u671F\u516D"], -aMonStr: ["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00","\u5341\u4E8C"], -aLongMonStr: ["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"], -clearStr: "\u6E05\u7A7A", -todayStr: "\u4ECA\u5929", -okStr: "\u78BA\u5B9A", -updateStr: "\u78BA\u5B9A", -timeStr: "\u6642\u9593", -quickStr: "\u5FEB\u901F\u9078\u64C7", -err_1: '\u6700\u5C0F\u65E5\u671F\u4E0D\u80FD\u5927\u65BC\u6700\u5927\u65E5\u671F!' -} \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/WdatePicker.css b/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/WdatePicker.css deleted file mode 100644 index 8d447b5..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/WdatePicker.css +++ /dev/null @@ -1,10 +0,0 @@ -.Wdate{ - border:#999 1px solid; - height:20px; - background:#fff url(datePicker.gif) no-repeat right; -} - -.WdateFmtErr{ - font-weight:bold; - color:red; -} \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/datePicker.gif b/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/datePicker.gif deleted file mode 100644 index d6bf40c..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/datePicker.gif and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/default/datepicker.css b/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/default/datepicker.css deleted file mode 100644 index 29d5432..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/default/datepicker.css +++ /dev/null @@ -1,246 +0,0 @@ -/* - * My97 DatePicker 4.7 - */ - -.WdateDiv{ - width:180px; - background-color:#FFFFFF; - border:#bbb 1px solid; - padding:2px; -} - -.WdateDiv2{ - width:360px; -} -.WdateDiv *{font-size:9pt;} - -.WdateDiv .NavImg a{ - display:block; - cursor:pointer; - height:16px; - width:16px; -} - -.WdateDiv .NavImgll a{ - float:left; - background:transparent url(img.gif) no-repeat scroll 0 0; -} -.WdateDiv .NavImgl a{ - float:left; - background:transparent url(img.gif) no-repeat scroll -16px 0; -} -.WdateDiv .NavImgr a{ - float:right; - background:transparent url(img.gif) no-repeat scroll -32px 0; -} -.WdateDiv .NavImgrr a{ - float:right; - background:transparent url(img.gif) no-repeat scroll -48px 0; -} - -.WdateDiv #dpTitle{ - height:24px; - margin-bottom:2px; - padding:1px; -} - -.WdateDiv .yminput{ - margin-top:2px; - text-align:center; - height:20px; - border:0px; - width:50px; - cursor:pointer; -} - -.WdateDiv .yminputfocus{ - margin-top:2px; - text-align:center; - font-weight:bold; - height:20px; - color:blue; - border:#ccc 1px solid; - width:50px; -} - -.WdateDiv .menuSel{ - z-index:1; - position:absolute; - background-color:#FFFFFF; - border:#ccc 1px solid; - display:none; -} - -.WdateDiv .menu{ - cursor:pointer; - background-color:#fff; -} - -.WdateDiv .menuOn{ - cursor:pointer; - background-color:#BEEBEE; -} - -.WdateDiv .invalidMenu{ - color:#aaa; -} - -.WdateDiv .YMenu{ - margin-top:20px; - -} - -.WdateDiv .MMenu{ - margin-top:20px; - *width:62px; -} - -.WdateDiv .hhMenu{ - margin-top:-90px; - margin-left:26px; -} - -.WdateDiv .mmMenu{ - margin-top:-46px; - margin-left:26px; -} - -.WdateDiv .ssMenu{ - margin-top:-24px; - margin-left:26px; -} - - .WdateDiv .Wweek { - text-align:center; - background:#DAF3F5; - border-right:#BDEBEE 1px solid; - } - -.WdateDiv .MTitle{ - background-color:#BDEBEE; -} -.WdateDiv .WdayTable2{ - border-collapse:collapse; - border:#c5d9e8 1px solid; -} -.WdateDiv .WdayTable2 table{ - border:0; -} - -.WdateDiv .WdayTable{ - line-height:20px; - border:#c5d9e8 1px solid; -} -.WdateDiv .WdayTable td{ - text-align:center; -} - -.WdateDiv .Wday{ - cursor:pointer; -} - -.WdateDiv .WdayOn{ - cursor:pointer; - background-color:#C0EBEF; -} - -.WdateDiv .Wwday{ - cursor:pointer; - color:#FF2F2F; -} - -.WdateDiv .WwdayOn{ - cursor:pointer; - color:#000; - background-color:#C0EBEF; -} -.WdateDiv .Wtoday{ - cursor:pointer; - color:blue; -} -.WdateDiv .Wselday{ - background-color:#A9E4E9; -} -.WdateDiv .WspecialDay{ - background-color:#66F4DF; -} - -.WdateDiv .WotherDay{ - cursor:pointer; - color:#6A6AFF; -} - -.WdateDiv .WotherDayOn{ - cursor:pointer; - background-color:#C0EBEF; -} - -.WdateDiv .WinvalidDay{ - color:#aaa; -} - -.WdateDiv #dpTime{ - float:left; - margin-top:3px; - margin-right:30px; -} - -.WdateDiv #dpTime #dpTimeStr{ - margin-left:1px; -} - -.WdateDiv #dpTime input{ - width:18px; - height:20px; - text-align:center; - border:#ccc 1px solid; -} - -.WdateDiv #dpTime .tB{ - border-right:0px; -} - -.WdateDiv #dpTime .tE{ - border-left:0; - border-right:0; -} - -.WdateDiv #dpTime .tm{ - width:7px; - border-left:0; - border-right:0; -} - -.WdateDiv #dpTime #dpTimeUp{ - height:10px; - width:13px; - border:0px; - background:url(img.gif) no-repeat -32px -16px; -} - -.WdateDiv #dpTime #dpTimeDown{ - height:10px; - width:13px; - border:0px; - background:url(img.gif) no-repeat -48px -16px; -} - - .WdateDiv #dpQS { - float:left; - margin-right:3px; - margin-top:3px; - background:url(img.gif) no-repeat 0px -16px; - width:20px; - height:20px; - cursor:pointer; - } -.WdateDiv #dpControl { - text-align:right; -} -.WdateDiv .dpButton{ - height:20px; - width:45px; - border:#ccc 1px solid; - margin-top:2px; - margin-right:1px; -} \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/default/img.gif b/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/default/img.gif deleted file mode 100644 index 053205d..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/default/img.gif and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/whyGreen/bg.jpg b/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/whyGreen/bg.jpg deleted file mode 100644 index 75516a6..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/whyGreen/bg.jpg and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/whyGreen/datepicker.css b/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/whyGreen/datepicker.css deleted file mode 100644 index f8426f5..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/whyGreen/datepicker.css +++ /dev/null @@ -1,256 +0,0 @@ -/* - * My97 DatePicker 4.7 Skin:whyGreen - */ -.WdateDiv{ - width:180px; - background-color:#fff; - border:#C5E1E4 1px solid; - padding:2px; -} - -.WdateDiv2{ - width:360px; -} -.WdateDiv *{font-size:9pt;} - -.WdateDiv .NavImg a{ - cursor:pointer; - display:block; - width:16px; - height:16px; - margin-top:1px; -} - -.WdateDiv .NavImgll a{ - float:left; - background:url(img.gif) no-repeat; -} -.WdateDiv .NavImgl a{ - float:left; - background:url(img.gif) no-repeat -16px 0px; -} -.WdateDiv .NavImgr a{ - float:right; - background:url(img.gif) no-repeat -32px 0px; -} -.WdateDiv .NavImgrr a{ - float:right; - background:url(img.gif) no-repeat -48px 0px; -} - -.WdateDiv #dpTitle{ - height:24px; - padding:1px; - border:#c5d9e8 1px solid; - background:url(bg.jpg); - margin-bottom:2px; -} - -.WdateDiv .yminput{ - margin-top:2px; - text-align:center; - border:0px; - height:20px; - width:50px; - color:#034c50; - background-color:transparent; - cursor:pointer; -} - -.WdateDiv .yminputfocus{ - margin-top:2px; - text-align:center; - border:#939393 1px solid; - font-weight:bold; - color:#034c50; - height:20px; - width:50px; -} - -.WdateDiv .menuSel{ - z-index:1; - position:absolute; - background-color:#FFFFFF; - border:#A3C6C8 1px solid; - display:none; -} - -.WdateDiv .menu{ - cursor:pointer; - background-color:#fff; - color:#11777C; -} - -.WdateDiv .menuOn{ - cursor:pointer; - background-color:#BEEBEE; -} - -.WdateDiv .invalidMenu{ - color:#aaa; -} - -.WdateDiv .YMenu{ - margin-top:20px; -} - -.WdateDiv .MMenu{ - margin-top:20px; - *width:62px; -} - -.WdateDiv .hhMenu{ - margin-top:-90px; - margin-left:26px; -} - -.WdateDiv .mmMenu{ - margin-top:-46px; - margin-left:26px; -} - -.WdateDiv .ssMenu{ - margin-top:-24px; - margin-left:26px; -} - - .WdateDiv .Wweek { - text-align:center; - background:#DAF3F5; - border-right:#BDEBEE 1px solid; - } - -.WdateDiv .MTitle{ - color:#13777e; - background-color:#bdebee; -} -.WdateDiv .WdayTable2{ - border-collapse:collapse; - border:#BEE9F0 1px solid; -} -.WdateDiv .WdayTable2 table{ - border:0; -} - -.WdateDiv .WdayTable{ - line-height:20px; - color:#13777e; - background-color:#edfbfb; - border:#BEE9F0 1px solid; -} -.WdateDiv .WdayTable td{ - text-align:center; -} - -.WdateDiv .Wday{ - cursor:pointer; -} - -.WdateDiv .WdayOn{ - cursor:pointer; - background-color:#74d2d9 ; -} - -.WdateDiv .Wwday{ - cursor:pointer; - color:#ab1e1e; -} - -.WdateDiv .WwdayOn{ - cursor:pointer; - background-color:#74d2d9; -} -.WdateDiv .Wtoday{ - cursor:pointer; - color:blue; -} -.WdateDiv .Wselday{ - background-color:#A7E2E7; -} -.WdateDiv .WspecialDay{ - background-color:#66F4DF; -} - -.WdateDiv .WotherDay{ - cursor:pointer; - color:#0099CC; -} - -.WdateDiv .WotherDayOn{ - cursor:pointer; - background-color:#C0EBEF; -} - -.WdateDiv .WinvalidDay{ - color:#aaa; -} - -.WdateDiv #dpTime{ - float:left; - margin-top:3px; - margin-right:30px; -} - -.WdateDiv #dpTime #dpTimeStr{ - margin-left:1px; - color:#497F7F; -} - -.WdateDiv #dpTime input{ - height:20px; - width:18px; - text-align:center; - color:#333; - border:#61CAD0 1px solid; -} - -.WdateDiv #dpTime .tB{ - border-right:0px; -} - -.WdateDiv #dpTime .tE{ - border-left:0; - border-right:0; -} - -.WdateDiv #dpTime .tm{ - width:7px; - border-left:0; - border-right:0; -} - -.WdateDiv #dpTime #dpTimeUp{ - height:10px; - width:13px; - border:0px; - background:url(img.gif) no-repeat -32px -16px; -} - -.WdateDiv #dpTime #dpTimeDown{ - height:10px; - width:13px; - border:0px; - background:url(img.gif) no-repeat -48px -16px; -} - - .WdateDiv #dpQS { - float:left; - margin-right:3px; - margin-top:3px; - background:url(img.gif) no-repeat 0px -16px; - width:20px; - height:20px; - cursor:pointer; - } -.WdateDiv #dpControl { - text-align:right; - margin-top:3px; -} -.WdateDiv .dpButton{ - height:20px; - width:45px; - margin-top:2px; - border:#38B1B9 1px solid; - background-color:#CFEBEE; - color:#08575B; -} \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/whyGreen/img.gif b/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/whyGreen/img.gif deleted file mode 100644 index 4003f20..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/calendar/skin/whyGreen/img.gif and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/css/public.css b/smbms/target/smbms-1.0-SNAPSHOT/css/public.css deleted file mode 100644 index b7dfc43..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/css/public.css +++ /dev/null @@ -1,284 +0,0 @@ -*{ - margin: 0; - padding: 0; -} -body{ - font-size: 12px; - background: #4287c2; -} -.clear:after{ - content: ''; - display: block; - clear: both; -} -a{ - text-decoration: none; -} -li{ - list-style: none; -} - -/*公共样式,头部*/ -.publicHeader{ - height: 48px; - line-height: 48px; - font-size: 14px; - background: linear-gradient(to bottom,#60acf0,#64a5df,#62a0dd,#5994d6,#4f8ace,#4880ca); - background:-webkit-linear-gradient(to bottom,#60acf0,#64a5df,#62a0dd,#5994d6,#4f8ace,#4880ca); - background:-moz-linear-gradient(to bottom,#60acf0,#64a5df,#62a0dd,#5994d6,#4f8ace,#4880ca); - background:-ms-linear-gradient(to bottom,#60acf0,#64a5df,#62a0dd,#5994d6,#4f8ace,#4880ca); -} -.publicHeader h1{ - float: left; - color: #fff; - font-size: 22px; - padding-left:80px; - text-shadow: 2px 1px #000; - background: url("../images/buy.png") 30px center no-repeat; - -} -.publicHeaderR{ - float: right; - color: #fff; - margin-right: 50px; - -} -.publicHeaderR p{ - display: inline-block; - font-weight: bold; -} -.publicHeaderR a{ - width: 50px; - height: 28px; - display: inline-block; - border: 1px solid #679e43; - background: linear-gradient(to bottom,#baf076,#a2d866,#9cd055,#8dc838,#8bc93a); - line-height: 28px; - text-align: center; - border-radius: 4px; - font-weight: bold; - color: #fff; - -} -.publicHeaderR a:hover,.publicHeaderR a:active{ - border: 1px solid #192b02; - border-radius: 4px; - font-weight: bold; - background: linear-gradient(to bottom,#70b21c,#5c9613,#47740e,#3b6209,#2b4906); -} -/*时间*/ -.publicTime{ - height: 28px; - line-height: 28px; - font-size: 12px; - background: linear-gradient(to bottom,#f5f9f8,#eef2fb,#e2ecf5,#e2ecf5,#e0edf6); - padding-left: 20px; - color: #808589; -} -#time{ - float: left; - background: url("../images/time.png") 0 center no-repeat; - padding-left: 26px; -} -.publicTime a{ - float: right; - margin-right: 50px; - color: #626367; -} - -/*公共部分主体内容*/ -.publicMian{ - border-top: 1px solid #c2ccd5; - display: flex; /*变为弹性盒模型*/ - display: -webkit-flex; - background: #fff; -} -/*左边*/ -.left{ - width: 168px; - background: url("../images/leftBg.png") 0 0 repeat-y; - margin-right: 10px; - /*height: 520px;*/ - min-height: 520px; - -} -.leftH2{ - width: 140px; - height: 30px; - border-radius: 4px; - line-height: 30px; - text-align: center; - color: #fff; - background: #60b3e7; - margin: 10px auto; - box-shadow:4px 4px rgba(212,212,212,0.7); -} -.leftH2 span{ - width: 10px; - height: 10px; - display: inline-block; - background: radial-gradient(#70c2f4,#3a8dc1, #035384, #4696c7,#83d1f5); - border-radius: 50%; -} -.span1{ - margin-right: 10px; -} -.span2{ - margin-left: 12px; -} - -.list{ - margin: 0 20px; - font-weight: bold; -} -.list li{ - height: 40px; - line-height: 40px; - border-bottom: 1px solid rgba(212,212,212,0.5) ; -} -.list li:nth-child(1){ - background: url("../images/zd.png") 0 center no-repeat; -} -.list li:nth-child(2){ - background: url("../images/gys.png") 0 center no-repeat; -} -.list li:nth-child(3){ - background: url("../images/yh.png") 0 center no-repeat; -} -.list li:nth-child(4){ - background: url("../images/mm.png") 0 center no-repeat; -} -.list li:nth-child(5){ - background: url("../images/tc.png") 0 center no-repeat; -} -.list li:hover{ - background-color: #acd5f5; - border-radius: 4px; -} -.list li:active, #active{ - background-color: #92c609; - border-radius: 4px; -} -.list a{ - color: #0042a8; - display: inline-block; - padding-left: 40px; - width: 90%; -} - - -/*右边*/ -.right{ - width: 85%; -} -/*右边所在位置栏*/ -.location{ - height: 30px; - line-height: 30px; - border: 1px solid #e6eaf6; - border-radius: 8px; - background: linear-gradient(to bottom, #fefefe,#ffffff,#f6fafd); - color: #4a4a4a; - padding-left: 30px; -} -.location strong{ - background: url("../images/home.png") 0 center no-repeat; - display: inline-block; - padding-left: 30px; -} -.location span{ - color: #2179a9; - font-weight: bold; -} -/*搜索信息栏*/ -.search{ - height:50px; - line-height:50px; - background: #f6fafd; - padding-left: 24px; - color: #000; -} -.search input[type='text']{ - width: 200px; - height: 30px; - outline: none; - padding-left: 10px; - border: 1px solid #8ab2d5; - border-radius: 4px; -} -.search input[type='button']{ - margin-left: 20px; - width: 100px; - padding: 0 20px; - height: 30px; - border: 1px solid #7ba92c; - border-radius: 4px; - color: #fff; - font-weight: bold; - background:#87c212 url("../images/search.png") 10px center no-repeat; -} -.search input[type='button']:focus{ - outline: none; - background-color: #5d8410; -} -.search a{ - width: 80px; - padding-left:40px; - float: right; - margin: 10px 60px; - height: 30px; - line-height: 30px; - border: 1px solid #0c89de; - border-radius: 4px; - color: #fff; - font-weight: bold; - background:#47acf1 url("../images/tianjia.png") 10px center no-repeat; - display: inline-block; -} -.search a:hover,.search a:active{ - background-color: #0778c5; -} -.search span{ - margin-left: 10px; -} -.search select{ - margin: 10px; - width: 100px; - height: 30px; - border-radius: 4px; - border: 1px solid #0c89de; - outline: none; -} - -/*底部*/ -.footer{ - width: 100%; - line-height: 40px; - text-align: center; - color: #fff; -} - -#searchbutton{ - margin-left: 20px; - width: 100px; - padding: 0 20px; - height: 30px; - border: 1px solid #7ba92c; - border-radius: 4px; - color: #fff; - font-weight: bold; - background:#87c212 url("../images/search.png") 10px center no-repeat; -} -#searchbutton:focus{ - outline: none; - background-color: #5d8410; -} - - - - - - - - - diff --git a/smbms/target/smbms-1.0-SNAPSHOT/css/style.css b/smbms/target/smbms-1.0-SNAPSHOT/css/style.css deleted file mode 100644 index 07e1441..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/css/style.css +++ /dev/null @@ -1,443 +0,0 @@ -* { - margin: 0; - padding: 0; -} - -/*登录页面*/ -.login_bg { - background: url("../images/loginBg.jpg") 0 0 repeat-x; -} - -.loginBox { - width: 1000px; - margin: 0 auto; - background: url("../images/login_bg.jpg") 0 0 no-repeat; -} - -.loginHeader { - padding-top: 102px; - text-align: center; - padding-bottom: 30px; -} - -.loginHeader h1 { - color: #fff; - text-shadow: 2px 2px #000; -} - -.loginCont { - width: 388px; - height: 284px; - /*border: 1px solid red ;*/ - margin: 0 auto; -} - -.formBox { - position: relative; -} - -/*输入框里默认输入字体*/ -::-webkit-input-placeholder { - color: rgb(190, 188, 188); - /*font-style: italic;*/ -} - -input:-moz-placeholder, -textarea:-moz-placeholder { - color: rgb(190, 188, 188); - font-style: italic; -} - -input { - outline: none; -} - -.loginForm { - background: url("../images/formBg.png") 0 0 no-repeat; - width: 320px; - height: 140px; - border-radius: 8px; - padding: 90px 38px 48px 30px; - /*border: 1px solid green;*/ -} - -.loginForm label { - width: 20%; - display: inline-block; -} - -.inputbox { - height: 60px; -} - -.info { - color: red; - font-weight:bold; -} - -.inputbox input { - width: 66%; - padding: 10px 5px 10px 20px; - border: 1px solid rgb(178, 178, 178); - border-radius: 3px; - -webkit-box-shadow: 0px 1px 4px 0px rgba(168, 168, 168, 0.6) inset; - -moz-box-shadow: 0px 1px 4px 0px rgba(168, 168, 168, 0.6) inset; - box-shadow: 0px 1px 4px 0px rgba(168, 168, 168, 0.6) inset; - -} - -/*输入框得到焦点的效果*/ -.inputbox input:active, .providerAdd input:focus, -.inputbox input:focus { - border: 1px solid rgba(91, 90, 90, 0.7); - background: rgba(238, 236, 240, 0.2); - -webkit-box-shadow: 0px 1px 4px 0px rgba(168, 168, 168, 0.9) inset; - -moz-box-shadow: 0px 1px 4px 0px rgba(168, 168, 168, 0.9) inset; - box-shadow: 0px 1px 4px 0px rgba(168, 168, 168, 0.9) inset; -} - -.subBtn { - margin-left: 70px; -} - -/*/!*登录页登录和重置按钮*!/.providerView a是供应商管理页面下信息查看也得返回按钮的样式*/ -input[type='submit'], input[type='reset'], .providerView a { - width: 30%; - cursor: pointer; - background: #54a4d7; - padding: 6px 18px; - font-family: 'BebasNeueRegular', 'Arial Narrow', Arial, sans-serif; - color: #fff; - font-size: 18px; - border: 1px solid #4682be; - margin-bottom: 10px; - margin-right: 22px; - text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5); - -webkit-border-radius: 3px; - -moz-border-radius: 3px; - border-radius: 3px; - -webkit-box-shadow: 0px 1px 4px 4px rgba(0, 0, 0, 0.07) inset, - 0px 0px 0px 3px rgb(254, 254, 254), - 0px 5px 3px 3px rgb(210, 210, 210); - -moz-box-shadow: 0px 1px 4px 4px rgba(0, 0, 0, 0.07) inset, - 0px 0px 0px 3px rgb(254, 254, 254), - 0px 5px 3px 3px rgb(210, 210, 210); - box-shadow: 0px 1px 4px 4px rgba(0, 0, 0, 0.07) inset, - 0px 0px 0px 3px rgb(254, 254, 254), - 0px 5px 3px 3px rgb(210, 210, 210); - -} - -input[type='submit']:hover, input[type='reset']:hover { - background: rgb(74, 179, 198); -} - -input[type='submit']:active, input[type='submit']:focus, -input[type='reset']:active, input[type='reset']:focus, .providerView a:hover, .providerView a:active { - background: #2a5989; - border: 1px solid rgb(12, 76, 87); - -webkit-box-shadow: 0px 1px 6px 4px rgba(0, 0, 0, 0.2) inset; - -moz-box-shadow: 0px 1px 6px 4px rgba(0, 0, 0, 0.2) inset; - box-shadow: 0px 1px 6px 4px rgba(0, 0, 0, 0.2) inset; -} - -/*欢迎登录页*/ -.wColck { - width: 88px; - height: 108px; - margin: 50px; - float: left; -} - -.wFont { - float: left; - margin-top: 50px; -} - -.wFont h2 { - font-size: 30px; - line-height: 50px; - color: #0a5eb6; -} - -.wFont p { - font-size: 14px; - line-height: 30px; - color: #5a656c; -} - -/*供应商管理页面*/ -.providerTable { - width: 100%; - border: 1px solid #ccc; -} - -.providerTable tr { - height: 30px; - line-height: 30px; - text-align: center; -} - -.providerTable tr:nth-child(odd) { - background: #f6f7f9; -} - -.providerTable tr:hover { - background: #e9f9ca; -} - -.firstTr { - border: 1px solid #d6dfe6; - background: linear-gradient(to bottom, #f3f8fc, #ebf4f9, #e3f1fa, #e0f0fd, #d8e9fd); -} - -.firstTr th { - border-right: 2px solid rgba(209, 218, 223, 0.4); -} - -.providerTable td a { - margin-top: 10px; - display: inline-block; - margin-right: 10px; - -} - -/*供应商管理页面-->下面的信息查看页面*/ -.providerView { - margin: 20px 0; - font-size: 18px; - line-height: 30px; - padding-top: 30px; - border: 1px dashed #3d4f1b; -} - -.providerView strong { - display: inline-block; - width: 200px; - text-align: right; -} - -.providerView span { - color: #bd644e; -} - -.providerView a { - margin-left: 520px; - position: relative; - top: 60px; -} - -/*供应商管理页面-->供应商添加页面*/ -.providerAdd { - border: 1px solid #9ac70f; - padding: 20px; - margin: 20px; -} - -.providerAdd form { - -} - -.providerAdd div { - margin-top: 12px; - margin-bottom: 12px; -} - -.providerAdd label { - width: 200px; - display: inline-block; - text-align: right; -} - -.providerAdd input ,.providerAdd select{ - width: 260px; - height: 30px; - line-height: 30px; - border-radius: 4px; - outline: none; - padding-left: 10px; - border: 1px solid #4987c0; - box-shadow: 1px 1px 1px #99afc4; -} - -.providerAdd input:focus,.providerAdd select:focus { - border: 1px solid #0e56a8; - background: rgba(238, 236, 240, 0.2); - -webkit-box-shadow: 0px 1px 4px 0px rgba(168, 168, 168, 0.9) inset; - -moz-box-shadow: 0px 1px 4px 0px rgba(168, 168, 168, 0.9) inset; - box-shadow: 0px 1px 4px 0px rgba(168, 168, 168, 0.9) inset; -} - -.providerAdd span { - margin-left: 20px; - color: #faca0d; -} - -/*验证错误*/ -.providerAdd .error span { - color: red; -} - -.providerAdd .error input { - border: 1px solid red; -} - -/*验证成功*/ -.providerAdd .ok span { - color: green; -} - -.providerAdd .ok input { - border: 1px solid green; -} - -.providerAddBtn { - margin-left: 240px; - padding-top: 20px; -} - -.providerAddBtn a , -.providerAddBtn input[type='submit'], -.providerAddBtn input[type='button'] { - display: inline-block; - width: 100px; - height: 30px; - line-height: 30px; - text-align: center; - border-radius: 4px; - border: transparent; - background: linear-gradient(to bottom, #85c0ec, #6aa7d6, #508dc6, #306fb4, #17559e); - color: #fff; - cursor: pointer; - font-weight: bold; - font-size: 14px; - vertical-align: top; -} - -.providerAddBtn a:active, -.providerAddBtn a:focus, -.providerAddBtn a:hover, -.providerAddBtn input[type='submit']:hover, -.providerAddBtn input[type='submit']:focus{ - background: linear-gradient(to bottom, #7aaed4, #578bb4, #406e99, #225792, #0d2d54); -} - -.providerAdd input[type='radio']{ - width: 20px; - height: 14px; - line-height:12px; - border-radius: 4px; - outline: none; - padding-left: 10px; - border: none; - box-shadow: none; -} - -/*点击删除按钮后弹出的层*/ -.zhezhao { - display: none; /* 修改这里可以让遮罩层消失*/ - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - background: #000; - opacity: 0.7; - filter: alpha(opacity=70); - overflow: hidden; -} -.remove{ - display: none; /* 修改这里可以让删除框消失*/ - width: 400px; - height: 190px; - position: absolute; - top: 200px; - left:500px; - background: #fff; - border-radius: 4px; -} -.removerChid{ - margin: 4px; - border: 1px solid #ccc; -} -.removerChid h2{ - padding-left: 8px; - font-size: 14px; - line-height: 30px; - margin: 4px 8px; - border-bottom: 1px solid #99cc33; -} -.removeMain{ - margin-top: 38px; - text-align: center; - margin-bottom: 30px; - border-radius: 4px; -} -.removeMain a{ - padding: 0 20px; - display: inline-block; - height: 30px; - line-height: 30px; - border-radius: 4px; - border: 1px solid #5e8809; - margin-top: 30px; - background: #99cc33; - color: #fff; -} -.removeMain a:hover,.removeMain a:active{ - background: #679016; - -} - -/*页码*/ -.page-bar -{ - position:relative; - margin-top:10px; -} -.page-num-ul li -{ - float:left; -} -.page-num-ul li a -{ - display:inline-block; - padding:3px 5px; - margin:0px 3px; - border:1px solid #b8b8b8; -} -.page-num-ul a:hover,.page-num-ul .thisclass -{ - border:1px solid #c5063f; - background-color:#c5063f; - color:#FFF; - text-decoration:none; -} -.page-key -{ - width:50px; -} -.page-btn -{ - border:1px solid #b8b8b8; - background-color:#fff3f8; - display:inline-block; - width:52px; - height:25px; - line-height:25px; - font-weight:20px; -} -.page-go-form -{ - position:absolute; - display:inline-block; - right:50px; - top:0px; -} -.page-go-form input,label,button -{ - margin:0px 5px; -} - - - diff --git a/smbms/target/smbms-1.0-SNAPSHOT/error.jsp b/smbms/target/smbms-1.0-SNAPSHOT/error.jsp deleted file mode 100644 index 892f699..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/error.jsp +++ /dev/null @@ -1,13 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> - - - - -Insert title here - - -

请登录后再访问该页面!

-返回 - - \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/buy.png b/smbms/target/smbms-1.0-SNAPSHOT/images/buy.png deleted file mode 100644 index 77eb4e2..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/buy.png and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/clock.jpg b/smbms/target/smbms-1.0-SNAPSHOT/images/clock.jpg deleted file mode 100644 index 910af63..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/clock.jpg and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/formBg.png b/smbms/target/smbms-1.0-SNAPSHOT/images/formBg.png deleted file mode 100644 index a138397..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/formBg.png and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/gys.png b/smbms/target/smbms-1.0-SNAPSHOT/images/gys.png deleted file mode 100644 index 594f1d6..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/gys.png and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/home.png b/smbms/target/smbms-1.0-SNAPSHOT/images/home.png deleted file mode 100644 index 180d601..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/home.png and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/leftBg.png b/smbms/target/smbms-1.0-SNAPSHOT/images/leftBg.png deleted file mode 100644 index 3956769..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/leftBg.png and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/loginBg.jpg b/smbms/target/smbms-1.0-SNAPSHOT/images/loginBg.jpg deleted file mode 100644 index c221917..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/loginBg.jpg and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/login_bg.jpg b/smbms/target/smbms-1.0-SNAPSHOT/images/login_bg.jpg deleted file mode 100644 index 4b2c76a..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/login_bg.jpg and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/login_img.png b/smbms/target/smbms-1.0-SNAPSHOT/images/login_img.png deleted file mode 100644 index 2435ad8..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/login_img.png and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/mm.png b/smbms/target/smbms-1.0-SNAPSHOT/images/mm.png deleted file mode 100644 index afc1aee..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/mm.png and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/n.png b/smbms/target/smbms-1.0-SNAPSHOT/images/n.png deleted file mode 100644 index 7ba2708..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/n.png and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/read.png b/smbms/target/smbms-1.0-SNAPSHOT/images/read.png deleted file mode 100644 index 2c1dfeb..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/read.png and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/schu.png b/smbms/target/smbms-1.0-SNAPSHOT/images/schu.png deleted file mode 100644 index 142d9b3..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/schu.png and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/search.png b/smbms/target/smbms-1.0-SNAPSHOT/images/search.png deleted file mode 100644 index 7334d2e..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/search.png and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/tc.png b/smbms/target/smbms-1.0-SNAPSHOT/images/tc.png deleted file mode 100644 index 362b783..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/tc.png and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/tianjia.png b/smbms/target/smbms-1.0-SNAPSHOT/images/tianjia.png deleted file mode 100644 index a7d2dec..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/tianjia.png and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/time.png b/smbms/target/smbms-1.0-SNAPSHOT/images/time.png deleted file mode 100644 index 8dd66a9..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/time.png and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/xiugai.png b/smbms/target/smbms-1.0-SNAPSHOT/images/xiugai.png deleted file mode 100644 index 74581ec..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/xiugai.png and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/y.png b/smbms/target/smbms-1.0-SNAPSHOT/images/y.png deleted file mode 100644 index 99eb2a4..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/y.png and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/yh.png b/smbms/target/smbms-1.0-SNAPSHOT/images/yh.png deleted file mode 100644 index 5e65b52..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/yh.png and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/images/zd.png b/smbms/target/smbms-1.0-SNAPSHOT/images/zd.png deleted file mode 100644 index aeb7e83..0000000 Binary files a/smbms/target/smbms-1.0-SNAPSHOT/images/zd.png and /dev/null differ diff --git a/smbms/target/smbms-1.0-SNAPSHOT/index.jsp b/smbms/target/smbms-1.0-SNAPSHOT/index.jsp deleted file mode 100644 index c38169b..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/index.jsp +++ /dev/null @@ -1,5 +0,0 @@ - - -

Hello World!

- - diff --git a/smbms/target/smbms-1.0-SNAPSHOT/js/billadd.js b/smbms/target/smbms-1.0-SNAPSHOT/js/billadd.js deleted file mode 100644 index 3c8c7ce..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/js/billadd.js +++ /dev/null @@ -1,152 +0,0 @@ -var billCode = null; -var productName = null; -var productUnit = null; -var productCount = null; -var totalPrice = null; -var providerId = null; -var addBtn = null; -var backBtn = null; - -function priceReg (value){ - value = value.replace(/[^\d.]/g,""); //清除“数字”和“.”以外的字符 - value = value.replace(/^\./g,""); //验证第一个字符是数字而不是. - value = value.replace(/\.{2,}/g,"."); //只保留第一个. 清除多余的. - value = value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");//去掉特殊符号¥ - if(value.indexOf(".")>0){ - value = value.substring(0,value.indexOf(".")+3); - } - return value; -} - - -$(function(){ - billCode = $("#billCode"); - productName = $("#productName"); - productUnit = $("#productUnit"); - productCount = $("#productCount"); - totalPrice = $("#totalPrice"); - providerId = $("#providerId"); - addBtn = $("#add"); - backBtn = $("#back"); - //初始化的时候,要把所有的提示信息变为:* 以提示必填项,更灵活,不要写在页面上 - billCode.next().html("*"); - productName.next().html("*"); - productUnit.next().html("*"); - productCount.next().html("*"); - totalPrice.next().html("*"); - providerId.next().html("*"); - - $.ajax({ - type:"GET",//请求类型 - url:path+"/jsp/bill.do",//请求的url - data:{method:"getproviderlist"},//请求参数 - dataType:"json",//ajax接口(请求url)返回的数据类型 - success:function(data){//data:返回数据(json对象) - if(data != null){ - $("select").html("");//通过标签选择器,得到select标签,适用于页面里只有一个select - var options = ""; - for(var i = 0; i < data.length; i++){ - //alert(data[i].id); - //alert(data[i].proName); - options += ""; - } - $("select").html(options); - } - }, - error:function(data){//当访问时候,404,500 等非200的错误状态码 - validateTip(providerId.next(),{"color":"red"},imgNo+" 获取供应商列表error",false); - } - }); - /* - * 验证 - * 失焦\获焦 - * jquery的方法传递 - */ - billCode.on("blur",function(){ - if(billCode.val() != null && billCode.val() != ""){ - validateTip(billCode.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(billCode.next(),{"color":"red"},imgNo+" 编码不能为空,请重新输入",false); - } - }).on("focus",function(){ - //显示友情提示 - validateTip(billCode.next(),{"color":"#666666"},"* 请输入订单编码",false); - }).focus(); - - productName.on("focus",function(){ - validateTip(productName.next(),{"color":"#666666"},"* 请输入商品名称",false); - }).on("blur",function(){ - if(productName.val() != null && productName.val() != ""){ - validateTip(productName.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(productName.next(),{"color":"red"},imgNo+" 商品名称不能为空,请重新输入",false); - } - - }); - - productUnit.on("focus",function(){ - validateTip(productUnit.next(),{"color":"#666666"},"* 请输入商品单位",false); - }).on("blur",function(){ - if(productUnit.val() != null && productUnit.val() != ""){ - validateTip(productUnit.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(productUnit.next(),{"color":"red"},imgNo+" 单位不能为空,请重新输入",false); - } - - }); - - providerId.on("focus",function(){ - validateTip(providerId.next(),{"color":"#666666"},"* 请选择供应商",false); - }).on("blur",function(){ - if(providerId.val() != null && providerId.val() != "" && providerId.val() != 0){ - validateTip(providerId.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(providerId.next(),{"color":"red"},imgNo+" 供应商不能为空,请选择",false); - } - - }); - - productCount.on("focus",function(){ - validateTip(productCount.next(),{"color":"#666666"},"* 请输入大于0的正自然数,小数点后保留2位",false); - }).on("keyup",function(){ - this.value = priceReg(this.value); - }).on("blur",function(){ - this.value = priceReg(this.value); - }); - - totalPrice.on("focus",function(){ - validateTip(totalPrice.next(),{"color":"#666666"},"* 请输入大于0的正自然数,小数点后保留2位",false); - }).on("keyup",function(){ - this.value = priceReg(this.value); - }).on("blur",function(){ - this.value = priceReg(this.value); - }); - - addBtn.on("click",function(){ - if(billCode.attr("validateStatus") != "true"){ - billCode.blur(); - }else if(productName.attr("validateStatus") != "true"){ - productName.blur(); - }else if(productUnit.attr("validateStatus") != "true"){ - productUnit.blur(); - }else if(providerId.attr("validateStatus") != "true"){ - providerId.blur(); - }else{ - if(confirm("是否确认提交数据")){ - $("#billForm").submit(); - } - } - }); - - backBtn.on("click",function(){ - if(referer != undefined - && null != referer - && "" != referer - && "null" != referer - && referer.length > 4){ - window.location.href = referer; - }else{ - history.back(-1); - } - }); -}); \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/js/billlist.js b/smbms/target/smbms-1.0-SNAPSHOT/js/billlist.js deleted file mode 100644 index f462b8d..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/js/billlist.js +++ /dev/null @@ -1,91 +0,0 @@ -var billObj; - -//订单管理页面上点击删除按钮弹出删除框(billlist.jsp) -function deleteBill(obj){ - $.ajax({ - type:"GET", - url:path+"/jsp/bill.do", - data:{method:"delbill",billid:obj.attr("billid")}, - dataType:"json", - success:function(data){ - if(data.delResult == "true"){//删除成功:移除删除行 - cancleBtn(); - obj.parents("tr").remove(); - }else if(data.delResult == "false"){//删除失败 - //alert("对不起,删除订单【"+obj.attr("billcc")+"】失败"); - changeDLGContent("对不起,删除订单【"+obj.attr("billcc")+"】失败"); - }else if(data.delResult == "notexist"){ - //alert("对不起,订单【"+obj.attr("billcc")+"】不存在"); - changeDLGContent("对不起,订单【"+obj.attr("billcc")+"】不存在"); - } - }, - error:function(data){ - alert("对不起,删除失败"); - } - }); -} - -function openYesOrNoDLG(){ - $('.zhezhao').css('display', 'block'); - $('#removeBi').fadeIn(); -} - -function cancleBtn(){ - $('.zhezhao').css('display', 'none'); - $('#removeBi').fadeOut(); -} -function changeDLGContent(contentStr){ - var p = $(".removeMain").find("p"); - p.html(contentStr); -} - -$(function(){ - $(".viewBill").on("click",function(){ - //将被绑定的元素(a)转换成jquery对象,可以使用jquery方法 - var obj = $(this); - window.location.href=path+"/jsp/bill.do?method=view&billid="+ obj.attr("billid"); - }); - - $(".modifyBill").on("click",function(){ - var obj = $(this); - window.location.href=path+"/jsp/bill.do?method=modify&billid="+ obj.attr("billid"); - }); - $('#no').click(function () { - cancleBtn(); - }); - - $('#yes').click(function () { - deleteBill(billObj); - }); - - $(".deleteBill").on("click",function(){ - billObj = $(this); - changeDLGContent("你确定要删除订单【"+billObj.attr("billcc")+"】吗?"); - openYesOrNoDLG(); - }); - - /*$(".deleteBill").on("click",function(){ - var obj = $(this); - if(confirm("你确定要删除订单【"+obj.attr("billcc")+"】吗?")){ - $.ajax({ - type:"GET", - url:path+"/bill.do", - data:{method:"delbill",billid:obj.attr("billid")}, - dataType:"json", - success:function(data){ - if(data.delResult == "true"){//删除成功:移除删除行 - alert("删除成功"); - obj.parents("tr").remove(); - }else if(data.delResult == "false"){//删除失败 - alert("对不起,删除订单【"+obj.attr("billcc")+"】失败"); - }else if(data.delResult == "notexist"){ - alert("对不起,订单【"+obj.attr("billcc")+"】不存在"); - } - }, - error:function(data){ - alert("对不起,删除失败"); - } - }); - } - });*/ -}); \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/js/billmodify.js b/smbms/target/smbms-1.0-SNAPSHOT/js/billmodify.js deleted file mode 100644 index 6227f00..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/js/billmodify.js +++ /dev/null @@ -1,147 +0,0 @@ -var billCode = null; -var productName = null; -var productUnit = null; -var productCount = null; -var totalPrice = null; -var providerId = null; -var saveBtn = null; -var backBtn = null; - -function priceReg (value){ - value = value.replace(/[^\d.]/g,""); //清除“数字”和“.”以外的字符 - value = value.replace(/^\./g,""); //验证第一个字符是数字而不是. - value = value.replace(/\.{2,}/g,"."); //只保留第一个. 清除多余的. - value = value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");//去掉特殊符号¥ - if(value.indexOf(".")>0){ - value = value.substring(0,value.indexOf(".")+3); - } - return value; -} - - -$(function(){ - billCode = $("#billCode"); - productName = $("#productName"); - productUnit = $("#productUnit"); - productCount = $("#productCount"); - totalPrice = $("#totalPrice"); - providerId = $("#providerId"); - addBtn = $("#save"); - backBtn = $("#back"); - - //初始化的时候,要把所有的提示信息变为:* 以提示必填项,更灵活,不要写在页面上 - billCode.next().html("*"); - productName.next().html("*"); - productUnit.next().html("*"); - productCount.next().html("*"); - totalPrice.next().html("*"); - providerId.next().html("*"); - - $.ajax({ - type:"GET",//请求类型 - url:path+"/jsp/bill.do",//请求的url - data:{method:"getproviderlist"},//请求参数 - dataType:"json",//ajax接口(请求url)返回的数据类型 - success:function(data){//data:返回数据(json对象) - if(data != null){ - var pid = $("#pid").val(); - $("select").html("");//通过标签选择器,得到select标签,适用于页面里只有一个select - var options = ""; - for(var i = 0; i < data.length; i++){ - //alert(data[i].id); - //alert(data[i].proName); - if(pid != null && pid != undefined && data[i].id == pid ){ - options += ""; - }else{ - options += ""; - } - - } - $("select").html(options); - } - }, - error:function(data){//当访问时候,404,500 等非200的错误状态码 - validateTip(providerId.next(),{"color":"red"},imgNo+" 获取供应商列表error",false); - } - }); - /* - * 验证 - * 失焦\获焦 - * jquery的方法传递 - */ - - productName.on("focus",function(){ - validateTip(productName.next(),{"color":"#666666"},"* 请输入商品名称",false); - }).on("blur",function(){ - if(productName.val() != null && productName.val() != ""){ - validateTip(productName.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(productName.next(),{"color":"red"},imgNo+" 商品名称不能为空,请重新输入",false); - } - - }); - - productUnit.on("focus",function(){ - validateTip(productUnit.next(),{"color":"#666666"},"* 请输入商品单位",false); - }).on("blur",function(){ - if(productUnit.val() != null && productUnit.val() != ""){ - validateTip(productUnit.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(productUnit.next(),{"color":"red"},imgNo+" 单位不能为空,请重新输入",false); - } - - }); - - providerId.on("focus",function(){ - validateTip(providerId.next(),{"color":"#666666"},"* 请选择供应商",false); - }).on("blur",function(){ - if(providerId.val() != null && providerId.val() != "" && providerId.val() != 0){ - validateTip(providerId.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(providerId.next(),{"color":"red"},imgNo+" 供应商不能为空,请选择",false); - } - - }); - - productCount.on("focus",function(){ - validateTip(productCount.next(),{"color":"#666666"},"* 请输入大于0的正自然数,小数点后保留2位",false); - }).on("keyup",function(){ - this.value = priceReg(this.value); - }).on("blur",function(){ - this.value = priceReg(this.value); - }); - - totalPrice.on("focus",function(){ - validateTip(totalPrice.next(),{"color":"#666666"},"* 请输入大于0的正自然数,小数点后保留2位",false); - }).on("keyup",function(){ - this.value = priceReg(this.value); - }).on("blur",function(){ - this.value = priceReg(this.value); - }); - - addBtn.on("click",function(){ - productName.blur(); - productUnit.blur(); - providerId.blur(); - if(productName.attr("validateStatus") == "true" - && productUnit.attr("validateStatus") == "true" - && providerId.attr("validateStatus") == "true"){ - if(confirm("是否确认提交数据")){ - $("#billForm").submit(); - } - } - }); - - backBtn.on("click",function(){ - //alert("modify: "+referer); - if(referer != undefined - && null != referer - && "" != referer - && "null" != referer - && referer.length > 4){ - window.location.href = referer; - }else{ - history.back(-1); - } - }); -}); \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/js/billview.js b/smbms/target/smbms-1.0-SNAPSHOT/js/billview.js deleted file mode 100644 index 7388947..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/js/billview.js +++ /dev/null @@ -1,17 +0,0 @@ -var backBtn = null; - -$(function(){ - backBtn = $("#back"); - backBtn.on("click",function(){ - //alert("view : "+referer); - if(referer != undefined - && null != referer - && "" != referer - && "null" != referer - && referer.length > 4){ - window.location.href = referer; - }else{ - history.back(-1); - } - }); -}); \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/js/common.js b/smbms/target/smbms-1.0-SNAPSHOT/js/common.js deleted file mode 100644 index 2a549b2..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/js/common.js +++ /dev/null @@ -1,17 +0,0 @@ -var path = $("#path").val(); -var imgYes = ""; -var imgNo = ""; -/** - * 提示信息显示 - * element:显示提示信息的元素(font) - * css:提示样式 - * tipString:提示信息 - * status:true/false --验证是否通过 - */ -function validateTip(element,css,tipString,status){ - element.css(css); - element.html(tipString); - - element.prev().attr("validateStatus",status); -} -var referer = $("#referer").val(); \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/js/jquery-1.8.3.min.js b/smbms/target/smbms-1.0-SNAPSHOT/js/jquery-1.8.3.min.js deleted file mode 100644 index 3883779..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/js/jquery-1.8.3.min.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! jQuery v1.8.3 jquery.com | jquery.org/license */ -(function(e,t){function _(e){var t=M[e]={};return v.each(e.split(y),function(e,n){t[n]=!0}),t}function H(e,n,r){if(r===t&&e.nodeType===1){var i="data-"+n.replace(P,"-$1").toLowerCase();r=e.getAttribute(i);if(typeof r=="string"){try{r=r==="true"?!0:r==="false"?!1:r==="null"?null:+r+""===r?+r:D.test(r)?v.parseJSON(r):r}catch(s){}v.data(e,n,r)}else r=t}return r}function B(e){var t;for(t in e){if(t==="data"&&v.isEmptyObject(e[t]))continue;if(t!=="toJSON")return!1}return!0}function et(){return!1}function tt(){return!0}function ut(e){return!e||!e.parentNode||e.parentNode.nodeType===11}function at(e,t){do e=e[t];while(e&&e.nodeType!==1);return e}function ft(e,t,n){t=t||0;if(v.isFunction(t))return v.grep(e,function(e,r){var i=!!t.call(e,r,e);return i===n});if(t.nodeType)return v.grep(e,function(e,r){return e===t===n});if(typeof t=="string"){var r=v.grep(e,function(e){return e.nodeType===1});if(it.test(t))return v.filter(t,r,!n);t=v.filter(t,r)}return v.grep(e,function(e,r){return v.inArray(e,t)>=0===n})}function lt(e){var t=ct.split("|"),n=e.createDocumentFragment();if(n.createElement)while(t.length)n.createElement(t.pop());return n}function Lt(e,t){return e.getElementsByTagName(t)[0]||e.appendChild(e.ownerDocument.createElement(t))}function At(e,t){if(t.nodeType!==1||!v.hasData(e))return;var n,r,i,s=v._data(e),o=v._data(t,s),u=s.events;if(u){delete o.handle,o.events={};for(n in u)for(r=0,i=u[n].length;r").appendTo(i.body),n=t.css("display");t.remove();if(n==="none"||n===""){Pt=i.body.appendChild(Pt||v.extend(i.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!Ht||!Pt.createElement)Ht=(Pt.contentWindow||Pt.contentDocument).document,Ht.write(""),Ht.close();t=Ht.body.appendChild(Ht.createElement(e)),n=Dt(t,"display"),i.body.removeChild(Pt)}return Wt[e]=n,n}function fn(e,t,n,r){var i;if(v.isArray(t))v.each(t,function(t,i){n||sn.test(e)?r(e,i):fn(e+"["+(typeof i=="object"?t:"")+"]",i,n,r)});else if(!n&&v.type(t)==="object")for(i in t)fn(e+"["+i+"]",t[i],n,r);else r(e,t)}function Cn(e){return function(t,n){typeof t!="string"&&(n=t,t="*");var r,i,s,o=t.toLowerCase().split(y),u=0,a=o.length;if(v.isFunction(n))for(;u)[^>]*$|#([\w\-]*)$)/,E=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,S=/^[\],:{}\s]*$/,x=/(?:^|:|,)(?:\s*\[)+/g,T=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,N=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,C=/^-ms-/,k=/-([\da-z])/gi,L=function(e,t){return(t+"").toUpperCase()},A=function(){i.addEventListener?(i.removeEventListener("DOMContentLoaded",A,!1),v.ready()):i.readyState==="complete"&&(i.detachEvent("onreadystatechange",A),v.ready())},O={};v.fn=v.prototype={constructor:v,init:function(e,n,r){var s,o,u,a;if(!e)return this;if(e.nodeType)return this.context=this[0]=e,this.length=1,this;if(typeof e=="string"){e.charAt(0)==="<"&&e.charAt(e.length-1)===">"&&e.length>=3?s=[null,e,null]:s=w.exec(e);if(s&&(s[1]||!n)){if(s[1])return n=n instanceof v?n[0]:n,a=n&&n.nodeType?n.ownerDocument||n:i,e=v.parseHTML(s[1],a,!0),E.test(s[1])&&v.isPlainObject(n)&&this.attr.call(e,n,!0),v.merge(this,e);o=i.getElementById(s[2]);if(o&&o.parentNode){if(o.id!==s[2])return r.find(e);this.length=1,this[0]=o}return this.context=i,this.selector=e,this}return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e)}return v.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),v.makeArray(e,this))},selector:"",jquery:"1.8.3",length:0,size:function(){return this.length},toArray:function(){return l.call(this)},get:function(e){return e==null?this.toArray():e<0?this[this.length+e]:this[e]},pushStack:function(e,t,n){var r=v.merge(this.constructor(),e);return r.prevObject=this,r.context=this.context,t==="find"?r.selector=this.selector+(this.selector?" ":"")+n:t&&(r.selector=this.selector+"."+t+"("+n+")"),r},each:function(e,t){return v.each(this,e,t)},ready:function(e){return v.ready.promise().done(e),this},eq:function(e){return e=+e,e===-1?this.slice(e):this.slice(e,e+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(l.apply(this,arguments),"slice",l.call(arguments).join(","))},map:function(e){return this.pushStack(v.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:[].sort,splice:[].splice},v.fn.init.prototype=v.fn,v.extend=v.fn.extend=function(){var e,n,r,i,s,o,u=arguments[0]||{},a=1,f=arguments.length,l=!1;typeof u=="boolean"&&(l=u,u=arguments[1]||{},a=2),typeof u!="object"&&!v.isFunction(u)&&(u={}),f===a&&(u=this,--a);for(;a0)return;r.resolveWith(i,[v]),v.fn.trigger&&v(i).trigger("ready").off("ready")},isFunction:function(e){return v.type(e)==="function"},isArray:Array.isArray||function(e){return v.type(e)==="array"},isWindow:function(e){return e!=null&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return e==null?String(e):O[h.call(e)]||"object"},isPlainObject:function(e){if(!e||v.type(e)!=="object"||e.nodeType||v.isWindow(e))return!1;try{if(e.constructor&&!p.call(e,"constructor")&&!p.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(n){return!1}var r;for(r in e);return r===t||p.call(e,r)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw new Error(e)},parseHTML:function(e,t,n){var r;return!e||typeof e!="string"?null:(typeof t=="boolean"&&(n=t,t=0),t=t||i,(r=E.exec(e))?[t.createElement(r[1])]:(r=v.buildFragment([e],t,n?null:[]),v.merge([],(r.cacheable?v.clone(r.fragment):r.fragment).childNodes)))},parseJSON:function(t){if(!t||typeof t!="string")return null;t=v.trim(t);if(e.JSON&&e.JSON.parse)return e.JSON.parse(t);if(S.test(t.replace(T,"@").replace(N,"]").replace(x,"")))return(new Function("return "+t))();v.error("Invalid JSON: "+t)},parseXML:function(n){var r,i;if(!n||typeof n!="string")return null;try{e.DOMParser?(i=new DOMParser,r=i.parseFromString(n,"text/xml")):(r=new ActiveXObject("Microsoft.XMLDOM"),r.async="false",r.loadXML(n))}catch(s){r=t}return(!r||!r.documentElement||r.getElementsByTagName("parsererror").length)&&v.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&g.test(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(C,"ms-").replace(k,L)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,n,r){var i,s=0,o=e.length,u=o===t||v.isFunction(e);if(r){if(u){for(i in e)if(n.apply(e[i],r)===!1)break}else for(;s0&&e[0]&&e[a-1]||a===0||v.isArray(e));if(f)for(;u-1)a.splice(n,1),i&&(n<=o&&o--,n<=u&&u--)}),this},has:function(e){return v.inArray(e,a)>-1},empty:function(){return a=[],this},disable:function(){return a=f=n=t,this},disabled:function(){return!a},lock:function(){return f=t,n||c.disable(),this},locked:function(){return!f},fireWith:function(e,t){return t=t||[],t=[e,t.slice?t.slice():t],a&&(!r||f)&&(i?f.push(t):l(t)),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!r}};return c},v.extend({Deferred:function(e){var t=[["resolve","done",v.Callbacks("once memory"),"resolved"],["reject","fail",v.Callbacks("once memory"),"rejected"],["notify","progress",v.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return v.Deferred(function(n){v.each(t,function(t,r){var s=r[0],o=e[t];i[r[1]](v.isFunction(o)?function(){var e=o.apply(this,arguments);e&&v.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[s+"With"](this===i?n:this,[e])}:n[s])}),e=null}).promise()},promise:function(e){return e!=null?v.extend(e,r):r}},i={};return r.pipe=r.then,v.each(t,function(e,s){var o=s[2],u=s[3];r[s[1]]=o.add,u&&o.add(function(){n=u},t[e^1][2].disable,t[2][2].lock),i[s[0]]=o.fire,i[s[0]+"With"]=o.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t=0,n=l.call(arguments),r=n.length,i=r!==1||e&&v.isFunction(e.promise)?r:0,s=i===1?e:v.Deferred(),o=function(e,t,n){return function(r){t[e]=this,n[e]=arguments.length>1?l.call(arguments):r,n===u?s.notifyWith(t,n):--i||s.resolveWith(t,n)}},u,a,f;if(r>1){u=new Array(r),a=new Array(r),f=new Array(r);for(;t
a",n=p.getElementsByTagName("*"),r=p.getElementsByTagName("a")[0];if(!n||!r||!n.length)return{};s=i.createElement("select"),o=s.appendChild(i.createElement("option")),u=p.getElementsByTagName("input")[0],r.style.cssText="top:1px;float:left;opacity:.5",t={leadingWhitespace:p.firstChild.nodeType===3,tbody:!p.getElementsByTagName("tbody").length,htmlSerialize:!!p.getElementsByTagName("link").length,style:/top/.test(r.getAttribute("style")),hrefNormalized:r.getAttribute("href")==="/a",opacity:/^0.5/.test(r.style.opacity),cssFloat:!!r.style.cssFloat,checkOn:u.value==="on",optSelected:o.selected,getSetAttribute:p.className!=="t",enctype:!!i.createElement("form").enctype,html5Clone:i.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",boxModel:i.compatMode==="CSS1Compat",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},u.checked=!0,t.noCloneChecked=u.cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!o.disabled;try{delete p.test}catch(d){t.deleteExpando=!1}!p.addEventListener&&p.attachEvent&&p.fireEvent&&(p.attachEvent("onclick",h=function(){t.noCloneEvent=!1}),p.cloneNode(!0).fireEvent("onclick"),p.detachEvent("onclick",h)),u=i.createElement("input"),u.value="t",u.setAttribute("type","radio"),t.radioValue=u.value==="t",u.setAttribute("checked","checked"),u.setAttribute("name","t"),p.appendChild(u),a=i.createDocumentFragment(),a.appendChild(p.lastChild),t.checkClone=a.cloneNode(!0).cloneNode(!0).lastChild.checked,t.appendChecked=u.checked,a.removeChild(u),a.appendChild(p);if(p.attachEvent)for(l in{submit:!0,change:!0,focusin:!0})f="on"+l,c=f in p,c||(p.setAttribute(f,"return;"),c=typeof p[f]=="function"),t[l+"Bubbles"]=c;return v(function(){var n,r,s,o,u="padding:0;margin:0;border:0;display:block;overflow:hidden;",a=i.getElementsByTagName("body")[0];if(!a)return;n=i.createElement("div"),n.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px",a.insertBefore(n,a.firstChild),r=i.createElement("div"),n.appendChild(r),r.innerHTML="
t
",s=r.getElementsByTagName("td"),s[0].style.cssText="padding:0;margin:0;border:0;display:none",c=s[0].offsetHeight===0,s[0].style.display="",s[1].style.display="none",t.reliableHiddenOffsets=c&&s[0].offsetHeight===0,r.innerHTML="",r.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",t.boxSizing=r.offsetWidth===4,t.doesNotIncludeMarginInBodyOffset=a.offsetTop!==1,e.getComputedStyle&&(t.pixelPosition=(e.getComputedStyle(r,null)||{}).top!=="1%",t.boxSizingReliable=(e.getComputedStyle(r,null)||{width:"4px"}).width==="4px",o=i.createElement("div"),o.style.cssText=r.style.cssText=u,o.style.marginRight=o.style.width="0",r.style.width="1px",r.appendChild(o),t.reliableMarginRight=!parseFloat((e.getComputedStyle(o,null)||{}).marginRight)),typeof r.style.zoom!="undefined"&&(r.innerHTML="",r.style.cssText=u+"width:1px;padding:1px;display:inline;zoom:1",t.inlineBlockNeedsLayout=r.offsetWidth===3,r.style.display="block",r.style.overflow="visible",r.innerHTML="
",r.firstChild.style.width="5px",t.shrinkWrapBlocks=r.offsetWidth!==3,n.style.zoom=1),a.removeChild(n),n=r=s=o=null}),a.removeChild(p),n=r=s=o=u=a=p=null,t}();var D=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,P=/([A-Z])/g;v.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(v.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(e){return e=e.nodeType?v.cache[e[v.expando]]:e[v.expando],!!e&&!B(e)},data:function(e,n,r,i){if(!v.acceptData(e))return;var s,o,u=v.expando,a=typeof n=="string",f=e.nodeType,l=f?v.cache:e,c=f?e[u]:e[u]&&u;if((!c||!l[c]||!i&&!l[c].data)&&a&&r===t)return;c||(f?e[u]=c=v.deletedIds.pop()||v.guid++:c=u),l[c]||(l[c]={},f||(l[c].toJSON=v.noop));if(typeof n=="object"||typeof n=="function")i?l[c]=v.extend(l[c],n):l[c].data=v.extend(l[c].data,n);return s=l[c],i||(s.data||(s.data={}),s=s.data),r!==t&&(s[v.camelCase(n)]=r),a?(o=s[n],o==null&&(o=s[v.camelCase(n)])):o=s,o},removeData:function(e,t,n){if(!v.acceptData(e))return;var r,i,s,o=e.nodeType,u=o?v.cache:e,a=o?e[v.expando]:v.expando;if(!u[a])return;if(t){r=n?u[a]:u[a].data;if(r){v.isArray(t)||(t in r?t=[t]:(t=v.camelCase(t),t in r?t=[t]:t=t.split(" ")));for(i=0,s=t.length;i1,null,!1))},removeData:function(e){return this.each(function(){v.removeData(this,e)})}}),v.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=v._data(e,t),n&&(!r||v.isArray(n)?r=v._data(e,t,v.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=v.queue(e,t),r=n.length,i=n.shift(),s=v._queueHooks(e,t),o=function(){v.dequeue(e,t)};i==="inprogress"&&(i=n.shift(),r--),i&&(t==="fx"&&n.unshift("inprogress"),delete s.stop,i.call(e,o,s)),!r&&s&&s.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return v._data(e,n)||v._data(e,n,{empty:v.Callbacks("once memory").add(function(){v.removeData(e,t+"queue",!0),v.removeData(e,n,!0)})})}}),v.fn.extend({queue:function(e,n){var r=2;return typeof e!="string"&&(n=e,e="fx",r--),arguments.length1)},removeAttr:function(e){return this.each(function(){v.removeAttr(this,e)})},prop:function(e,t){return v.access(this,v.prop,e,t,arguments.length>1)},removeProp:function(e){return e=v.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e]}catch(n){}})},addClass:function(e){var t,n,r,i,s,o,u;if(v.isFunction(e))return this.each(function(t){v(this).addClass(e.call(this,t,this.className))});if(e&&typeof e=="string"){t=e.split(y);for(n=0,r=this.length;n=0)r=r.replace(" "+n[s]+" "," ");i.className=e?v.trim(r):""}}}return this},toggleClass:function(e,t){var n=typeof e,r=typeof t=="boolean";return v.isFunction(e)?this.each(function(n){v(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if(n==="string"){var i,s=0,o=v(this),u=t,a=e.split(y);while(i=a[s++])u=r?u:!o.hasClass(i),o[u?"addClass":"removeClass"](i)}else if(n==="undefined"||n==="boolean")this.className&&v._data(this,"__className__",this.className),this.className=this.className||e===!1?"":v._data(this,"__className__")||""})},hasClass:function(e){var t=" "+e+" ",n=0,r=this.length;for(;n=0)return!0;return!1},val:function(e){var n,r,i,s=this[0];if(!arguments.length){if(s)return n=v.valHooks[s.type]||v.valHooks[s.nodeName.toLowerCase()],n&&"get"in n&&(r=n.get(s,"value"))!==t?r:(r=s.value,typeof r=="string"?r.replace(R,""):r==null?"":r);return}return i=v.isFunction(e),this.each(function(r){var s,o=v(this);if(this.nodeType!==1)return;i?s=e.call(this,r,o.val()):s=e,s==null?s="":typeof s=="number"?s+="":v.isArray(s)&&(s=v.map(s,function(e){return e==null?"":e+""})),n=v.valHooks[this.type]||v.valHooks[this.nodeName.toLowerCase()];if(!n||!("set"in n)||n.set(this,s,"value")===t)this.value=s})}}),v.extend({valHooks:{option:{get:function(e){var t=e.attributes.value;return!t||t.specified?e.value:e.text}},select:{get:function(e){var t,n,r=e.options,i=e.selectedIndex,s=e.type==="select-one"||i<0,o=s?null:[],u=s?i+1:r.length,a=i<0?u:s?i:0;for(;a=0}),n.length||(e.selectedIndex=-1),n}}},attrFn:{},attr:function(e,n,r,i){var s,o,u,a=e.nodeType;if(!e||a===3||a===8||a===2)return;if(i&&v.isFunction(v.fn[n]))return v(e)[n](r);if(typeof e.getAttribute=="undefined")return v.prop(e,n,r);u=a!==1||!v.isXMLDoc(e),u&&(n=n.toLowerCase(),o=v.attrHooks[n]||(X.test(n)?F:j));if(r!==t){if(r===null){v.removeAttr(e,n);return}return o&&"set"in o&&u&&(s=o.set(e,r,n))!==t?s:(e.setAttribute(n,r+""),r)}return o&&"get"in o&&u&&(s=o.get(e,n))!==null?s:(s=e.getAttribute(n),s===null?t:s)},removeAttr:function(e,t){var n,r,i,s,o=0;if(t&&e.nodeType===1){r=t.split(y);for(;o=0}})});var $=/^(?:textarea|input|select)$/i,J=/^([^\.]*|)(?:\.(.+)|)$/,K=/(?:^|\s)hover(\.\S+|)\b/,Q=/^key/,G=/^(?:mouse|contextmenu)|click/,Y=/^(?:focusinfocus|focusoutblur)$/,Z=function(e){return v.event.special.hover?e:e.replace(K,"mouseenter$1 mouseleave$1")};v.event={add:function(e,n,r,i,s){var o,u,a,f,l,c,h,p,d,m,g;if(e.nodeType===3||e.nodeType===8||!n||!r||!(o=v._data(e)))return;r.handler&&(d=r,r=d.handler,s=d.selector),r.guid||(r.guid=v.guid++),a=o.events,a||(o.events=a={}),u=o.handle,u||(o.handle=u=function(e){return typeof v=="undefined"||!!e&&v.event.triggered===e.type?t:v.event.dispatch.apply(u.elem,arguments)},u.elem=e),n=v.trim(Z(n)).split(" ");for(f=0;f=0&&(y=y.slice(0,-1),a=!0),y.indexOf(".")>=0&&(b=y.split("."),y=b.shift(),b.sort());if((!s||v.event.customEvent[y])&&!v.event.global[y])return;n=typeof n=="object"?n[v.expando]?n:new v.Event(y,n):new v.Event(y),n.type=y,n.isTrigger=!0,n.exclusive=a,n.namespace=b.join("."),n.namespace_re=n.namespace?new RegExp("(^|\\.)"+b.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,h=y.indexOf(":")<0?"on"+y:"";if(!s){u=v.cache;for(f in u)u[f].events&&u[f].events[y]&&v.event.trigger(n,r,u[f].handle.elem,!0);return}n.result=t,n.target||(n.target=s),r=r!=null?v.makeArray(r):[],r.unshift(n),p=v.event.special[y]||{};if(p.trigger&&p.trigger.apply(s,r)===!1)return;m=[[s,p.bindType||y]];if(!o&&!p.noBubble&&!v.isWindow(s)){g=p.delegateType||y,l=Y.test(g+y)?s:s.parentNode;for(c=s;l;l=l.parentNode)m.push([l,g]),c=l;c===(s.ownerDocument||i)&&m.push([c.defaultView||c.parentWindow||e,g])}for(f=0;f=0:v.find(h,this,null,[s]).length),u[h]&&f.push(c);f.length&&w.push({elem:s,matches:f})}d.length>m&&w.push({elem:this,matches:d.slice(m)});for(r=0;r0?this.on(t,null,e,n):this.trigger(t)},Q.test(t)&&(v.event.fixHooks[t]=v.event.keyHooks),G.test(t)&&(v.event.fixHooks[t]=v.event.mouseHooks)}),function(e,t){function nt(e,t,n,r){n=n||[],t=t||g;var i,s,a,f,l=t.nodeType;if(!e||typeof e!="string")return n;if(l!==1&&l!==9)return[];a=o(t);if(!a&&!r)if(i=R.exec(e))if(f=i[1]){if(l===9){s=t.getElementById(f);if(!s||!s.parentNode)return n;if(s.id===f)return n.push(s),n}else if(t.ownerDocument&&(s=t.ownerDocument.getElementById(f))&&u(t,s)&&s.id===f)return n.push(s),n}else{if(i[2])return S.apply(n,x.call(t.getElementsByTagName(e),0)),n;if((f=i[3])&&Z&&t.getElementsByClassName)return S.apply(n,x.call(t.getElementsByClassName(f),0)),n}return vt(e.replace(j,"$1"),t,n,r,a)}function rt(e){return function(t){var n=t.nodeName.toLowerCase();return n==="input"&&t.type===e}}function it(e){return function(t){var n=t.nodeName.toLowerCase();return(n==="input"||n==="button")&&t.type===e}}function st(e){return N(function(t){return t=+t,N(function(n,r){var i,s=e([],n.length,t),o=s.length;while(o--)n[i=s[o]]&&(n[i]=!(r[i]=n[i]))})})}function ot(e,t,n){if(e===t)return n;var r=e.nextSibling;while(r){if(r===t)return-1;r=r.nextSibling}return 1}function ut(e,t){var n,r,s,o,u,a,f,l=L[d][e+" "];if(l)return t?0:l.slice(0);u=e,a=[],f=i.preFilter;while(u){if(!n||(r=F.exec(u)))r&&(u=u.slice(r[0].length)||u),a.push(s=[]);n=!1;if(r=I.exec(u))s.push(n=new m(r.shift())),u=u.slice(n.length),n.type=r[0].replace(j," ");for(o in i.filter)(r=J[o].exec(u))&&(!f[o]||(r=f[o](r)))&&(s.push(n=new m(r.shift())),u=u.slice(n.length),n.type=o,n.matches=r);if(!n)break}return t?u.length:u?nt.error(e):L(e,a).slice(0)}function at(e,t,r){var i=t.dir,s=r&&t.dir==="parentNode",o=w++;return t.first?function(t,n,r){while(t=t[i])if(s||t.nodeType===1)return e(t,n,r)}:function(t,r,u){if(!u){var a,f=b+" "+o+" ",l=f+n;while(t=t[i])if(s||t.nodeType===1){if((a=t[d])===l)return t.sizset;if(typeof a=="string"&&a.indexOf(f)===0){if(t.sizset)return t}else{t[d]=l;if(e(t,r,u))return t.sizset=!0,t;t.sizset=!1}}}else while(t=t[i])if(s||t.nodeType===1)if(e(t,r,u))return t}}function ft(e){return e.length>1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function lt(e,t,n,r,i){var s,o=[],u=0,a=e.length,f=t!=null;for(;u-1&&(s[f]=!(o[f]=c))}}else g=lt(g===o?g.splice(d,g.length):g),i?i(null,o,g,a):S.apply(o,g)})}function ht(e){var t,n,r,s=e.length,o=i.relative[e[0].type],u=o||i.relative[" "],a=o?1:0,f=at(function(e){return e===t},u,!0),l=at(function(e){return T.call(t,e)>-1},u,!0),h=[function(e,n,r){return!o&&(r||n!==c)||((t=n).nodeType?f(e,n,r):l(e,n,r))}];for(;a1&&ft(h),a>1&&e.slice(0,a-1).join("").replace(j,"$1"),n,a0,s=e.length>0,o=function(u,a,f,l,h){var p,d,v,m=[],y=0,w="0",x=u&&[],T=h!=null,N=c,C=u||s&&i.find.TAG("*",h&&a.parentNode||a),k=b+=N==null?1:Math.E;T&&(c=a!==g&&a,n=o.el);for(;(p=C[w])!=null;w++){if(s&&p){for(d=0;v=e[d];d++)if(v(p,a,f)){l.push(p);break}T&&(b=k,n=++o.el)}r&&((p=!v&&p)&&y--,u&&x.push(p))}y+=w;if(r&&w!==y){for(d=0;v=t[d];d++)v(x,m,a,f);if(u){if(y>0)while(w--)!x[w]&&!m[w]&&(m[w]=E.call(l));m=lt(m)}S.apply(l,m),T&&!u&&m.length>0&&y+t.length>1&&nt.uniqueSort(l)}return T&&(b=k,c=N),x};return o.el=0,r?N(o):o}function dt(e,t,n){var r=0,i=t.length;for(;r2&&(f=u[0]).type==="ID"&&t.nodeType===9&&!s&&i.relative[u[1].type]){t=i.find.ID(f.matches[0].replace($,""),t,s)[0];if(!t)return n;e=e.slice(u.shift().length)}for(o=J.POS.test(e)?-1:u.length-1;o>=0;o--){f=u[o];if(i.relative[l=f.type])break;if(c=i.find[l])if(r=c(f.matches[0].replace($,""),z.test(u[0].type)&&t.parentNode||t,s)){u.splice(o,1),e=r.length&&u.join("");if(!e)return S.apply(n,x.call(r,0)),n;break}}}return a(e,h)(r,t,s,n,z.test(e)),n}function mt(){}var n,r,i,s,o,u,a,f,l,c,h=!0,p="undefined",d=("sizcache"+Math.random()).replace(".",""),m=String,g=e.document,y=g.documentElement,b=0,w=0,E=[].pop,S=[].push,x=[].slice,T=[].indexOf||function(e){var t=0,n=this.length;for(;ti.cacheLength&&delete e[t.shift()],e[n+" "]=r},e)},k=C(),L=C(),A=C(),O="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",_=M.replace("w","w#"),D="([*^$|!~]?=)",P="\\["+O+"*("+M+")"+O+"*(?:"+D+O+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+_+")|)|)"+O+"*\\]",H=":("+M+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:"+P+")|[^:]|\\\\.)*|.*))\\)|)",B=":(even|odd|eq|gt|lt|nth|first|last)(?:\\("+O+"*((?:-\\d)?\\d*)"+O+"*\\)|)(?=[^-]|$)",j=new RegExp("^"+O+"+|((?:^|[^\\\\])(?:\\\\.)*)"+O+"+$","g"),F=new RegExp("^"+O+"*,"+O+"*"),I=new RegExp("^"+O+"*([\\x20\\t\\r\\n\\f>+~])"+O+"*"),q=new RegExp(H),R=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,U=/^:not/,z=/[\x20\t\r\n\f]*[+~]/,W=/:not\($/,X=/h\d/i,V=/input|select|textarea|button/i,$=/\\(?!\\)/g,J={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),NAME:new RegExp("^\\[name=['\"]?("+M+")['\"]?\\]"),TAG:new RegExp("^("+M.replace("w","w*")+")"),ATTR:new RegExp("^"+P),PSEUDO:new RegExp("^"+H),POS:new RegExp(B,"i"),CHILD:new RegExp("^:(only|nth|first|last)-child(?:\\("+O+"*(even|odd|(([+-]|)(\\d*)n|)"+O+"*(?:([+-]|)"+O+"*(\\d+)|))"+O+"*\\)|)","i"),needsContext:new RegExp("^"+O+"*[>+~]|"+B,"i")},K=function(e){var t=g.createElement("div");try{return e(t)}catch(n){return!1}finally{t=null}},Q=K(function(e){return e.appendChild(g.createComment("")),!e.getElementsByTagName("*").length}),G=K(function(e){return e.innerHTML="",e.firstChild&&typeof e.firstChild.getAttribute!==p&&e.firstChild.getAttribute("href")==="#"}),Y=K(function(e){e.innerHTML="";var t=typeof e.lastChild.getAttribute("multiple");return t!=="boolean"&&t!=="string"}),Z=K(function(e){return e.innerHTML="",!e.getElementsByClassName||!e.getElementsByClassName("e").length?!1:(e.lastChild.className="e",e.getElementsByClassName("e").length===2)}),et=K(function(e){e.id=d+0,e.innerHTML="
",y.insertBefore(e,y.firstChild);var t=g.getElementsByName&&g.getElementsByName(d).length===2+g.getElementsByName(d+0).length;return r=!g.getElementById(d),y.removeChild(e),t});try{x.call(y.childNodes,0)[0].nodeType}catch(tt){x=function(e){var t,n=[];for(;t=this[e];e++)n.push(t);return n}}nt.matches=function(e,t){return nt(e,null,null,t)},nt.matchesSelector=function(e,t){return nt(t,null,null,[e]).length>0},s=nt.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(i===1||i===9||i===11){if(typeof e.textContent=="string")return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=s(e)}else if(i===3||i===4)return e.nodeValue}else for(;t=e[r];r++)n+=s(t);return n},o=nt.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?t.nodeName!=="HTML":!1},u=nt.contains=y.contains?function(e,t){var n=e.nodeType===9?e.documentElement:e,r=t&&t.parentNode;return e===r||!!(r&&r.nodeType===1&&n.contains&&n.contains(r))}:y.compareDocumentPosition?function(e,t){return t&&!!(e.compareDocumentPosition(t)&16)}:function(e,t){while(t=t.parentNode)if(t===e)return!0;return!1},nt.attr=function(e,t){var n,r=o(e);return r||(t=t.toLowerCase()),(n=i.attrHandle[t])?n(e):r||Y?e.getAttribute(t):(n=e.getAttributeNode(t),n?typeof e[t]=="boolean"?e[t]?t:null:n.specified?n.value:null:null)},i=nt.selectors={cacheLength:50,createPseudo:N,match:J,attrHandle:G?{}:{href:function(e){return e.getAttribute("href",2)},type:function(e){return e.getAttribute("type")}},find:{ID:r?function(e,t,n){if(typeof t.getElementById!==p&&!n){var r=t.getElementById(e);return r&&r.parentNode?[r]:[]}}:function(e,n,r){if(typeof n.getElementById!==p&&!r){var i=n.getElementById(e);return i?i.id===e||typeof i.getAttributeNode!==p&&i.getAttributeNode("id").value===e?[i]:t:[]}},TAG:Q?function(e,t){if(typeof t.getElementsByTagName!==p)return t.getElementsByTagName(e)}:function(e,t){var n=t.getElementsByTagName(e);if(e==="*"){var r,i=[],s=0;for(;r=n[s];s++)r.nodeType===1&&i.push(r);return i}return n},NAME:et&&function(e,t){if(typeof t.getElementsByName!==p)return t.getElementsByName(name)},CLASS:Z&&function(e,t,n){if(typeof t.getElementsByClassName!==p&&!n)return t.getElementsByClassName(e)}},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace($,""),e[3]=(e[4]||e[5]||"").replace($,""),e[2]==="~="&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),e[1]==="nth"?(e[2]||nt.error(e[0]),e[3]=+(e[3]?e[4]+(e[5]||1):2*(e[2]==="even"||e[2]==="odd")),e[4]=+(e[6]+e[7]||e[2]==="odd")):e[2]&&nt.error(e[0]),e},PSEUDO:function(e){var t,n;if(J.CHILD.test(e[0]))return null;if(e[3])e[2]=e[3];else if(t=e[4])q.test(t)&&(n=ut(t,!0))&&(n=t.indexOf(")",t.length-n)-t.length)&&(t=t.slice(0,n),e[0]=e[0].slice(0,n)),e[2]=t;return e.slice(0,3)}},filter:{ID:r?function(e){return e=e.replace($,""),function(t){return t.getAttribute("id")===e}}:function(e){return e=e.replace($,""),function(t){var n=typeof t.getAttributeNode!==p&&t.getAttributeNode("id");return n&&n.value===e}},TAG:function(e){return e==="*"?function(){return!0}:(e=e.replace($,"").toLowerCase(),function(t){return t.nodeName&&t.nodeName.toLowerCase()===e})},CLASS:function(e){var t=k[d][e+" "];return t||(t=new RegExp("(^|"+O+")"+e+"("+O+"|$)"))&&k(e,function(e){return t.test(e.className||typeof e.getAttribute!==p&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r,i){var s=nt.attr(r,e);return s==null?t==="!=":t?(s+="",t==="="?s===n:t==="!="?s!==n:t==="^="?n&&s.indexOf(n)===0:t==="*="?n&&s.indexOf(n)>-1:t==="$="?n&&s.substr(s.length-n.length)===n:t==="~="?(" "+s+" ").indexOf(n)>-1:t==="|="?s===n||s.substr(0,n.length+1)===n+"-":!1):!0}},CHILD:function(e,t,n,r){return e==="nth"?function(e){var t,i,s=e.parentNode;if(n===1&&r===0)return!0;if(s){i=0;for(t=s.firstChild;t;t=t.nextSibling)if(t.nodeType===1){i++;if(e===t)break}}return i-=r,i===n||i%n===0&&i/n>=0}:function(t){var n=t;switch(e){case"only":case"first":while(n=n.previousSibling)if(n.nodeType===1)return!1;if(e==="first")return!0;n=t;case"last":while(n=n.nextSibling)if(n.nodeType===1)return!1;return!0}}},PSEUDO:function(e,t){var n,r=i.pseudos[e]||i.setFilters[e.toLowerCase()]||nt.error("unsupported pseudo: "+e);return r[d]?r(t):r.length>1?(n=[e,e,"",t],i.setFilters.hasOwnProperty(e.toLowerCase())?N(function(e,n){var i,s=r(e,t),o=s.length;while(o--)i=T.call(e,s[o]),e[i]=!(n[i]=s[o])}):function(e){return r(e,0,n)}):r}},pseudos:{not:N(function(e){var t=[],n=[],r=a(e.replace(j,"$1"));return r[d]?N(function(e,t,n,i){var s,o=r(e,null,i,[]),u=e.length;while(u--)if(s=o[u])e[u]=!(t[u]=s)}):function(e,i,s){return t[0]=e,r(t,null,s,n),!n.pop()}}),has:N(function(e){return function(t){return nt(e,t).length>0}}),contains:N(function(e){return function(t){return(t.textContent||t.innerText||s(t)).indexOf(e)>-1}}),enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return t==="input"&&!!e.checked||t==="option"&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},parent:function(e){return!i.pseudos.empty(e)},empty:function(e){var t;e=e.firstChild;while(e){if(e.nodeName>"@"||(t=e.nodeType)===3||t===4)return!1;e=e.nextSibling}return!0},header:function(e){return X.test(e.nodeName)},text:function(e){var t,n;return e.nodeName.toLowerCase()==="input"&&(t=e.type)==="text"&&((n=e.getAttribute("type"))==null||n.toLowerCase()===t)},radio:rt("radio"),checkbox:rt("checkbox"),file:rt("file"),password:rt("password"),image:rt("image"),submit:it("submit"),reset:it("reset"),button:function(e){var t=e.nodeName.toLowerCase();return t==="input"&&e.type==="button"||t==="button"},input:function(e){return V.test(e.nodeName)},focus:function(e){var t=e.ownerDocument;return e===t.activeElement&&(!t.hasFocus||t.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},active:function(e){return e===e.ownerDocument.activeElement},first:st(function(){return[0]}),last:st(function(e,t){return[t-1]}),eq:st(function(e,t,n){return[n<0?n+t:n]}),even:st(function(e,t){for(var n=0;n=0;)e.push(r);return e}),gt:st(function(e,t,n){for(var r=n<0?n+t:n;++r",e.querySelectorAll("[selected]").length||i.push("\\["+O+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),e.querySelectorAll(":checked").length||i.push(":checked")}),K(function(e){e.innerHTML="

",e.querySelectorAll("[test^='']").length&&i.push("[*^$]="+O+"*(?:\"\"|'')"),e.innerHTML="",e.querySelectorAll(":enabled").length||i.push(":enabled",":disabled")}),i=new RegExp(i.join("|")),vt=function(e,r,s,o,u){if(!o&&!u&&!i.test(e)){var a,f,l=!0,c=d,h=r,p=r.nodeType===9&&e;if(r.nodeType===1&&r.nodeName.toLowerCase()!=="object"){a=ut(e),(l=r.getAttribute("id"))?c=l.replace(n,"\\$&"):r.setAttribute("id",c),c="[id='"+c+"'] ",f=a.length;while(f--)a[f]=c+a[f].join("");h=z.test(e)&&r.parentNode||r,p=a.join(",")}if(p)try{return S.apply(s,x.call(h.querySelectorAll(p),0)),s}catch(v){}finally{l||r.removeAttribute("id")}}return t(e,r,s,o,u)},u&&(K(function(t){e=u.call(t,"div");try{u.call(t,"[test!='']:sizzle"),s.push("!=",H)}catch(n){}}),s=new RegExp(s.join("|")),nt.matchesSelector=function(t,n){n=n.replace(r,"='$1']");if(!o(t)&&!s.test(n)&&!i.test(n))try{var a=u.call(t,n);if(a||e||t.document&&t.document.nodeType!==11)return a}catch(f){}return nt(n,null,null,[t]).length>0})}(),i.pseudos.nth=i.pseudos.eq,i.filters=mt.prototype=i.pseudos,i.setFilters=new mt,nt.attr=v.attr,v.find=nt,v.expr=nt.selectors,v.expr[":"]=v.expr.pseudos,v.unique=nt.uniqueSort,v.text=nt.getText,v.isXMLDoc=nt.isXML,v.contains=nt.contains}(e);var nt=/Until$/,rt=/^(?:parents|prev(?:Until|All))/,it=/^.[^:#\[\.,]*$/,st=v.expr.match.needsContext,ot={children:!0,contents:!0,next:!0,prev:!0};v.fn.extend({find:function(e){var t,n,r,i,s,o,u=this;if(typeof e!="string")return v(e).filter(function(){for(t=0,n=u.length;t0)for(i=r;i=0:v.filter(e,this).length>0:this.filter(e).length>0)},closest:function(e,t){var n,r=0,i=this.length,s=[],o=st.test(e)||typeof e!="string"?v(e,t||this.context):0;for(;r-1:v.find.matchesSelector(n,e)){s.push(n);break}n=n.parentNode}}return s=s.length>1?v.unique(s):s,this.pushStack(s,"closest",e)},index:function(e){return e?typeof e=="string"?v.inArray(this[0],v(e)):v.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.prevAll().length:-1},add:function(e,t){var n=typeof e=="string"?v(e,t):v.makeArray(e&&e.nodeType?[e]:e),r=v.merge(this.get(),n);return this.pushStack(ut(n[0])||ut(r[0])?r:v.unique(r))},addBack:function(e){return this.add(e==null?this.prevObject:this.prevObject.filter(e))}}),v.fn.andSelf=v.fn.addBack,v.each({parent:function(e){var t=e.parentNode;return t&&t.nodeType!==11?t:null},parents:function(e){return v.dir(e,"parentNode")},parentsUntil:function(e,t,n){return v.dir(e,"parentNode",n)},next:function(e){return at(e,"nextSibling")},prev:function(e){return at(e,"previousSibling")},nextAll:function(e){return v.dir(e,"nextSibling")},prevAll:function(e){return v.dir(e,"previousSibling")},nextUntil:function(e,t,n){return v.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return v.dir(e,"previousSibling",n)},siblings:function(e){return v.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return v.sibling(e.firstChild)},contents:function(e){return v.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:v.merge([],e.childNodes)}},function(e,t){v.fn[e]=function(n,r){var i=v.map(this,t,n);return nt.test(e)||(r=n),r&&typeof r=="string"&&(i=v.filter(r,i)),i=this.length>1&&!ot[e]?v.unique(i):i,this.length>1&&rt.test(e)&&(i=i.reverse()),this.pushStack(i,e,l.call(arguments).join(","))}}),v.extend({filter:function(e,t,n){return n&&(e=":not("+e+")"),t.length===1?v.find.matchesSelector(t[0],e)?[t[0]]:[]:v.find.matches(e,t)},dir:function(e,n,r){var i=[],s=e[n];while(s&&s.nodeType!==9&&(r===t||s.nodeType!==1||!v(s).is(r)))s.nodeType===1&&i.push(s),s=s[n];return i},sibling:function(e,t){var n=[];for(;e;e=e.nextSibling)e.nodeType===1&&e!==t&&n.push(e);return n}});var ct="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ht=/ jQuery\d+="(?:null|\d+)"/g,pt=/^\s+/,dt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,vt=/<([\w:]+)/,mt=/]","i"),Et=/^(?:checkbox|radio)$/,St=/checked\s*(?:[^=]|=\s*.checked.)/i,xt=/\/(java|ecma)script/i,Tt=/^\s*\s*$/g,Nt={option:[1,""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},Ct=lt(i),kt=Ct.appendChild(i.createElement("div"));Nt.optgroup=Nt.option,Nt.tbody=Nt.tfoot=Nt.colgroup=Nt.caption=Nt.thead,Nt.th=Nt.td,v.support.htmlSerialize||(Nt._default=[1,"X
","
"]),v.fn.extend({text:function(e){return v.access(this,function(e){return e===t?v.text(this):this.empty().append((this[0]&&this[0].ownerDocument||i).createTextNode(e))},null,e,arguments.length)},wrapAll:function(e){if(v.isFunction(e))return this.each(function(t){v(this).wrapAll(e.call(this,t))});if(this[0]){var t=v(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstChild&&e.firstChild.nodeType===1)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return v.isFunction(e)?this.each(function(t){v(this).wrapInner(e.call(this,t))}):this.each(function(){var t=v(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=v.isFunction(e);return this.each(function(n){v(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){v.nodeName(this,"body")||v(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(e){(this.nodeType===1||this.nodeType===11)&&this.appendChild(e)})},prepend:function(){return this.domManip(arguments,!0,function(e){(this.nodeType===1||this.nodeType===11)&&this.insertBefore(e,this.firstChild)})},before:function(){if(!ut(this[0]))return this.domManip(arguments,!1,function(e){this.parentNode.insertBefore(e,this)});if(arguments.length){var e=v.clean(arguments);return this.pushStack(v.merge(e,this),"before",this.selector)}},after:function(){if(!ut(this[0]))return this.domManip(arguments,!1,function(e){this.parentNode.insertBefore(e,this.nextSibling)});if(arguments.length){var e=v.clean(arguments);return this.pushStack(v.merge(this,e),"after",this.selector)}},remove:function(e,t){var n,r=0;for(;(n=this[r])!=null;r++)if(!e||v.filter(e,[n]).length)!t&&n.nodeType===1&&(v.cleanData(n.getElementsByTagName("*")),v.cleanData([n])),n.parentNode&&n.parentNode.removeChild(n);return this},empty:function(){var e,t=0;for(;(e=this[t])!=null;t++){e.nodeType===1&&v.cleanData(e.getElementsByTagName("*"));while(e.firstChild)e.removeChild(e.firstChild)}return this},clone:function(e,t){return e=e==null?!1:e,t=t==null?e:t,this.map(function(){return v.clone(this,e,t)})},html:function(e){return v.access(this,function(e){var n=this[0]||{},r=0,i=this.length;if(e===t)return n.nodeType===1?n.innerHTML.replace(ht,""):t;if(typeof e=="string"&&!yt.test(e)&&(v.support.htmlSerialize||!wt.test(e))&&(v.support.leadingWhitespace||!pt.test(e))&&!Nt[(vt.exec(e)||["",""])[1].toLowerCase()]){e=e.replace(dt,"<$1>");try{for(;r1&&typeof f=="string"&&St.test(f))return this.each(function(){v(this).domManip(e,n,r)});if(v.isFunction(f))return this.each(function(i){var s=v(this);e[0]=f.call(this,i,n?s.html():t),s.domManip(e,n,r)});if(this[0]){i=v.buildFragment(e,this,l),o=i.fragment,s=o.firstChild,o.childNodes.length===1&&(o=s);if(s){n=n&&v.nodeName(s,"tr");for(u=i.cacheable||c-1;a0?this.clone(!0):this).get(),v(o[i])[t](r),s=s.concat(r);return this.pushStack(s,e,o.selector)}}),v.extend({clone:function(e,t,n){var r,i,s,o;v.support.html5Clone||v.isXMLDoc(e)||!wt.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(kt.innerHTML=e.outerHTML,kt.removeChild(o=kt.firstChild));if((!v.support.noCloneEvent||!v.support.noCloneChecked)&&(e.nodeType===1||e.nodeType===11)&&!v.isXMLDoc(e)){Ot(e,o),r=Mt(e),i=Mt(o);for(s=0;r[s];++s)i[s]&&Ot(r[s],i[s])}if(t){At(e,o);if(n){r=Mt(e),i=Mt(o);for(s=0;r[s];++s)At(r[s],i[s])}}return r=i=null,o},clean:function(e,t,n,r){var s,o,u,a,f,l,c,h,p,d,m,g,y=t===i&&Ct,b=[];if(!t||typeof t.createDocumentFragment=="undefined")t=i;for(s=0;(u=e[s])!=null;s++){typeof u=="number"&&(u+="");if(!u)continue;if(typeof u=="string")if(!gt.test(u))u=t.createTextNode(u);else{y=y||lt(t),c=t.createElement("div"),y.appendChild(c),u=u.replace(dt,"<$1>"),a=(vt.exec(u)||["",""])[1].toLowerCase(),f=Nt[a]||Nt._default,l=f[0],c.innerHTML=f[1]+u+f[2];while(l--)c=c.lastChild;if(!v.support.tbody){h=mt.test(u),p=a==="table"&&!h?c.firstChild&&c.firstChild.childNodes:f[1]===""&&!h?c.childNodes:[];for(o=p.length-1;o>=0;--o)v.nodeName(p[o],"tbody")&&!p[o].childNodes.length&&p[o].parentNode.removeChild(p[o])}!v.support.leadingWhitespace&&pt.test(u)&&c.insertBefore(t.createTextNode(pt.exec(u)[0]),c.firstChild),u=c.childNodes,c.parentNode.removeChild(c)}u.nodeType?b.push(u):v.merge(b,u)}c&&(u=c=y=null);if(!v.support.appendChecked)for(s=0;(u=b[s])!=null;s++)v.nodeName(u,"input")?_t(u):typeof u.getElementsByTagName!="undefined"&&v.grep(u.getElementsByTagName("input"),_t);if(n){m=function(e){if(!e.type||xt.test(e.type))return r?r.push(e.parentNode?e.parentNode.removeChild(e):e):n.appendChild(e)};for(s=0;(u=b[s])!=null;s++)if(!v.nodeName(u,"script")||!m(u))n.appendChild(u),typeof u.getElementsByTagName!="undefined"&&(g=v.grep(v.merge([],u.getElementsByTagName("script")),m),b.splice.apply(b,[s+1,0].concat(g)),s+=g.length)}return b},cleanData:function(e,t){var n,r,i,s,o=0,u=v.expando,a=v.cache,f=v.support.deleteExpando,l=v.event.special;for(;(i=e[o])!=null;o++)if(t||v.acceptData(i)){r=i[u],n=r&&a[r];if(n){if(n.events)for(s in n.events)l[s]?v.event.remove(i,s):v.removeEvent(i,s,n.handle);a[r]&&(delete a[r],f?delete i[u]:i.removeAttribute?i.removeAttribute(u):i[u]=null,v.deletedIds.push(r))}}}}),function(){var e,t;v.uaMatch=function(e){e=e.toLowerCase();var t=/(chrome)[ \/]([\w.]+)/.exec(e)||/(webkit)[ \/]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(e)||/(msie) ([\w.]+)/.exec(e)||e.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(e)||[];return{browser:t[1]||"",version:t[2]||"0"}},e=v.uaMatch(o.userAgent),t={},e.browser&&(t[e.browser]=!0,t.version=e.version),t.chrome?t.webkit=!0:t.webkit&&(t.safari=!0),v.browser=t,v.sub=function(){function e(t,n){return new e.fn.init(t,n)}v.extend(!0,e,this),e.superclass=this,e.fn=e.prototype=this(),e.fn.constructor=e,e.sub=this.sub,e.fn.init=function(r,i){return i&&i instanceof v&&!(i instanceof e)&&(i=e(i)),v.fn.init.call(this,r,i,t)},e.fn.init.prototype=e.fn;var t=e(i);return e}}();var Dt,Pt,Ht,Bt=/alpha\([^)]*\)/i,jt=/opacity=([^)]*)/,Ft=/^(top|right|bottom|left)$/,It=/^(none|table(?!-c[ea]).+)/,qt=/^margin/,Rt=new RegExp("^("+m+")(.*)$","i"),Ut=new RegExp("^("+m+")(?!px)[a-z%]+$","i"),zt=new RegExp("^([-+])=("+m+")","i"),Wt={BODY:"block"},Xt={position:"absolute",visibility:"hidden",display:"block"},Vt={letterSpacing:0,fontWeight:400},$t=["Top","Right","Bottom","Left"],Jt=["Webkit","O","Moz","ms"],Kt=v.fn.toggle;v.fn.extend({css:function(e,n){return v.access(this,function(e,n,r){return r!==t?v.style(e,n,r):v.css(e,n)},e,n,arguments.length>1)},show:function(){return Yt(this,!0)},hide:function(){return Yt(this)},toggle:function(e,t){var n=typeof e=="boolean";return v.isFunction(e)&&v.isFunction(t)?Kt.apply(this,arguments):this.each(function(){(n?e:Gt(this))?v(this).show():v(this).hide()})}}),v.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Dt(e,"opacity");return n===""?"1":n}}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":v.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(!e||e.nodeType===3||e.nodeType===8||!e.style)return;var s,o,u,a=v.camelCase(n),f=e.style;n=v.cssProps[a]||(v.cssProps[a]=Qt(f,a)),u=v.cssHooks[n]||v.cssHooks[a];if(r===t)return u&&"get"in u&&(s=u.get(e,!1,i))!==t?s:f[n];o=typeof r,o==="string"&&(s=zt.exec(r))&&(r=(s[1]+1)*s[2]+parseFloat(v.css(e,n)),o="number");if(r==null||o==="number"&&isNaN(r))return;o==="number"&&!v.cssNumber[a]&&(r+="px");if(!u||!("set"in u)||(r=u.set(e,r,i))!==t)try{f[n]=r}catch(l){}},css:function(e,n,r,i){var s,o,u,a=v.camelCase(n);return n=v.cssProps[a]||(v.cssProps[a]=Qt(e.style,a)),u=v.cssHooks[n]||v.cssHooks[a],u&&"get"in u&&(s=u.get(e,!0,i)),s===t&&(s=Dt(e,n)),s==="normal"&&n in Vt&&(s=Vt[n]),r||i!==t?(o=parseFloat(s),r||v.isNumeric(o)?o||0:s):s},swap:function(e,t,n){var r,i,s={};for(i in t)s[i]=e.style[i],e.style[i]=t[i];r=n.call(e);for(i in t)e.style[i]=s[i];return r}}),e.getComputedStyle?Dt=function(t,n){var r,i,s,o,u=e.getComputedStyle(t,null),a=t.style;return u&&(r=u.getPropertyValue(n)||u[n],r===""&&!v.contains(t.ownerDocument,t)&&(r=v.style(t,n)),Ut.test(r)&&qt.test(n)&&(i=a.width,s=a.minWidth,o=a.maxWidth,a.minWidth=a.maxWidth=a.width=r,r=u.width,a.width=i,a.minWidth=s,a.maxWidth=o)),r}:i.documentElement.currentStyle&&(Dt=function(e,t){var n,r,i=e.currentStyle&&e.currentStyle[t],s=e.style;return i==null&&s&&s[t]&&(i=s[t]),Ut.test(i)&&!Ft.test(t)&&(n=s.left,r=e.runtimeStyle&&e.runtimeStyle.left,r&&(e.runtimeStyle.left=e.currentStyle.left),s.left=t==="fontSize"?"1em":i,i=s.pixelLeft+"px",s.left=n,r&&(e.runtimeStyle.left=r)),i===""?"auto":i}),v.each(["height","width"],function(e,t){v.cssHooks[t]={get:function(e,n,r){if(n)return e.offsetWidth===0&&It.test(Dt(e,"display"))?v.swap(e,Xt,function(){return tn(e,t,r)}):tn(e,t,r)},set:function(e,n,r){return Zt(e,n,r?en(e,t,r,v.support.boxSizing&&v.css(e,"boxSizing")==="border-box"):0)}}}),v.support.opacity||(v.cssHooks.opacity={get:function(e,t){return jt.test((t&&e.currentStyle?e.currentStyle.filter:e.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":t?"1":""},set:function(e,t){var n=e.style,r=e.currentStyle,i=v.isNumeric(t)?"alpha(opacity="+t*100+")":"",s=r&&r.filter||n.filter||"";n.zoom=1;if(t>=1&&v.trim(s.replace(Bt,""))===""&&n.removeAttribute){n.removeAttribute("filter");if(r&&!r.filter)return}n.filter=Bt.test(s)?s.replace(Bt,i):s+" "+i}}),v(function(){v.support.reliableMarginRight||(v.cssHooks.marginRight={get:function(e,t){return v.swap(e,{display:"inline-block"},function(){if(t)return Dt(e,"marginRight")})}}),!v.support.pixelPosition&&v.fn.position&&v.each(["top","left"],function(e,t){v.cssHooks[t]={get:function(e,n){if(n){var r=Dt(e,t);return Ut.test(r)?v(e).position()[t]+"px":r}}}})}),v.expr&&v.expr.filters&&(v.expr.filters.hidden=function(e){return e.offsetWidth===0&&e.offsetHeight===0||!v.support.reliableHiddenOffsets&&(e.style&&e.style.display||Dt(e,"display"))==="none"},v.expr.filters.visible=function(e){return!v.expr.filters.hidden(e)}),v.each({margin:"",padding:"",border:"Width"},function(e,t){v.cssHooks[e+t]={expand:function(n){var r,i=typeof n=="string"?n.split(" "):[n],s={};for(r=0;r<4;r++)s[e+$t[r]+t]=i[r]||i[r-2]||i[0];return s}},qt.test(e)||(v.cssHooks[e+t].set=Zt)});var rn=/%20/g,sn=/\[\]$/,on=/\r?\n/g,un=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,an=/^(?:select|textarea)/i;v.fn.extend({serialize:function(){return v.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?v.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||an.test(this.nodeName)||un.test(this.type))}).map(function(e,t){var n=v(this).val();return n==null?null:v.isArray(n)?v.map(n,function(e,n){return{name:t.name,value:e.replace(on,"\r\n")}}):{name:t.name,value:n.replace(on,"\r\n")}}).get()}}),v.param=function(e,n){var r,i=[],s=function(e,t){t=v.isFunction(t)?t():t==null?"":t,i[i.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};n===t&&(n=v.ajaxSettings&&v.ajaxSettings.traditional);if(v.isArray(e)||e.jquery&&!v.isPlainObject(e))v.each(e,function(){s(this.name,this.value)});else for(r in e)fn(r,e[r],n,s);return i.join("&").replace(rn,"+")};var ln,cn,hn=/#.*$/,pn=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,dn=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,vn=/^(?:GET|HEAD)$/,mn=/^\/\//,gn=/\?/,yn=/)<[^<]*)*<\/script>/gi,bn=/([?&])_=[^&]*/,wn=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,En=v.fn.load,Sn={},xn={},Tn=["*/"]+["*"];try{cn=s.href}catch(Nn){cn=i.createElement("a"),cn.href="",cn=cn.href}ln=wn.exec(cn.toLowerCase())||[],v.fn.load=function(e,n,r){if(typeof e!="string"&&En)return En.apply(this,arguments);if(!this.length)return this;var i,s,o,u=this,a=e.indexOf(" ");return a>=0&&(i=e.slice(a,e.length),e=e.slice(0,a)),v.isFunction(n)?(r=n,n=t):n&&typeof n=="object"&&(s="POST"),v.ajax({url:e,type:s,dataType:"html",data:n,complete:function(e,t){r&&u.each(r,o||[e.responseText,t,e])}}).done(function(e){o=arguments,u.html(i?v("
").append(e.replace(yn,"")).find(i):e)}),this},v.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,t){v.fn[t]=function(e){return this.on(t,e)}}),v.each(["get","post"],function(e,n){v[n]=function(e,r,i,s){return v.isFunction(r)&&(s=s||i,i=r,r=t),v.ajax({type:n,url:e,data:r,success:i,dataType:s})}}),v.extend({getScript:function(e,n){return v.get(e,t,n,"script")},getJSON:function(e,t,n){return v.get(e,t,n,"json")},ajaxSetup:function(e,t){return t?Ln(e,v.ajaxSettings):(t=e,e=v.ajaxSettings),Ln(e,t),e},ajaxSettings:{url:cn,isLocal:dn.test(ln[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":Tn},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":e.String,"text html":!0,"text json":v.parseJSON,"text xml":v.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:Cn(Sn),ajaxTransport:Cn(xn),ajax:function(e,n){function T(e,n,s,a){var l,y,b,w,S,T=n;if(E===2)return;E=2,u&&clearTimeout(u),o=t,i=a||"",x.readyState=e>0?4:0,s&&(w=An(c,x,s));if(e>=200&&e<300||e===304)c.ifModified&&(S=x.getResponseHeader("Last-Modified"),S&&(v.lastModified[r]=S),S=x.getResponseHeader("Etag"),S&&(v.etag[r]=S)),e===304?(T="notmodified",l=!0):(l=On(c,w),T=l.state,y=l.data,b=l.error,l=!b);else{b=T;if(!T||e)T="error",e<0&&(e=0)}x.status=e,x.statusText=(n||T)+"",l?d.resolveWith(h,[y,T,x]):d.rejectWith(h,[x,T,b]),x.statusCode(g),g=t,f&&p.trigger("ajax"+(l?"Success":"Error"),[x,c,l?y:b]),m.fireWith(h,[x,T]),f&&(p.trigger("ajaxComplete",[x,c]),--v.active||v.event.trigger("ajaxStop"))}typeof e=="object"&&(n=e,e=t),n=n||{};var r,i,s,o,u,a,f,l,c=v.ajaxSetup({},n),h=c.context||c,p=h!==c&&(h.nodeType||h instanceof v)?v(h):v.event,d=v.Deferred(),m=v.Callbacks("once memory"),g=c.statusCode||{},b={},w={},E=0,S="canceled",x={readyState:0,setRequestHeader:function(e,t){if(!E){var n=e.toLowerCase();e=w[n]=w[n]||e,b[e]=t}return this},getAllResponseHeaders:function(){return E===2?i:null},getResponseHeader:function(e){var n;if(E===2){if(!s){s={};while(n=pn.exec(i))s[n[1].toLowerCase()]=n[2]}n=s[e.toLowerCase()]}return n===t?null:n},overrideMimeType:function(e){return E||(c.mimeType=e),this},abort:function(e){return e=e||S,o&&o.abort(e),T(0,e),this}};d.promise(x),x.success=x.done,x.error=x.fail,x.complete=m.add,x.statusCode=function(e){if(e){var t;if(E<2)for(t in e)g[t]=[g[t],e[t]];else t=e[x.status],x.always(t)}return this},c.url=((e||c.url)+"").replace(hn,"").replace(mn,ln[1]+"//"),c.dataTypes=v.trim(c.dataType||"*").toLowerCase().split(y),c.crossDomain==null&&(a=wn.exec(c.url.toLowerCase()),c.crossDomain=!(!a||a[1]===ln[1]&&a[2]===ln[2]&&(a[3]||(a[1]==="http:"?80:443))==(ln[3]||(ln[1]==="http:"?80:443)))),c.data&&c.processData&&typeof c.data!="string"&&(c.data=v.param(c.data,c.traditional)),kn(Sn,c,n,x);if(E===2)return x;f=c.global,c.type=c.type.toUpperCase(),c.hasContent=!vn.test(c.type),f&&v.active++===0&&v.event.trigger("ajaxStart");if(!c.hasContent){c.data&&(c.url+=(gn.test(c.url)?"&":"?")+c.data,delete c.data),r=c.url;if(c.cache===!1){var N=v.now(),C=c.url.replace(bn,"$1_="+N);c.url=C+(C===c.url?(gn.test(c.url)?"&":"?")+"_="+N:"")}}(c.data&&c.hasContent&&c.contentType!==!1||n.contentType)&&x.setRequestHeader("Content-Type",c.contentType),c.ifModified&&(r=r||c.url,v.lastModified[r]&&x.setRequestHeader("If-Modified-Since",v.lastModified[r]),v.etag[r]&&x.setRequestHeader("If-None-Match",v.etag[r])),x.setRequestHeader("Accept",c.dataTypes[0]&&c.accepts[c.dataTypes[0]]?c.accepts[c.dataTypes[0]]+(c.dataTypes[0]!=="*"?", "+Tn+"; q=0.01":""):c.accepts["*"]);for(l in c.headers)x.setRequestHeader(l,c.headers[l]);if(!c.beforeSend||c.beforeSend.call(h,x,c)!==!1&&E!==2){S="abort";for(l in{success:1,error:1,complete:1})x[l](c[l]);o=kn(xn,c,n,x);if(!o)T(-1,"No Transport");else{x.readyState=1,f&&p.trigger("ajaxSend",[x,c]),c.async&&c.timeout>0&&(u=setTimeout(function(){x.abort("timeout")},c.timeout));try{E=1,o.send(b,T)}catch(k){if(!(E<2))throw k;T(-1,k)}}return x}return x.abort()},active:0,lastModified:{},etag:{}});var Mn=[],_n=/\?/,Dn=/(=)\?(?=&|$)|\?\?/,Pn=v.now();v.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Mn.pop()||v.expando+"_"+Pn++;return this[e]=!0,e}}),v.ajaxPrefilter("json jsonp",function(n,r,i){var s,o,u,a=n.data,f=n.url,l=n.jsonp!==!1,c=l&&Dn.test(f),h=l&&!c&&typeof a=="string"&&!(n.contentType||"").indexOf("application/x-www-form-urlencoded")&&Dn.test(a);if(n.dataTypes[0]==="jsonp"||c||h)return s=n.jsonpCallback=v.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,o=e[s],c?n.url=f.replace(Dn,"$1"+s):h?n.data=a.replace(Dn,"$1"+s):l&&(n.url+=(_n.test(f)?"&":"?")+n.jsonp+"="+s),n.converters["script json"]=function(){return u||v.error(s+" was not called"),u[0]},n.dataTypes[0]="json",e[s]=function(){u=arguments},i.always(function(){e[s]=o,n[s]&&(n.jsonpCallback=r.jsonpCallback,Mn.push(s)),u&&v.isFunction(o)&&o(u[0]),u=o=t}),"script"}),v.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(e){return v.globalEval(e),e}}}),v.ajaxPrefilter("script",function(e){e.cache===t&&(e.cache=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),v.ajaxTransport("script",function(e){if(e.crossDomain){var n,r=i.head||i.getElementsByTagName("head")[0]||i.documentElement;return{send:function(s,o){n=i.createElement("script"),n.async="async",e.scriptCharset&&(n.charset=e.scriptCharset),n.src=e.url,n.onload=n.onreadystatechange=function(e,i){if(i||!n.readyState||/loaded|complete/.test(n.readyState))n.onload=n.onreadystatechange=null,r&&n.parentNode&&r.removeChild(n),n=t,i||o(200,"success")},r.insertBefore(n,r.firstChild)},abort:function(){n&&n.onload(0,1)}}}});var Hn,Bn=e.ActiveXObject?function(){for(var e in Hn)Hn[e](0,1)}:!1,jn=0;v.ajaxSettings.xhr=e.ActiveXObject?function(){return!this.isLocal&&Fn()||In()}:Fn,function(e){v.extend(v.support,{ajax:!!e,cors:!!e&&"withCredentials"in e})}(v.ajaxSettings.xhr()),v.support.ajax&&v.ajaxTransport(function(n){if(!n.crossDomain||v.support.cors){var r;return{send:function(i,s){var o,u,a=n.xhr();n.username?a.open(n.type,n.url,n.async,n.username,n.password):a.open(n.type,n.url,n.async);if(n.xhrFields)for(u in n.xhrFields)a[u]=n.xhrFields[u];n.mimeType&&a.overrideMimeType&&a.overrideMimeType(n.mimeType),!n.crossDomain&&!i["X-Requested-With"]&&(i["X-Requested-With"]="XMLHttpRequest");try{for(u in i)a.setRequestHeader(u,i[u])}catch(f){}a.send(n.hasContent&&n.data||null),r=function(e,i){var u,f,l,c,h;try{if(r&&(i||a.readyState===4)){r=t,o&&(a.onreadystatechange=v.noop,Bn&&delete Hn[o]);if(i)a.readyState!==4&&a.abort();else{u=a.status,l=a.getAllResponseHeaders(),c={},h=a.responseXML,h&&h.documentElement&&(c.xml=h);try{c.text=a.responseText}catch(p){}try{f=a.statusText}catch(p){f=""}!u&&n.isLocal&&!n.crossDomain?u=c.text?200:404:u===1223&&(u=204)}}}catch(d){i||s(-1,d)}c&&s(u,f,c,l)},n.async?a.readyState===4?setTimeout(r,0):(o=++jn,Bn&&(Hn||(Hn={},v(e).unload(Bn)),Hn[o]=r),a.onreadystatechange=r):r()},abort:function(){r&&r(0,1)}}}});var qn,Rn,Un=/^(?:toggle|show|hide)$/,zn=new RegExp("^(?:([-+])=|)("+m+")([a-z%]*)$","i"),Wn=/queueHooks$/,Xn=[Gn],Vn={"*":[function(e,t){var n,r,i=this.createTween(e,t),s=zn.exec(t),o=i.cur(),u=+o||0,a=1,f=20;if(s){n=+s[2],r=s[3]||(v.cssNumber[e]?"":"px");if(r!=="px"&&u){u=v.css(i.elem,e,!0)||n||1;do a=a||".5",u/=a,v.style(i.elem,e,u+r);while(a!==(a=i.cur()/o)&&a!==1&&--f)}i.unit=r,i.start=u,i.end=s[1]?u+(s[1]+1)*n:n}return i}]};v.Animation=v.extend(Kn,{tweener:function(e,t){v.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");var n,r=0,i=e.length;for(;r-1,f={},l={},c,h;a?(l=i.position(),c=l.top,h=l.left):(c=parseFloat(o)||0,h=parseFloat(u)||0),v.isFunction(t)&&(t=t.call(e,n,s)),t.top!=null&&(f.top=t.top-s.top+c),t.left!=null&&(f.left=t.left-s.left+h),"using"in t?t.using.call(e,f):i.css(f)}},v.fn.extend({position:function(){if(!this[0])return;var e=this[0],t=this.offsetParent(),n=this.offset(),r=er.test(t[0].nodeName)?{top:0,left:0}:t.offset();return n.top-=parseFloat(v.css(e,"marginTop"))||0,n.left-=parseFloat(v.css(e,"marginLeft"))||0,r.top+=parseFloat(v.css(t[0],"borderTopWidth"))||0,r.left+=parseFloat(v.css(t[0],"borderLeftWidth"))||0,{top:n.top-r.top,left:n.left-r.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||i.body;while(e&&!er.test(e.nodeName)&&v.css(e,"position")==="static")e=e.offsetParent;return e||i.body})}}),v.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,n){var r=/Y/.test(n);v.fn[e]=function(i){return v.access(this,function(e,i,s){var o=tr(e);if(s===t)return o?n in o?o[n]:o.document.documentElement[i]:e[i];o?o.scrollTo(r?v(o).scrollLeft():s,r?s:v(o).scrollTop()):e[i]=s},e,i,arguments.length,null)}}),v.each({Height:"height",Width:"width"},function(e,n){v.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i){v.fn[i]=function(i,s){var o=arguments.length&&(r||typeof i!="boolean"),u=r||(i===!0||s===!0?"margin":"border");return v.access(this,function(n,r,i){var s;return v.isWindow(n)?n.document.documentElement["client"+e]:n.nodeType===9?(s=n.documentElement,Math.max(n.body["scroll"+e],s["scroll"+e],n.body["offset"+e],s["offset"+e],s["client"+e])):i===t?v.css(n,r,i,u):v.style(n,r,i,u)},n,o?i:t,o,null)}})}),e.jQuery=e.$=v,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return v})})(window); \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/js/provideradd.js b/smbms/target/smbms-1.0-SNAPSHOT/js/provideradd.js deleted file mode 100644 index ef3c73b..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/js/provideradd.js +++ /dev/null @@ -1,97 +0,0 @@ -var proCode = null; -var proName = null; -var proContact = null; -var proPhone = null; -var addBtn = null; -var backBtn = null; - -$(function(){ - proCode = $("#proCode"); - proName = $("#proName"); - proContact = $("#proContact"); - proPhone = $("#proPhone"); - addBtn = $("#add"); - backBtn = $("#back"); - //初始化的时候,要把所有的提示信息变为:* 以提示必填项,更灵活,不要写在页面上 - proCode.next().html("*"); - proName.next().html("*"); - proContact.next().html("*"); - proPhone.next().html("*"); - - /* - * 验证 - * 失焦\获焦 - * jquery的方法传递 - */ - proCode.on("blur",function(){ - if(proCode.val() != null && proCode.val() != ""){ - validateTip(proCode.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(proCode.next(),{"color":"red"},imgNo+" 编码不能为空,请重新输入",false); - } - }).on("focus",function(){ - //显示友情提示 - validateTip(proCode.next(),{"color":"#666666"},"* 请输入供应商编码",false); - }).focus(); - - proName.on("focus",function(){ - validateTip(proName.next(),{"color":"#666666"},"* 请输入供应商名称",false); - }).on("blur",function(){ - if(proName.val() != null && proName.val() != ""){ - validateTip(proName.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(proName.next(),{"color":"red"},imgNo+" 供应商名称不能为空,请重新输入",false); - } - - }); - - proContact.on("focus",function(){ - validateTip(proContact.next(),{"color":"#666666"},"* 请输入联系人",false); - }).on("blur",function(){ - if(proContact.val() != null && proContact.val() != ""){ - validateTip(proContact.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(proContact.next(),{"color":"red"},imgNo+" 联系人不能为空,请重新输入",false); - } - - }); - - proPhone.on("focus",function(){ - validateTip(proPhone.next(),{"color":"#666666"},"* 请输入手机号",false); - }).on("blur",function(){ - var patrn=/^(13[0-9]|15[0-9]|18[0-9])\d{8}$/; - if(proPhone.val().match(patrn)){ - validateTip(proPhone.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(proPhone.next(),{"color":"red"},imgNo + " 您输入的手机号格式不正确",false); - } - }); - - addBtn.bind("click",function(){ - if(proCode.attr("validateStatus") != "true"){ - proCode.blur(); - }else if(proName.attr("validateStatus") != "true"){ - proName.blur(); - }else if(proContact.attr("validateStatus") != "true"){ - proContact.blur(); - }else if(proPhone.attr("validateStatus") != "true"){ - proPhone.blur(); - }else{ - if(confirm("是否确认提交数据")){ - $("#providerForm").submit(); - } - } - }); - - backBtn.on("click",function(){ - if(referer != undefined - && null != referer - && "" != referer - && "null" != referer - && referer.length > 4){ - window.location.href = referer; - }else{ - history.back(-1); - } - }); -}); \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/js/providerlist.js b/smbms/target/smbms-1.0-SNAPSHOT/js/providerlist.js deleted file mode 100644 index 5d574ef..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/js/providerlist.js +++ /dev/null @@ -1,97 +0,0 @@ -var providerObj; - -//供应商管理页面上点击删除按钮弹出删除框(providerlist.jsp) -function deleteProvider(obj){ - $.ajax({ - type:"GET", - url:path+"/jsp/provider.do", - data:{method:"delprovider",proid:obj.attr("proid")}, - dataType:"json", - success:function(data){ - if(data.delResult == "true"){//删除成功:移除删除行 - cancleBtn(); - obj.parents("tr").remove(); - }else if(data.delResult == "false"){//删除失败 - //alert("对不起,删除供应商【"+obj.attr("proname")+"】失败"); - changeDLGContent("对不起,删除供应商【"+obj.attr("proname")+"】失败"); - }else if(data.delResult == "notexist"){ - //alert("对不起,供应商【"+obj.attr("proname")+"】不存在"); - changeDLGContent("对不起,供应商【"+obj.attr("proname")+"】不存在"); - }else{ - //alert("对不起,该供应商【"+obj.attr("proname")+"】下有【"+data.delResult+"】条订单,不能删除"); - changeDLGContent("对不起,该供应商【"+obj.attr("proname")+"】下有【"+data.delResult+"】条订单,不能删除"); - } - }, - error:function(data){ - //alert("对不起,删除失败"); - changeDLGContent("对不起,删除失败"); - } - }); -} - -function openYesOrNoDLG(){ - $('.zhezhao').css('display', 'block'); - $('#removeProv').fadeIn(); -} - -function cancleBtn(){ - $('.zhezhao').css('display', 'none'); - $('#removeProv').fadeOut(); -} -function changeDLGContent(contentStr){ - var p = $(".removeMain").find("p"); - p.html(contentStr); -} -$(function(){ - $(".viewProvider").on("click",function(){ - //将被绑定的元素(a)转换成jquery对象,可以使用jquery方法 - var obj = $(this); - window.location.href=path+"/jsp/provider.do?method=view&proid="+ obj.attr("proid"); - }); - - $(".modifyProvider").on("click",function(){ - var obj = $(this); - window.location.href=path+"/jsp/provider.do?method=modify&proid="+ obj.attr("proid"); - }); - - $('#no').click(function () { - cancleBtn(); - }); - - $('#yes').click(function () { - deleteProvider(providerObj); - }); - - $(".deleteProvider").on("click",function(){ - providerObj = $(this); - changeDLGContent("你确定要删除供应商【"+providerObj.attr("proname")+"】吗?"); - openYesOrNoDLG(); - }); - -/* $(".deleteProvider").on("click",function(){ - var obj = $(this); - if(confirm("你确定要删除供应商【"+obj.attr("proname")+"】吗?")){ - $.ajax({ - type:"GET", - url:path+"/jsp/provider.do", - data:{method:"delprovider",proid:obj.attr("proid")}, - dataType:"json", - success:function(data){ - if(data.delResult == "true"){//删除成功:移除删除行 - alert("删除成功"); - obj.parents("tr").remove(); - }else if(data.delResult == "false"){//删除失败 - alert("对不起,删除供应商【"+obj.attr("proname")+"】失败"); - }else if(data.delResult == "notexist"){ - alert("对不起,供应商【"+obj.attr("proname")+"】不存在"); - }else{ - alert("对不起,该供应商【"+obj.attr("proname")+"】下有【"+data.delResult+"】条订单,不能删除"); - } - }, - error:function(data){ - alert("对不起,删除失败"); - } - }); - } - });*/ -}); \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/js/providermodify.js b/smbms/target/smbms-1.0-SNAPSHOT/js/providermodify.js deleted file mode 100644 index f65d8c4..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/js/providermodify.js +++ /dev/null @@ -1,66 +0,0 @@ -var proContact = null; -var proPhone = null; -var saveBtn = null; -var backBtn = null; - -$(function(){ - proContact = $("#proContact"); - proPhone = $("#proPhone"); - saveBtn = $("#save"); - backBtn = $("#back"); - - //初始化的时候,要把所有的提示信息变为:* 以提示必填项,更灵活,不要写在页面上 - proContact.next().html("*"); - proPhone.next().html("*"); - - /* - * 验证 - * 失焦\获焦 - * jquery的方法传递 - */ - proContact.on("focus",function(){ - validateTip(proContact.next(),{"color":"#666666"},"* 请输入联系人",false); - }).on("blur",function(){ - if(proContact.val() != null && proContact.val() != ""){ - validateTip(proContact.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(proContact.next(),{"color":"red"},imgNo+" 联系人不能为空,请重新输入",false); - } - - }); - - proPhone.on("focus",function(){ - validateTip(proPhone.next(),{"color":"#666666"},"* 请输入手机号",false); - }).on("blur",function(){ - var patrn=/^(13[0-9]|15[0-9]|18[0-9])\d{8}$/; - if(proPhone.val().match(patrn)){ - validateTip(proPhone.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(proPhone.next(),{"color":"red"},imgNo + " 您输入的手机号格式不正确",false); - } - }); - - saveBtn.on("click",function(){ - proContact.blur(); - proPhone.blur(); - if(proContact.attr("validateStatus") == "true" && - proPhone.attr("validateStatus") == "true"){ - if(confirm("是否确认提交数据")){ - $("#providerForm").submit(); - } - } - }); - - backBtn.on("click",function(){ - //alert("modify: "+referer); - if(referer != undefined - && null != referer - && "" != referer - && "null" != referer - && referer.length > 4){ - window.location.href = referer; - }else{ - history.back(-1); - } - }); -}); \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/js/providerview.js b/smbms/target/smbms-1.0-SNAPSHOT/js/providerview.js deleted file mode 100644 index 7388947..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/js/providerview.js +++ /dev/null @@ -1,17 +0,0 @@ -var backBtn = null; - -$(function(){ - backBtn = $("#back"); - backBtn.on("click",function(){ - //alert("view : "+referer); - if(referer != undefined - && null != referer - && "" != referer - && "null" != referer - && referer.length > 4){ - window.location.href = referer; - }else{ - history.back(-1); - } - }); -}); \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/js/pwdmodify.js b/smbms/target/smbms-1.0-SNAPSHOT/js/pwdmodify.js deleted file mode 100644 index 8999915..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/js/pwdmodify.js +++ /dev/null @@ -1,81 +0,0 @@ -var oldpassword = null; -var newpassword = null; -var rnewpassword = null; -var saveBtn = null; - -$(function(){ - oldpassword = $("#oldpassword"); - newpassword = $("#newpassword"); - rnewpassword = $("#rnewpassword"); - saveBtn = $("#save"); - - oldpassword.next().html("*"); - newpassword.next().html("*"); - rnewpassword.next().html("*"); - - oldpassword.on("blur",function(){ - $.ajax({ - type:"GET", - url:path+"/jsp/user.do", - data:{method:"pwdmodify",oldpassword:oldpassword.val()}, - dataType:"json", - success:function(data){ - if(data.result == "true"){//旧密码正确 - validateTip(oldpassword.next(),{"color":"green"},imgYes,true); - }else if(data.result == "false"){//旧密码输入不正确 - validateTip(oldpassword.next(),{"color":"red"},imgNo + " 原密码输入不正确",false); - }else if(data.result == "sessionerror"){//当前用户session过期,请重新登录 - validateTip(oldpassword.next(),{"color":"red"},imgNo + " 当前用户session过期,请重新登录",false); - }else if(data.result == "error"){//旧密码输入为空 - validateTip(oldpassword.next(),{"color":"red"},imgNo + " 请输入旧密码",false); - } - }, - error:function(data){ - //请求出错 - validateTip(oldpassword.next(),{"color":"red"},imgNo + " 请求错误",false); - } - }); - - - }).on("focus",function(){ - validateTip(oldpassword.next(),{"color":"#666666"},"* 请输入原密码",false); - }); - - newpassword.on("focus",function(){ - validateTip(newpassword.next(),{"color":"#666666"},"* 密码长度必须是大于6小于20",false); - }).on("blur",function(){ - if(newpassword.val() != null && newpassword.val().length > 5 - && newpassword.val().length < 20 ){ - validateTip(newpassword.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(newpassword.next(),{"color":"red"},imgNo + " 密码输入不符合规范,请重新输入",false); - } - }); - - - rnewpassword.on("focus",function(){ - validateTip(rnewpassword.next(),{"color":"#666666"},"* 请输入与上面一致的密码",false); - }).on("blur",function(){ - if(rnewpassword.val() != null && rnewpassword.val().length > 5 - && rnewpassword.val().length < 20 && newpassword.val() == rnewpassword.val()){ - validateTip(rnewpassword.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(rnewpassword.next(),{"color":"red"},imgNo + " 两次密码输入不一致,请重新输入",false); - } - }); - - - saveBtn.on("click",function(){ - oldpassword.blur(); - newpassword.blur(); - rnewpassword.blur(); - if(oldpassword.attr("validateStatus") == "true" - && newpassword.attr("validateStatus") == "true" - && rnewpassword.attr("validateStatus") == "true"){ - if(confirm("确定要修改密码?")){ - $("#userForm").submit(); - } - } - - }); -}); \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/js/rollpage.js b/smbms/target/smbms-1.0-SNAPSHOT/js/rollpage.js deleted file mode 100644 index e4c9e84..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/js/rollpage.js +++ /dev/null @@ -1,21 +0,0 @@ -function page_nav(frm,num){ - frm.pageIndex.value = num; - frm.submit(); -} - -function jump_to(frm,num){ - //alert(num); - //验证用户的输入 - var regexp=/^[1-9]\d*$/; - var totalPageCount = document.getElementById("totalPageCount").value; - //alert(totalPageCount); - if(!regexp.test(num)){ - alert("请输入大于0的正整数!"); - return false; - }else if((num-totalPageCount) > 0){ - alert("请输入小于总页数的页码"); - return false; - }else{ - page_nav(frm,num); - } -} \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/js/time.js b/smbms/target/smbms-1.0-SNAPSHOT/js/time.js deleted file mode 100644 index 965c7e1..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/js/time.js +++ /dev/null @@ -1,43 +0,0 @@ -//时间 -function fn(){ - var time = new Date(); - var str= ""; - var div = document.getElementById("time"); -// console.log(time); - var year = time.getFullYear(); - var mon = time.getMonth()+1; - var day = time.getDate(); - var h = time.getHours(); - var m = time.getMinutes(); - var s = time.getSeconds(); - var week = time.getDay(); - switch (week){ - case 0:week="日"; - break; - case 1:week="一"; - break; - case 2:week="二"; - break; - case 3:week="三"; - break; - case 4:week="四"; - break; - case 5:week="五"; - break; - case 6:week="六"; - break; - } - str = year +"年"+totwo(mon)+"月"+totwo(day)+"日"+" "+totwo(h)+":"+totwo(m)+":"+totwo(s)+" "+"星期"+week; - div.innerHTML = str; -} -fn(); -setInterval(fn,1000); -function totwo(n){ - if(n<=9){ - return n = "0"+n; - } - else{ - return n =""+n; - } -} - diff --git a/smbms/target/smbms-1.0-SNAPSHOT/js/useradd.js b/smbms/target/smbms-1.0-SNAPSHOT/js/useradd.js deleted file mode 100644 index 2503499..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/js/useradd.js +++ /dev/null @@ -1,185 +0,0 @@ -var userCode = null; -var userName = null; -var userPassword = null; -var ruserPassword = null; -var phone = null; -var birthday = null; -var userRole = null; -var addBtn = null; -var backBtn = null; - - -$(function(){ - userCode = $("#userCode"); - userName = $("#userName"); - userPassword = $("#userPassword"); - ruserPassword = $("#ruserPassword"); - phone = $("#phone"); - birthday = $("#birthday"); - userRole = $("#userRole"); - addBtn = $("#add"); - backBtn = $("#back"); - //初始化的时候,要把所有的提示信息变为:* 以提示必填项,更灵活,不要写在页面上 - userCode.next().html("*"); - userName.next().html("*"); - userPassword.next().html("*"); - ruserPassword.next().html("*"); - phone.next().html("*"); - birthday.next().html("*"); - userRole.next().html("*"); - - $.ajax({ - type:"GET",//请求类型 - url:path+"/jsp/user.do",//请求的url - data:{method:"getrolelist"},//请求参数 - dataType:"json",//ajax接口(请求url)返回的数据类型 - success:function(data){//data:返回数据(json对象) - if(data != null){ - userRole.html(""); - var options = ""; - for(var i = 0; i < data.length; i++){ - //alert(data[i].id); - //alert(data[i].roleName); - options += ""; - } - userRole.html(options); - } - }, - error:function(data){//当访问时候,404,500 等非200的错误状态码 - validateTip(userRole.next(),{"color":"red"},imgNo+" 获取用户角色列表error",false); - } - }); - - - - /* - * 验证 - * 失焦\获焦 - * jquery的方法传递 - */ - userCode.bind("blur",function(){ - //ajax后台验证--userCode是否已存在 - //user.do?method=ucexist&userCode=** - $.ajax({ - type:"GET",//请求类型 - url:path+"/jsp/user.do",//请求的url - data:{method:"ucexist",userCode:userCode.val()},//请求参数 - dataType:"json",//ajax接口(请求url)返回的数据类型 - success:function(data){//data:返回数据(json对象) - if(data.userCode == "exist"){//账号已存在,错误提示 - validateTip(userCode.next(),{"color":"red"},imgNo+ " 该用户账号已存在",false); - }else{//账号可用,正确提示 - validateTip(userCode.next(),{"color":"green"},imgYes+" 该账号可以使用",true); - } - }, - error:function(data){//当访问时候,404,500 等非200的错误状态码 - validateTip(userCode.next(),{"color":"red"},imgNo+" 您访问的页面不存在",false); - } - }); - - - }).bind("focus",function(){ - //显示友情提示 - validateTip(userCode.next(),{"color":"#666666"},"* 用户编码是您登录系统的账号",false); - }).focus(); - - userName.bind("focus",function(){ - validateTip(userName.next(),{"color":"#666666"},"* 用户名长度必须是大于1小于10的字符",false); - }).bind("blur",function(){ - if(userName.val() != null && userName.val().length > 1 - && userName.val().length < 10){ - validateTip(userName.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(userName.next(),{"color":"red"},imgNo+" 用户名输入的不符合规范,请重新输入",false); - } - - }); - - userPassword.bind("focus",function(){ - validateTip(userPassword.next(),{"color":"#666666"},"* 密码长度必须是大于6小于20",false); - }).bind("blur",function(){ - if(userPassword.val() != null && userPassword.val().length > 6 - && userPassword.val().length < 20 ){ - validateTip(userPassword.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(userPassword.next(),{"color":"red"},imgNo + " 密码输入不符合规范,请重新输入",false); - } - }); - - ruserPassword.bind("focus",function(){ - validateTip(ruserPassword.next(),{"color":"#666666"},"* 请输入与上面一只的密码",false); - }).bind("blur",function(){ - if(ruserPassword.val() != null && ruserPassword.val().length > 6 - && ruserPassword.val().length < 20 && userPassword.val() == ruserPassword.val()){ - validateTip(ruserPassword.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(ruserPassword.next(),{"color":"red"},imgNo + " 两次密码输入不一致,请重新输入",false); - } - }); - - - birthday.bind("focus",function(){ - validateTip(birthday.next(),{"color":"#666666"},"* 点击输入框,选择日期",false); - }).bind("blur",function(){ - if(birthday.val() != null && birthday.val() != ""){ - validateTip(birthday.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(birthday.next(),{"color":"red"},imgNo + " 选择的日期不正确,请重新输入",false); - } - }); - - phone.bind("focus",function(){ - validateTip(phone.next(),{"color":"#666666"},"* 请输入手机号",false); - }).bind("blur",function(){ - var patrn=/^(13[0-9]|15[0-9]|18[0-9])\d{8}$/; - if(phone.val().match(patrn)){ - validateTip(phone.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(phone.next(),{"color":"red"},imgNo + " 您输入的手机号格式不正确",false); - } - }); - - userRole.bind("focus",function(){ - validateTip(userRole.next(),{"color":"#666666"},"* 请选择用户角色",false); - }).bind("blur",function(){ - if(userRole.val() != null && userRole.val() > 0){ - validateTip(userRole.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(userRole.next(),{"color":"red"},imgNo + " 请重新选择用户角色",false); - } - }); - - addBtn.bind("click",function(){ - if(userCode.attr("validateStatus") != "true"){ - userCode.blur(); - }else if(userName.attr("validateStatus") != "true"){ - userName.blur(); - }else if(userPassword.attr("validateStatus") != "true"){ - userPassword.blur(); - }else if(ruserPassword.attr("validateStatus") != "true"){ - ruserPassword.blur(); - }else if(birthday.attr("validateStatus") != "true"){ - birthday.blur(); - }else if(phone.attr("validateStatus") != "true"){ - phone.blur(); - }else if(userRole.attr("validateStatus") != "true"){ - userRole.blur(); - }else{ - if(confirm("是否确认提交数据")){ - $("#userForm").submit(); - } - } - }); - - backBtn.on("click",function(){ - if(referer != undefined - && null != referer - && "" != referer - && "null" != referer - && referer.length > 4){ - window.location.href = referer; - }else{ - history.back(-1); - } - }); -}); \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/js/userlist.js b/smbms/target/smbms-1.0-SNAPSHOT/js/userlist.js deleted file mode 100644 index 322a7e1..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/js/userlist.js +++ /dev/null @@ -1,99 +0,0 @@ -var userObj; - -//用户管理页面上点击删除按钮弹出删除框(userlist.jsp) -function deleteUser(obj){ - $.ajax({ - type:"GET", - url:path+"/jsp/user.do", - data:{method:"deluser",uid:obj.attr("userid")}, - dataType:"json", - success:function(data){ - if(data.delResult == "true"){//删除成功:移除删除行 - cancleBtn(); - obj.parents("tr").remove(); - }else if(data.delResult == "false"){//删除失败 - //alert("对不起,删除用户【"+obj.attr("username")+"】失败"); - changeDLGContent("对不起,删除用户【"+obj.attr("username")+"】失败"); - }else if(data.delResult == "notexist"){ - //alert("对不起,用户【"+obj.attr("username")+"】不存在"); - changeDLGContent("对不起,用户【"+obj.attr("username")+"】不存在"); - } - }, - error:function(data){ - //alert("对不起,删除失败"); - changeDLGContent("对不起,删除失败"); - } - }); -} - -function openYesOrNoDLG(){ - $('.zhezhao').css('display', 'block'); - $('#removeUse').fadeIn(); -} - -function cancleBtn(){ - $('.zhezhao').css('display', 'none'); - $('#removeUse').fadeOut(); -} -function changeDLGContent(contentStr){ - var p = $(".removeMain").find("p"); - p.html(contentStr); -} - -$(function(){ - //通过jquery的class选择器(数组) - //对每个class为viewUser的元素进行动作绑定(click) - /** - * bind、live、delegate - * on - */ - $(".viewUser").on("click",function(){ - //将被绑定的元素(a)转换成jquery对象,可以使用jquery方法 - var obj = $(this); - window.location.href=path+"/jsp/user.do?method=view&uid="+ obj.attr("userid"); - }); - - $(".modifyUser").on("click",function(){ - var obj = $(this); - window.location.href=path+"/jsp/user.do?method=modify&uid="+ obj.attr("userid"); - }); - - $('#no').click(function () { - cancleBtn(); - }); - - $('#yes').click(function () { - deleteUser(userObj); - }); - - $(".deleteUser").on("click",function(){ - userObj = $(this); - changeDLGContent("你确定要删除用户【"+userObj.attr("username")+"】吗?"); - openYesOrNoDLG(); - }); - - /*$(".deleteUser").on("click",function(){ - var obj = $(this); - if(confirm("你确定要删除用户【"+obj.attr("username")+"】吗?")){ - $.ajax({ - type:"GET", - url:path+"/jsp/user.do", - data:{method:"deluser",uid:obj.attr("userid")}, - dataType:"json", - success:function(data){ - if(data.delResult == "true"){//删除成功:移除删除行 - alert("删除成功"); - obj.parents("tr").remove(); - }else if(data.delResult == "false"){//删除失败 - alert("对不起,删除用户【"+obj.attr("username")+"】失败"); - }else if(data.delResult == "notexist"){ - alert("对不起,用户【"+obj.attr("username")+"】不存在"); - } - }, - error:function(data){ - alert("对不起,删除失败"); - } - }); - } - });*/ -}); \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/js/usermodify.js b/smbms/target/smbms-1.0-SNAPSHOT/js/usermodify.js deleted file mode 100644 index 18fd914..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/js/usermodify.js +++ /dev/null @@ -1,122 +0,0 @@ -var userName = null; -var birthday = null; -var phone = null; -var userRole = null; -var saveBtn = null; -var backBtn = null; - -$(function(){ - userName = $("#userName"); - birthday = $("#birthday"); - phone = $("#phone"); - userRole = $("#userRole"); - saveBtn = $("#save"); - backBtn = $("#back"); - - userName.next().html("*"); - birthday.next().html("*"); - phone.next().html("*"); - userRole.next().html("*"); - - - $.ajax({ - type:"GET",//请求类型 - url:path+"/jsp/user.do",//请求的url - data:{method:"getrolelist"},//请求参数 - dataType:"json",//ajax接口(请求url)返回的数据类型 - success:function(data){//data:返回数据(json对象) - if(data != null){ - var rid = $("#rid").val(); - userRole.html(""); - var options = ""; - for(var i = 0; i < data.length; i++){ - //alert(data[i].id); - //alert(data[i].roleName); - if(rid != null && rid != undefined && data[i].id == rid ){ - options += ""; - }else{ - options += ""; - } - - } - userRole.html(options); - } - }, - error:function(data){//当访问时候,404,500 等非200的错误状态码 - validateTip(userRole.next(),{"color":"red"},imgNo+" 获取用户角色列表error",false); - } - }); - - - userName.on("focus",function(){ - validateTip(userName.next(),{"color":"#666666"},"* 用户名长度必须是大于1小于10的字符",false); - }).on("blur",function(){ - if(userName.val() != null && userName.val().length > 1 - && userName.val().length < 10){ - validateTip(userName.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(userName.next(),{"color":"red"},imgNo+" 用户名输入的不符合规范,请重新输入",false); - } - - }); - - birthday.on("focus",function(){ - validateTip(birthday.next(),{"color":"#666666"},"* 点击输入框,选择日期",false); - }).on("blur",function(){ - if(birthday.val() != null && birthday.val() != ""){ - validateTip(birthday.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(birthday.next(),{"color":"red"},imgNo + " 选择的日期不正确,请重新输入",false); - } - }); - - phone.on("focus",function(){ - validateTip(phone.next(),{"color":"#666666"},"* 请输入手机号",false); - }).on("blur",function(){ - var patrn=/^(13[0-9]|15[0-9]|18[0-9])\d{8}$/; - if(phone.val().match(patrn)){ - validateTip(phone.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(phone.next(),{"color":"red"},imgNo + " 您输入的手机号格式不正确",false); - } - }); - - userRole.on("focus",function(){ - validateTip(userRole.next(),{"color":"#666666"},"* 请选择用户角色",false); - }).on("blur",function(){ - if(userRole.val() != null && userRole.val() > 0){ - validateTip(userRole.next(),{"color":"green"},imgYes,true); - }else{ - validateTip(userRole.next(),{"color":"red"},imgNo+" 请重新选择用户角色",false); - } - - }); - - saveBtn.on("click",function(){ - userName.blur(); - phone.blur(); - birthday.blur(); - userRole.blur(); - if(userName.attr("validateStatus") == "true" - && phone.attr("validateStatus") == "true" - && birthday.attr("validateStatus") == "true" - && userRole.attr("validateStatus") == "true"){ - if(confirm("是否确认要提交数据?")){ - $("#userForm").submit(); - } - } - }); - - backBtn.on("click",function(){ - //alert("modify: "+referer); - if(referer != undefined - && null != referer - && "" != referer - && "null" != referer - && referer.length > 4){ - window.location.href = referer; - }else{ - history.back(-1); - } - }); -}); \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/js/userview.js b/smbms/target/smbms-1.0-SNAPSHOT/js/userview.js deleted file mode 100644 index 7388947..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/js/userview.js +++ /dev/null @@ -1,17 +0,0 @@ -var backBtn = null; - -$(function(){ - backBtn = $("#back"); - backBtn.on("click",function(){ - //alert("view : "+referer); - if(referer != undefined - && null != referer - && "" != referer - && "null" != referer - && referer.length > 4){ - window.location.href = referer; - }else{ - history.back(-1); - } - }); -}); \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/jsp/billadd.jsp b/smbms/target/smbms-1.0-SNAPSHOT/jsp/billadd.jsp deleted file mode 100644 index c3710e5..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/jsp/billadd.jsp +++ /dev/null @@ -1,60 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> - -
-
- 你现在所在的位置是: - 订单管理页面 >> 订单添加页面 -
-
-
- - -
- - - - -
-
- - - -
-
- - - -
-
- - - -
-
- - - -
-
- - - -
-
- - 未付款 - 已付款 -
-
- - -
- -
-
- -<%@include file="/jsp/common/foot.jsp" %> - \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/jsp/billlist.jsp b/smbms/target/smbms-1.0-SNAPSHOT/jsp/billlist.jsp deleted file mode 100644 index 1337dc8..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/jsp/billlist.jsp +++ /dev/null @@ -1,99 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> - -
-
- 你现在所在的位置是: - 订单管理页面 -
- - -
- - - - - - - - - - - - - - - - - - - - -
订单编码商品名称供应商订单金额是否付款创建时间操作
- ${bill.billCode } - - ${bill.productName } - - ${bill.providerName} - - ${bill.totalPrice} - - - 未付款 - 已付款 - - - - - - - 查看 - 修改 - 删除 -
- - - - -
-
-
-

提示

-
-

你确定要删除该订单吗?

- 确定 - 取消 -
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/jsp/billmodify.jsp b/smbms/target/smbms-1.0-SNAPSHOT/jsp/billmodify.jsp deleted file mode 100644 index 2063a58..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/jsp/billmodify.jsp +++ /dev/null @@ -1,68 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> - -
-
- 你现在所在的位置是: - 订单管理页面 >> 订单添加页面 -
-
-
- - - -
- - -
-
- - - -
-
- - - -
-
- - - -
-
- - - -
-
- - - - -
-
- - - 未付款 - 已付款 - - - 未付款 - 已付款 - -
-
- - -
-
-
- -
- - -<%@include file="/jsp/common/foot.jsp" %> - \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/jsp/billview.jsp b/smbms/target/smbms-1.0-SNAPSHOT/jsp/billview.jsp deleted file mode 100644 index 3461a58..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/jsp/billview.jsp +++ /dev/null @@ -1,29 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> -
-
- 你现在所在的位置是: - 订单管理页面 >> 信息查看 -
-
-

订单编号:${bill.billCode }

-

商品名称:${bill.productName }

-

商品单位:${bill.productUnit }

-

商品数量:${bill.productCount }

-

总金额:${bill.totalPrice }

-

供应商:${bill.providerName }

-

是否付款: - - 未付款 - 已付款 - -

-
- -
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/jsp/common/foot.jsp b/smbms/target/smbms-1.0-SNAPSHOT/jsp/common/foot.jsp deleted file mode 100644 index bbef6e6..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/jsp/common/foot.jsp +++ /dev/null @@ -1,12 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> - -
- 超市订单管理系统 -
- - - - - - \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/jsp/common/head.jsp b/smbms/target/smbms-1.0-SNAPSHOT/jsp/common/head.jsp deleted file mode 100644 index cb9ebff..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/jsp/common/head.jsp +++ /dev/null @@ -1,42 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> -<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> - - - - - 超市订单管理系统 - - - - - -
-

超市订单管理系统

-
-

下午好! ${userSession.userName } , 欢迎你!

- 退出 -
-
- -
- 2015年1月1日 11:11 星期一 - 温馨提示:为了能正常浏览,请使用高版本浏览器!(IE10+) -
- -
- - - "/> \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/jsp/error.jsp b/smbms/target/smbms-1.0-SNAPSHOT/jsp/error.jsp deleted file mode 100644 index 2289c4d..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/jsp/error.jsp +++ /dev/null @@ -1,13 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> - - - - -Insert title here - - -你要访问的页面,已经飞往火星! -返回 - - \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/jsp/frame.jsp b/smbms/target/smbms-1.0-SNAPSHOT/jsp/frame.jsp deleted file mode 100644 index 881f9e6..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/jsp/frame.jsp +++ /dev/null @@ -1,11 +0,0 @@ -<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> -
- -
-

${userSession.userName }

-

欢迎来到超市订单管理系统!

-
-
-
-<%@include file="/jsp/common/foot.jsp" %> diff --git a/smbms/target/smbms-1.0-SNAPSHOT/jsp/provideradd.jsp b/smbms/target/smbms-1.0-SNAPSHOT/jsp/provideradd.jsp deleted file mode 100644 index ec7b01c..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/jsp/provideradd.jsp +++ /dev/null @@ -1,57 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> - -
-
- 你现在所在的位置是: - 供应商管理页面 >> 供应商添加页面 -
-
-
- - -
- - - - -
-
- - - -
-
- - - - -
-
- - - -
-
- - -
-
- - -
-
- - -
-
- - -
-
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - diff --git a/smbms/target/smbms-1.0-SNAPSHOT/jsp/providerlist.jsp b/smbms/target/smbms-1.0-SNAPSHOT/jsp/providerlist.jsp deleted file mode 100644 index 2fe8bb1..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/jsp/providerlist.jsp +++ /dev/null @@ -1,82 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> - -
-
- 你现在所在的位置是: - 供应商管理页面 -
- - - - - - - - - - - - - - - - - - - - - - - -
供应商编码供应商名称联系人联系电话传真创建时间操作
- ${provider.proCode } - - ${provider.proName } - - ${provider.proContact} - - ${provider.proPhone} - - ${provider.proFax} - - - - - - 查看 - 修改 - 删除 -
- -
- - - -
-
-
-

提示

-
-

你确定要删除该供应商吗?

- 确定 - 取消 -
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - diff --git a/smbms/target/smbms-1.0-SNAPSHOT/jsp/providermodify.jsp b/smbms/target/smbms-1.0-SNAPSHOT/jsp/providermodify.jsp deleted file mode 100644 index 2208a33..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/jsp/providermodify.jsp +++ /dev/null @@ -1,58 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> - -
-
- 你现在所在的位置是: - 供应商管理页面 >> 供应商修改页 -
-
-
- -
- - -
-
- - - -
- -
- - - -
- -
- - - -
- -
- - -
- -
- - -
- -
- - -
-
- - -
-
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/jsp/providerview.jsp b/smbms/target/smbms-1.0-SNAPSHOT/jsp/providerview.jsp deleted file mode 100644 index f683373..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/jsp/providerview.jsp +++ /dev/null @@ -1,23 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> -
-
- 你现在所在的位置是: - 供应商管理页面 >> 信息查看 -
-
-

供应商编码:${provider.proCode }

-

供应商名称:${provider.proName }

-

联系人:${provider.proContact }

-

联系电话:${provider.proPhone }

-

传真:${provider.proFax }

-

描述:${provider.proDesc}

-
- -
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - diff --git a/smbms/target/smbms-1.0-SNAPSHOT/jsp/pwdmodify.jsp b/smbms/target/smbms-1.0-SNAPSHOT/jsp/pwdmodify.jsp deleted file mode 100644 index 381479b..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/jsp/pwdmodify.jsp +++ /dev/null @@ -1,38 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> -
-
- 你现在所在的位置是: - 密码修改页面 -
-
-
- - -
${message}
-
- - - -
-
- - - -
-
- - - -
-
- - -
-
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/jsp/rollpage.jsp b/smbms/target/smbms-1.0-SNAPSHOT/jsp/rollpage.jsp deleted file mode 100644 index cd74989..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/jsp/rollpage.jsp +++ /dev/null @@ -1,34 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> - - - - -Insert title here - - - -
- - - 页 - - -
- - - \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/jsp/useradd.jsp b/smbms/target/smbms-1.0-SNAPSHOT/jsp/useradd.jsp deleted file mode 100644 index 36da102..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/jsp/useradd.jsp +++ /dev/null @@ -1,72 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> - -
-
- 你现在所在的位置是: - 用户管理页面 >> 用户添加页面 -
-
-
- - -
- - - - -
-
- - - -
-
- - - -
-
- - - -
-
- - -
-
- - - -
-
- - - -
-
- - -
-
- - - - -
-
- - -
-
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - diff --git a/smbms/target/smbms-1.0-SNAPSHOT/jsp/userlist.jsp b/smbms/target/smbms-1.0-SNAPSHOT/jsp/userlist.jsp deleted file mode 100644 index 1c7638b..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/jsp/userlist.jsp +++ /dev/null @@ -1,96 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> -
-
- 你现在所在的位置是: - 用户管理页面 -
- - - - - - - - - - - - - - - - - - - - - - - -
用户编码用户名称性别年龄电话用户角色操作
- ${user.userCode } - - ${user.userName } - - - - - - - ${user.age} - - ${user.phone} - - ${user.userRoleName} - - 查看 - 修改 - 删除 -
- - - - - - -
- - - -
-
-
-

提示

-
-

你确定要删除该用户吗?

- 确定 - 取消 -
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - diff --git a/smbms/target/smbms-1.0-SNAPSHOT/jsp/usermodify.jsp b/smbms/target/smbms-1.0-SNAPSHOT/jsp/usermodify.jsp deleted file mode 100644 index 5775942..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/jsp/usermodify.jsp +++ /dev/null @@ -1,65 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> -
-
- 你现在所在的位置是: - 用户管理页面 >> 用户修改页面 -
-
-
- - -
- - - -
-
- - -
-
- - - -
- -
- - - -
-
- - -
-
- - - - - -
-
- - -
-
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - diff --git a/smbms/target/smbms-1.0-SNAPSHOT/jsp/userview.jsp b/smbms/target/smbms-1.0-SNAPSHOT/jsp/userview.jsp deleted file mode 100644 index 1a3650f..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/jsp/userview.jsp +++ /dev/null @@ -1,29 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> -<%@include file="/jsp/common/head.jsp"%> -
-
- 你现在所在的位置是: - 用户管理页面 >> 用户信息查看页面 -
-
-

用户编号:${user.userCode }

-

用户名称:${user.userName }

-

用户性别: - - - - -

-

出生日期:${user.birthday }

-

用户电话:${user.phone }

-

用户地址:${user.address }

-

用户角色:${user.userRoleName}

-
- -
-
-
- -<%@include file="/jsp/common/foot.jsp" %> - \ No newline at end of file diff --git a/smbms/target/smbms-1.0-SNAPSHOT/login.jsp b/smbms/target/smbms-1.0-SNAPSHOT/login.jsp deleted file mode 100644 index 222bfae..0000000 --- a/smbms/target/smbms-1.0-SNAPSHOT/login.jsp +++ /dev/null @@ -1,40 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" - pageEncoding="UTF-8"%> - - - - - 系统登录 - 超市订单管理系统 - - - - -
-
-

超市订单管理系统

-
-
-
-
${error}
-
- - -
-
- - -
-
- - - -
-
-
-
- - diff --git a/threadtest/.idea/.gitignore b/threadtest/.idea/.gitignore deleted file mode 100644 index f0098d4..0000000 --- a/threadtest/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/../../../../:\code\threadtest\.idea/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/threadtest/.idea/libraries/commons_io_2_9_0.xml b/threadtest/.idea/libraries/commons_io_2_9_0.xml deleted file mode 100644 index 51d7a02..0000000 --- a/threadtest/.idea/libraries/commons_io_2_9_0.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/threadtest/.idea/misc.xml b/threadtest/.idea/misc.xml deleted file mode 100644 index 0548357..0000000 --- a/threadtest/.idea/misc.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/threadtest/.idea/modules.xml b/threadtest/.idea/modules.xml deleted file mode 100644 index 436050f..0000000 --- a/threadtest/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/threadtest/.idea/uiDesigner.xml b/threadtest/.idea/uiDesigner.xml deleted file mode 100644 index e96534f..0000000 --- a/threadtest/.idea/uiDesigner.xml +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/threadtest/DLAM2mm.jpg b/threadtest/DLAM2mm.jpg deleted file mode 100644 index 605bf9e..0000000 Binary files a/threadtest/DLAM2mm.jpg and /dev/null differ diff --git a/threadtest/DLAMmm3.jpg b/threadtest/DLAMmm3.jpg deleted file mode 100644 index b8f10da..0000000 Binary files a/threadtest/DLAMmm3.jpg and /dev/null differ diff --git a/threadtest/dlam1mm.jpg b/threadtest/dlam1mm.jpg deleted file mode 100644 index 3dcd076..0000000 Binary files a/threadtest/dlam1mm.jpg and /dev/null differ diff --git a/threadtest/lib/commons-io-2.9.0.jar b/threadtest/lib/commons-io-2.9.0.jar deleted file mode 100644 index 09fe034..0000000 Binary files a/threadtest/lib/commons-io-2.9.0.jar and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/God.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/God.class deleted file mode 100644 index 9cef65d..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/God.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/ILike.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/ILike.class deleted file mode 100644 index 1d6844a..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/ILike.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/Like.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/Like.class deleted file mode 100644 index 02c1c20..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/Like.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/Marry.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/Marry.class deleted file mode 100644 index 753abe3..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/Marry.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/MarryCompany.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/MarryCompany.class deleted file mode 100644 index b1f3e05..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/MarryCompany.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/MyPriority.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/MyPriority.class deleted file mode 100644 index 0f9cfff..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/MyPriority.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/StartThread.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/StartThread.class deleted file mode 100644 index 46359fa..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/StartThread.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestCallable.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestCallable.class deleted file mode 100644 index 19a3780..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestCallable.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestDaemon01.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestDaemon01.class deleted file mode 100644 index e2c9264..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestDaemon01.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestJoin.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestJoin.class deleted file mode 100644 index f181f26..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestJoin.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestLambda01$1.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestLambda01$1.class deleted file mode 100644 index 28b71a6..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestLambda01$1.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestLambda01$1Like3.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestLambda01$1Like3.class deleted file mode 100644 index 2209625..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestLambda01$1Like3.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestLambda01$Like2.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestLambda01$Like2.class deleted file mode 100644 index a89b157..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestLambda01$Like2.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestLambda01.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestLambda01.class deleted file mode 100644 index 36d1056..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestLambda01.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestPriority.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestPriority.class deleted file mode 100644 index 2ed7ed9..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestPriority.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestProxy.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestProxy.class deleted file mode 100644 index cf7723d..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestProxy.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestRace.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestRace.class deleted file mode 100644 index 1d57883..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestRace.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestSleep.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestSleep.class deleted file mode 100644 index 2bb54aa..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestSleep.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestSleep2.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestSleep2.class deleted file mode 100644 index f5e80c1..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestSleep2.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestState.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestState.class deleted file mode 100644 index cc005ba..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestState.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestStop.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestStop.class deleted file mode 100644 index 11aceb9..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestStop.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestThread1.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestThread1.class deleted file mode 100644 index d1dcf99..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/TestThread1.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/WebPicDownloader.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/WebPicDownloader.class deleted file mode 100644 index 6e3dd4f..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/WebPicDownloader.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/WebPicDownloader2.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/WebPicDownloader2.class deleted file mode 100644 index eb7066b..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/WebPicDownloader2.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/Who.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/Who.class deleted file mode 100644 index 131c6f9..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/Who.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/You.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/You.class deleted file mode 100644 index d18a962..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson01/You.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/Account.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/Account.class deleted file mode 100644 index 865ea60..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/Account.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/BuyTicket.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/BuyTicket.class deleted file mode 100644 index 233d561..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/BuyTicket.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/BuyTicket2.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/BuyTicket2.class deleted file mode 100644 index 395e476..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/BuyTicket2.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/Drawing.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/Drawing.class deleted file mode 100644 index 8575075..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/Drawing.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/Lipstick.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/Lipstick.class deleted file mode 100644 index 88c6a19..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/Lipstick.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/MakeUp.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/MakeUp.class deleted file mode 100644 index 136ebdf..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/MakeUp.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/Mirror.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/Mirror.class deleted file mode 100644 index ac72697..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/Mirror.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/TestDeadlock.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/TestDeadlock.class deleted file mode 100644 index ef2906b..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/TestDeadlock.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/TestJUC.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/TestJUC.class deleted file mode 100644 index 3409f35..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/TestJUC.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/TestLock.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/TestLock.class deleted file mode 100644 index 55dfdfc..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/TestLock.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/UnSafeBank.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/UnSafeBank.class deleted file mode 100644 index 5e311ac..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/UnSafeBank.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/UnSafeBuyTicket.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/UnSafeBuyTicket.class deleted file mode 100644 index 607fb63..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/UnSafeBuyTicket.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/UnsafeList.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/UnsafeList.class deleted file mode 100644 index 2dd94e6..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson02/UnsafeList.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/Buffer.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/Buffer.class deleted file mode 100644 index 204f610..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/Buffer.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/Chicken.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/Chicken.class deleted file mode 100644 index 4f837bf..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/Chicken.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/Consumer.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/Consumer.class deleted file mode 100644 index c45f932..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/Consumer.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/MyThread.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/MyThread.class deleted file mode 100644 index 66466f1..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/MyThread.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/MyThread1.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/MyThread1.class deleted file mode 100644 index 17c0c90..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/MyThread1.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/MyThread2.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/MyThread2.class deleted file mode 100644 index fef366c..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/MyThread2.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/MyThread3.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/MyThread3.class deleted file mode 100644 index adeb155..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/MyThread3.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/Player.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/Player.class deleted file mode 100644 index e32cdf0..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/Player.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/Producer.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/Producer.class deleted file mode 100644 index 3e84b6b..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/Producer.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/SMovie.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/SMovie.class deleted file mode 100644 index c64d424..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/SMovie.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/TestNewThread.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/TestNewThread.class deleted file mode 100644 index e618252..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/TestNewThread.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/TestPC.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/TestPC.class deleted file mode 100644 index fc6c349..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/TestPC.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/TestPC2.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/TestPC2.class deleted file mode 100644 index a7a9433..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/TestPC2.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/TestPool.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/TestPool.class deleted file mode 100644 index a66b192..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/TestPool.class and /dev/null differ diff --git a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/Watcher.class b/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/Watcher.class deleted file mode 100644 index 7b76089..0000000 Binary files a/threadtest/out/production/threadtest/com/xiaokai/threadtest/lesson03/Watcher.class and /dev/null differ diff --git a/threadtest/src/com/xiaokai/threadtest/lesson01/StartThread.java b/threadtest/src/com/xiaokai/threadtest/lesson01/StartThread.java deleted file mode 100644 index 8a10f09..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson01/StartThread.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.xiaokai.threadtest.lesson01; - -public class StartThread extends Thread{ - @Override - public void run() { - //线程体 - for (int i = 0; i < 2000; i++) { - System.out.println("线程体==>"+i); - } - } - //主程序入口 - public static void main(String[] args) { - StartThread thread = new StartThread(); - thread.start(); - for (int i = 0; i < 2000; i++) { - System.out.println("这里是主方法入口==>"+i); - } - } -} - diff --git a/threadtest/src/com/xiaokai/threadtest/lesson01/TestCallable.java b/threadtest/src/com/xiaokai/threadtest/lesson01/TestCallable.java deleted file mode 100644 index 3a280ec..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson01/TestCallable.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.xiaokai.threadtest.lesson01; - -import org.apache.commons.io.FileUtils; - -import java.io.File; -import java.io.IOException; -import java.net.URL; -import java.util.concurrent.*; - -public class TestCallable implements Callable { - private String url, name; - - public TestCallable(String url,String name) { - this.url = url; - this.name = name; - } - - @Override - public Boolean call() { - WebPicDownloader2 downloader = new WebPicDownloader2(url,name); - downloader.downloader(url,name); - System.out.println("下载成功:"+name); - return true; - } - public void downloader(String url,String name){ - try { - FileUtils.copyURLToFile(new URL(url),new File(name)); - } catch (IOException e) { - System.out.println("文件下载失败"+e); - } - } - - public static void main(String[] args) throws ExecutionException, InterruptedException { - //TestCallable callable = new TestCallable(); - TestCallable downloader01 = new TestCallable("https://img2.baidu.com/it/u=3355464299,584008140&fm=26&fmt=auto&gp=0.jpg","dlam1mm.jpg"); - TestCallable downloader02 = new TestCallable("https://gimg2.baidu.com/image_search/src=http%3A%2F%2Ffriendoprod.blob.core.windows.net%2Fmissionpics%2Fimages%2F4334%2Fmember%2Fe3656de4-9b49-4eac-a642-0b28bb9238e4.jpg&refer=http%3A%2F%2Ffriendoprod.blob.core.windows.net&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=jpeg?sec=1625648951&t=84fef74b02d34ea30fea5373350a4618","DLAM2mm.jpg"); - TestCallable downloader03 = new TestCallable("https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fimg2.woyaogexing.com%2F2017%2F07%2F26%2F28fc292ed1b614a9%21600x600.jpg&refer=http%3A%2F%2Fimg2.woyaogexing.com&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=jpeg?sec=1625648951&t=42d92134cfe5193a7a8c76e5ec28516c","DLAMmm3.jpg"); - - ExecutorService service = Executors.newFixedThreadPool(3); - Future future1 = service.submit(downloader01); - Future future2 = service.submit(downloader02); - Future future3 = service.submit(downloader03); - - boolean r1 = (boolean) future1.get(); - boolean r2 = (boolean) future2.get(); - boolean r3 = (boolean) future3.get(); - - service.shutdown(); - } -} diff --git a/threadtest/src/com/xiaokai/threadtest/lesson01/TestDaemon01.java b/threadtest/src/com/xiaokai/threadtest/lesson01/TestDaemon01.java deleted file mode 100644 index 1e3f7b6..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson01/TestDaemon01.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.xiaokai.threadtest.lesson01; - -public class TestDaemon01 { - public static void main(String[] args) { - God god = new God(); - You you = new You(); - - Thread thread = new Thread(god); - thread.setDaemon(true); - thread.start(); - - new Thread(you).start(); - } -} -class God implements Runnable{ - @Override - public void run() { - while (true){ - System.out.println("守护着你"); - } - } -} -class You implements Runnable{ - @Override - public void run() { - for (int i = 0; i < 30000; i++) { - System.out.println("开心的活着!"); - } - System.out.println("=====GoodBye!====="); - } -} diff --git a/threadtest/src/com/xiaokai/threadtest/lesson01/TestJoin.java b/threadtest/src/com/xiaokai/threadtest/lesson01/TestJoin.java deleted file mode 100644 index dbe5f36..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson01/TestJoin.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.xiaokai.threadtest.lesson01; - -public class TestJoin implements Runnable{ - @Override - public void run() { - for (int i = 0; i < 100; i++) { - System.out.println("VIP "+i); - } - } - - public static void main(String[] args) throws InterruptedException { - TestJoin testJoin = new TestJoin(); - Thread t1 = new Thread(testJoin); - t1.start(); - - for (int i = 0; i < 200; i++) { - if (i == 30 ) t1.join(); - System.out.println("main "+i); - } - } -} diff --git a/threadtest/src/com/xiaokai/threadtest/lesson01/TestLambda01.java b/threadtest/src/com/xiaokai/threadtest/lesson01/TestLambda01.java deleted file mode 100644 index e72d986..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson01/TestLambda01.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.xiaokai.threadtest.lesson01; -/** - * 演示推导lambda表达式简化过程 - */ -public class TestLambda01 { - static class Like2 implements ILike{ - @Override - public void lambda() { - System.out.println("I like lambda2"); - } - } - public static void main(String[] args) { - ILike like = new Like(); - like.lambda(); - - like = new Like2(); - like.lambda(); - - class Like3 implements ILike{ - @Override - public void lambda() { - System.out.println("I like lambda3"); - } - } - like = new Like3(); - like.lambda(); - - like = new ILike() { - @Override - public void lambda() { - System.out.println("I like lambda4"); - } - }; - - like = ()->{ - System.out.println("I like lambda5"); - }; - like.lambda(); - - } -} -interface ILike{ - void lambda(); -} -class Like implements ILike{ - @Override - public void lambda() { - System.out.println("I like lambda"); - } -} \ No newline at end of file diff --git a/threadtest/src/com/xiaokai/threadtest/lesson01/TestPriority.java b/threadtest/src/com/xiaokai/threadtest/lesson01/TestPriority.java deleted file mode 100644 index fd692ce..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson01/TestPriority.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.xiaokai.threadtest.lesson01; - -public class TestPriority { - public static void main(String[] args) { - MyPriority priority = new MyPriority(); - new Thread(priority,"t1").start(); - Thread t2 = new Thread(priority,"t2"); - t2.setPriority(1); - t2.start(); - - Thread t3 = new Thread(priority,"t3"); - t3.setPriority(Thread.MAX_PRIORITY); - t3.start(); - new Thread(priority,"t4").start(); - new Thread(priority,"t5").start(); - - - } - -} -class MyPriority implements Runnable{ - - @Override - public void run() { - System.out.println(Thread.currentThread().getName()+"---->"+Thread.currentThread().getPriority()); - } -} diff --git a/threadtest/src/com/xiaokai/threadtest/lesson01/TestProxy.java b/threadtest/src/com/xiaokai/threadtest/lesson01/TestProxy.java deleted file mode 100644 index 5d49b1d..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson01/TestProxy.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.xiaokai.threadtest.lesson01; - -public class TestProxy { - public static void main(String[] args) { - Marry marry = new MarryCompany(new Who()); - marry.HappyMarry(); - } -} -interface Marry{ - void HappyMarry(); -} -class Who implements Marry{ - @Override - public void HappyMarry() { - System.out.println("结婚了,开心"); - } -} -class MarryCompany implements Marry{ - private Who name; - - public MarryCompany(Who name) { - this.name = name; - } - - @Override - public void HappyMarry() { - beforeMarry(); - name.HappyMarry(); - afterMarry(); - - } - private void beforeMarry(){ - System.out.println("婚前紧张"); - } - private void afterMarry(){ - System.out.println("婚后不紧张"); - } -} diff --git a/threadtest/src/com/xiaokai/threadtest/lesson01/TestRace.java b/threadtest/src/com/xiaokai/threadtest/lesson01/TestRace.java deleted file mode 100644 index f7a3cb9..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson01/TestRace.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.xiaokai.threadtest.lesson01; - -public class TestRace implements Runnable{ - private String winner; - private boolean isWin; - @Override - public void run() { - for (int i = 0; i <= 100; i++) { - if (Thread.currentThread().getName()=="兔子" && i > 10 && i%10==0){ - try { - Thread.sleep(10); - System.out.println("兔子睡了10ms"); - } catch (InterruptedException e) { - System.out.println("出现异常"+e); - } - } - - if (gameOver(i)){ - break; - } - System.out.println(Thread.currentThread().getName()+"已经跑了"+i+"步,"); - - - } - } - private boolean gameOver(int step){ - if (winner != null){ - return true; - }else if(step == 100){ - winner = Thread.currentThread().getName(); - System.out.println("冠军是:"+winner); - return true; - }else { - return false; - } - } - - public static void main(String[] args) { - TestRace race = new TestRace(); - new Thread(race,"乌龟").start(); - new Thread(race,"兔子").start(); - - } -} diff --git a/threadtest/src/com/xiaokai/threadtest/lesson01/TestSleep.java b/threadtest/src/com/xiaokai/threadtest/lesson01/TestSleep.java deleted file mode 100644 index f3c7fdf..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson01/TestSleep.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.xiaokai.threadtest.lesson01; - -import java.util.TreeSet; - -public class TestSleep { - private void TenDown() throws InterruptedException { - int num = 10; - while (true){ - Thread.sleep(1000); - System.out.println(num--); - if (num <= 0)break; - } - } - - public static void main(String[] args) throws InterruptedException { - new TestSleep().TenDown(); - } -} diff --git a/threadtest/src/com/xiaokai/threadtest/lesson01/TestSleep2.java b/threadtest/src/com/xiaokai/threadtest/lesson01/TestSleep2.java deleted file mode 100644 index f808c9b..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson01/TestSleep2.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.xiaokai.threadtest.lesson01; - -import java.text.SimpleDateFormat; -import java.util.Date; - -public class TestSleep2 { - private void printNow() throws InterruptedException { - Date startTime = new Date(System.currentTimeMillis()); - while (true){ - Thread.sleep(1000); - System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(startTime)); - startTime = new Date(System.currentTimeMillis()); - } - } - - public static void main(String[] args) throws InterruptedException { - new TestSleep2().printNow(); - } - -} diff --git a/threadtest/src/com/xiaokai/threadtest/lesson01/TestState.java b/threadtest/src/com/xiaokai/threadtest/lesson01/TestState.java deleted file mode 100644 index e3dbd5c..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson01/TestState.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.xiaokai.threadtest.lesson01; - -public class TestState { - public static void main(String[] args) { - - Thread thread = new Thread(() -> { - for (int i = 0; i < 5; i++) { - try { - Thread.sleep(1000); - } catch (InterruptedException e) { - e.printStackTrace(); - } - } - System.out.println("//////////"); - }); - - //开始监测状态 - Thread.State state = thread.getState(); - System.out.println(state); - - thread.start(); - state = thread.getState(); - System.out.println(state); - - while (state != Thread.State.TERMINATED){ - try { - Thread.sleep(100); - state = thread.getState(); - System.out.println(state); - } catch (InterruptedException e) { - e.printStackTrace(); - } - } - - } -} diff --git a/threadtest/src/com/xiaokai/threadtest/lesson01/TestStop.java b/threadtest/src/com/xiaokai/threadtest/lesson01/TestStop.java deleted file mode 100644 index 9014b1f..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson01/TestStop.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.xiaokai.threadtest.lesson01; - -public class TestStop implements Runnable{ - private boolean flag = true; - private int i ; - public static void main(String[] args) throws InterruptedException { - TestStop testStop = new TestStop(); - new Thread(testStop).start(); - - for (int i = 0; i <= 1000; i++) { - if (i == 100) { - testStop.stop(); - System.out.println("线程停止"+i);} - Thread.sleep(10); - } - } - - @Override - public void run() { - while (flag){ - System.out.println("刷新"+i++); - } - } - private void stop(){ - flag = false; - } -} diff --git a/threadtest/src/com/xiaokai/threadtest/lesson01/TestThread1.java b/threadtest/src/com/xiaokai/threadtest/lesson01/TestThread1.java deleted file mode 100644 index 33bf272..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson01/TestThread1.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.xiaokai.threadtest.lesson01; - -public class TestThread1 implements Runnable{ - int num = 100; - @Override - public void run() { - while (true){ - if (num <= 0){ - break; - } - try { - Thread.sleep(100); - } catch (InterruptedException e) { - System.out.println(e); - } - System.out.println(Thread.currentThread().getName()+"取到了第"+num--+"张票"); - } - - - - } - - public static void main(String[] args) { - TestThread1 thread1 = new TestThread1(); - //不同的线程对同一资源出现线程争用!!! - new Thread(thread1,"小明").start(); - new Thread(thread1,"老师").start(); - new Thread(thread1,"黄牛").start(); - } -} diff --git a/threadtest/src/com/xiaokai/threadtest/lesson01/WebPicDownloader.java b/threadtest/src/com/xiaokai/threadtest/lesson01/WebPicDownloader.java deleted file mode 100644 index ea34a4a..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson01/WebPicDownloader.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.xiaokai.threadtest.lesson01; - -import org.apache.commons.io.FileUtils; - -import java.io.File; -import java.io.IOException; -import java.net.URL; - -public class WebPicDownloader extends Thread{ - private String url, name; - - public WebPicDownloader(String url, String name) { - this.url = url; - this.name = name; - } - - @Override - public void run() { - WebPicDownloader downloader = new WebPicDownloader(url,name); - downloader.downloader(url,name); - System.out.println(name); - } - public void downloader(String url,String name){ - try { - FileUtils.copyURLToFile(new URL(url),new File(name)); - } catch (IOException e) { - System.out.println("文件下载失败"+e); - } - } - public static void main(String[] args) { - WebPicDownloader downloader01 = new WebPicDownloader("https://img2.baidu.com/it/u=3355464299,584008140&fm=26&fmt=auto&gp=0.jpg","DLAM1.jpg"); - WebPicDownloader downloader02 = new WebPicDownloader("https://gimg2.baidu.com/image_search/src=http%3A%2F%2Ffriendoprod.blob.core.windows.net%2Fmissionpics%2Fimages%2F4334%2Fmember%2Fe3656de4-9b49-4eac-a642-0b28bb9238e4.jpg&refer=http%3A%2F%2Ffriendoprod.blob.core.windows.net&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=jpeg?sec=1625648951&t=84fef74b02d34ea30fea5373350a4618","dlam2.jpg"); - WebPicDownloader downloader03 = new WebPicDownloader("https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fimg2.woyaogexing.com%2F2017%2F07%2F26%2F28fc292ed1b614a9%21600x600.jpg&refer=http%3A%2F%2Fimg2.woyaogexing.com&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=jpeg?sec=1625648951&t=42d92134cfe5193a7a8c76e5ec28516c","dlam3.jpg"); - - downloader01.start(); - downloader02.start(); - downloader03.start(); - } -} diff --git a/threadtest/src/com/xiaokai/threadtest/lesson01/WebPicDownloader2.java b/threadtest/src/com/xiaokai/threadtest/lesson01/WebPicDownloader2.java deleted file mode 100644 index 6144f9f..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson01/WebPicDownloader2.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.xiaokai.threadtest.lesson01; - -import org.apache.commons.io.FileUtils; - -import java.io.File; -import java.io.IOException; -import java.net.URL; - -public class WebPicDownloader2 implements Runnable{ - private String url, name; - - public WebPicDownloader2(String url, String name) { - this.url = url; - this.name = name; - } - - @Override - public void run() { - WebPicDownloader2 downloader = new WebPicDownloader2(url,name); - downloader.downloader(url,name); - System.out.println(name); - } - public void downloader(String url,String name){ - try { - FileUtils.copyURLToFile(new URL(url),new File(name)); - } catch (IOException e) { - System.out.println("文件下载失败"+e); - } - } - public static void main(String[] args) { - WebPicDownloader2 downloader01 = new WebPicDownloader2("https://img2.baidu.com/it/u=3355464299,584008140&fm=26&fmt=auto&gp=0.jpg","dlam1mm.jpg"); - WebPicDownloader2 downloader02 = new WebPicDownloader2("https://gimg2.baidu.com/image_search/src=http%3A%2F%2Ffriendoprod.blob.core.windows.net%2Fmissionpics%2Fimages%2F4334%2Fmember%2Fe3656de4-9b49-4eac-a642-0b28bb9238e4.jpg&refer=http%3A%2F%2Ffriendoprod.blob.core.windows.net&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=jpeg?sec=1625648951&t=84fef74b02d34ea30fea5373350a4618","DLAM2mm.jpg"); - WebPicDownloader2 downloader03 = new WebPicDownloader2("https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fimg2.woyaogexing.com%2F2017%2F07%2F26%2F28fc292ed1b614a9%21600x600.jpg&refer=http%3A%2F%2Fimg2.woyaogexing.com&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=jpeg?sec=1625648951&t=42d92134cfe5193a7a8c76e5ec28516c","DLAMmm3.jpg"); - -// downloader01.start(); -// downloader02.start(); -// downloader03.start(); - new Thread(downloader01).start(); - new Thread(downloader02).start(); - new Thread(downloader03).start(); - } -} diff --git a/threadtest/src/com/xiaokai/threadtest/lesson02/TestDeadlock.java b/threadtest/src/com/xiaokai/threadtest/lesson02/TestDeadlock.java deleted file mode 100644 index 05d59f7..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson02/TestDeadlock.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.xiaokai.threadtest.lesson02; - -public class TestDeadlock { - public static void main(String[] args) { - MakeUp m1 = new MakeUp("小明",0); - MakeUp m2 = new MakeUp("小红",1); - m1.start(); - m2.start(); - } -} -class Lipstick{ - -} -class Mirror{ - -} -class MakeUp extends Thread { - static Lipstick lipstick = new Lipstick(); - static Mirror mirror = new Mirror(); - String name; - int flag = 0; - - public MakeUp(String name,int flag) { - this.name = name; - this.flag = flag; - - } - - @Override - public void run() { - try { - makeup(); - } catch (InterruptedException e) { - e.printStackTrace(); - } - - } - private void makeup() throws InterruptedException { - if (flag == 0){ - synchronized (lipstick){ - System.out.println(this.name+"拿到了口红"); - Thread.sleep(1000); - - } - synchronized (mirror){ - System.out.println(this.name+"拿到了镜子"); - } - }else { - synchronized (mirror){ - System.out.println(this.name+"拿到了镜子"); - Thread.sleep(1000); - } - synchronized (lipstick){ - System.out.println(this.name+"拿到了口红"); - } - } - } -} \ No newline at end of file diff --git a/threadtest/src/com/xiaokai/threadtest/lesson02/TestJUC.java b/threadtest/src/com/xiaokai/threadtest/lesson02/TestJUC.java deleted file mode 100644 index 3ba2e09..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson02/TestJUC.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.xiaokai.threadtest.lesson02; - -import java.util.concurrent.CopyOnWriteArrayList; - -//测试JUC安全类型的集合 -public class TestJUC { - public static void main(String[] args) { - CopyOnWriteArrayList arrayList = new CopyOnWriteArrayList(); - for (int i = 0; i < 10000; i++) { - new Thread(()->{ - arrayList.add(Thread.currentThread().getName()); - }).start(); - } - try { - Thread.sleep(2000); - } catch (InterruptedException e) { - e.printStackTrace(); - } - System.out.println(arrayList.size()); - } - -} diff --git a/threadtest/src/com/xiaokai/threadtest/lesson02/TestLock.java b/threadtest/src/com/xiaokai/threadtest/lesson02/TestLock.java deleted file mode 100644 index 1f3dbcc..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson02/TestLock.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.xiaokai.threadtest.lesson02; - -import java.util.concurrent.locks.ReentrantLock; - -public class TestLock { - public static void main(String[] args) { - BuyTicket2 ticket2 = new BuyTicket2(); - new Thread(ticket2,"小明").start(); - new Thread(ticket2,"黄牛党").start(); - } -} -class BuyTicket2 implements Runnable{ - int num = 10; - @Override - public void run() { - while (num > 0){ - buy(); - } - - } - private void buy(){ - final ReentrantLock lock = new ReentrantLock(); - lock.lock(); - try { - - if (num <= 0){ - System.out.println("票没有了"); - } - try { - Thread.sleep(1000); - } catch (InterruptedException e) { - e.printStackTrace(); - } - - System.out.println(Thread.currentThread().getName()+"拿到了第"+ num-- +"张票"); - } finally { - lock.unlock(); - } - } -} diff --git a/threadtest/src/com/xiaokai/threadtest/lesson02/UnSafeBank.java b/threadtest/src/com/xiaokai/threadtest/lesson02/UnSafeBank.java deleted file mode 100644 index c914f42..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson02/UnSafeBank.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.xiaokai.threadtest.lesson02; - -public class UnSafeBank { - public static void main(String[] args) { - Account account = new Account("存款", 1000); - Drawing you = new Drawing("you", account, 500); - Drawing me = new Drawing("me", account, 1000); - - you.start();me.start(); - - } -} -class Account{ - public String name; - public int money; - - public Account(String name, int money) { - this.name = name; - this.money = money; - } -} -class Drawing extends Thread{ - private String name; - private Account account; - private int drawingMoney,nowMoney; - - public Drawing(String name, Account account, int drawingMoney) { - super(name); - this.drawingMoney = drawingMoney; - this.account = account; - } - - @Override - public void run() { - synchronized (account){ - if (account.money - drawingMoney < 0){ - System.out.println(Thread.currentThread().getName()+"钱不够,取不出来"); - return; - } - try { - Thread.sleep(1000); - } catch (InterruptedException e) { - e.printStackTrace(); - } - account.money -= drawingMoney; - nowMoney += drawingMoney; - System.out.println(account.name+"账户余额"+account.money); - System.out.println(Thread.currentThread().getName()+"现在手里有"+nowMoney); - } - - } -} diff --git a/threadtest/src/com/xiaokai/threadtest/lesson02/UnSafeBuyTicket.java b/threadtest/src/com/xiaokai/threadtest/lesson02/UnSafeBuyTicket.java deleted file mode 100644 index ad6d629..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson02/UnSafeBuyTicket.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.xiaokai.threadtest.lesson02; - -public class UnSafeBuyTicket { - public static void main(String[] args) { - BuyTicket ticket = new BuyTicket(); - new Thread(ticket,"小明").start(); - new Thread(ticket,"我").start(); - new Thread(ticket,"黄牛").start(); - - } -} -class BuyTicket implements Runnable{ - private int num = 1000; - private boolean flag = true; - @Override - public void run() { - while (flag){ - buy(); - } - - } - public synchronized void buy(){ - if (num <= 0 ){ - flag = false; - return; - } -// try { -// Thread.sleep(100); -// } catch (InterruptedException e) { -// e.printStackTrace(); -// } - System.out.println(Thread.currentThread().getName()+"拿到了第"+ num-- +"张票"); - } -} \ No newline at end of file diff --git a/threadtest/src/com/xiaokai/threadtest/lesson02/UnsafeList.java b/threadtest/src/com/xiaokai/threadtest/lesson02/UnsafeList.java deleted file mode 100644 index 0471e76..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson02/UnsafeList.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.xiaokai.threadtest.lesson02; - -import java.util.ArrayList; - -/** - * 线程不安全的集合 - */ -public class UnsafeList { - public static void main(String[] args) { - ArrayList arrayList = new ArrayList(); - for (int i = 0; i < 100000; i++) { - new Thread(()->{ - synchronized (arrayList){ - arrayList.add(Thread.currentThread().getName()); - } - - }).start(); - } - try { - Thread.sleep(1000); - } catch (InterruptedException e) { - e.printStackTrace(); - } - System.out.println(arrayList.size()); - } -} diff --git a/threadtest/src/com/xiaokai/threadtest/lesson03/TestNewThread.java b/threadtest/src/com/xiaokai/threadtest/lesson03/TestNewThread.java deleted file mode 100644 index f00be60..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson03/TestNewThread.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.xiaokai.threadtest.lesson03; - -import java.util.concurrent.Callable; -import java.util.concurrent.ExecutionException; -import java.util.concurrent.Future; -import java.util.concurrent.FutureTask; - -public class TestNewThread { - public static void main(String[] args) { - new MyThread1().start(); - MyThread2 thread2 = new MyThread2(); - new Thread(thread2).start(); - FutureTask futureTask = new FutureTask(new MyThread3()); - new Thread(futureTask).start(); - try { - Integer integer = futureTask.get(); - System.out.println(integer); - } catch (InterruptedException e) { - e.printStackTrace(); - } catch (ExecutionException e) { - e.printStackTrace(); - } - } -} -class MyThread1 extends Thread{ - @Override - public void run() { - System.out.println("MyThread1"); - } -} -class MyThread2 implements Runnable{ - @Override - public void run() { - System.out.println("MyThread2"); - } -} -class MyThread3 implements Callable{ - @Override - public Integer call() throws Exception { - System.out.println("MyThread3"); - return 100; - } -} diff --git a/threadtest/src/com/xiaokai/threadtest/lesson03/TestPC.java b/threadtest/src/com/xiaokai/threadtest/lesson03/TestPC.java deleted file mode 100644 index f1a7a82..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson03/TestPC.java +++ /dev/null @@ -1,98 +0,0 @@ -package com.xiaokai.threadtest.lesson03; - -/** - * 线程通讯,生产者消费者模式:管程法 - */ -public class TestPC { - public static void main(String[] args) { - Buffer buffer = new Buffer(); - new Producer(buffer).start(); - new Consumer(buffer).start(); - } -} -//产品 -class Chicken { - int ID; - - public Chicken(int ID) { - this.ID = ID; - } -} -//生产者 -class Producer extends Thread{ - Buffer buffer; - public Producer(Buffer buffer){ - this.buffer = buffer; - } - //生产 - @Override - public void run() { - for (int i = 0; i < 100; i++) { - try { - buffer.push(new Chicken(i)); - System.out.println("生产了第"+i+"只鸡"); - } catch (InterruptedException e) { - e.printStackTrace(); - } - } - } -} -//消费者 -class Consumer extends Thread{ - Buffer buffer; - public Consumer(Buffer buffer){ - this.buffer = buffer; - } - //消费 - @Override - public void run() { - for (int i = 0; i < 100; i++) { - try { - buffer.pop(); - System.out.println("消费了第"+buffer.pop().ID+"只鸡"); - } catch (InterruptedException e) { - e.printStackTrace(); - } - } - } -} -//缓冲区 -class Buffer extends Thread{ - //缓冲区大小 - Chicken[] chickens = new Chicken[10]; - //计数器 - int offset = 0; - - //构造方法 - public Buffer(){ - - } - //生产方法 - public synchronized void push(Chicken chicken) throws InterruptedException { - //如果缓冲区满了,就要通知消费者消费,自己wait - if (offset == chickens.length){ - wait(); - } - //没有满将chicken放入缓冲区 - chickens[offset] = chicken; - offset++; - //可以通知消费者消费 - notifyAll(); - } - //消费方法 - public synchronized Chicken pop() throws InterruptedException { - //如果缓冲区是空的就要wait等待生产者生成产品 - if (offset == 0){ - wait(); - } - //没有空的话,取走缓冲区的chicken, - offset--; - Chicken chicken = chickens[offset]; - - - //可以通知生产者生产了 - notifyAll(); - return chicken; - } -} - diff --git a/threadtest/src/com/xiaokai/threadtest/lesson03/TestPC2.java b/threadtest/src/com/xiaokai/threadtest/lesson03/TestPC2.java deleted file mode 100644 index d49671c..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson03/TestPC2.java +++ /dev/null @@ -1,79 +0,0 @@ -package com.xiaokai.threadtest.lesson03; -/** - * 测试生产者消费者问题 :信号灯法 - */ -public class TestPC2 { - public static void main(String[] args) { - SMovie movie = new SMovie(); - new Player(movie).start(); - new Watcher(movie).start(); - } -} -//生产者--演员 -class Player extends Thread{ - SMovie movie; - public Player(SMovie movie){ - this.movie = movie; - } - - @Override - public void run() { - for (int i = 1; i <= 20; i++) { - this.movie.play("觉醒年代"+i); - } - } -} -//消费者--观众 -class Watcher extends Thread{ - SMovie movie; - public Watcher(SMovie movie){ - this.movie = movie; - } - - @Override - public void run() { - for (int i = 1; i <= 20; i++) { - this.movie.watch(); - } - } -} -//产品--电影 -class SMovie extends Thread{ - //信号灯标志位 - boolean flag = true; - public String movie; -// public SMovie(String movie){ -// this.movie = movie; -// } - - //生产方法 - public synchronized void play(String movie){ - if (!flag){ - try { - this.wait(); - } catch (InterruptedException e) { - e.printStackTrace(); - } - } - System.out.println("正在放映:"+movie); - this.flag = !flag;//信号灯操作反转 - this.movie = movie; - //通知观众观看 - notifyAll(); - } - //消费方法 - public synchronized void watch(){ - //正在制作的电影的话无法观看 - if (flag){ - try { - this.wait(); - } catch (InterruptedException e) { - e.printStackTrace(); - } - } - System.out.println("观看了:"+movie); - this.flag = !flag;//信号灯操作反转 - //通知演员制作电影 - notifyAll(); - } -} diff --git a/threadtest/src/com/xiaokai/threadtest/lesson03/TestPool.java b/threadtest/src/com/xiaokai/threadtest/lesson03/TestPool.java deleted file mode 100644 index 7a4c1bf..0000000 --- a/threadtest/src/com/xiaokai/threadtest/lesson03/TestPool.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.xiaokai.threadtest.lesson03; - -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; - -public class TestPool { - public static void main(String[] args) { - ExecutorService service = Executors.newFixedThreadPool(10); - service.execute(new MyThread()); - service.execute(new MyThread()); - service.execute(new MyThread()); - service.execute(new MyThread()); - - service.shutdown(); - } -} -class MyThread implements Runnable{ - @Override - public void run() { - System.out.println(Thread.currentThread().getName()); - } -} diff --git a/threadtest/threadtest.iml b/threadtest/threadtest.iml deleted file mode 100644 index 134c70e..0000000 --- a/threadtest/threadtest.iml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file