├── .gitignore ├── CONTRIBUTING.md ├── README.md ├── assets └── img │ └── syllabus_general.png ├── process └── feedbacks_retro.md ├── roles.md ├── stage #0 ├── extra │ ├── Development Environment.pdf │ └── Methods, Code Style, Clean Code, TDD.pdf ├── introduction │ └── content.md ├── light-talks │ ├── annotations │ │ ├── Java annotations.docx │ │ └── Java annotations.pptx │ ├── enums │ │ ├── Enums.pptx │ │ └── enums │ │ │ ├── enums.iml │ │ │ └── src │ │ │ └── com │ │ │ └── epam │ │ │ └── mjs │ │ │ ├── Currency.java │ │ │ ├── CurrencyEnum.java │ │ │ ├── Main.java │ │ │ ├── RequestState.java │ │ │ ├── Season.java │ │ │ ├── Singleton.java │ │ │ ├── Unit.java │ │ │ └── Wallet.java │ ├── garbage-collection │ │ ├── GC-speech.docx │ │ ├── GC.pptx │ │ └── demo-gc │ │ │ └── src │ │ │ └── main │ │ │ └── java │ │ │ └── com │ │ │ └── epam │ │ │ └── mjs │ │ │ ├── ClassWithBadFinalizer.java │ │ │ ├── DemoFinalizer.java │ │ │ ├── DemoInnerClass.java │ │ │ ├── DemoNormal.java │ │ │ ├── DemoStatic.java │ │ │ └── OuterClass.java │ ├── intellij-idea │ │ ├── IntellijIdea_cheatsheet.docx │ │ ├── IntellijIdea_cheatsheet.pdf │ │ ├── epam-demo │ │ │ ├── .gitignore │ │ │ ├── build.gradle │ │ │ ├── gradle │ │ │ │ └── wrapper │ │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ │ └── gradle-wrapper.properties │ │ │ ├── gradlew │ │ │ ├── gradlew.bat │ │ │ ├── settings.gradle │ │ │ └── src │ │ │ │ └── main │ │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── epam │ │ │ │ └── mjc │ │ │ │ ├── debugging │ │ │ │ └── Demo_01.java │ │ │ │ ├── hotkeys │ │ │ │ └── Demo_01.java │ │ │ │ ├── inspections │ │ │ │ ├── Demo_01.java │ │ │ │ ├── Demo_02.java │ │ │ │ └── Demo_03.java │ │ │ │ └── live │ │ │ │ └── template │ │ │ │ └── Demo_01.java │ │ └── lecturePlan.md │ ├── java-cli │ │ ├── Java CLI.pdf │ │ └── examples │ │ │ ├── ArgsExample.java │ │ │ ├── ConsoleInput.java │ │ │ ├── Hello.java │ │ │ ├── NumArgs.java │ │ │ ├── Person.java │ │ │ └── PersonIntroduction.java │ ├── java-memory-model │ │ ├── Java memory model.docx │ │ └── Java memory model.pptx │ ├── oop-thinking │ │ └── OOP, Classes.pdf │ ├── reflection-api │ │ └── Reflection API.pdf │ └── regex │ │ ├── regex.pptx │ │ └── regex_demo │ │ ├── regex_demo.iml │ │ └── src │ │ └── com │ │ └── epam │ │ └── mjs │ │ └── Main.java ├── module #1. Java Overview │ ├── content.md │ └── img │ │ └── compiler-flow.png ├── module #2. Infrastructure, AutoCode │ ├── content.md │ └── img │ │ └── jdk-structure.png ├── module #3. Java Lang Syntax │ ├── advance │ │ ├── operators-and-types.md │ │ ├── operators-priority.md │ │ ├── type-casting.md │ │ └── variables-size.md │ ├── content.md │ └── img │ │ ├── img_1.png │ │ ├── img_10.png │ │ ├── img_11.png │ │ ├── img_12.png │ │ ├── img_13.png │ │ ├── img_14.png │ │ ├── img_15.png │ │ ├── img_16.png │ │ ├── img_17.png │ │ ├── img_18.png │ │ ├── img_19.png │ │ ├── img_2.png │ │ ├── img_3.png │ │ ├── img_4.png │ │ ├── img_5.png │ │ ├── img_6.png │ │ ├── img_7.png │ │ ├── img_8.png │ │ └── img_9.png ├── module #4. Java Fundamentals │ ├── lesson #1. IF statement │ │ ├── content.md │ │ └── img │ │ │ ├── img_1.png │ │ │ ├── img_2.png │ │ │ ├── img_3.png │ │ │ ├── img_4.png │ │ │ ├── img_5.png │ │ │ └── img_6.png │ └── lesson #2. FOR statement │ │ ├── content.md │ │ ├── final-task │ │ ├── content.md │ │ └── img │ │ │ ├── img.png │ │ │ └── img_1.png │ │ └── img │ │ ├── img.png │ │ ├── img_1.png │ │ ├── img_2.png │ │ ├── img_3.png │ │ ├── img_4.png │ │ ├── img_5.png │ │ └── img_6.png ├── module #5. Algorithms and Data Structures │ ├── content.md │ └── img │ │ ├── algorithm_model.png │ │ ├── array_0.png │ │ ├── array_1.png │ │ ├── array_2.png │ │ ├── array_3.png │ │ ├── array_4.png │ │ ├── array_5.png │ │ ├── array_assigning_value.png │ │ ├── array_initialization.png │ │ ├── array_initialization_curly_braces.png │ │ ├── arraycopy.png │ │ ├── big_o_complexity_chart.jpeg │ │ ├── big_o_notation.png │ │ ├── binary_search.png │ │ ├── deletion_in_array_1.png │ │ ├── deletion_in_array_2.png │ │ ├── deletion_in_array_3.png │ │ ├── deletion_in_array_4.png │ │ ├── deletion_in_linked_list_1.png │ │ ├── deletion_in_linked_list_2.png │ │ ├── deletion_in_linked_list_3.png │ │ ├── divide_and_conquer.png │ │ ├── hash_tables_collisions.png │ │ ├── hash_tables_diagram.png │ │ ├── insert_in_non_vacant_array_1.png │ │ ├── insert_in_non_vacant_array_2.png │ │ ├── insert_in_non_vacant_array_3.png │ │ ├── insert_in_non_vacant_array_4.png │ │ ├── insertion_in_array_1.png │ │ ├── insertion_in_array_2.png │ │ ├── insertion_in_array_3.png │ │ ├── insertion_in_array_4.png │ │ ├── linear_data_structure.png │ │ ├── linked_list_need_1.png │ │ ├── linked_list_need_2.png │ │ ├── linked_list_need_3.png │ │ ├── linked_list_need_4.png │ │ ├── linked_list_overview.png │ │ ├── merge_sort.png │ │ ├── non_linear_data_structure.png │ │ ├── ragged_two_dimensional_array.png │ │ ├── ragged_two_dimensional_array_2.png │ │ ├── two_dimensional_array.png │ │ └── two_dimensional_array_2.png └── module #6. OOP Fundamentals │ └── content.md ├── stage #1 ├── light-talks │ ├── bitwise-operators │ │ ├── build.gradle │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── settings.gradle │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── school │ │ │ │ └── mjc │ │ │ │ ├── bitwise │ │ │ │ ├── Basics.java │ │ │ │ ├── BitSets.java │ │ │ │ ├── Flags.java │ │ │ │ ├── OddOccurrences.java │ │ │ │ ├── PowerOfTwo.java │ │ │ │ └── Strings.java │ │ │ │ └── jmh │ │ │ │ ├── OddOccurrencesBenchmark.java │ │ │ │ └── StringsBenchmark.java │ │ │ └── test │ │ │ └── java │ │ │ └── bitwise │ │ │ ├── OddOccurrencesTest.java │ │ │ ├── PowerOfTwoTest.java │ │ │ └── StringsTest.java │ ├── concurrency │ │ ├── multithreadingpt.pdf │ │ └── multithreading │ │ │ ├── .gitignore │ │ │ ├── build.gradle.kts │ │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ │ ├── gradlew │ │ │ ├── gradlew.bat │ │ │ ├── settings.gradle.kts │ │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── epam │ │ │ │ └── mjc │ │ │ │ ├── Main.java │ │ │ │ ├── collection │ │ │ │ └── ConcurrentHashMapDemo.java │ │ │ │ ├── creation │ │ │ │ ├── HelloRunnable.java │ │ │ │ ├── HelloThread.java │ │ │ │ └── ThreadCreation.java │ │ │ │ ├── daemon │ │ │ │ └── DaemonThread.java │ │ │ │ ├── deadlock │ │ │ │ └── DeadLockDemo.java │ │ │ │ ├── exception │ │ │ │ ├── LambdaUncaughtExcHandler.java │ │ │ │ └── UncaughtExceptionHandlerDemo.java │ │ │ │ ├── executor │ │ │ │ ├── ExecutorExample.java │ │ │ │ ├── ExecutorInvokeAll.java │ │ │ │ └── ShortDemo.java │ │ │ │ ├── forkjoin │ │ │ │ ├── ForkJoinAdd.java │ │ │ │ └── ForkJoinFibonacci.java │ │ │ │ ├── interthreadcommunication │ │ │ │ └── ThreadCommunication.java │ │ │ │ ├── join │ │ │ │ ├── TestJoin.java │ │ │ │ └── ThreadJoin.java │ │ │ │ ├── lock │ │ │ │ └── CommonResourceLock.java │ │ │ │ ├── priority │ │ │ │ ├── Demo4.java │ │ │ │ └── PriorityThreadDemo.java │ │ │ │ ├── state │ │ │ │ ├── BlockedState.java │ │ │ │ ├── MainThreadDemo.java │ │ │ │ ├── ThreadState.java │ │ │ │ ├── TimedWaitingState.java │ │ │ │ └── WaitingState.java │ │ │ │ ├── threadgroup │ │ │ │ └── ThreadGroupDemo.java │ │ │ │ └── threadsafety │ │ │ │ ├── NonSyncProblem.java │ │ │ │ ├── atomic │ │ │ │ └── AtomicCounter.java │ │ │ │ ├── synchronizedk │ │ │ │ └── SynchronizedCounter.java │ │ │ │ └── volatilek │ │ │ │ ├── TaskRunner.java │ │ │ │ └── VolatileTest.java │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── epam │ │ │ └── mjc │ │ │ └── creation │ │ │ └── ThreadCreationTest.java │ ├── exceptions │ │ ├── Exceptions │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ ├── main │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── example │ │ │ │ │ ├── Main.java │ │ │ │ │ ├── exceptions │ │ │ │ │ ├── ArrayManager.java │ │ │ │ │ ├── Calculator.java │ │ │ │ │ ├── EmployeeNotFoundException.java │ │ │ │ │ ├── FileManager.java │ │ │ │ │ ├── Person.java │ │ │ │ │ ├── ScannerManager.java │ │ │ │ │ ├── TeacherDataTooLargeException.java │ │ │ │ │ └── UserService.java │ │ │ │ │ └── text.txt │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── example │ │ │ │ └── exceptions │ │ │ │ └── UserServiceTest.java │ │ └── ExceptionsPresentation.pptx │ ├── functional-programming │ │ └── Functional Programming.pptx │ ├── io-streams │ │ ├── .gitignore │ │ ├── characteroutput.txt │ │ ├── demo.xml │ │ ├── demo1.txt │ │ ├── io_streams_change (1).pptx │ │ └── src │ │ │ └── main │ │ │ └── java │ │ │ └── com │ │ │ └── epam │ │ │ └── mjc │ │ │ └── io │ │ │ ├── ByteStream.java │ │ │ ├── ChannelDemo.java │ │ │ ├── CharStream.java │ │ │ ├── CharStreamByLine.java │ │ │ ├── ConvertBytesToChars.java │ │ │ └── FileClass.java │ ├── java-11-to-19-language-features │ │ ├── build.gradle │ │ ├── gradle.properties │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── settings.gradle │ │ └── src │ │ │ └── main │ │ │ └── java │ │ │ └── com │ │ │ └── shankhadeepghoshal │ │ │ ├── Main.java │ │ │ ├── collections │ │ │ └── CollectionUtils.java │ │ │ ├── httpclient │ │ │ └── RestService.java │ │ │ ├── patternmatchinginstanceof │ │ │ └── ShapeUtils.java │ │ │ ├── sealedclassandrecords │ │ │ ├── Circle.java │ │ │ ├── Ellipse.java │ │ │ ├── Parallelogram.java │ │ │ ├── Rectangle.java │ │ │ ├── SemiCircle.java │ │ │ ├── Shape.java │ │ │ ├── ShapeEnum.java │ │ │ └── Triangle.java │ │ │ └── strings │ │ │ └── StringUtils.java │ ├── priority-queue │ │ └── Heap_demo │ │ │ ├── .gitignore │ │ │ ├── pom.xml │ │ │ ├── readme.md │ │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── mjc │ │ │ │ └── demo │ │ │ │ ├── model │ │ │ │ └── BookItem.java │ │ │ │ └── service │ │ │ │ ├── BinaryHeap.java │ │ │ │ └── ItemStatisticService.java │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── mjc │ │ │ └── model │ │ │ └── service │ │ │ ├── BinaryHeapTest.java │ │ │ └── BookItemStatisticServiceTest.java │ ├── testing │ │ ├── Demo │ │ │ ├── build.gradle │ │ │ ├── gradle │ │ │ │ └── wrapper │ │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ │ └── gradle-wrapper.properties │ │ │ ├── gradlew │ │ │ ├── gradlew.bat │ │ │ ├── settings.gradle │ │ │ └── src │ │ │ │ ├── main │ │ │ │ └── java │ │ │ │ │ └── com │ │ │ │ │ └── epam │ │ │ │ │ └── mjc │ │ │ │ │ ├── Main.java │ │ │ │ │ ├── exception │ │ │ │ │ ├── CustomerException.java │ │ │ │ │ ├── HotelRoomException.java │ │ │ │ │ └── ValidationException.java │ │ │ │ │ ├── model │ │ │ │ │ ├── Booking.java │ │ │ │ │ ├── Customer.java │ │ │ │ │ └── HotelRoom.java │ │ │ │ │ ├── repository │ │ │ │ │ ├── BookingRepository.java │ │ │ │ │ ├── CustomerRepository.java │ │ │ │ │ └── HotelRoomRepository.java │ │ │ │ │ └── service │ │ │ │ │ ├── BookingService.java │ │ │ │ │ ├── BookingServiceImpl.java │ │ │ │ │ └── BookingValidator.java │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── epam │ │ │ │ └── mjc │ │ │ │ └── service │ │ │ │ └── BookingServiceTest.java │ │ └── Presentation.pptx │ └── time-api │ │ ├── Java Date Time API.pptx │ │ └── date-time │ │ └── src │ │ └── test │ │ └── java │ │ └── org │ │ └── example │ │ ├── ClockTests.java │ │ ├── DateTimeFormatterTests.java │ │ ├── InstantTests.java │ │ ├── LocalDateTimeTests.java │ │ ├── NewAndOldAPITests.java │ │ ├── OffsetDateTimeTests.java │ │ ├── PeriodAndDurationTests.java │ │ └── TemporalAdjusterTests.java ├── module #1. Exceptions │ ├── .keep │ └── lesson #9 Exceptions │ │ ├── How_to_Catch_and_Handle_Exceptions.md │ │ ├── Java Training Lesson 9 Exceptions.pdf │ │ ├── The_Exceptions_Thrown_by_a_Method.md │ │ ├── exceptions_and_method_overriding.md │ │ ├── how_to_write_your_own_exception_classes.md │ │ ├── lesson_content.md │ │ ├── media │ │ ├── CustomExceptionSyntax.png │ │ ├── The_Exceptions_Thrown_by_a_Method.png │ │ ├── handlingMethod.png │ │ ├── howToCrateCustomEx.png │ │ ├── image1.png │ │ ├── image2.png │ │ ├── image3.png │ │ ├── image4.png │ │ ├── test-image.png │ │ ├── try_catch_finally_syntax_1.png │ │ ├── try_catch_finally_syntax_2.png │ │ ├── try_catch_finally_syntax_3.png │ │ └── try_catch_finally_syntax_4.png │ │ ├── the_three_kinds_of_exceptions.md │ │ └── what_is_an_exception.md ├── module #2. Strings │ ├── .keep │ ├── lesson #1. String │ │ ├── content.md │ │ └── media │ │ │ ├── charSequence.png │ │ │ ├── stringHierachy.png │ │ │ └── stringPool.png │ ├── lesson #2. StringBuffer & StringBuilder │ │ └── content.md │ └── lesson #3. StringJoiner & StringTokenizer │ │ ├── content.md │ │ └── media │ │ └── StringTokenizer.png ├── module #3. Generics │ └── .keep ├── module #4. Collections │ ├── .keep │ ├── lesson #1. Overview │ │ ├── media │ │ │ └── hierarchy.png │ │ └── overview.md │ ├── lesson #2. List │ │ ├── list.md │ │ └── media │ │ │ ├── AbstractList.png │ │ │ ├── Collections.png │ │ │ ├── LinkedList.png │ │ │ └── LinkedList1.png │ ├── lesson #3. Set │ │ ├── media │ │ │ ├── LinkedHashMapVsLinkedHashSetDiff.jpg │ │ │ └── set_hierarchy.png │ │ └── set.md │ ├── lesson #4. Map │ │ ├── map.md │ │ └── media │ │ │ ├── LinkedHashMap-Node-in-Java.png │ │ │ ├── Treemap.png │ │ │ └── map_hierarchy.png │ └── lesson #5 Queue │ │ ├── media │ │ └── queue_hierarchy.png │ │ └── queue.md ├── module #5. Functional way of Java │ ├── .keep │ ├── lesson #1. Functional Interfaces │ │ └── overview.md │ ├── lesson #2. Lambda Expression │ │ └── overview.md │ ├── lesson #3. Functional Composition │ │ └── overview.md │ ├── lesson #4. Method Reference │ │ └── overview.md │ ├── lesson #5. Stream API │ │ └── overview.md │ ├── lesson #6. Optional │ │ └── overview.md │ ├── media │ │ ├── flatMap.png │ │ └── streams.png │ └── overview.md ├── module #6. IO, NIO │ ├── .keep │ ├── lesson #1. IO │ │ ├── assets │ │ │ ├── basic_stream_closing.png │ │ │ ├── byte_stream_example.png │ │ │ ├── character_stream_usage.png │ │ │ ├── detailed_input_output_scheme.png │ │ │ ├── reading_stream_scheme.png │ │ │ ├── reading_writing_file_example.png │ │ │ ├── simplified_byte_stream_hierarchy.png │ │ │ ├── try_with_resources.png │ │ │ └── writing_stream_scheme.png │ │ └── content.md │ └── lesson #2. NIO │ │ ├── assets │ │ ├── buffer_oriented_io.png │ │ ├── byte_completeness_check.png │ │ ├── classic_io_server_design.png │ │ ├── creating_path_instance.png │ │ ├── data_reading_from_channel.png │ │ ├── io_reading_data_from_blocking_stream.png │ │ ├── read_bytes_io.png │ │ ├── read_bytes_nio.png │ │ ├── reading_with_nio.png │ │ ├── single_thread_manage_multiple_connections.png │ │ └── stream_oriented_io.png │ │ └── content.md ├── module #7. Data Formats │ ├── .keep │ ├── lesson #1. Overview │ │ └── content.md │ ├── lesson #2. Xml │ │ └── content.md │ ├── lesson #3. Json │ │ └── content.md │ └── lesson #4. Yaml │ │ └── content.md └── module #8. Concurrency │ ├── .keep │ ├── Multithreading presentation.pdf │ └── code │ ├── build.gradle │ ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ ├── settings.gradle │ └── src │ └── main │ └── java │ └── com │ └── epam │ └── mjc │ └── demo │ ├── Demo1.java │ ├── Demo10.java │ ├── Demo11.java │ ├── Demo12.java │ ├── Demo13.java │ ├── Demo13_1.java │ ├── Demo14.java │ ├── Demo15.java │ ├── Demo16.java │ ├── Demo16_1.java │ ├── Demo17.java │ ├── Demo18.java │ ├── Demo19.java │ ├── Demo2.java │ ├── Demo20.java │ ├── Demo3.java │ ├── Demo4.java │ ├── Demo5.java │ ├── Demo6.java │ ├── Demo7.java │ ├── Demo8.java │ ├── Demo9.java │ └── Playground.java ├── stage #2 ├── light-talks │ ├── build-tools │ │ ├── build-tools-ant │ │ │ ├── .gitignore │ │ │ ├── build-tools-ant.iml │ │ │ ├── build.xml │ │ │ ├── lib │ │ │ │ └── guava-31.1-jre.jar │ │ │ └── src │ │ │ │ └── school │ │ │ │ └── mjc │ │ │ │ └── build │ │ │ │ └── tools │ │ │ │ └── ant │ │ │ │ └── Main.java │ │ ├── build-tools-gradle │ │ │ ├── .gitignore │ │ │ ├── build-tools-gradle.iml │ │ │ ├── build.gradle.kts │ │ │ ├── foo.bar │ │ │ ├── gradle │ │ │ │ └── wrapper │ │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ │ └── gradle-wrapper.properties │ │ │ ├── gradlew │ │ │ ├── gradlew.bat │ │ │ ├── settings.gradle.kts │ │ │ └── src │ │ │ │ └── main │ │ │ │ ├── java │ │ │ │ └── school │ │ │ │ │ └── mjc │ │ │ │ │ └── build │ │ │ │ │ └── tools │ │ │ │ │ └── gradle │ │ │ │ │ └── Main.java │ │ │ │ └── resources │ │ │ │ └── foo.bar │ │ ├── build-tools-maven │ │ │ ├── build-tools-maven.iml │ │ │ ├── foo.bar │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── main │ │ │ │ ├── java │ │ │ │ └── school │ │ │ │ │ └── mjc │ │ │ │ │ └── build │ │ │ │ │ └── tools │ │ │ │ │ └── maven │ │ │ │ │ └── Main.java │ │ │ │ └── resources │ │ │ │ └── foo.bar │ │ ├── buildTools.pptx │ │ └── plan.md │ └── code-quality-tools │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── config │ │ ├── checkstyle │ │ │ ├── checkstyle-suppressions.xml │ │ │ └── checkstyle.xml │ │ ├── owasp │ │ │ └── owasp-suppressions.xml │ │ ├── spotbugs │ │ │ └── spotbugs-exclude.xml │ │ └── spotless │ │ │ ├── .importorder │ │ │ └── formatter.xml │ │ ├── docker-compose.yaml │ │ ├── gradle │ │ └── wrapper │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── settings.gradle │ │ └── src │ │ ├── main │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── qualitygates │ │ │ │ ├── QualityGatesApplication.java │ │ │ │ ├── demo │ │ │ │ ├── SpotBugsDemo.java │ │ │ │ └── SpotlessDemo.java │ │ │ │ └── dto │ │ │ │ └── UserDTO.java │ │ └── resources │ │ │ └── application.properties │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── qualitygates │ │ └── demo │ │ └── SpotBugsDemoTest.java ├── module #1. GIT & Build Tools │ ├── build tools │ │ └── build_tools_task.md │ ├── git │ │ ├── git_task.md │ │ └── media │ │ │ ├── image1.png │ │ │ ├── image10.png │ │ │ ├── image11.png │ │ │ ├── image12.png │ │ │ ├── image13.png │ │ │ ├── image14.png │ │ │ ├── image15.png │ │ │ ├── image2.png │ │ │ ├── image3.png │ │ │ ├── image4.png │ │ │ ├── image5.png │ │ │ ├── image6.png │ │ │ ├── image7.png │ │ │ ├── image8.png │ │ │ └── image9.png │ └── git_build_tools_module.md ├── module #2. Web, HTTP(s) methods, Java EE Servlets │ ├── lesson #1 Web & HTTP │ │ ├── content.md │ │ └── media │ │ │ ├── http_architecture.png │ │ │ ├── http_message_structure.png │ │ │ ├── http_request_headers.png │ │ │ ├── http_response_headers.png │ │ │ ├── http_status_codes.png │ │ │ ├── road.jpeg │ │ │ └── сlient_server_interaction.png │ ├── lesson #2 Servlets │ │ ├── content.md │ │ └── media │ │ │ ├── servlet_architecture.png │ │ │ └── servlet_hierarchy.png │ ├── lesson #3 Servlet add-ons │ │ ├── content.md │ │ └── media │ │ │ ├── add_config.png │ │ │ ├── add_config_2.png │ │ │ ├── app_context.png │ │ │ ├── artifact.png │ │ │ ├── config.png │ │ │ └── launch_btn.png │ └── module_description.md ├── module #3. SQL │ ├── lesson #1. Database creation │ │ └── content.md │ ├── lesson #10. Aggregate Functions │ │ └── content.md │ ├── lesson #11. GROUP BY and HAVING │ │ └── content.md │ ├── lesson #12. SubQuery Tutorial │ │ └── content.md │ ├── lesson #13. Unions │ │ └── content.md │ ├── lesson #14. Procedures and Functions │ │ └── content.md │ ├── lesson #15. Views │ │ └── content.md │ ├── lesson #16. Temp tables │ │ └── content.md │ ├── lesson #2. INSERT INTO Query │ │ └── content.md │ ├── lesson #3. ALTER and Constraint │ │ └── content.md │ ├── lesson #4. SELECT Statement │ │ └── content.md │ ├── lesson #5. WHERE Condition │ │ └── content.md │ ├── lesson #6. JOINS Tutorial │ │ └── content.md │ ├── lesson #7. UPDATE Query │ │ └── content.md │ ├── lesson #8. DELETE Query │ │ └── content.md │ └── lesson #9. ORDER BY │ │ └── content.md ├── module #4. Architecture Basics, Patterns, Best Practices │ ├── Java Training Lesson - Design Patterns.pdf │ ├── Java Training Lesson - Info handling.pdf │ └── Java Training Lesson 7.pdf ├── module#5 Engineering Best-Practices │ ├── ReadmeBestPtacticesPart1.md │ └── ReadmeBestPtacticesPart2.md └── module#6 JDBC │ ├── ReadmeJDBC.md │ └── media │ ├── Architecture-of-JDBC.jpeg │ └── url_syntax.png ├── stage #3 ├── Stage_3_Final_Project.pdf ├── light-talks │ ├── bigO │ │ ├── bigO.md │ │ └── bigO.pptx │ ├── encryption │ │ ├── encryption.pptx │ │ └── lecturePlan-encryption.md │ ├── hibernate │ │ ├── Demo │ │ │ ├── .gitignore │ │ │ ├── build.gradle │ │ │ ├── gradle │ │ │ │ └── wrapper │ │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ │ └── gradle-wrapper.properties │ │ │ ├── gradlew │ │ │ ├── gradlew.bat │ │ │ ├── settings.gradle │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── java │ │ │ │ │ └── com │ │ │ │ │ │ └── epam │ │ │ │ │ │ └── mjc │ │ │ │ │ │ └── demo │ │ │ │ │ │ ├── HibernateDemoApplication.java │ │ │ │ │ │ ├── common │ │ │ │ │ │ └── IdSaver.java │ │ │ │ │ │ ├── entity │ │ │ │ │ │ ├── Actor.java │ │ │ │ │ │ ├── Company.java │ │ │ │ │ │ └── Movie.java │ │ │ │ │ │ ├── repository │ │ │ │ │ │ ├── ActorRepository.java │ │ │ │ │ │ ├── CompanyRepository.java │ │ │ │ │ │ └── MovieRepository.java │ │ │ │ │ │ └── runner │ │ │ │ │ │ ├── CreateCommandLineRunner.java │ │ │ │ │ │ ├── LazyCommandLineRunner.java │ │ │ │ │ │ └── SelectCommandLineRunner.java │ │ │ │ └── resources │ │ │ │ │ └── application.properties │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── epam │ │ │ │ └── mjc │ │ │ │ └── demo │ │ │ │ └── HibernateDemoApplicationTests.java │ │ └── Hibernate_presentation.pptx │ ├── liquibase │ │ ├── application │ │ │ ├── .gitignore │ │ │ ├── .mvn │ │ │ │ └── wrapper │ │ │ │ │ ├── maven-wrapper.jar │ │ │ │ │ └── maven-wrapper.properties │ │ │ ├── HELP.md │ │ │ ├── mvnw │ │ │ ├── mvnw.cmd │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── java │ │ │ │ │ └── school │ │ │ │ │ │ └── mjc │ │ │ │ │ │ └── application │ │ │ │ │ │ ├── Application.java │ │ │ │ │ │ ├── controller │ │ │ │ │ │ ├── ExceptionController.java │ │ │ │ │ │ └── UserController.java │ │ │ │ │ │ ├── exception │ │ │ │ │ │ └── UserNotFoundException.java │ │ │ │ │ │ ├── model │ │ │ │ │ │ └── User.java │ │ │ │ │ │ ├── repository │ │ │ │ │ │ └── UserRepository.java │ │ │ │ │ │ └── service │ │ │ │ │ │ ├── UserService.java │ │ │ │ │ │ └── implementation │ │ │ │ │ │ └── UserServiceImpl.java │ │ │ │ └── resources │ │ │ │ │ ├── application.properties │ │ │ │ │ └── db │ │ │ │ │ └── changelog │ │ │ │ │ ├── changelog.xml │ │ │ │ │ ├── changeset-0.1.xml │ │ │ │ │ └── changeset-0.2.sql │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── school │ │ │ │ └── mjc │ │ │ │ └── application │ │ │ │ └── ApplicationTests.java │ │ └── presentation.pptx │ ├── monitoring-java │ │ ├── Java monitoring.docx │ │ ├── Java monitoring.pdf │ │ ├── epam-demo │ │ │ ├── .gradle │ │ │ │ ├── 6.7 │ │ │ │ │ ├── executionHistory │ │ │ │ │ │ ├── executionHistory.bin │ │ │ │ │ │ └── executionHistory.lock │ │ │ │ │ ├── fileChanges │ │ │ │ │ │ └── last-build.bin │ │ │ │ │ ├── fileHashes │ │ │ │ │ │ ├── fileHashes.bin │ │ │ │ │ │ └── fileHashes.lock │ │ │ │ │ ├── gc.properties │ │ │ │ │ └── javaCompile │ │ │ │ │ │ ├── classAnalysis.bin │ │ │ │ │ │ ├── javaCompile.lock │ │ │ │ │ │ └── taskHistory.bin │ │ │ │ ├── buildOutputCleanup │ │ │ │ │ ├── buildOutputCleanup.lock │ │ │ │ │ ├── cache.properties │ │ │ │ │ └── outputFiles.bin │ │ │ │ ├── checksums │ │ │ │ │ └── checksums.lock │ │ │ │ ├── configuration-cache │ │ │ │ │ └── gc.properties │ │ │ │ └── vcs-1 │ │ │ │ │ └── gc.properties │ │ │ ├── build.gradle │ │ │ ├── build │ │ │ │ ├── classes │ │ │ │ │ └── java │ │ │ │ │ │ └── main │ │ │ │ │ │ └── com │ │ │ │ │ │ └── epam │ │ │ │ │ │ └── monitoring │ │ │ │ │ │ ├── Deadlock$LockingThread.class │ │ │ │ │ │ ├── Deadlock.class │ │ │ │ │ │ ├── GCSpammer.class │ │ │ │ │ │ └── MemoryLeak.class │ │ │ │ └── tmp │ │ │ │ │ └── compileJava │ │ │ │ │ └── source-classes-mapping.txt │ │ │ ├── file.jfr │ │ │ ├── filename.jfr │ │ │ ├── gradle │ │ │ │ └── wrapper │ │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ │ └── gradle-wrapper.properties │ │ │ ├── gradlew │ │ │ ├── gradlew.bat │ │ │ ├── settings.gradle │ │ │ └── src │ │ │ │ └── main │ │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── epam │ │ │ │ └── monitoring │ │ │ │ ├── Deadlock.java │ │ │ │ ├── GCSpammer.java │ │ │ │ └── MemoryLeak.java │ │ └── lecturePlan.md │ ├── nosql │ │ ├── lecturePlan.md │ │ ├── mongo │ │ │ ├── data.json │ │ │ └── docker-compose.yaml │ │ ├── neo4j │ │ │ └── docker-compose.yaml │ │ └── nosqlLecture.pptx │ ├── software-development-methodologies │ │ ├── Software_Development_Methodologies.pptx │ │ └── lecturePlan.md │ └── tdd-demo │ │ ├── .gitignore │ │ ├── README.md │ │ ├── address-book.json │ │ ├── build.gradle │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── settings.gradle │ │ ├── src │ │ ├── main │ │ │ └── java │ │ │ │ └── school │ │ │ │ └── mjc │ │ │ │ └── tdd │ │ │ │ ├── AddressRecord.java │ │ │ │ ├── AddressService.java │ │ │ │ ├── FileReader.java │ │ │ │ └── JsonFileReader.java │ │ └── test │ │ │ ├── java │ │ │ └── school │ │ │ │ └── mjc │ │ │ │ └── tdd │ │ │ │ ├── AddressRecordMother.java │ │ │ │ ├── AddressServiceTest.java │ │ │ │ └── JsonFileReaderTest.java │ │ │ └── resources │ │ │ ├── address-book-corrupted.json │ │ │ └── address-book.json │ │ └── tdd.pptx ├── module #1. Architecture Advanced │ ├── .keep │ ├── lesson #1. Layered Architecture │ │ ├── content.md │ │ └── media │ │ │ ├── layered_architecture.png │ │ │ ├── layered_architecture_isolation.png │ │ │ └── pattern_example.png │ ├── lesson #2. MVC │ │ ├── content.md │ │ └── media │ │ │ ├── car_clicker.gif │ │ │ └── mvc.png │ ├── lesson #3. Gradle Modules │ │ ├── content.md │ │ └── media │ │ │ ├── all-structure.png │ │ │ ├── modules.png │ │ │ ├── new-project.png │ │ │ ├── project-parent.png │ │ │ ├── project-structure.png │ │ │ ├── service-build-gradle.png │ │ │ └── settings-gradle.png │ └── module_description.md ├── module #2. Spring Core │ ├── lesson #1. Spring pros and cons │ │ └── content.md │ ├── lesson #2. Spring Architecture │ │ ├── content.md │ │ └── media │ │ │ └── spring-overview.png │ ├── lesson #3. IOC Container │ │ ├── content.md │ │ └── media │ │ │ └── spring-container.png │ ├── lesson #4. Dependency Injection │ │ └── content.md │ ├── lesson #5.1. Annotation-based configuration │ │ └── content.md │ ├── lesson #5.2. Classpath Scanning and Managed Components │ │ └── content.md │ ├── lesson #5.3. Java-based configuration │ │ └── content.md │ ├── lesson #6. Bean scopes and lifecycle │ │ ├── content.md │ │ └── media │ │ │ └── spring-bean-lifecycle.png │ └── module_description.md ├── module #3. ORM │ ├── lesson #1. JPA & Hibernate │ │ ├── content.md │ │ └── media │ │ │ └── orm.jpg │ ├── lesson #2. Defining JPA Entities │ │ └── content.md │ ├── lesson #3. Persistence Context │ │ ├── content.md │ │ └── media │ │ │ ├── JPA_Hibernate.svg │ │ │ ├── data_access_layers.svg │ │ │ ├── jpa-entity-lifecycle.png │ │ │ └── jpa-states.png │ ├── lesson #4. JPQL & HQL │ │ └── content.md │ ├── lesson #5. Criteria API │ │ └── content.md │ ├── lesson #6. Hibernate Caching │ │ ├── content.md │ │ └── media │ │ │ └── hibernate_cache.jpg │ ├── lesson #7. N+1 problem in Hibernate │ │ └── content.md │ └── module_description.md ├── module #4. REST Basics - Spring Web │ ├── lesson #1. REST Basics │ │ └── content.md │ ├── lesson #2. Spring Web Annotations │ │ └── content.md │ ├── lesson #3. Spring MVC │ │ ├── content.md │ │ └── media │ │ │ ├── RequestLifecycle.png │ │ │ └── spring-web-model-view-controller.png │ ├── lesson #4. Spring REST │ │ ├── content.md │ │ └── media │ │ │ └── TypicalСontextHierarchyInSpringWebApplication.PNG │ ├── lesson #5. Exception Handling │ │ └── content.md │ └── module_description.md └── module #5. Documentation and testing tools for REST API │ ├── lesson #1. Swagger and OpenAPI │ ├── content.md │ └── media │ │ ├── a_sample_open_api_document_in_the_swagger_editor.png │ │ ├── api_document_in_swagger_editor.png │ │ ├── api_documentation_with_http_response_code.png │ │ └── swagger_default_documentation.png │ ├── lesson #2. RESTAssured │ └── content.md │ ├── lesson #3. Postman │ ├── content.md │ └── media │ │ ├── Postman1.jpg │ │ ├── Postman2.jpg │ │ └── Postman3.jpg │ ├── lesson #4. Curl │ └── content.md │ ├── lesson #5. JMeter │ ├── content.md │ └── media │ │ ├── JMeter1-Thread-group.png │ │ ├── JMeter2-HTTP-Request.png │ │ ├── JMeter3-API-Parameters-2.png │ │ ├── JMeter4-Listener.png │ │ └── JMeter5-Test-Result.png │ └── module_description.md ├── stage #4 ├── bigdata │ ├── Prerequisites.md │ ├── README.md │ ├── git_workflow.png │ ├── module #1. GIT & Build Tools │ │ └── git_and_maven_task.md │ ├── module #2. Linux & Bash │ │ └── linux_and_bash_task.md │ ├── module #3. Java │ │ ├── java_task.md │ │ └── java_topics.md │ ├── module #4. SQL │ │ ├── sql_task.md │ │ └── sql_topics.md │ └── module #5. CI-CD │ │ └── ci_cd_task.md ├── light-talks │ ├── docker │ │ ├── demo │ │ │ ├── .gradle │ │ │ │ ├── 6.7 │ │ │ │ │ ├── executionHistory │ │ │ │ │ │ ├── executionHistory.bin │ │ │ │ │ │ └── executionHistory.lock │ │ │ │ │ ├── fileChanges │ │ │ │ │ │ └── last-build.bin │ │ │ │ │ ├── fileHashes │ │ │ │ │ │ ├── fileHashes.bin │ │ │ │ │ │ ├── fileHashes.lock │ │ │ │ │ │ └── resourceHashesCache.bin │ │ │ │ │ ├── gc.properties │ │ │ │ │ └── javaCompile │ │ │ │ │ │ ├── javaCompile.lock │ │ │ │ │ │ └── taskHistory.bin │ │ │ │ ├── buildOutputCleanup │ │ │ │ │ ├── buildOutputCleanup.lock │ │ │ │ │ ├── cache.properties │ │ │ │ │ └── outputFiles.bin │ │ │ │ ├── checksums │ │ │ │ │ └── checksums.lock │ │ │ │ ├── configuration-cache │ │ │ │ │ └── gc.properties │ │ │ │ └── vcs-1 │ │ │ │ │ └── gc.properties │ │ │ ├── Dockerfile │ │ │ ├── build.gradle │ │ │ ├── build │ │ │ │ ├── classes │ │ │ │ │ └── java │ │ │ │ │ │ └── main │ │ │ │ │ │ └── com │ │ │ │ │ │ └── epam │ │ │ │ │ │ └── light │ │ │ │ │ │ └── talks │ │ │ │ │ │ └── docker │ │ │ │ │ │ └── Main.class │ │ │ │ ├── libs │ │ │ │ │ └── demo-1.0-SNAPSHOT.jar │ │ │ │ └── tmp │ │ │ │ │ ├── compileJava │ │ │ │ │ └── source-classes-mapping.txt │ │ │ │ │ └── jar │ │ │ │ │ └── MANIFEST.MF │ │ │ ├── gradle │ │ │ │ └── wrapper │ │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ │ └── gradle-wrapper.properties │ │ │ ├── gradlew │ │ │ ├── gradlew.bat │ │ │ ├── settings.gradle │ │ │ └── src │ │ │ │ └── main │ │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── epam │ │ │ │ └── light │ │ │ │ └── talks │ │ │ │ └── docker │ │ │ │ └── Main.java │ │ ├── docker-compose.yaml │ │ ├── docker.md │ │ └── docker.pptx │ ├── reactive │ │ ├── demo │ │ │ ├── .gradle │ │ │ │ ├── 6.7 │ │ │ │ │ ├── executionHistory │ │ │ │ │ │ ├── executionHistory.bin │ │ │ │ │ │ └── executionHistory.lock │ │ │ │ │ ├── fileChanges │ │ │ │ │ │ └── last-build.bin │ │ │ │ │ ├── fileHashes │ │ │ │ │ │ ├── fileHashes.bin │ │ │ │ │ │ ├── fileHashes.lock │ │ │ │ │ │ └── resourceHashesCache.bin │ │ │ │ │ ├── gc.properties │ │ │ │ │ └── javaCompile │ │ │ │ │ │ ├── classAnalysis.bin │ │ │ │ │ │ ├── jarAnalysis.bin │ │ │ │ │ │ ├── javaCompile.lock │ │ │ │ │ │ └── taskHistory.bin │ │ │ │ ├── buildOutputCleanup │ │ │ │ │ ├── buildOutputCleanup.lock │ │ │ │ │ ├── cache.properties │ │ │ │ │ └── outputFiles.bin │ │ │ │ ├── checksums │ │ │ │ │ ├── checksums.lock │ │ │ │ │ ├── md5-checksums.bin │ │ │ │ │ └── sha1-checksums.bin │ │ │ │ ├── configuration-cache │ │ │ │ │ └── gc.properties │ │ │ │ └── vcs-1 │ │ │ │ │ └── gc.properties │ │ │ ├── build.gradle │ │ │ ├── build │ │ │ │ ├── classes │ │ │ │ │ └── java │ │ │ │ │ │ ├── main │ │ │ │ │ │ └── com │ │ │ │ │ │ │ └── epam │ │ │ │ │ │ │ └── light │ │ │ │ │ │ │ └── talk │ │ │ │ │ │ │ └── reactive │ │ │ │ │ │ │ └── demo2 │ │ │ │ │ │ │ ├── Application.class │ │ │ │ │ │ │ ├── Employee.class │ │ │ │ │ │ │ ├── EmployeeController.class │ │ │ │ │ │ │ └── EmployeeService.class │ │ │ │ │ │ └── test │ │ │ │ │ │ └── com │ │ │ │ │ │ └── epam │ │ │ │ │ │ └── light │ │ │ │ │ │ └── talk │ │ │ │ │ │ └── reactive │ │ │ │ │ │ ├── demo1 │ │ │ │ │ │ └── MainTest.class │ │ │ │ │ │ └── demo2 │ │ │ │ │ │ └── ConcurrencyTest.class │ │ │ │ ├── reports │ │ │ │ │ └── tests │ │ │ │ │ │ └── test │ │ │ │ │ │ ├── classes │ │ │ │ │ │ └── com.epam.light.talk.reactive.demo2.ConcurrencyTest.html │ │ │ │ │ │ ├── css │ │ │ │ │ │ ├── base-style.css │ │ │ │ │ │ └── style.css │ │ │ │ │ │ ├── index.html │ │ │ │ │ │ ├── js │ │ │ │ │ │ └── report.js │ │ │ │ │ │ └── packages │ │ │ │ │ │ └── com.epam.light.talk.reactive.demo2.html │ │ │ │ ├── test-results │ │ │ │ │ └── test │ │ │ │ │ │ ├── TEST-com.epam.light.talk.reactive.demo2.ConcurrencyTest.xml │ │ │ │ │ │ └── binary │ │ │ │ │ │ ├── output.bin │ │ │ │ │ │ ├── output.bin.idx │ │ │ │ │ │ └── results.bin │ │ │ │ └── tmp │ │ │ │ │ ├── compileJava │ │ │ │ │ └── source-classes-mapping.txt │ │ │ │ │ └── compileTestJava │ │ │ │ │ └── source-classes-mapping.txt │ │ │ ├── gradle │ │ │ │ └── wrapper │ │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ │ └── gradle-wrapper.properties │ │ │ ├── gradlew │ │ │ ├── gradlew.bat │ │ │ ├── settings.gradle │ │ │ └── src │ │ │ │ ├── main │ │ │ │ └── java │ │ │ │ │ └── com │ │ │ │ │ └── epam │ │ │ │ │ └── light │ │ │ │ │ └── talk │ │ │ │ │ └── reactive │ │ │ │ │ └── demo2 │ │ │ │ │ ├── Application.java │ │ │ │ │ ├── Employee.java │ │ │ │ │ ├── EmployeeController.java │ │ │ │ │ └── EmployeeService.java │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── epam │ │ │ │ └── light │ │ │ │ └── talk │ │ │ │ └── reactive │ │ │ │ ├── demo1 │ │ │ │ └── MainTest.java │ │ │ │ └── demo2 │ │ │ │ └── ConcurrencyTest.java │ │ ├── reactive.md │ │ └── reactive.pptx │ ├── serialization │ │ ├── .gitignore │ │ ├── benchmarks │ │ │ └── src │ │ │ │ └── main │ │ │ │ └── java │ │ │ │ └── school │ │ │ │ └── mjc │ │ │ │ └── serialization │ │ │ │ └── benchmark │ │ │ │ ├── Bson.java │ │ │ │ ├── Json.java │ │ │ │ ├── MsgPack.java │ │ │ │ └── Proto.java │ │ ├── build.gradle │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── proto │ │ │ ├── build.gradle │ │ │ └── src │ │ │ │ └── main │ │ │ │ ├── java │ │ │ │ └── school │ │ │ │ │ └── mjc │ │ │ │ │ └── serialization │ │ │ │ │ └── proto │ │ │ │ │ └── Protobuf.java │ │ │ │ └── proto │ │ │ │ ├── AnotherUser.proto │ │ │ │ └── User.proto │ │ ├── schemaless │ │ │ ├── build.gradle │ │ │ └── src │ │ │ │ └── main │ │ │ │ └── java │ │ │ │ └── school │ │ │ │ └── mjc │ │ │ │ └── serialization │ │ │ │ ├── BsonSerializer.java │ │ │ │ ├── JsonSerializer.java │ │ │ │ └── MsgPackSerializer.java │ │ ├── serialization.pptx │ │ ├── settings.gradle │ │ └── shared │ │ │ └── src │ │ │ └── main │ │ │ └── java │ │ │ └── school │ │ │ └── mjc │ │ │ └── serialization │ │ │ ├── AnotherUser.java │ │ │ ├── Movie.java │ │ │ ├── User.java │ │ │ └── UserProvider.java │ └── spring-cloud-basics │ │ ├── demo │ │ ├── build.gradle │ │ ├── configServer │ │ │ ├── build.gradle │ │ │ └── src │ │ │ │ └── main │ │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── epam │ │ │ │ │ └── mjc │ │ │ │ │ └── demo │ │ │ │ │ └── ConfigApplication.java │ │ │ │ └── resources │ │ │ │ └── application.yaml │ │ ├── discountServer │ │ │ ├── build.gradle │ │ │ └── src │ │ │ │ └── main │ │ │ │ ├── java │ │ │ │ └── demo │ │ │ │ │ ├── DiscountApplication.java │ │ │ │ │ ├── model │ │ │ │ │ └── Discount.java │ │ │ │ │ ├── server │ │ │ │ │ └── rest │ │ │ │ │ │ └── DiscountController.java │ │ │ │ │ └── service │ │ │ │ │ └── DiscountService.java │ │ │ │ └── resources │ │ │ │ └── application.yaml │ │ ├── eurekaServer │ │ │ ├── build.gradle │ │ │ └── src │ │ │ │ └── main │ │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── epam │ │ │ │ │ └── mjc │ │ │ │ │ └── demo │ │ │ │ │ └── EurekaApplication.java │ │ │ │ └── resources │ │ │ │ └── application.yml │ │ ├── gatewayServer │ │ │ ├── build.gradle │ │ │ └── src │ │ │ │ └── main │ │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── epam │ │ │ │ │ └── mjc │ │ │ │ │ └── demo │ │ │ │ │ └── GatewayApplication.java │ │ │ │ └── resources │ │ │ │ └── application.yml │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── hotelService │ │ │ ├── build.gradle │ │ │ └── src │ │ │ │ └── main │ │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── epam │ │ │ │ │ └── mjc │ │ │ │ │ └── demo │ │ │ │ │ ├── HotelApplication.java │ │ │ │ │ ├── model │ │ │ │ │ ├── Discount.java │ │ │ │ │ └── Hotel.java │ │ │ │ │ ├── server │ │ │ │ │ └── rest │ │ │ │ │ │ └── HotelController.java │ │ │ │ │ └── service │ │ │ │ │ ├── DiscountClient.java │ │ │ │ │ └── HotelService.java │ │ │ │ └── resources │ │ │ │ └── application.yaml │ │ ├── properties │ │ │ ├── hotel-service-dev.yaml │ │ │ └── hotel-service-prod.yaml │ │ └── settings.gradle │ │ ├── springCloud.md │ │ └── springCloud.pptx ├── module #1. CI-CD │ ├── 063018_1012_WhatisJenki1.jpg │ ├── 063018_1012_WhatisJenki2.webp │ ├── 9fggUPzXV.avif │ ├── VUba-GQlR.avif │ ├── _aBv25XjS.avif │ ├── ci_cd_task.md │ └── w5CYoxeY3.avif ├── module #2. REST API Advanced │ ├── media │ │ ├── schema.jpg │ │ └── snowflake.jpg │ └── rest_api_advanced.md ├── module #3. Authentication & Spring Security │ └── authentication_and_spring_security_task.md ├── module #4. UI │ ├── media │ │ ├── add-new.png │ │ ├── all-news.png │ │ ├── delete.png │ │ └── login-page.png │ └── ui_module.md └── module #5. AWS │ ├── aws_task.md │ ├── practice │ ├── dynamodb.md │ ├── ec2.md │ ├── iam.md │ ├── lambda.md │ ├── rds.md │ ├── resources │ │ ├── dynamodb │ │ │ ├── dump.csv │ │ │ └── media │ │ │ │ └── example.png │ │ ├── lambda │ │ │ ├── media │ │ │ │ └── example.png │ │ │ └── samplcode │ │ │ │ ├── lambda_solution.py │ │ │ │ └── optional_lambda_solution.py │ │ └── vpc │ │ │ ├── media │ │ │ ├── img_1.png │ │ │ ├── img_2.png │ │ │ ├── img_3.png │ │ │ ├── img_4.png │ │ │ ├── img_5.png │ │ │ ├── img_6.png │ │ │ └── img_7.png │ │ │ └── names.csv │ ├── s3.md │ ├── solution │ │ ├── dynamodb │ │ │ ├── dynamodb_solution_console.md │ │ │ └── dynamodb_solution_localstack.md │ │ ├── ec2 │ │ │ └── ec2_solution_console.md │ │ ├── iam │ │ │ └── iam_solution_console.md │ │ ├── lambda │ │ │ ├── lambda_solution_console.md │ │ │ └── lambda_solution_localstack.md │ │ ├── rds │ │ │ └── rds_solution_console.md │ │ ├── s3 │ │ │ ├── s3_solution_console.md │ │ │ └── s3_solution_localstack.md │ │ └── vpc │ │ │ ├── vpc_solution.md │ │ │ └── vpc_solution_localstack.md │ └── vpc.md │ ├── quiz │ ├── keys.md │ └── quiz.md │ └── theory │ ├── dynamodb.md │ ├── ec2.md │ ├── iam.md │ ├── lambda.md │ ├── rds.md │ ├── resources │ ├── ec2 │ │ ├── auto_scaling.png │ │ └── instance_types.png │ ├── iam │ │ └── iam.png │ ├── rds │ │ ├── engine_options.png │ │ └── read_and_standby_replica.png │ └── s3 │ │ └── storage_classes.png │ ├── s3.md │ └── vpc.md └── syllabus.md /.gitignore: -------------------------------------------------------------------------------- 1 | .idea/ -------------------------------------------------------------------------------- /assets/img/syllabus_general.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/assets/img/syllabus_general.png -------------------------------------------------------------------------------- /stage #0/extra/Development Environment.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/extra/Development Environment.pdf -------------------------------------------------------------------------------- /stage #0/extra/Methods, Code Style, Clean Code, TDD.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/extra/Methods, Code Style, Clean Code, TDD.pdf -------------------------------------------------------------------------------- /stage #0/light-talks/annotations/Java annotations.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/light-talks/annotations/Java annotations.docx -------------------------------------------------------------------------------- /stage #0/light-talks/annotations/Java annotations.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/light-talks/annotations/Java annotations.pptx -------------------------------------------------------------------------------- /stage #0/light-talks/enums/Enums.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/light-talks/enums/Enums.pptx -------------------------------------------------------------------------------- /stage #0/light-talks/enums/enums/enums.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /stage #0/light-talks/enums/enums/src/com/epam/mjs/Currency.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjs; 2 | 3 | public class Currency { 4 | 5 | public static final int PENNY = 1; 6 | public static final int NICKLE = 5; 7 | public static final int DIME = 10; 8 | public static final int QUARTER = 25; 9 | } 10 | -------------------------------------------------------------------------------- /stage #0/light-talks/enums/enums/src/com/epam/mjs/CurrencyEnum.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjs; 2 | 3 | public enum CurrencyEnum { 4 | 5 | PENNY(1), NICKLE (5), DIME(10), QUARTER(25); 6 | 7 | private int value; 8 | 9 | CurrencyEnum(int value) { 10 | this.value = value; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /stage #0/light-talks/enums/enums/src/com/epam/mjs/Main.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjs; 2 | 3 | public class Main { 4 | 5 | public static void main(String[] args) { 6 | System.out.println(Unit.class); 7 | System.out.println(Unit.KILOMETER.getClass() + " " + Unit.KILOMETER.getClass().getSuperclass()); 8 | System.out.println(Unit.METER.getClass() + " " + Unit.METER.getClass().getSuperclass()); 9 | System.out.println(Unit.MILLIMETER.getClass() + " " + Unit.MILLIMETER.getClass().getSuperclass()); 10 | 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /stage #0/light-talks/enums/enums/src/com/epam/mjs/RequestState.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjs; 2 | 3 | public enum RequestState { 4 | 5 | CREATED{ 6 | @Override 7 | public RequestState nextState() { 8 | return SUBMITTED; 9 | } 10 | }, SUBMITTED{ 11 | @Override 12 | public RequestState nextState() { 13 | return APPROVED; 14 | } 15 | 16 | }, APPROVED{ 17 | @Override 18 | public RequestState nextState() { 19 | return APPROVED; 20 | } 21 | 22 | }; 23 | 24 | public abstract RequestState nextState(); 25 | } 26 | -------------------------------------------------------------------------------- /stage #0/light-talks/enums/enums/src/com/epam/mjs/Singleton.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjs; 2 | 3 | public enum Singleton { 4 | SINGLETON; 5 | 6 | public void method() { 7 | 8 | } 9 | } 10 | 11 | -------------------------------------------------------------------------------- /stage #0/light-talks/enums/enums/src/com/epam/mjs/Unit.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjs; 2 | 3 | enum Unit { 4 | KILOMETER { public double getLength() { return 1000; } 5 | }, 6 | METER { public double getLength() { return 1; } 7 | }, 8 | MILLIMETER { public double getLength() { return 0.001; } 9 | }; 10 | public abstract double getLength(); 11 | } 12 | 13 | -------------------------------------------------------------------------------- /stage #0/light-talks/enums/enums/src/com/epam/mjs/Wallet.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjs; 2 | 3 | public class Wallet { 4 | private int currency; 5 | private int quantity; 6 | } 7 | -------------------------------------------------------------------------------- /stage #0/light-talks/garbage-collection/GC-speech.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/light-talks/garbage-collection/GC-speech.docx -------------------------------------------------------------------------------- /stage #0/light-talks/garbage-collection/GC.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/light-talks/garbage-collection/GC.pptx -------------------------------------------------------------------------------- /stage #0/light-talks/garbage-collection/demo-gc/src/main/java/com/epam/mjs/ClassWithBadFinalizer.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjs; 2 | 3 | public class ClassWithBadFinalizer { 4 | 5 | private Integer[] ints; 6 | 7 | public ClassWithBadFinalizer(Integer[] ints) { 8 | this.ints = ints; 9 | } 10 | 11 | @Override 12 | protected void finalize() throws Throwable { 13 | Thread.sleep(200); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /stage #0/light-talks/garbage-collection/demo-gc/src/main/java/com/epam/mjs/DemoFinalizer.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjs; 2 | 3 | public class DemoFinalizer { 4 | 5 | public static void main(String[] args) throws InterruptedException { 6 | Thread.sleep(3000); 7 | while (true) { 8 | new ClassWithBadFinalizer(new Integer[10000]); 9 | Thread.sleep(10); 10 | } 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /stage #0/light-talks/garbage-collection/demo-gc/src/main/java/com/epam/mjs/DemoNormal.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjs; 2 | 3 | public class DemoNormal { 4 | 5 | public static void main(String[] args) throws InterruptedException { 6 | Thread.sleep(3000); 7 | while (true) { 8 | Integer[] integer = new Integer[10000]; 9 | integer = null; 10 | Thread.sleep(10); 11 | } 12 | } 13 | 14 | } 15 | -------------------------------------------------------------------------------- /stage #0/light-talks/garbage-collection/demo-gc/src/main/java/com/epam/mjs/DemoStatic.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjs; 2 | 3 | import java.util.ArrayList; 4 | 5 | public class DemoStatic { 6 | 7 | private static ArrayList list = new ArrayList(); 8 | 9 | public static void main(String[] args) throws InterruptedException { 10 | Thread.sleep(3000); 11 | while (true){ 12 | Integer[] integer = new Integer[10000]; 13 | list.add(integer); 14 | integer = null; 15 | Thread.sleep(10); 16 | } 17 | } 18 | 19 | } 20 | -------------------------------------------------------------------------------- /stage #0/light-talks/garbage-collection/demo-gc/src/main/java/com/epam/mjs/OuterClass.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjs; 2 | 3 | public class OuterClass { 4 | 5 | private Integer[] ints = new Integer[10000]; 6 | 7 | public class InnerClass{ 8 | 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /stage #0/light-talks/intellij-idea/IntellijIdea_cheatsheet.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/light-talks/intellij-idea/IntellijIdea_cheatsheet.docx -------------------------------------------------------------------------------- /stage #0/light-talks/intellij-idea/IntellijIdea_cheatsheet.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/light-talks/intellij-idea/IntellijIdea_cheatsheet.pdf -------------------------------------------------------------------------------- /stage #0/light-talks/intellij-idea/epam-demo/.gitignore: -------------------------------------------------------------------------------- 1 | .gradle/ 2 | build/ 3 | config/ 4 | .idea/ 5 | out/ 6 | .vagrant/ 7 | Vagrantfile 8 | *.log 9 | *.iml 10 | gradle.properties 11 | 12 | **/main/resources/application.properties 13 | **/main/resources/logback.xml 14 | **/main/resources/users.properties 15 | 16 | .DS_Store 17 | -------------------------------------------------------------------------------- /stage #0/light-talks/intellij-idea/epam-demo/build.gradle: -------------------------------------------------------------------------------- 1 | plugins { 2 | id 'java' 3 | } 4 | 5 | group 'org.example' 6 | version '1.0-SNAPSHOT' 7 | 8 | repositories { 9 | mavenCentral() 10 | } 11 | 12 | dependencies { 13 | testImplementation 'org.junit.jupiter:junit-jupiter-api:5.6.0' 14 | testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine' 15 | } 16 | 17 | test { 18 | useJUnitPlatform() 19 | } -------------------------------------------------------------------------------- /stage #0/light-talks/intellij-idea/epam-demo/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/light-talks/intellij-idea/epam-demo/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /stage #0/light-talks/intellij-idea/epam-demo/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /stage #0/light-talks/intellij-idea/epam-demo/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'epam-demo' 2 | 3 | -------------------------------------------------------------------------------- /stage #0/light-talks/intellij-idea/epam-demo/src/main/java/com/epam/mjc/inspections/Demo_01.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.inspections; 2 | 3 | public class Demo_01 { 4 | 5 | public static void main(String[] args) { 6 | String firstString = getFirstString(); 7 | String secondString = getSecondString(); 8 | 9 | System.out.println(firstString == secondString); 10 | } 11 | 12 | private static String getSecondString() { 13 | return "Hello"; 14 | } 15 | 16 | private static String getFirstString() { 17 | return "world"; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /stage #0/light-talks/intellij-idea/epam-demo/src/main/java/com/epam/mjc/inspections/Demo_03.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.inspections; 2 | 3 | import java.util.Scanner; 4 | 5 | public class Demo_03 { 6 | 7 | public static void main(String[] args) { 8 | System.out.println(doComputations(getBool())); 9 | } 10 | 11 | private static boolean getBool() { 12 | return true; 13 | } 14 | 15 | private static boolean doComputations(boolean bool) { 16 | if (bool == false) { 17 | return true; 18 | } else { 19 | return false; 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /stage #0/light-talks/intellij-idea/epam-demo/src/main/java/com/epam/mjc/live/template/Demo_01.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.live.template; 2 | 3 | 4 | /** 5 | * Show live templates usage 6 | * {@code psvm} - main method 7 | * {@code fori} - cycle 8 | * {@code sout} - System.out.println 9 | */ 10 | public class Demo_01 { 11 | 12 | // Task: print "Hello World" 10 times 13 | } 14 | -------------------------------------------------------------------------------- /stage #0/light-talks/java-cli/Java CLI.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/light-talks/java-cli/Java CLI.pdf -------------------------------------------------------------------------------- /stage #0/light-talks/java-cli/examples/ArgsExample.java: -------------------------------------------------------------------------------- 1 | public class ArgsExample { 2 | public static void main(String args[]) { 3 | System.out.println("The args count = " + args.length); 4 | for (int i = 0; i < args.length; i++) { 5 | System.out.println("args[" + i + "] = " + args[i]); 6 | } 7 | } 8 | } -------------------------------------------------------------------------------- /stage #0/light-talks/java-cli/examples/ConsoleInput.java: -------------------------------------------------------------------------------- 1 | import java.util.Scanner; 2 | 3 | public class ConsoleInput { 4 | public static void main(String args[]) { 5 | Scanner sc = new Scanner(System.in); 6 | 7 | System.out.println("Enter the first number : "); 8 | int number1 = sc.nextInt(); 9 | 10 | System.out.println("Enter the second number : "); 11 | int number2 = sc.nextInt(); 12 | System.out.println("The sum = " + (number1 + number2)); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /stage #0/light-talks/java-cli/examples/Hello.java: -------------------------------------------------------------------------------- 1 | public class Hello { 2 | public static void main(String args[]) { 3 | System.out.println("Hello!"); 4 | } 5 | } -------------------------------------------------------------------------------- /stage #0/light-talks/java-cli/examples/NumArgs.java: -------------------------------------------------------------------------------- 1 | public class NumArgs { 2 | public static void main(String args[]) { 3 | int number1 = Integer.parseInt(args[0]); 4 | int number2 = Integer.parseInt(args[1]); 5 | System.out.println("The sum = " + (number1 + number2)); 6 | } 7 | } -------------------------------------------------------------------------------- /stage #0/light-talks/java-cli/examples/Person.java: -------------------------------------------------------------------------------- 1 | public class Person { 2 | 3 | private String name; 4 | 5 | public Person(String name) { 6 | this.name = name; 7 | } 8 | 9 | public void introduce() { 10 | System.out.println("Hello, my name is " + name); 11 | } 12 | } -------------------------------------------------------------------------------- /stage #0/light-talks/java-cli/examples/PersonIntroduction.java: -------------------------------------------------------------------------------- 1 | public class PersonIntroduction{ 2 | public static void main(String args[]){ 3 | String name = args[0]; 4 | Person person = new Person(name); 5 | person.introduce(); 6 | } 7 | } -------------------------------------------------------------------------------- /stage #0/light-talks/java-memory-model/Java memory model.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/light-talks/java-memory-model/Java memory model.docx -------------------------------------------------------------------------------- /stage #0/light-talks/java-memory-model/Java memory model.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/light-talks/java-memory-model/Java memory model.pptx -------------------------------------------------------------------------------- /stage #0/light-talks/oop-thinking/OOP, Classes.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/light-talks/oop-thinking/OOP, Classes.pdf -------------------------------------------------------------------------------- /stage #0/light-talks/reflection-api/Reflection API.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/light-talks/reflection-api/Reflection API.pdf -------------------------------------------------------------------------------- /stage #0/light-talks/regex/regex.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/light-talks/regex/regex.pptx -------------------------------------------------------------------------------- /stage #0/light-talks/regex/regex_demo/regex_demo.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /stage #0/module #1. Java Overview/img/compiler-flow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #1. Java Overview/img/compiler-flow.png -------------------------------------------------------------------------------- /stage #0/module #2. Infrastructure, AutoCode/img/jdk-structure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #2. Infrastructure, AutoCode/img/jdk-structure.png -------------------------------------------------------------------------------- /stage #0/module #3. Java Lang Syntax/img/img_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #3. Java Lang Syntax/img/img_1.png -------------------------------------------------------------------------------- /stage #0/module #3. Java Lang Syntax/img/img_10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #3. Java Lang Syntax/img/img_10.png -------------------------------------------------------------------------------- /stage #0/module #3. Java Lang Syntax/img/img_11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #3. Java Lang Syntax/img/img_11.png -------------------------------------------------------------------------------- /stage #0/module #3. Java Lang Syntax/img/img_12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #3. Java Lang Syntax/img/img_12.png -------------------------------------------------------------------------------- /stage #0/module #3. Java Lang Syntax/img/img_13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #3. Java Lang Syntax/img/img_13.png -------------------------------------------------------------------------------- /stage #0/module #3. Java Lang Syntax/img/img_14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #3. Java Lang Syntax/img/img_14.png -------------------------------------------------------------------------------- /stage #0/module #3. Java Lang Syntax/img/img_15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #3. Java Lang Syntax/img/img_15.png -------------------------------------------------------------------------------- /stage #0/module #3. Java Lang Syntax/img/img_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #3. Java Lang Syntax/img/img_16.png -------------------------------------------------------------------------------- /stage #0/module #3. Java Lang Syntax/img/img_17.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #3. Java Lang Syntax/img/img_17.png -------------------------------------------------------------------------------- /stage #0/module #3. Java Lang Syntax/img/img_18.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #3. Java Lang Syntax/img/img_18.png -------------------------------------------------------------------------------- /stage #0/module #3. Java Lang Syntax/img/img_19.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #3. Java Lang Syntax/img/img_19.png -------------------------------------------------------------------------------- /stage #0/module #3. Java Lang Syntax/img/img_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #3. Java Lang Syntax/img/img_2.png -------------------------------------------------------------------------------- /stage #0/module #3. Java Lang Syntax/img/img_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #3. Java Lang Syntax/img/img_3.png -------------------------------------------------------------------------------- /stage #0/module #3. Java Lang Syntax/img/img_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #3. Java Lang Syntax/img/img_4.png -------------------------------------------------------------------------------- /stage #0/module #3. Java Lang Syntax/img/img_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #3. Java Lang Syntax/img/img_5.png -------------------------------------------------------------------------------- /stage #0/module #3. Java Lang Syntax/img/img_6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #3. Java Lang Syntax/img/img_6.png -------------------------------------------------------------------------------- /stage #0/module #3. Java Lang Syntax/img/img_7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #3. Java Lang Syntax/img/img_7.png -------------------------------------------------------------------------------- /stage #0/module #3. Java Lang Syntax/img/img_8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #3. Java Lang Syntax/img/img_8.png -------------------------------------------------------------------------------- /stage #0/module #3. Java Lang Syntax/img/img_9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #3. Java Lang Syntax/img/img_9.png -------------------------------------------------------------------------------- /stage #0/module #4. Java Fundamentals/lesson #1. IF statement/img/img_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #4. Java Fundamentals/lesson #1. IF statement/img/img_1.png -------------------------------------------------------------------------------- /stage #0/module #4. Java Fundamentals/lesson #1. IF statement/img/img_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #4. Java Fundamentals/lesson #1. IF statement/img/img_2.png -------------------------------------------------------------------------------- /stage #0/module #4. Java Fundamentals/lesson #1. IF statement/img/img_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #4. Java Fundamentals/lesson #1. IF statement/img/img_3.png -------------------------------------------------------------------------------- /stage #0/module #4. Java Fundamentals/lesson #1. IF statement/img/img_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #4. Java Fundamentals/lesson #1. IF statement/img/img_4.png -------------------------------------------------------------------------------- /stage #0/module #4. Java Fundamentals/lesson #1. IF statement/img/img_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #4. Java Fundamentals/lesson #1. IF statement/img/img_5.png -------------------------------------------------------------------------------- /stage #0/module #4. Java Fundamentals/lesson #1. IF statement/img/img_6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #4. Java Fundamentals/lesson #1. IF statement/img/img_6.png -------------------------------------------------------------------------------- /stage #0/module #4. Java Fundamentals/lesson #2. FOR statement/final-task/img/img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #4. Java Fundamentals/lesson #2. FOR statement/final-task/img/img.png -------------------------------------------------------------------------------- /stage #0/module #4. Java Fundamentals/lesson #2. FOR statement/final-task/img/img_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #4. Java Fundamentals/lesson #2. FOR statement/final-task/img/img_1.png -------------------------------------------------------------------------------- /stage #0/module #4. Java Fundamentals/lesson #2. FOR statement/img/img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #4. Java Fundamentals/lesson #2. FOR statement/img/img.png -------------------------------------------------------------------------------- /stage #0/module #4. Java Fundamentals/lesson #2. FOR statement/img/img_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #4. Java Fundamentals/lesson #2. FOR statement/img/img_1.png -------------------------------------------------------------------------------- /stage #0/module #4. Java Fundamentals/lesson #2. FOR statement/img/img_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #4. Java Fundamentals/lesson #2. FOR statement/img/img_2.png -------------------------------------------------------------------------------- /stage #0/module #4. Java Fundamentals/lesson #2. FOR statement/img/img_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #4. Java Fundamentals/lesson #2. FOR statement/img/img_3.png -------------------------------------------------------------------------------- /stage #0/module #4. Java Fundamentals/lesson #2. FOR statement/img/img_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #4. Java Fundamentals/lesson #2. FOR statement/img/img_4.png -------------------------------------------------------------------------------- /stage #0/module #4. Java Fundamentals/lesson #2. FOR statement/img/img_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #4. Java Fundamentals/lesson #2. FOR statement/img/img_5.png -------------------------------------------------------------------------------- /stage #0/module #4. Java Fundamentals/lesson #2. FOR statement/img/img_6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #4. Java Fundamentals/lesson #2. FOR statement/img/img_6.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/algorithm_model.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/algorithm_model.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/array_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/array_0.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/array_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/array_1.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/array_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/array_2.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/array_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/array_3.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/array_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/array_4.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/array_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/array_5.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/array_assigning_value.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/array_assigning_value.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/array_initialization.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/array_initialization.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/array_initialization_curly_braces.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/array_initialization_curly_braces.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/arraycopy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/arraycopy.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/big_o_complexity_chart.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/big_o_complexity_chart.jpeg -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/big_o_notation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/big_o_notation.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/binary_search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/binary_search.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/deletion_in_array_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/deletion_in_array_1.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/deletion_in_array_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/deletion_in_array_2.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/deletion_in_array_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/deletion_in_array_3.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/deletion_in_array_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/deletion_in_array_4.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/deletion_in_linked_list_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/deletion_in_linked_list_1.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/deletion_in_linked_list_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/deletion_in_linked_list_2.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/deletion_in_linked_list_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/deletion_in_linked_list_3.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/divide_and_conquer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/divide_and_conquer.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/hash_tables_collisions.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/hash_tables_collisions.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/hash_tables_diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/hash_tables_diagram.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/insert_in_non_vacant_array_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/insert_in_non_vacant_array_1.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/insert_in_non_vacant_array_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/insert_in_non_vacant_array_2.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/insert_in_non_vacant_array_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/insert_in_non_vacant_array_3.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/insert_in_non_vacant_array_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/insert_in_non_vacant_array_4.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/insertion_in_array_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/insertion_in_array_1.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/insertion_in_array_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/insertion_in_array_2.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/insertion_in_array_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/insertion_in_array_3.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/insertion_in_array_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/insertion_in_array_4.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/linear_data_structure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/linear_data_structure.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/linked_list_need_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/linked_list_need_1.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/linked_list_need_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/linked_list_need_2.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/linked_list_need_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/linked_list_need_3.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/linked_list_need_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/linked_list_need_4.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/linked_list_overview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/linked_list_overview.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/merge_sort.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/merge_sort.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/non_linear_data_structure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/non_linear_data_structure.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/ragged_two_dimensional_array.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/ragged_two_dimensional_array.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/ragged_two_dimensional_array_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/ragged_two_dimensional_array_2.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/two_dimensional_array.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/two_dimensional_array.png -------------------------------------------------------------------------------- /stage #0/module #5. Algorithms and Data Structures/img/two_dimensional_array_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #0/module #5. Algorithms and Data Structures/img/two_dimensional_array_2.png -------------------------------------------------------------------------------- /stage #1/light-talks/bitwise-operators/build.gradle: -------------------------------------------------------------------------------- 1 | plugins { 2 | id 'java' 3 | } 4 | 5 | group 'org.example' 6 | version '1.0-SNAPSHOT' 7 | 8 | repositories { 9 | mavenCentral() 10 | } 11 | 12 | dependencies { 13 | implementation("com.google.guava:guava:31.1-jre") 14 | implementation("org.openjdk.jmh:jmh-core:1.31") 15 | annotationProcessor("org.openjdk.jmh:jmh-generator-annprocess:1.31") 16 | 17 | testImplementation("org.junit.jupiter:junit-jupiter-api:5.8.1") 18 | testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:5.8.1") 19 | } 20 | 21 | test { 22 | useJUnitPlatform() 23 | } 24 | -------------------------------------------------------------------------------- /stage #1/light-talks/bitwise-operators/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/light-talks/bitwise-operators/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /stage #1/light-talks/bitwise-operators/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /stage #1/light-talks/bitwise-operators/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'bitwise-operators' 2 | 3 | -------------------------------------------------------------------------------- /stage #1/light-talks/bitwise-operators/src/main/java/school/mjc/bitwise/Flags.java: -------------------------------------------------------------------------------- 1 | package school.mjc.bitwise; 2 | 3 | import java.lang.reflect.Method; 4 | import java.lang.reflect.Modifier; 5 | 6 | public class Flags { 7 | 8 | public static void main(String[] args) throws NoSuchMethodException { 9 | Method method = Flags.class.getDeclaredMethod("method"); 10 | 11 | System.out.println("Method modifiers = " + method.getModifiers()); 12 | System.out.println("Is method static = " + Modifier.isStatic(method.getModifiers())); 13 | } 14 | 15 | private static void method() {} 16 | } 17 | -------------------------------------------------------------------------------- /stage #1/light-talks/concurrency/ multithreadingpt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/light-talks/concurrency/ multithreadingpt.pdf -------------------------------------------------------------------------------- /stage #1/light-talks/concurrency/multithreading/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/light-talks/concurrency/multithreading/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /stage #1/light-talks/concurrency/multithreading/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /stage #1/light-talks/concurrency/multithreading/settings.gradle.kts: -------------------------------------------------------------------------------- 1 | rootProject.name = "multithreading" 2 | 3 | -------------------------------------------------------------------------------- /stage #1/light-talks/concurrency/multithreading/src/main/java/com/epam/mjc/Main.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc; 2 | 3 | public class Main { 4 | 5 | public static void main(String[] args) { 6 | System.out.println("Hello world!"); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /stage #1/light-talks/concurrency/multithreading/src/main/java/com/epam/mjc/creation/HelloRunnable.java: -------------------------------------------------------------------------------- 1 | 2 | package com.epam.mjc.creation; 3 | 4 | public class HelloRunnable implements Runnable { 5 | 6 | @Override 7 | public void run() { 8 | // do smth 9 | System.out.println("Hello from "+Thread.currentThread().getName()+" " 10 | + "a thread created by " 11 | + "implementing a Runnable Interface!"); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /stage #1/light-talks/concurrency/multithreading/src/main/java/com/epam/mjc/creation/HelloThread.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.creation; 2 | 3 | public class HelloThread extends Thread{ 4 | 5 | @Override 6 | public void run() { 7 | // do smth 8 | System.out.println("Hello from "+Thread.currentThread().getName() 9 | + " created by " 10 | + "extending Thread class!"); 11 | } 12 | 13 | 14 | } 15 | -------------------------------------------------------------------------------- /stage #1/light-talks/concurrency/multithreading/src/main/java/com/epam/mjc/join/ThreadJoin.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.join; 2 | 3 | public class ThreadJoin { 4 | 5 | public static void main(String[] args) { 6 | TestJoin t1 = new TestJoin("t1"); 7 | TestJoin t2 = new TestJoin("t2"); 8 | TestJoin t3 = new TestJoin("t3"); 9 | t1.start(); 10 | try{ 11 | t1.join(); 12 | }catch(Exception e){System.out.println(e);} 13 | t2.start(); 14 | //thread 3 won't start until thread 2 is complete 15 | t3.start(); 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /stage #1/light-talks/exceptions/Exceptions/src/main/java/org/example/Main.java: -------------------------------------------------------------------------------- 1 | package org.example; 2 | 3 | 4 | 5 | 6 | 7 | public class Main { 8 | public static void main(String[] args) { 9 | 10 | } 11 | 12 | public static int calculateFactorial(int n){ 13 | if(n <= 1){ 14 | return 1; 15 | } 16 | return n * calculateFactorial(n-1); 17 | } 18 | } -------------------------------------------------------------------------------- /stage #1/light-talks/exceptions/Exceptions/src/main/java/org/example/exceptions/Calculator.java: -------------------------------------------------------------------------------- 1 | package org.example.exceptions; 2 | 3 | public class Calculator { 4 | public void printDivisionResult(int a, int b){ 5 | System.out.println("Result is: " + a/b); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /stage #1/light-talks/exceptions/Exceptions/src/main/java/org/example/exceptions/EmployeeNotFoundException.java: -------------------------------------------------------------------------------- 1 | package org.example.exceptions; 2 | 3 | public class EmployeeNotFoundException extends Exception{ 4 | EmployeeNotFoundException(String message) { 5 | super(message); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /stage #1/light-talks/exceptions/Exceptions/src/main/java/org/example/exceptions/Person.java: -------------------------------------------------------------------------------- 1 | package org.example.exceptions; 2 | 3 | public class Person { 4 | public String getPersonName(){ 5 | return "Givi"; 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /stage #1/light-talks/exceptions/Exceptions/src/main/java/org/example/exceptions/TeacherDataTooLargeException.java: -------------------------------------------------------------------------------- 1 | package org.example.exceptions; 2 | 3 | public class TeacherDataTooLargeException extends RuntimeException{ 4 | TeacherDataTooLargeException(String message){ 5 | super(message); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /stage #1/light-talks/exceptions/Exceptions/src/main/java/org/example/text.txt: -------------------------------------------------------------------------------- 1 | my name is givi 2 | i am 23 years old 3 | i have big arms -------------------------------------------------------------------------------- /stage #1/light-talks/exceptions/ExceptionsPresentation.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/light-talks/exceptions/ExceptionsPresentation.pptx -------------------------------------------------------------------------------- /stage #1/light-talks/functional-programming/Functional Programming.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/light-talks/functional-programming/Functional Programming.pptx -------------------------------------------------------------------------------- /stage #1/light-talks/io-streams/.gitignore: -------------------------------------------------------------------------------- 1 | ### IntelliJ IDEA ### 2 | out/ 3 | !**/src/main/**/out/ 4 | !**/src/test/**/out/ 5 | 6 | ### Eclipse ### 7 | .apt_generated 8 | .classpath 9 | .factorypath 10 | .project 11 | .settings 12 | .springBeans 13 | .sts4-cache 14 | bin/ 15 | !**/src/main/**/bin/ 16 | !**/src/test/**/bin/ 17 | 18 | ### NetBeans ### 19 | /nbproject/private/ 20 | /nbbuild/ 21 | /dist/ 22 | /nbdist/ 23 | /.nb-gradle/ 24 | 25 | ### VS Code ### 26 | .vscode/ 27 | 28 | ### Mac OS ### 29 | .DS_Store -------------------------------------------------------------------------------- /stage #1/light-talks/io-streams/characteroutput.txt: -------------------------------------------------------------------------------- 1 | In Xanadu did Kubla Khan 2 | A stately pleasure-dome decree: 3 | Where Alph, the sacred river, ran 4 | Through caverns measureless to man 5 | Down to a sunless sea. 6 | -------------------------------------------------------------------------------- /stage #1/light-talks/io-streams/demo.xml: -------------------------------------------------------------------------------- 1 | 2 | Vika 3 | Sergei 4 | Reminder 5 | Don't forget me this weekend! 6 | -------------------------------------------------------------------------------- /stage #1/light-talks/io-streams/demo1.txt: -------------------------------------------------------------------------------- 1 | In Xanadu did Kubla Khan 2 | A stately pleasure-dome decree: 3 | Where Alph, the sacred river, ran 4 | Through caverns measureless to man 5 | Down to a sunless sea. -------------------------------------------------------------------------------- /stage #1/light-talks/io-streams/io_streams_change (1).pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/light-talks/io-streams/io_streams_change (1).pptx -------------------------------------------------------------------------------- /stage #1/light-talks/io-streams/src/main/java/com/epam/mjc/io/CharStreamByLine.java: -------------------------------------------------------------------------------- 1 | package main.java.com.epam.mjc.io; 2 | 3 | import java.io.*; 4 | 5 | public class CharStreamByLine { 6 | public static void main(String[] args) throws IOException { 7 | try (BufferedReader inputStream = new BufferedReader(new FileReader("demo1.txt")); 8 | PrintWriter outputStream = new PrintWriter(new FileWriter("characteroutput.txt"))) { 9 | String l; 10 | while ((l = inputStream.readLine()) != null) { 11 | outputStream.println(l); 12 | } 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /stage #1/light-talks/java-11-to-19-language-features/gradle.properties: -------------------------------------------------------------------------------- 1 | systemProp.file.encoding=utf-8 2 | -------------------------------------------------------------------------------- /stage #1/light-talks/java-11-to-19-language-features/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/light-talks/java-11-to-19-language-features/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /stage #1/light-talks/java-11-to-19-language-features/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.2-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /stage #1/light-talks/java-11-to-19-language-features/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'mjc-java-11-plus' 2 | 3 | -------------------------------------------------------------------------------- /stage #1/light-talks/java-11-to-19-language-features/src/main/java/com/shankhadeepghoshal/sealedclassandrecords/Circle.java: -------------------------------------------------------------------------------- 1 | package com.shankhadeepghoshal.sealedclassandrecords; 2 | 3 | /** 4 | * @author Shankhadeep Ghoshal 5 | **/ 6 | 7 | public sealed class Circle extends Ellipse permits SemiCircle { 8 | 9 | public Circle(final double radius) { 10 | super(radius, radius); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /stage #1/light-talks/java-11-to-19-language-features/src/main/java/com/shankhadeepghoshal/sealedclassandrecords/Rectangle.java: -------------------------------------------------------------------------------- 1 | package com.shankhadeepghoshal.sealedclassandrecords; 2 | 3 | /** 4 | * @author Shankhadeep Ghoshal 5 | **/ 6 | 7 | public final class Rectangle extends Parallelogram { 8 | 9 | public Rectangle(final double length, final double breadth) { 10 | super(length, breadth); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /stage #1/light-talks/java-11-to-19-language-features/src/main/java/com/shankhadeepghoshal/sealedclassandrecords/SemiCircle.java: -------------------------------------------------------------------------------- 1 | package com.shankhadeepghoshal.sealedclassandrecords; 2 | 3 | /** 4 | * @author Shankhadeep Ghoshal 5 | **/ 6 | 7 | public final class SemiCircle extends Circle { 8 | 9 | public SemiCircle(final double radius) { 10 | super(radius); 11 | } 12 | 13 | @Override 14 | public double calculateArea() { 15 | return super.calculateArea() * 0.5; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /stage #1/light-talks/java-11-to-19-language-features/src/main/java/com/shankhadeepghoshal/sealedclassandrecords/Shape.java: -------------------------------------------------------------------------------- 1 | package com.shankhadeepghoshal.sealedclassandrecords; 2 | 3 | /** 4 | * @author Shankhadeep Ghoshal 5 | **/ 6 | 7 | public sealed interface Shape permits Ellipse, Parallelogram, Triangle { 8 | 9 | double calculateArea(); 10 | } 11 | -------------------------------------------------------------------------------- /stage #1/light-talks/java-11-to-19-language-features/src/main/java/com/shankhadeepghoshal/sealedclassandrecords/ShapeEnum.java: -------------------------------------------------------------------------------- 1 | package com.shankhadeepghoshal.sealedclassandrecords; 2 | 3 | /** 4 | * @author Shankhadeep Ghoshal 5 | **/ 6 | 7 | public enum ShapeEnum { 8 | CIRCLE, 9 | PARALLELOGRAM, 10 | RECTANGLE, 11 | SEMI_CIRCLE, 12 | TRIANGLE 13 | } 14 | -------------------------------------------------------------------------------- /stage #1/light-talks/java-11-to-19-language-features/src/main/java/com/shankhadeepghoshal/sealedclassandrecords/Triangle.java: -------------------------------------------------------------------------------- 1 | package com.shankhadeepghoshal.sealedclassandrecords; 2 | 3 | /** 4 | * @author Shankhadeep Ghoshal 5 | **/ 6 | 7 | public record Triangle(double base, double height) implements Shape { 8 | 9 | @Override 10 | public double calculateArea() { 11 | return 0.5 * base * height; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /stage #1/light-talks/priority-queue/Heap_demo/readme.md: -------------------------------------------------------------------------------- 1 | Suppose we are backend service of the large book store. 2 | We have been asked to calculate statistics about the most popular books this year. 3 | We get the list of sold books and the required size of the top list. Result Order does not matter 4 | 5 | Example: 6 | input: ["a", "b", "a", "c", "b", "b"], top 2 7 | result: ["a", "b"] -------------------------------------------------------------------------------- /stage #1/light-talks/priority-queue/Heap_demo/src/test/java/com/mjc/model/service/BinaryHeapTest.java: -------------------------------------------------------------------------------- 1 | package com.mjc.model.service; 2 | 3 | import com.mjc.demo.service.BinaryHeap; 4 | import org.junit.jupiter.api.Test; 5 | 6 | import java.util.Arrays; 7 | 8 | public class BinaryHeapTest { 9 | 10 | @Test 11 | void test() { 12 | BinaryHeap heap = new BinaryHeap(); 13 | int[] result = heap.build(new int[]{10, 5, 8, 20, 2, 7}); 14 | System.out.println(Arrays.toString(result)); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /stage #1/light-talks/testing/Demo/build.gradle: -------------------------------------------------------------------------------- 1 | plugins { 2 | id 'java' 3 | } 4 | 5 | group 'com.epam.mjc' 6 | version '1.0' 7 | 8 | repositories { 9 | mavenCentral() 10 | } 11 | 12 | dependencies { 13 | testImplementation 'org.junit.jupiter:junit-jupiter-api:5.9.0' 14 | testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.9.0' 15 | testImplementation group: 'org.mockito', name: 'mockito-core', version: '4.6.1' 16 | testImplementation group: 'org.mockito', name: 'mockito-junit-jupiter', version: '4.6.1' 17 | } 18 | 19 | test { 20 | useJUnitPlatform() 21 | } -------------------------------------------------------------------------------- /stage #1/light-talks/testing/Demo/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/light-talks/testing/Demo/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /stage #1/light-talks/testing/Demo/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /stage #1/light-talks/testing/Demo/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'Testing_demo' 2 | 3 | -------------------------------------------------------------------------------- /stage #1/light-talks/testing/Demo/src/main/java/com/epam/mjc/Main.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc; 2 | 3 | public class Main { 4 | public static void main(String[] args) { 5 | System.out.println("Hello world!"); 6 | } 7 | } -------------------------------------------------------------------------------- /stage #1/light-talks/testing/Demo/src/main/java/com/epam/mjc/exception/CustomerException.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.exception; 2 | 3 | public class CustomerException extends RuntimeException { 4 | 5 | public CustomerException() { 6 | } 7 | 8 | public CustomerException(String message) { 9 | super(message); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /stage #1/light-talks/testing/Demo/src/main/java/com/epam/mjc/exception/HotelRoomException.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.exception; 2 | 3 | public class HotelRoomException extends RuntimeException { 4 | 5 | public HotelRoomException() { 6 | } 7 | 8 | public HotelRoomException(String message) { 9 | super(message); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /stage #1/light-talks/testing/Demo/src/main/java/com/epam/mjc/exception/ValidationException.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.exception; 2 | 3 | public class ValidationException extends RuntimeException { 4 | 5 | public ValidationException() { 6 | } 7 | 8 | public ValidationException(String message) { 9 | super(message); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /stage #1/light-talks/testing/Demo/src/main/java/com/epam/mjc/repository/BookingRepository.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.repository; 2 | 3 | import com.epam.mjc.model.Booking; 4 | 5 | import java.time.LocalDate; 6 | 7 | public class BookingRepository { 8 | 9 | public boolean createBooking(Booking booking) { 10 | return true; 11 | } 12 | 13 | public void deleteBooking(long bookingId) { 14 | 15 | } 16 | 17 | public boolean findBooking(LocalDate startDate, LocalDate endDate) { 18 | return true; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /stage #1/light-talks/testing/Demo/src/main/java/com/epam/mjc/repository/CustomerRepository.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.repository; 2 | 3 | import com.epam.mjc.model.Customer; 4 | 5 | public class CustomerRepository { 6 | 7 | public Customer find(long customerId) { 8 | return new Customer(); 9 | } 10 | 11 | public boolean updateCost(long customerId, double cost) { 12 | return true; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /stage #1/light-talks/testing/Demo/src/main/java/com/epam/mjc/repository/HotelRoomRepository.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.repository; 2 | 3 | import com.epam.mjc.model.HotelRoom; 4 | 5 | public class HotelRoomRepository { 6 | 7 | public HotelRoom find(long hotelRoomId) { 8 | return new HotelRoom(); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /stage #1/light-talks/testing/Demo/src/main/java/com/epam/mjc/service/BookingService.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.service; 2 | 3 | import java.time.LocalDate; 4 | 5 | public interface BookingService { 6 | 7 | boolean book(long hotelRoomId, long customerId, LocalDate startDate, LocalDate endDate); 8 | } 9 | -------------------------------------------------------------------------------- /stage #1/light-talks/testing/Demo/src/main/java/com/epam/mjc/service/BookingValidator.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.service; 2 | 3 | import com.epam.mjc.model.Booking; 4 | 5 | public class BookingValidator { 6 | 7 | public boolean isValid(Booking booking) { 8 | return true; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /stage #1/light-talks/testing/Presentation.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/light-talks/testing/Presentation.pptx -------------------------------------------------------------------------------- /stage #1/light-talks/time-api/Java Date Time API.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/light-talks/time-api/Java Date Time API.pptx -------------------------------------------------------------------------------- /stage #1/module #1. Exceptions/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #1. Exceptions/.keep -------------------------------------------------------------------------------- /stage #1/module #1. Exceptions/lesson #9 Exceptions/Java Training Lesson 9 Exceptions.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #1. Exceptions/lesson #9 Exceptions/Java Training Lesson 9 Exceptions.pdf -------------------------------------------------------------------------------- /stage #1/module #1. Exceptions/lesson #9 Exceptions/The_Exceptions_Thrown_by_a_Method.md: -------------------------------------------------------------------------------- 1 | # The Exceptions Thrown by a Method 2 | 3 | ## Throws and Throw syntax 4 | 5 | ![image](./media/The_Exceptions_Thrown_by_a_Method.png) 6 | -------------------------------------------------------------------------------- /stage #1/module #1. Exceptions/lesson #9 Exceptions/media/CustomExceptionSyntax.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #1. Exceptions/lesson #9 Exceptions/media/CustomExceptionSyntax.png -------------------------------------------------------------------------------- /stage #1/module #1. Exceptions/lesson #9 Exceptions/media/The_Exceptions_Thrown_by_a_Method.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #1. Exceptions/lesson #9 Exceptions/media/The_Exceptions_Thrown_by_a_Method.png -------------------------------------------------------------------------------- /stage #1/module #1. Exceptions/lesson #9 Exceptions/media/handlingMethod.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #1. Exceptions/lesson #9 Exceptions/media/handlingMethod.png -------------------------------------------------------------------------------- /stage #1/module #1. Exceptions/lesson #9 Exceptions/media/howToCrateCustomEx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #1. Exceptions/lesson #9 Exceptions/media/howToCrateCustomEx.png -------------------------------------------------------------------------------- /stage #1/module #1. Exceptions/lesson #9 Exceptions/media/image1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #1. Exceptions/lesson #9 Exceptions/media/image1.png -------------------------------------------------------------------------------- /stage #1/module #1. Exceptions/lesson #9 Exceptions/media/image2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #1. Exceptions/lesson #9 Exceptions/media/image2.png -------------------------------------------------------------------------------- /stage #1/module #1. Exceptions/lesson #9 Exceptions/media/image3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #1. Exceptions/lesson #9 Exceptions/media/image3.png -------------------------------------------------------------------------------- /stage #1/module #1. Exceptions/lesson #9 Exceptions/media/image4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #1. Exceptions/lesson #9 Exceptions/media/image4.png -------------------------------------------------------------------------------- /stage #1/module #1. Exceptions/lesson #9 Exceptions/media/test-image.png: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /stage #1/module #1. Exceptions/lesson #9 Exceptions/media/try_catch_finally_syntax_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #1. Exceptions/lesson #9 Exceptions/media/try_catch_finally_syntax_1.png -------------------------------------------------------------------------------- /stage #1/module #1. Exceptions/lesson #9 Exceptions/media/try_catch_finally_syntax_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #1. Exceptions/lesson #9 Exceptions/media/try_catch_finally_syntax_2.png -------------------------------------------------------------------------------- /stage #1/module #1. Exceptions/lesson #9 Exceptions/media/try_catch_finally_syntax_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #1. Exceptions/lesson #9 Exceptions/media/try_catch_finally_syntax_3.png -------------------------------------------------------------------------------- /stage #1/module #1. Exceptions/lesson #9 Exceptions/media/try_catch_finally_syntax_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #1. Exceptions/lesson #9 Exceptions/media/try_catch_finally_syntax_4.png -------------------------------------------------------------------------------- /stage #1/module #2. Strings/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #2. Strings/.keep -------------------------------------------------------------------------------- /stage #1/module #2. Strings/lesson #1. String/media/charSequence.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #2. Strings/lesson #1. String/media/charSequence.png -------------------------------------------------------------------------------- /stage #1/module #2. Strings/lesson #1. String/media/stringHierachy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #2. Strings/lesson #1. String/media/stringHierachy.png -------------------------------------------------------------------------------- /stage #1/module #2. Strings/lesson #1. String/media/stringPool.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #2. Strings/lesson #1. String/media/stringPool.png -------------------------------------------------------------------------------- /stage #1/module #2. Strings/lesson #3. StringJoiner & StringTokenizer/media/StringTokenizer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #2. Strings/lesson #3. StringJoiner & StringTokenizer/media/StringTokenizer.png -------------------------------------------------------------------------------- /stage #1/module #3. Generics/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #3. Generics/.keep -------------------------------------------------------------------------------- /stage #1/module #4. Collections/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #4. Collections/.keep -------------------------------------------------------------------------------- /stage #1/module #4. Collections/lesson #1. Overview/media/hierarchy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #4. Collections/lesson #1. Overview/media/hierarchy.png -------------------------------------------------------------------------------- /stage #1/module #4. Collections/lesson #2. List/media/AbstractList.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #4. Collections/lesson #2. List/media/AbstractList.png -------------------------------------------------------------------------------- /stage #1/module #4. Collections/lesson #2. List/media/Collections.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #4. Collections/lesson #2. List/media/Collections.png -------------------------------------------------------------------------------- /stage #1/module #4. Collections/lesson #2. List/media/LinkedList.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #4. Collections/lesson #2. List/media/LinkedList.png -------------------------------------------------------------------------------- /stage #1/module #4. Collections/lesson #2. List/media/LinkedList1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #4. Collections/lesson #2. List/media/LinkedList1.png -------------------------------------------------------------------------------- /stage #1/module #4. Collections/lesson #3. Set/media/LinkedHashMapVsLinkedHashSetDiff.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #4. Collections/lesson #3. Set/media/LinkedHashMapVsLinkedHashSetDiff.jpg -------------------------------------------------------------------------------- /stage #1/module #4. Collections/lesson #3. Set/media/set_hierarchy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #4. Collections/lesson #3. Set/media/set_hierarchy.png -------------------------------------------------------------------------------- /stage #1/module #4. Collections/lesson #4. Map/media/LinkedHashMap-Node-in-Java.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #4. Collections/lesson #4. Map/media/LinkedHashMap-Node-in-Java.png -------------------------------------------------------------------------------- /stage #1/module #4. Collections/lesson #4. Map/media/Treemap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #4. Collections/lesson #4. Map/media/Treemap.png -------------------------------------------------------------------------------- /stage #1/module #4. Collections/lesson #4. Map/media/map_hierarchy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #4. Collections/lesson #4. Map/media/map_hierarchy.png -------------------------------------------------------------------------------- /stage #1/module #4. Collections/lesson #5 Queue/media/queue_hierarchy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #4. Collections/lesson #5 Queue/media/queue_hierarchy.png -------------------------------------------------------------------------------- /stage #1/module #5. Functional way of Java/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #5. Functional way of Java/.keep -------------------------------------------------------------------------------- /stage #1/module #5. Functional way of Java/media/flatMap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #5. Functional way of Java/media/flatMap.png -------------------------------------------------------------------------------- /stage #1/module #5. Functional way of Java/media/streams.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #5. Functional way of Java/media/streams.png -------------------------------------------------------------------------------- /stage #1/module #5. Functional way of Java/overview.md: -------------------------------------------------------------------------------- 1 | # Functional way of Java 2 | 3 | ## Materials 4 | - Functional Interfaces 5 | - Lambda Expression 6 | - Functional Composition 7 | - Method References 8 | - Stream API 9 | - Optional -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/.keep -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/lesson #1. IO/assets/basic_stream_closing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/lesson #1. IO/assets/basic_stream_closing.png -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/lesson #1. IO/assets/byte_stream_example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/lesson #1. IO/assets/byte_stream_example.png -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/lesson #1. IO/assets/character_stream_usage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/lesson #1. IO/assets/character_stream_usage.png -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/lesson #1. IO/assets/detailed_input_output_scheme.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/lesson #1. IO/assets/detailed_input_output_scheme.png -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/lesson #1. IO/assets/reading_stream_scheme.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/lesson #1. IO/assets/reading_stream_scheme.png -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/lesson #1. IO/assets/reading_writing_file_example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/lesson #1. IO/assets/reading_writing_file_example.png -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/lesson #1. IO/assets/simplified_byte_stream_hierarchy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/lesson #1. IO/assets/simplified_byte_stream_hierarchy.png -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/lesson #1. IO/assets/try_with_resources.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/lesson #1. IO/assets/try_with_resources.png -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/lesson #1. IO/assets/writing_stream_scheme.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/lesson #1. IO/assets/writing_stream_scheme.png -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/lesson #2. NIO/assets/buffer_oriented_io.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/lesson #2. NIO/assets/buffer_oriented_io.png -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/lesson #2. NIO/assets/byte_completeness_check.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/lesson #2. NIO/assets/byte_completeness_check.png -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/lesson #2. NIO/assets/classic_io_server_design.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/lesson #2. NIO/assets/classic_io_server_design.png -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/lesson #2. NIO/assets/creating_path_instance.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/lesson #2. NIO/assets/creating_path_instance.png -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/lesson #2. NIO/assets/data_reading_from_channel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/lesson #2. NIO/assets/data_reading_from_channel.png -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/lesson #2. NIO/assets/io_reading_data_from_blocking_stream.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/lesson #2. NIO/assets/io_reading_data_from_blocking_stream.png -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/lesson #2. NIO/assets/read_bytes_io.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/lesson #2. NIO/assets/read_bytes_io.png -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/lesson #2. NIO/assets/read_bytes_nio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/lesson #2. NIO/assets/read_bytes_nio.png -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/lesson #2. NIO/assets/reading_with_nio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/lesson #2. NIO/assets/reading_with_nio.png -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/lesson #2. NIO/assets/single_thread_manage_multiple_connections.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/lesson #2. NIO/assets/single_thread_manage_multiple_connections.png -------------------------------------------------------------------------------- /stage #1/module #6. IO, NIO/lesson #2. NIO/assets/stream_oriented_io.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #6. IO, NIO/lesson #2. NIO/assets/stream_oriented_io.png -------------------------------------------------------------------------------- /stage #1/module #7. Data Formats/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #7. Data Formats/.keep -------------------------------------------------------------------------------- /stage #1/module #8. Concurrency/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #8. Concurrency/.keep -------------------------------------------------------------------------------- /stage #1/module #8. Concurrency/Multithreading presentation.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #8. Concurrency/Multithreading presentation.pdf -------------------------------------------------------------------------------- /stage #1/module #8. Concurrency/code/build.gradle: -------------------------------------------------------------------------------- 1 | plugins { 2 | id 'java' 3 | } 4 | 5 | group 'com.epam' 6 | version '1.0-SNAPSHOT' 7 | 8 | repositories { 9 | mavenCentral() 10 | } 11 | 12 | dependencies { 13 | } 14 | 15 | test { 16 | useJUnitPlatform() 17 | } -------------------------------------------------------------------------------- /stage #1/module #8. Concurrency/code/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #1/module #8. Concurrency/code/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /stage #1/module #8. Concurrency/code/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /stage #1/module #8. Concurrency/code/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'Demo' 2 | 3 | -------------------------------------------------------------------------------- /stage #2/light-talks/build-tools/build-tools-ant/.gitignore: -------------------------------------------------------------------------------- 1 | *.el 2 | *.ipr 3 | *.iws 4 | *.pif 5 | *.snap 6 | .ant.properties 7 | .classpath 8 | .DS_Store 9 | .project 10 | .settings 11 | bin 12 | apache-ant-1.* 13 | bootstrap 14 | build 15 | dist 16 | distribution 17 | java-repository 18 | patch.tar.gz 19 | patch.txt 20 | target 21 | velocity.log* 22 | lib/optional/*.jar 23 | src/tests/antunit/core/output 24 | .idea 25 | *.iml 26 | /src/GPATH 27 | /src/GRTAGS 28 | /src/GSYMS 29 | /src/GTAGS 30 | /log.xml 31 | lib/optional/license.txt 32 | /release/distrib/ 33 | -------------------------------------------------------------------------------- /stage #2/light-talks/build-tools/build-tools-ant/lib/guava-31.1-jre.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/light-talks/build-tools/build-tools-ant/lib/guava-31.1-jre.jar -------------------------------------------------------------------------------- /stage #2/light-talks/build-tools/build-tools-ant/src/school/mjc/build/tools/ant/Main.java: -------------------------------------------------------------------------------- 1 | package school.mjc.build.tools.ant; 2 | 3 | import com.google.common.base.Strings; 4 | 5 | public class Main { 6 | 7 | public static void main(String[] args) { 8 | String s = Strings.nullToEmpty("Hello World"); 9 | System.out.println(s); 10 | } 11 | } 12 | 13 | -------------------------------------------------------------------------------- /stage #2/light-talks/build-tools/build-tools-gradle/.gitignore: -------------------------------------------------------------------------------- 1 | # Compiled class file 2 | *.class 3 | 4 | # Log file 5 | *.log 6 | 7 | # BlueJ files 8 | *.ctxt 9 | 10 | # Mobile Tools for Java (J2ME) 11 | .mtj.tmp/ 12 | 13 | # Package Files # 14 | *.jar 15 | *.war 16 | *.nar 17 | *.ear 18 | *.zip 19 | *.tar.gz 20 | *.rar 21 | 22 | # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml 23 | hs_err_pid* 24 | replay_pid* 25 | /.gradle/ 26 | -------------------------------------------------------------------------------- /stage #2/light-talks/build-tools/build-tools-gradle/build-tools-gradle.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | -------------------------------------------------------------------------------- /stage #2/light-talks/build-tools/build-tools-gradle/foo.bar: -------------------------------------------------------------------------------- 1 | Hello, I'm the file that should be moved 2 | -------------------------------------------------------------------------------- /stage #2/light-talks/build-tools/build-tools-gradle/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/light-talks/build-tools/build-tools-gradle/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /stage #2/light-talks/build-tools/build-tools-gradle/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /stage #2/light-talks/build-tools/build-tools-gradle/settings.gradle.kts: -------------------------------------------------------------------------------- 1 | rootProject.name = "build-tools-gradle" 2 | 3 | -------------------------------------------------------------------------------- /stage #2/light-talks/build-tools/build-tools-gradle/src/main/java/school/mjc/build/tools/gradle/Main.java: -------------------------------------------------------------------------------- 1 | package school.mjc.build.tools.gradle; 2 | 3 | import com.google.common.base.Strings; 4 | 5 | public class Main { 6 | 7 | public static void main(String[] args) { 8 | String s = Strings.nullToEmpty("Hello World"); 9 | System.out.println(s); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /stage #2/light-talks/build-tools/build-tools-gradle/src/main/resources/foo.bar: -------------------------------------------------------------------------------- 1 | Hello, I'm the file that should be moved 2 | -------------------------------------------------------------------------------- /stage #2/light-talks/build-tools/build-tools-maven/build-tools-maven.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | -------------------------------------------------------------------------------- /stage #2/light-talks/build-tools/build-tools-maven/foo.bar: -------------------------------------------------------------------------------- 1 | Hello, I'm the file that should be moved 2 | -------------------------------------------------------------------------------- /stage #2/light-talks/build-tools/build-tools-maven/src/main/java/school/mjc/build/tools/maven/Main.java: -------------------------------------------------------------------------------- 1 | package school.mjc.build.tools.maven; 2 | 3 | import com.google.common.base.Strings; 4 | 5 | public class Main { 6 | 7 | public static void main(String[] args) { 8 | String s = Strings.nullToEmpty("Hello World"); 9 | System.out.println(s); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /stage #2/light-talks/build-tools/build-tools-maven/src/main/resources/foo.bar: -------------------------------------------------------------------------------- 1 | Hello, I'm the file that should be moved 2 | -------------------------------------------------------------------------------- /stage #2/light-talks/build-tools/buildTools.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/light-talks/build-tools/buildTools.pptx -------------------------------------------------------------------------------- /stage #2/light-talks/code-quality-tools/config/checkstyle/checkstyle-suppressions.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /stage #2/light-talks/code-quality-tools/config/owasp/owasp-suppressions.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | ^pkg:maven/com\.fasterxml\.jackson\.core/jackson\-databind@.*$ 8 | CVE-2020-36518 9 | 10 | 11 | -------------------------------------------------------------------------------- /stage #2/light-talks/code-quality-tools/config/spotbugs/spotbugs-exclude.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /stage #2/light-talks/code-quality-tools/config/spotless/.importorder: -------------------------------------------------------------------------------- 1 | #Import Order 2 | 0=java 3 | 1=javax 4 | 2= 5 | 3=com.example 6 | 4=\# 7 | -------------------------------------------------------------------------------- /stage #2/light-talks/code-quality-tools/docker-compose.yaml: -------------------------------------------------------------------------------- 1 | version: "3" 2 | services: 3 | sonarqube: 4 | image: sonarqube:8-community 5 | volumes: 6 | - /tmp/opt/sonarqube/conf:/opt/sonarqube/conf \ 7 | - /tmp/opt/sonarqube/logs:/opt/sonarqube/data \ 8 | - /tmp/opt/sonarqube/data:/opt/sonarqube/logs \ 9 | - /tmp/opt/sonarqube/extensions:/opt/sonarqube/extensions \ 10 | ports: 11 | - "9000:9000" -------------------------------------------------------------------------------- /stage #2/light-talks/code-quality-tools/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /stage #2/light-talks/code-quality-tools/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'quality-gates' 2 | -------------------------------------------------------------------------------- /stage #2/light-talks/code-quality-tools/src/main/java/com/example/qualitygates/QualityGatesApplication.java: -------------------------------------------------------------------------------- 1 | package com.example.qualitygates; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class QualityGatesApplication { 8 | 9 | public static void main(String[] args) { 10 | SpringApplication.run(QualityGatesApplication.class, args); 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /stage #2/light-talks/code-quality-tools/src/main/java/com/example/qualitygates/demo/SpotBugsDemo.java: -------------------------------------------------------------------------------- 1 | package com.example.qualitygates.demo; 2 | 3 | import java.time.LocalDate; 4 | 5 | import com.example.qualitygates.dto.UserDTO; 6 | 7 | /* 8 | * ./gradlew spotbugsMain 9 | */ 10 | public class SpotBugsDemo { 11 | 12 | private String foo = "foo"; 13 | 14 | public void bar(String s) { 15 | String name = s.toUpperCase(); 16 | LocalDate date = LocalDate.now(); 17 | 18 | UserDTO userDTO = new UserDTO(name, date); 19 | System.out.println(userDTO); 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /stage #2/light-talks/code-quality-tools/src/main/java/com/example/qualitygates/demo/SpotlessDemo.java: -------------------------------------------------------------------------------- 1 | package com.example.qualitygates.demo; 2 | 3 | /* 4 | * ./gradlew spotlessJavaCheck 5 | * 6 | * ./gradlew spotlessApply 7 | */ 8 | public class SpotlessDemo { private String bar; public void baz() { System.out.println(bar); } 9 | public SpotlessDemo(String bar) { this.bar = bar; } public SpotlessDemo() { } public String getBar() { 10 | return bar; } public void setBar(String bar) { this.bar = bar; }} 11 | -------------------------------------------------------------------------------- /stage #2/light-talks/code-quality-tools/src/main/java/com/example/qualitygates/dto/UserDTO.java: -------------------------------------------------------------------------------- 1 | package com.example.qualitygates.dto; 2 | 3 | import java.time.LocalDate; 4 | 5 | public class UserDTO { 6 | 7 | private String name; 8 | 9 | private LocalDate date; 10 | 11 | public UserDTO(String name, LocalDate date) { 12 | this.name = name; 13 | this.date = date; 14 | } 15 | 16 | } 17 | -------------------------------------------------------------------------------- /stage #2/light-talks/code-quality-tools/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /stage #2/light-talks/code-quality-tools/src/test/java/com/example/qualitygates/demo/SpotBugsDemoTest.java: -------------------------------------------------------------------------------- 1 | package com.example.qualitygates.demo; 2 | 3 | import org.junit.jupiter.api.Test; 4 | 5 | class SpotBugsDemoTest { 6 | 7 | SpotBugsDemo spotBugsDemo = new SpotBugsDemo(); 8 | 9 | // @Test 10 | // void testTest() { 11 | // spotBugsDemo.bar("Foo"); 12 | // } 13 | 14 | } 15 | -------------------------------------------------------------------------------- /stage #2/module #1. GIT & Build Tools/git/media/image1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #1. GIT & Build Tools/git/media/image1.png -------------------------------------------------------------------------------- /stage #2/module #1. GIT & Build Tools/git/media/image10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #1. GIT & Build Tools/git/media/image10.png -------------------------------------------------------------------------------- /stage #2/module #1. GIT & Build Tools/git/media/image11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #1. GIT & Build Tools/git/media/image11.png -------------------------------------------------------------------------------- /stage #2/module #1. GIT & Build Tools/git/media/image12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #1. GIT & Build Tools/git/media/image12.png -------------------------------------------------------------------------------- /stage #2/module #1. GIT & Build Tools/git/media/image13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #1. GIT & Build Tools/git/media/image13.png -------------------------------------------------------------------------------- /stage #2/module #1. GIT & Build Tools/git/media/image14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #1. GIT & Build Tools/git/media/image14.png -------------------------------------------------------------------------------- /stage #2/module #1. GIT & Build Tools/git/media/image15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #1. GIT & Build Tools/git/media/image15.png -------------------------------------------------------------------------------- /stage #2/module #1. GIT & Build Tools/git/media/image2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #1. GIT & Build Tools/git/media/image2.png -------------------------------------------------------------------------------- /stage #2/module #1. GIT & Build Tools/git/media/image3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #1. GIT & Build Tools/git/media/image3.png -------------------------------------------------------------------------------- /stage #2/module #1. GIT & Build Tools/git/media/image4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #1. GIT & Build Tools/git/media/image4.png -------------------------------------------------------------------------------- /stage #2/module #1. GIT & Build Tools/git/media/image5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #1. GIT & Build Tools/git/media/image5.png -------------------------------------------------------------------------------- /stage #2/module #1. GIT & Build Tools/git/media/image6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #1. GIT & Build Tools/git/media/image6.png -------------------------------------------------------------------------------- /stage #2/module #1. GIT & Build Tools/git/media/image7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #1. GIT & Build Tools/git/media/image7.png -------------------------------------------------------------------------------- /stage #2/module #1. GIT & Build Tools/git/media/image8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #1. GIT & Build Tools/git/media/image8.png -------------------------------------------------------------------------------- /stage #2/module #1. GIT & Build Tools/git/media/image9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #1. GIT & Build Tools/git/media/image9.png -------------------------------------------------------------------------------- /stage #2/module #1. GIT & Build Tools/git_build_tools_module.md: -------------------------------------------------------------------------------- 1 | # GIT & Build Tools 2 | 3 | ## Timeline 4 | The recommended timeline for the whole module is 3 days. -------------------------------------------------------------------------------- /stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #1 Web & HTTP/media/http_architecture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #1 Web & HTTP/media/http_architecture.png -------------------------------------------------------------------------------- /stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #1 Web & HTTP/media/http_message_structure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #1 Web & HTTP/media/http_message_structure.png -------------------------------------------------------------------------------- /stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #1 Web & HTTP/media/http_request_headers.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #1 Web & HTTP/media/http_request_headers.png -------------------------------------------------------------------------------- /stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #1 Web & HTTP/media/http_response_headers.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #1 Web & HTTP/media/http_response_headers.png -------------------------------------------------------------------------------- /stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #1 Web & HTTP/media/http_status_codes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #1 Web & HTTP/media/http_status_codes.png -------------------------------------------------------------------------------- /stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #1 Web & HTTP/media/road.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #1 Web & HTTP/media/road.jpeg -------------------------------------------------------------------------------- /stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #1 Web & HTTP/media/сlient_server_interaction.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #1 Web & HTTP/media/сlient_server_interaction.png -------------------------------------------------------------------------------- /stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #2 Servlets/media/servlet_architecture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #2 Servlets/media/servlet_architecture.png -------------------------------------------------------------------------------- /stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #2 Servlets/media/servlet_hierarchy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #2 Servlets/media/servlet_hierarchy.png -------------------------------------------------------------------------------- /stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #3 Servlet add-ons/media/add_config.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #3 Servlet add-ons/media/add_config.png -------------------------------------------------------------------------------- /stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #3 Servlet add-ons/media/add_config_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #3 Servlet add-ons/media/add_config_2.png -------------------------------------------------------------------------------- /stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #3 Servlet add-ons/media/app_context.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #3 Servlet add-ons/media/app_context.png -------------------------------------------------------------------------------- /stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #3 Servlet add-ons/media/artifact.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #3 Servlet add-ons/media/artifact.png -------------------------------------------------------------------------------- /stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #3 Servlet add-ons/media/config.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #3 Servlet add-ons/media/config.png -------------------------------------------------------------------------------- /stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #3 Servlet add-ons/media/launch_btn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #2. Web, HTTP(s) methods, Java EE Servlets/lesson #3 Servlet add-ons/media/launch_btn.png -------------------------------------------------------------------------------- /stage #2/module #4. Architecture Basics, Patterns, Best Practices/Java Training Lesson - Design Patterns.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #4. Architecture Basics, Patterns, Best Practices/Java Training Lesson - Design Patterns.pdf -------------------------------------------------------------------------------- /stage #2/module #4. Architecture Basics, Patterns, Best Practices/Java Training Lesson - Info handling.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #4. Architecture Basics, Patterns, Best Practices/Java Training Lesson - Info handling.pdf -------------------------------------------------------------------------------- /stage #2/module #4. Architecture Basics, Patterns, Best Practices/Java Training Lesson 7.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module #4. Architecture Basics, Patterns, Best Practices/Java Training Lesson 7.pdf -------------------------------------------------------------------------------- /stage #2/module#6 JDBC/media/Architecture-of-JDBC.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module#6 JDBC/media/Architecture-of-JDBC.jpeg -------------------------------------------------------------------------------- /stage #2/module#6 JDBC/media/url_syntax.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #2/module#6 JDBC/media/url_syntax.png -------------------------------------------------------------------------------- /stage #3/Stage_3_Final_Project.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/Stage_3_Final_Project.pdf -------------------------------------------------------------------------------- /stage #3/light-talks/bigO/bigO.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/bigO/bigO.pptx -------------------------------------------------------------------------------- /stage #3/light-talks/encryption/encryption.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/encryption/encryption.pptx -------------------------------------------------------------------------------- /stage #3/light-talks/hibernate/Demo/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/hibernate/Demo/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /stage #3/light-talks/hibernate/Demo/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /stage #3/light-talks/hibernate/Demo/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'demo' 2 | -------------------------------------------------------------------------------- /stage #3/light-talks/hibernate/Demo/src/main/java/com/epam/mjc/demo/HibernateDemoApplication.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.demo; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class HibernateDemoApplication { 8 | 9 | public static void main(String[] args) { 10 | SpringApplication.run(HibernateDemoApplication.class, args); 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /stage #3/light-talks/hibernate/Demo/src/main/java/com/epam/mjc/demo/common/IdSaver.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.demo.common; 2 | 3 | import org.springframework.stereotype.Component; 4 | 5 | import java.util.HashMap; 6 | import java.util.Map; 7 | 8 | @Component 9 | public class IdSaver { 10 | 11 | private final static Map ID_MAP = new HashMap<>(); 12 | 13 | public Long getIdByName(String name) { 14 | return ID_MAP.get(name); 15 | } 16 | 17 | public void putPair(String name, Long id) { 18 | ID_MAP.put(name, id); 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /stage #3/light-talks/hibernate/Demo/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver 2 | spring.datasource.url=#your database url 3 | spring.jpa.hibernate.ddl-auto=create-drop 4 | spring.jpa.show-sql=true 5 | spring.jpa.properties.hibernate.format_sql=true 6 | spring.main.web-application-type=none 7 | 8 | 9 | -------------------------------------------------------------------------------- /stage #3/light-talks/hibernate/Demo/src/test/java/com/epam/mjc/demo/HibernateDemoApplicationTests.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.demo; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class HibernateDemoApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /stage #3/light-talks/hibernate/Hibernate_presentation.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/hibernate/Hibernate_presentation.pptx -------------------------------------------------------------------------------- /stage #3/light-talks/liquibase/application/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/liquibase/application/.gitignore -------------------------------------------------------------------------------- /stage #3/light-talks/liquibase/application/.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/liquibase/application/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /stage #3/light-talks/liquibase/application/HELP.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/liquibase/application/HELP.md -------------------------------------------------------------------------------- /stage #3/light-talks/liquibase/application/mvnw: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/liquibase/application/mvnw -------------------------------------------------------------------------------- /stage #3/light-talks/liquibase/application/mvnw.cmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/liquibase/application/mvnw.cmd -------------------------------------------------------------------------------- /stage #3/light-talks/liquibase/application/src/main/java/school/mjc/application/Application.java: -------------------------------------------------------------------------------- 1 | package school.mjc.application; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class Application { 8 | 9 | public static void main(String[] args) { 10 | SpringApplication.run(Application.class, args); 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /stage #3/light-talks/liquibase/application/src/main/java/school/mjc/application/exception/UserNotFoundException.java: -------------------------------------------------------------------------------- 1 | package school.mjc.application.exception; 2 | 3 | public class UserNotFoundException extends RuntimeException { 4 | public UserNotFoundException(String s) { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /stage #3/light-talks/liquibase/application/src/main/java/school/mjc/application/model/User.java: -------------------------------------------------------------------------------- 1 | package school.mjc.application.model; 2 | 3 | import jakarta.persistence.*; 4 | import lombok.Data; 5 | import lombok.NoArgsConstructor; 6 | 7 | @Entity 8 | @Data 9 | @NoArgsConstructor 10 | @Table(name = "user_table") 11 | public class User { 12 | @Id 13 | @GeneratedValue(strategy = GenerationType.AUTO) 14 | private Long id; 15 | 16 | @Column(name = "username") 17 | private String username; 18 | 19 | @Column(name = "amount_of_posts") 20 | private int amountOfPosts; 21 | } 22 | -------------------------------------------------------------------------------- /stage #3/light-talks/liquibase/application/src/main/java/school/mjc/application/repository/UserRepository.java: -------------------------------------------------------------------------------- 1 | package school.mjc.application.repository; 2 | 3 | import org.springframework.data.repository.CrudRepository; 4 | import school.mjc.application.model.User; 5 | 6 | public interface UserRepository extends CrudRepository { 7 | } 8 | -------------------------------------------------------------------------------- /stage #3/light-talks/liquibase/application/src/main/java/school/mjc/application/service/UserService.java: -------------------------------------------------------------------------------- 1 | package school.mjc.application.service; 2 | 3 | import school.mjc.application.model.User; 4 | 5 | public interface UserService { 6 | 7 | User getUserById(Long id); 8 | 9 | User saveUser(User user); 10 | 11 | void deleteUserById(Long id); 12 | 13 | User updateUserById(Long id, User updatedUser); 14 | 15 | } -------------------------------------------------------------------------------- /stage #3/light-talks/liquibase/application/src/main/resources/application.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/liquibase/application/src/main/resources/application.properties -------------------------------------------------------------------------------- /stage #3/light-talks/liquibase/application/src/main/resources/db/changelog/changelog.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /stage #3/light-talks/liquibase/application/src/main/resources/db/changelog/changeset-0.2.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/liquibase/application/src/main/resources/db/changelog/changeset-0.2.sql -------------------------------------------------------------------------------- /stage #3/light-talks/liquibase/application/src/test/java/school/mjc/application/ApplicationTests.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/liquibase/application/src/test/java/school/mjc/application/ApplicationTests.java -------------------------------------------------------------------------------- /stage #3/light-talks/liquibase/presentation.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/liquibase/presentation.pptx -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/Java monitoring.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/Java monitoring.docx -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/Java monitoring.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/Java monitoring.pdf -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/.gradle/6.7/executionHistory/executionHistory.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/epam-demo/.gradle/6.7/executionHistory/executionHistory.bin -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/.gradle/6.7/executionHistory/executionHistory.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/epam-demo/.gradle/6.7/executionHistory/executionHistory.lock -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/.gradle/6.7/fileChanges/last-build.bin: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/.gradle/6.7/fileHashes/fileHashes.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/epam-demo/.gradle/6.7/fileHashes/fileHashes.bin -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/.gradle/6.7/fileHashes/fileHashes.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/epam-demo/.gradle/6.7/fileHashes/fileHashes.lock -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/.gradle/6.7/gc.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/epam-demo/.gradle/6.7/gc.properties -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/.gradle/6.7/javaCompile/classAnalysis.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/epam-demo/.gradle/6.7/javaCompile/classAnalysis.bin -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/.gradle/6.7/javaCompile/javaCompile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/epam-demo/.gradle/6.7/javaCompile/javaCompile.lock -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/.gradle/6.7/javaCompile/taskHistory.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/epam-demo/.gradle/6.7/javaCompile/taskHistory.bin -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/.gradle/buildOutputCleanup/buildOutputCleanup.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/epam-demo/.gradle/buildOutputCleanup/buildOutputCleanup.lock -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/.gradle/buildOutputCleanup/cache.properties: -------------------------------------------------------------------------------- 1 | #Sat Feb 12 11:08:48 EET 2022 2 | gradle.version=6.7 3 | -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/.gradle/buildOutputCleanup/outputFiles.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/epam-demo/.gradle/buildOutputCleanup/outputFiles.bin -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/.gradle/checksums/checksums.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/epam-demo/.gradle/checksums/checksums.lock -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/.gradle/configuration-cache/gc.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/epam-demo/.gradle/configuration-cache/gc.properties -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/.gradle/vcs-1/gc.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/epam-demo/.gradle/vcs-1/gc.properties -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/build.gradle: -------------------------------------------------------------------------------- 1 | plugins { 2 | id 'java' 3 | } 4 | 5 | group 'org.example' 6 | version '1.0-SNAPSHOT' 7 | 8 | repositories { 9 | mavenCentral() 10 | } 11 | 12 | dependencies { 13 | testImplementation 'org.junit.jupiter:junit-jupiter-api:5.6.0' 14 | testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine' 15 | } 16 | 17 | test { 18 | useJUnitPlatform() 19 | } -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/build/classes/java/main/com/epam/monitoring/Deadlock$LockingThread.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/epam-demo/build/classes/java/main/com/epam/monitoring/Deadlock$LockingThread.class -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/build/classes/java/main/com/epam/monitoring/Deadlock.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/epam-demo/build/classes/java/main/com/epam/monitoring/Deadlock.class -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/build/classes/java/main/com/epam/monitoring/GCSpammer.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/epam-demo/build/classes/java/main/com/epam/monitoring/GCSpammer.class -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/build/classes/java/main/com/epam/monitoring/MemoryLeak.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/epam-demo/build/classes/java/main/com/epam/monitoring/MemoryLeak.class -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/build/tmp/compileJava/source-classes-mapping.txt: -------------------------------------------------------------------------------- 1 | com/epam/monitoring/Deadlock.java 2 | com.epam.monitoring.Deadlock 3 | com.epam.monitoring.Deadlock$LockingThread 4 | com/epam/monitoring/MemoryLeak.java 5 | com.epam.monitoring.MemoryLeak 6 | com/epam/monitoring/GCSpammer.java 7 | com.epam.monitoring.GCSpammer 8 | -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/file.jfr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/epam-demo/file.jfr -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/filename.jfr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/epam-demo/filename.jfr -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/monitoring-java/epam-demo/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /stage #3/light-talks/monitoring-java/epam-demo/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'epam-demo' 2 | 3 | -------------------------------------------------------------------------------- /stage #3/light-talks/nosql/mongo/docker-compose.yaml: -------------------------------------------------------------------------------- 1 | version: '3.1' 2 | 3 | services: 4 | mongo: 5 | image: mongo:latest 6 | restart: always 7 | environment: 8 | MONGO_INITDB_ROOT_USERNAME: mongoadmin 9 | MONGO_INITDB_ROOT_PASSWORD: mongoadmin 10 | volumes: 11 | - mongodb_master_data:/data/db 12 | ports: 13 | - "27017:27017" 14 | volumes: 15 | mongodb_master_data: 16 | driver: local -------------------------------------------------------------------------------- /stage #3/light-talks/nosql/neo4j/docker-compose.yaml: -------------------------------------------------------------------------------- 1 | version: '3' 2 | services: 3 | neo4j: 4 | image: neo4j:3.5 5 | ports: 6 | - 7474:7474 7 | - 7687:7687 8 | environment: 9 | - NEO4J_dbms_memory_pagecache_size=1G 10 | - NEO4J_dbms.memory.heap.initial_size=1G 11 | - NEO4J_dbms_memory_heap_max__size=1G 12 | - NEO4J_AUTH=none 13 | -------------------------------------------------------------------------------- /stage #3/light-talks/nosql/nosqlLecture.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/nosql/nosqlLecture.pptx -------------------------------------------------------------------------------- /stage #3/light-talks/software-development-methodologies/Software_Development_Methodologies.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/software-development-methodologies/Software_Development_Methodologies.pptx -------------------------------------------------------------------------------- /stage #3/light-talks/tdd-demo/.gitignore: -------------------------------------------------------------------------------- 1 | .mtj.tmp/ 2 | *.class 3 | *.jar 4 | *.war 5 | *.ear 6 | *.nar 7 | hs_err_pid* 8 | replay_pid* 9 | 10 | bin/ 11 | build/ 12 | .gradle 13 | .gradletasknamecache 14 | gradle-app.setting 15 | !gradle-wrapper.jar 16 | 17 | out/ 18 | .idea/ 19 | .idea_modules/ 20 | *.iml 21 | *.ipr 22 | *.iws 23 | -------------------------------------------------------------------------------- /stage #3/light-talks/tdd-demo/address-book.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "id": 1, 4 | "name": "Danila", 5 | "address": "Vilnius, Lithuania" 6 | }, 7 | { 8 | "id": 2, 9 | "name": "Linas", 10 | "address": "Vilnius, Lithuania" 11 | } 12 | ] 13 | -------------------------------------------------------------------------------- /stage #3/light-talks/tdd-demo/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'tdd-demo' 2 | 3 | -------------------------------------------------------------------------------- /stage #3/light-talks/tdd-demo/src/main/java/school/mjc/tdd/AddressRecord.java: -------------------------------------------------------------------------------- 1 | package school.mjc.tdd; 2 | 3 | import lombok.Data; 4 | import lombok.experimental.Accessors; 5 | 6 | @Data 7 | @Accessors(chain = true) 8 | public class AddressRecord { 9 | 10 | private Integer id; 11 | private String name; 12 | private String address; 13 | } 14 | -------------------------------------------------------------------------------- /stage #3/light-talks/tdd-demo/src/main/java/school/mjc/tdd/FileReader.java: -------------------------------------------------------------------------------- 1 | package school.mjc.tdd; 2 | 3 | import java.util.List; 4 | 5 | public interface FileReader { 6 | 7 | List read(String filePath); 8 | } 9 | -------------------------------------------------------------------------------- /stage #3/light-talks/tdd-demo/src/test/java/school/mjc/tdd/AddressRecordMother.java: -------------------------------------------------------------------------------- 1 | package school.mjc.tdd; 2 | 3 | public class AddressRecordMother { 4 | 5 | public static AddressRecord getLinasRecord() { 6 | return new AddressRecord() 7 | .setId(2) 8 | .setName("Linas") 9 | .setAddress("Vilnius, Lithuania"); 10 | } 11 | 12 | public static AddressRecord getDanilaRecord() { 13 | return new AddressRecord() 14 | .setId(1) 15 | .setName("Danila") 16 | .setAddress("Vilnius, Lithuania"); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /stage #3/light-talks/tdd-demo/src/test/resources/address-book-corrupted.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "id": 1, 4 | "name": "Danila", 5 | "address": "Vilnius, Lithuania" 6 | -------------------------------------------------------------------------------- /stage #3/light-talks/tdd-demo/src/test/resources/address-book.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "id": 1, 4 | "name": "Danila", 5 | "address": "Vilnius, Lithuania" 6 | }, 7 | { 8 | "id": 2, 9 | "name": "Linas", 10 | "address": "Vilnius, Lithuania" 11 | } 12 | ] 13 | -------------------------------------------------------------------------------- /stage #3/light-talks/tdd-demo/tdd.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/light-talks/tdd-demo/tdd.pptx -------------------------------------------------------------------------------- /stage #3/module #1. Architecture Advanced/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #1. Architecture Advanced/.keep -------------------------------------------------------------------------------- /stage #3/module #1. Architecture Advanced/lesson #1. Layered Architecture/media/layered_architecture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #1. Architecture Advanced/lesson #1. Layered Architecture/media/layered_architecture.png -------------------------------------------------------------------------------- /stage #3/module #1. Architecture Advanced/lesson #1. Layered Architecture/media/layered_architecture_isolation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #1. Architecture Advanced/lesson #1. Layered Architecture/media/layered_architecture_isolation.png -------------------------------------------------------------------------------- /stage #3/module #1. Architecture Advanced/lesson #1. Layered Architecture/media/pattern_example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #1. Architecture Advanced/lesson #1. Layered Architecture/media/pattern_example.png -------------------------------------------------------------------------------- /stage #3/module #1. Architecture Advanced/lesson #2. MVC/media/car_clicker.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #1. Architecture Advanced/lesson #2. MVC/media/car_clicker.gif -------------------------------------------------------------------------------- /stage #3/module #1. Architecture Advanced/lesson #2. MVC/media/mvc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #1. Architecture Advanced/lesson #2. MVC/media/mvc.png -------------------------------------------------------------------------------- /stage #3/module #1. Architecture Advanced/lesson #3. Gradle Modules/media/all-structure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #1. Architecture Advanced/lesson #3. Gradle Modules/media/all-structure.png -------------------------------------------------------------------------------- /stage #3/module #1. Architecture Advanced/lesson #3. Gradle Modules/media/modules.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #1. Architecture Advanced/lesson #3. Gradle Modules/media/modules.png -------------------------------------------------------------------------------- /stage #3/module #1. Architecture Advanced/lesson #3. Gradle Modules/media/new-project.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #1. Architecture Advanced/lesson #3. Gradle Modules/media/new-project.png -------------------------------------------------------------------------------- /stage #3/module #1. Architecture Advanced/lesson #3. Gradle Modules/media/project-parent.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #1. Architecture Advanced/lesson #3. Gradle Modules/media/project-parent.png -------------------------------------------------------------------------------- /stage #3/module #1. Architecture Advanced/lesson #3. Gradle Modules/media/project-structure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #1. Architecture Advanced/lesson #3. Gradle Modules/media/project-structure.png -------------------------------------------------------------------------------- /stage #3/module #1. Architecture Advanced/lesson #3. Gradle Modules/media/service-build-gradle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #1. Architecture Advanced/lesson #3. Gradle Modules/media/service-build-gradle.png -------------------------------------------------------------------------------- /stage #3/module #1. Architecture Advanced/lesson #3. Gradle Modules/media/settings-gradle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #1. Architecture Advanced/lesson #3. Gradle Modules/media/settings-gradle.png -------------------------------------------------------------------------------- /stage #3/module #1. Architecture Advanced/module_description.md: -------------------------------------------------------------------------------- 1 | # Architecture Advanced 2 | 3 | This module provides basic architecture patterns that can be applied in application development. 4 | 5 | ## Contents 6 | * Layered Architecture 7 | * Model View Controller (MVC) 8 | * Gradle modules 9 | -------------------------------------------------------------------------------- /stage #3/module #2. Spring Core/lesson #2. Spring Architecture/media/spring-overview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #2. Spring Core/lesson #2. Spring Architecture/media/spring-overview.png -------------------------------------------------------------------------------- /stage #3/module #2. Spring Core/lesson #3. IOC Container/media/spring-container.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #2. Spring Core/lesson #3. IOC Container/media/spring-container.png -------------------------------------------------------------------------------- /stage #3/module #2. Spring Core/lesson #6. Bean scopes and lifecycle/media/spring-bean-lifecycle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #2. Spring Core/lesson #6. Bean scopes and lifecycle/media/spring-bean-lifecycle.png -------------------------------------------------------------------------------- /stage #3/module #2. Spring Core/module_description.md: -------------------------------------------------------------------------------- 1 | # Spring Core 2 | 3 | This module provides basic concepts of the Spring framework. 4 | 5 | ## Contents 6 | * Spring pros and cons 7 | * Spring Architecture 8 | * IOC Container 9 | * Dependency Injection 10 | * Annotation-based configuration 11 | * Classpath Scanning and Managed Components 12 | * Java-based configuration 13 | * Bean scopes and lifecycle 14 | -------------------------------------------------------------------------------- /stage #3/module #3. ORM/lesson #1. JPA & Hibernate/media/orm.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #3. ORM/lesson #1. JPA & Hibernate/media/orm.jpg -------------------------------------------------------------------------------- /stage #3/module #3. ORM/lesson #3. Persistence Context/media/jpa-entity-lifecycle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #3. ORM/lesson #3. Persistence Context/media/jpa-entity-lifecycle.png -------------------------------------------------------------------------------- /stage #3/module #3. ORM/lesson #3. Persistence Context/media/jpa-states.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #3. ORM/lesson #3. Persistence Context/media/jpa-states.png -------------------------------------------------------------------------------- /stage #3/module #3. ORM/lesson #6. Hibernate Caching/media/hibernate_cache.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #3. ORM/lesson #6. Hibernate Caching/media/hibernate_cache.jpg -------------------------------------------------------------------------------- /stage #3/module #3. ORM/module_description.md: -------------------------------------------------------------------------------- 1 | # ORM - JPA, Hibernate 2 | 3 | This module provides basic concepts of Java Persistence API & Hibernate 4 | 5 | ## Contents 6 | 1. ORM , JPA & Hibernate 7 | 2. Defining JPA Entities 8 | 3. Persistence Context 9 | 4. JPQL & HQL 10 | 5. Criteria Api 11 | 6. Hibernate Caching 12 | 7. N+1 problem in Hibernate -------------------------------------------------------------------------------- /stage #3/module #4. REST Basics - Spring Web/lesson #3. Spring MVC/media/RequestLifecycle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #4. REST Basics - Spring Web/lesson #3. Spring MVC/media/RequestLifecycle.png -------------------------------------------------------------------------------- /stage #3/module #4. REST Basics - Spring Web/lesson #3. Spring MVC/media/spring-web-model-view-controller.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #4. REST Basics - Spring Web/lesson #3. Spring MVC/media/spring-web-model-view-controller.png -------------------------------------------------------------------------------- /stage #3/module #4. REST Basics - Spring Web/lesson #4. Spring REST/media/TypicalСontextHierarchyInSpringWebApplication.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #4. REST Basics - Spring Web/lesson #4. Spring REST/media/TypicalСontextHierarchyInSpringWebApplication.PNG -------------------------------------------------------------------------------- /stage #3/module #4. REST Basics - Spring Web/module_description.md: -------------------------------------------------------------------------------- 1 | # REST Basics - Spring Web 2 | 3 | This module provides basic patterns, principles and approaches that can be applied for designing REST API. 4 | 5 | ## Contents 6 | * REST Basics 7 | * Spring Web Annotations 8 | * Spring MVC 9 | * Spring REST 10 | * Exception Handling -------------------------------------------------------------------------------- /stage #3/module #5. Documentation and testing tools for REST API/lesson #1. Swagger and OpenAPI/media/a_sample_open_api_document_in_the_swagger_editor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #5. Documentation and testing tools for REST API/lesson #1. Swagger and OpenAPI/media/a_sample_open_api_document_in_the_swagger_editor.png -------------------------------------------------------------------------------- /stage #3/module #5. Documentation and testing tools for REST API/lesson #1. Swagger and OpenAPI/media/api_document_in_swagger_editor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #5. Documentation and testing tools for REST API/lesson #1. Swagger and OpenAPI/media/api_document_in_swagger_editor.png -------------------------------------------------------------------------------- /stage #3/module #5. Documentation and testing tools for REST API/lesson #1. Swagger and OpenAPI/media/api_documentation_with_http_response_code.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #5. Documentation and testing tools for REST API/lesson #1. Swagger and OpenAPI/media/api_documentation_with_http_response_code.png -------------------------------------------------------------------------------- /stage #3/module #5. Documentation and testing tools for REST API/lesson #1. Swagger and OpenAPI/media/swagger_default_documentation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #5. Documentation and testing tools for REST API/lesson #1. Swagger and OpenAPI/media/swagger_default_documentation.png -------------------------------------------------------------------------------- /stage #3/module #5. Documentation and testing tools for REST API/lesson #3. Postman/media/Postman1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #5. Documentation and testing tools for REST API/lesson #3. Postman/media/Postman1.jpg -------------------------------------------------------------------------------- /stage #3/module #5. Documentation and testing tools for REST API/lesson #3. Postman/media/Postman2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #5. Documentation and testing tools for REST API/lesson #3. Postman/media/Postman2.jpg -------------------------------------------------------------------------------- /stage #3/module #5. Documentation and testing tools for REST API/lesson #3. Postman/media/Postman3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #5. Documentation and testing tools for REST API/lesson #3. Postman/media/Postman3.jpg -------------------------------------------------------------------------------- /stage #3/module #5. Documentation and testing tools for REST API/lesson #5. JMeter/media/JMeter1-Thread-group.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #5. Documentation and testing tools for REST API/lesson #5. JMeter/media/JMeter1-Thread-group.png -------------------------------------------------------------------------------- /stage #3/module #5. Documentation and testing tools for REST API/lesson #5. JMeter/media/JMeter2-HTTP-Request.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #5. Documentation and testing tools for REST API/lesson #5. JMeter/media/JMeter2-HTTP-Request.png -------------------------------------------------------------------------------- /stage #3/module #5. Documentation and testing tools for REST API/lesson #5. JMeter/media/JMeter3-API-Parameters-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #5. Documentation and testing tools for REST API/lesson #5. JMeter/media/JMeter3-API-Parameters-2.png -------------------------------------------------------------------------------- /stage #3/module #5. Documentation and testing tools for REST API/lesson #5. JMeter/media/JMeter4-Listener.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #5. Documentation and testing tools for REST API/lesson #5. JMeter/media/JMeter4-Listener.png -------------------------------------------------------------------------------- /stage #3/module #5. Documentation and testing tools for REST API/lesson #5. JMeter/media/JMeter5-Test-Result.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #3/module #5. Documentation and testing tools for REST API/lesson #5. JMeter/media/JMeter5-Test-Result.png -------------------------------------------------------------------------------- /stage #3/module #5. Documentation and testing tools for REST API/module_description.md: -------------------------------------------------------------------------------- 1 | # Documentation and testing tools for REST API 2 | 3 | These REST API documentation and testing tools will help you to test your APIs as you build, starting from unit testing to integration testing and then fully automating your resting to create a regression pack. 4 | 5 | You can also use these tools to interact with your REST API during the development phase for quick tests. 6 | 7 | ## Contents 8 | * Swagger and OpenAPI 9 | * RESTAssured 10 | * Postman 11 | * Curl 12 | * JMeter -------------------------------------------------------------------------------- /stage #4/bigdata/git_workflow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/bigdata/git_workflow.png -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/.gradle/6.7/executionHistory/executionHistory.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/docker/demo/.gradle/6.7/executionHistory/executionHistory.bin -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/.gradle/6.7/executionHistory/executionHistory.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/docker/demo/.gradle/6.7/executionHistory/executionHistory.lock -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/.gradle/6.7/fileChanges/last-build.bin: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/.gradle/6.7/fileHashes/fileHashes.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/docker/demo/.gradle/6.7/fileHashes/fileHashes.bin -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/.gradle/6.7/fileHashes/fileHashes.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/docker/demo/.gradle/6.7/fileHashes/fileHashes.lock -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/.gradle/6.7/fileHashes/resourceHashesCache.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/docker/demo/.gradle/6.7/fileHashes/resourceHashesCache.bin -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/.gradle/6.7/gc.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/docker/demo/.gradle/6.7/gc.properties -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/.gradle/6.7/javaCompile/javaCompile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/docker/demo/.gradle/6.7/javaCompile/javaCompile.lock -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/.gradle/6.7/javaCompile/taskHistory.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/docker/demo/.gradle/6.7/javaCompile/taskHistory.bin -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/.gradle/buildOutputCleanup/buildOutputCleanup.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/docker/demo/.gradle/buildOutputCleanup/buildOutputCleanup.lock -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/.gradle/buildOutputCleanup/cache.properties: -------------------------------------------------------------------------------- 1 | #Sun Mar 20 23:05:11 EET 2022 2 | gradle.version=6.7 3 | -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/.gradle/buildOutputCleanup/outputFiles.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/docker/demo/.gradle/buildOutputCleanup/outputFiles.bin -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/.gradle/checksums/checksums.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/docker/demo/.gradle/checksums/checksums.lock -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/.gradle/configuration-cache/gc.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/docker/demo/.gradle/configuration-cache/gc.properties -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/.gradle/vcs-1/gc.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/docker/demo/.gradle/vcs-1/gc.properties -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM openjdk:11 2 | 3 | COPY ./build/libs/demo-1.0-SNAPSHOT.jar demo.jar 4 | 5 | CMD ["java", "-jar", "demo.jar"] -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/build/classes/java/main/com/epam/light/talks/docker/Main.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/docker/demo/build/classes/java/main/com/epam/light/talks/docker/Main.class -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/build/libs/demo-1.0-SNAPSHOT.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/docker/demo/build/libs/demo-1.0-SNAPSHOT.jar -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/build/tmp/compileJava/source-classes-mapping.txt: -------------------------------------------------------------------------------- 1 | com/epam/light/talks/docker/Main.java 2 | com.epam.light.talks.docker.Main 3 | -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/build/tmp/jar/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Main-Class: com.epam.light.talks.docker.Main 3 | 4 | -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/docker/demo/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'demo' 2 | 3 | -------------------------------------------------------------------------------- /stage #4/light-talks/docker/demo/src/main/java/com/epam/light/talks/docker/Main.java: -------------------------------------------------------------------------------- 1 | package com.epam.light.talks.docker; 2 | 3 | public class Main { 4 | 5 | public static void main(String[] args) { 6 | System.out.println("Hello from Java!"); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /stage #4/light-talks/docker/docker-compose.yaml: -------------------------------------------------------------------------------- 1 | version: "3.9" 2 | services: 3 | postgres: 4 | container_name: postgres 5 | image: postgres:latest 6 | environment: 7 | - POSTGRES_USER=admin 8 | - POSTGRES_PASSWORD=admin 9 | ports: 10 | - "5432:5432" 11 | pgadmin: 12 | container_name: pgadmin 13 | image: dpage/pgadmin4:latest 14 | environment: 15 | - PGADMIN_DEFAULT_EMAIL=email@epam.com 16 | - PGADMIN_DEFAULT_PASSWORD=admin 17 | ports: 18 | - "5050:80" 19 | -------------------------------------------------------------------------------- /stage #4/light-talks/docker/docker.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/docker/docker.pptx -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/.gradle/6.7/executionHistory/executionHistory.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/.gradle/6.7/executionHistory/executionHistory.bin -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/.gradle/6.7/executionHistory/executionHistory.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/.gradle/6.7/executionHistory/executionHistory.lock -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/.gradle/6.7/fileChanges/last-build.bin: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/.gradle/6.7/fileHashes/fileHashes.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/.gradle/6.7/fileHashes/fileHashes.bin -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/.gradle/6.7/fileHashes/fileHashes.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/.gradle/6.7/fileHashes/fileHashes.lock -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/.gradle/6.7/fileHashes/resourceHashesCache.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/.gradle/6.7/fileHashes/resourceHashesCache.bin -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/.gradle/6.7/gc.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/.gradle/6.7/gc.properties -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/.gradle/6.7/javaCompile/classAnalysis.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/.gradle/6.7/javaCompile/classAnalysis.bin -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/.gradle/6.7/javaCompile/jarAnalysis.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/.gradle/6.7/javaCompile/jarAnalysis.bin -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/.gradle/6.7/javaCompile/javaCompile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/.gradle/6.7/javaCompile/javaCompile.lock -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/.gradle/6.7/javaCompile/taskHistory.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/.gradle/6.7/javaCompile/taskHistory.bin -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/.gradle/buildOutputCleanup/buildOutputCleanup.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/.gradle/buildOutputCleanup/buildOutputCleanup.lock -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/.gradle/buildOutputCleanup/cache.properties: -------------------------------------------------------------------------------- 1 | #Thu Mar 24 12:04:33 EET 2022 2 | gradle.version=6.7 3 | -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/.gradle/buildOutputCleanup/outputFiles.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/.gradle/buildOutputCleanup/outputFiles.bin -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/.gradle/checksums/checksums.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/.gradle/checksums/checksums.lock -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/.gradle/checksums/md5-checksums.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/.gradle/checksums/md5-checksums.bin -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/.gradle/checksums/sha1-checksums.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/.gradle/checksums/sha1-checksums.bin -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/.gradle/configuration-cache/gc.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/.gradle/configuration-cache/gc.properties -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/.gradle/vcs-1/gc.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/.gradle/vcs-1/gc.properties -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/build.gradle: -------------------------------------------------------------------------------- 1 | plugins { 2 | id 'java' 3 | } 4 | 5 | group 'org.example' 6 | version '1.0-SNAPSHOT' 7 | 8 | repositories { 9 | mavenCentral() 10 | } 11 | 12 | dependencies { 13 | implementation group: 'org.springframework.boot', name: 'spring-boot-starter-webflux', version: '2.6.4' 14 | 15 | testImplementation 'org.junit.jupiter:junit-jupiter-api:5.6.0' 16 | testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine' 17 | } 18 | 19 | test { 20 | useJUnitPlatform() 21 | } -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/build/classes/java/main/com/epam/light/talk/reactive/demo2/Application.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/build/classes/java/main/com/epam/light/talk/reactive/demo2/Application.class -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/build/classes/java/main/com/epam/light/talk/reactive/demo2/Employee.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/build/classes/java/main/com/epam/light/talk/reactive/demo2/Employee.class -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/build/classes/java/main/com/epam/light/talk/reactive/demo2/EmployeeController.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/build/classes/java/main/com/epam/light/talk/reactive/demo2/EmployeeController.class -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/build/classes/java/main/com/epam/light/talk/reactive/demo2/EmployeeService.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/build/classes/java/main/com/epam/light/talk/reactive/demo2/EmployeeService.class -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/build/classes/java/test/com/epam/light/talk/reactive/demo1/MainTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/build/classes/java/test/com/epam/light/talk/reactive/demo1/MainTest.class -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/build/classes/java/test/com/epam/light/talk/reactive/demo2/ConcurrencyTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/build/classes/java/test/com/epam/light/talk/reactive/demo2/ConcurrencyTest.class -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/build/test-results/test/binary/output.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/build/test-results/test/binary/output.bin -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/build/test-results/test/binary/output.bin.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/build/test-results/test/binary/output.bin.idx -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/build/test-results/test/binary/results.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/build/test-results/test/binary/results.bin -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/build/tmp/compileJava/source-classes-mapping.txt: -------------------------------------------------------------------------------- 1 | com/epam/light/talk/reactive/demo2/Application.java 2 | com.epam.light.talk.reactive.demo2.Application 3 | com/epam/light/talk/reactive/demo2/Employee.java 4 | com.epam.light.talk.reactive.demo2.Employee 5 | com/epam/light/talk/reactive/demo2/EmployeeService.java 6 | com.epam.light.talk.reactive.demo2.EmployeeService 7 | com/epam/light/talk/reactive/demo2/EmployeeController.java 8 | com.epam.light.talk.reactive.demo2.EmployeeController 9 | -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/build/tmp/compileTestJava/source-classes-mapping.txt: -------------------------------------------------------------------------------- 1 | com/epam/light/talk/reactive/demo2/ConcurrencyTest.java 2 | com.epam.light.talk.reactive.demo2.ConcurrencyTest 3 | com/epam/light/talk/reactive/demo1/MainTest.java 4 | com.epam.light.talk.reactive.demo1.MainTest 5 | -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/demo/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'demo' 2 | 3 | -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/src/main/java/com/epam/light/talk/reactive/demo2/Application.java: -------------------------------------------------------------------------------- 1 | package com.epam.light.talk.reactive.demo2; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class Application { 8 | 9 | public static void main(String[] args) { 10 | SpringApplication.run(Application.class, args); 11 | } 12 | 13 | } -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/src/main/java/com/epam/light/talk/reactive/demo2/Employee.java: -------------------------------------------------------------------------------- 1 | package com.epam.light.talk.reactive.demo2; 2 | 3 | public class Employee { 4 | private int id; 5 | private String name; 6 | 7 | public int getId() { 8 | return id; 9 | } 10 | 11 | public Employee setId(int id) { 12 | this.id = id; 13 | return this; 14 | } 15 | 16 | public String getName() { 17 | return name; 18 | } 19 | 20 | public Employee setName(String name) { 21 | this.name = name; 22 | return this; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/demo/src/main/java/com/epam/light/talk/reactive/demo2/EmployeeService.java: -------------------------------------------------------------------------------- 1 | package com.epam.light.talk.reactive.demo2; 2 | 3 | import org.springframework.stereotype.Component; 4 | import reactor.core.publisher.Mono; 5 | 6 | import java.time.Duration; 7 | 8 | @Component 9 | public class EmployeeService { 10 | 11 | public Mono getById(int id) { 12 | Employee employee = new Employee() 13 | .setId(id).setName(id + "-name"); 14 | return Mono.just(employee) 15 | .delayElement(Duration.ofMillis(3_000)); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /stage #4/light-talks/reactive/reactive.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/reactive/reactive.pptx -------------------------------------------------------------------------------- /stage #4/light-talks/serialization/.gitignore: -------------------------------------------------------------------------------- 1 | .mtj.tmp/ 2 | *.class 3 | *.jar 4 | *.war 5 | *.ear 6 | *.nar 7 | hs_err_pid* 8 | replay_pid* 9 | 10 | bin/ 11 | build/ 12 | .gradle 13 | .gradletasknamecache 14 | gradle-app.setting 15 | !gradle-wrapper.jar 16 | 17 | out/ 18 | .idea/ 19 | .idea_modules/ 20 | *.iml 21 | *.ipr 22 | *.iws 23 | -------------------------------------------------------------------------------- /stage #4/light-talks/serialization/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/serialization/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /stage #4/light-talks/serialization/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /stage #4/light-talks/serialization/proto/build.gradle: -------------------------------------------------------------------------------- 1 | plugins { 2 | id 'java' 3 | id "com.google.protobuf" version "0.9.2" 4 | } 5 | 6 | 7 | dependencies { 8 | implementation project(':shared') 9 | 10 | implementation group: 'com.google.protobuf', name: 'protobuf-java', version: '3.22.3' 11 | implementation group: 'com.google.protobuf', name: 'protobuf-java-util', version: '3.22.3' 12 | } 13 | -------------------------------------------------------------------------------- /stage #4/light-talks/serialization/proto/src/main/proto/AnotherUser.proto: -------------------------------------------------------------------------------- 1 | syntax = "proto3"; 2 | 3 | package school.mjc.another; 4 | 5 | message Movie { 6 | string name = 1; 7 | int32 year = 2; 8 | } 9 | 10 | message AnotherUser { 11 | int32 id = 1; 12 | string name = 2; 13 | repeated Movie favouriteMovies = 3; 14 | } 15 | -------------------------------------------------------------------------------- /stage #4/light-talks/serialization/proto/src/main/proto/User.proto: -------------------------------------------------------------------------------- 1 | syntax = "proto3"; 2 | 3 | package school.mjc; 4 | 5 | message Movie { 6 | string name = 1; 7 | int32 year = 2; 8 | } 9 | 10 | message User { 11 | int32 id = 1; 12 | string name = 2; 13 | repeated Movie favouriteMovies = 3; 14 | } 15 | -------------------------------------------------------------------------------- /stage #4/light-talks/serialization/serialization.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/serialization/serialization.pptx -------------------------------------------------------------------------------- /stage #4/light-talks/serialization/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'serialization' 2 | include 'shared' 3 | include 'schemaless' 4 | include 'proto' 5 | include 'benchmarks' 6 | 7 | -------------------------------------------------------------------------------- /stage #4/light-talks/serialization/shared/src/main/java/school/mjc/serialization/AnotherUser.java: -------------------------------------------------------------------------------- 1 | package school.mjc.serialization; 2 | 3 | import lombok.Data; 4 | import lombok.experimental.Accessors; 5 | import org.msgpack.annotation.Message; 6 | 7 | import java.util.List; 8 | 9 | @Data 10 | @Accessors(chain = true) 11 | @Message 12 | public class AnotherUser { 13 | 14 | public int id; 15 | private String name; 16 | private List favouriteMovies; 17 | } 18 | -------------------------------------------------------------------------------- /stage #4/light-talks/serialization/shared/src/main/java/school/mjc/serialization/Movie.java: -------------------------------------------------------------------------------- 1 | package school.mjc.serialization; 2 | 3 | import lombok.Data; 4 | import lombok.experimental.Accessors; 5 | import org.msgpack.annotation.Message; 6 | 7 | @Data 8 | @Accessors(chain = true) 9 | @Message 10 | public class Movie { 11 | 12 | public String name; 13 | public int year; 14 | } 15 | -------------------------------------------------------------------------------- /stage #4/light-talks/serialization/shared/src/main/java/school/mjc/serialization/User.java: -------------------------------------------------------------------------------- 1 | package school.mjc.serialization; 2 | 3 | import lombok.Data; 4 | import lombok.experimental.Accessors; 5 | import org.msgpack.annotation.Message; 6 | 7 | import java.util.List; 8 | 9 | @Data 10 | @Accessors(chain = true) 11 | @Message 12 | public class User { 13 | 14 | public int id; 15 | public String name; 16 | public List favouriteMovies; 17 | } 18 | -------------------------------------------------------------------------------- /stage #4/light-talks/spring-cloud-basics/demo/build.gradle: -------------------------------------------------------------------------------- 1 | plugins { 2 | id 'java' 3 | } 4 | 5 | group 'org.example' 6 | version '1.0-SNAPSHOT' 7 | 8 | repositories { 9 | mavenCentral() 10 | } 11 | 12 | dependencies { 13 | testImplementation 'org.junit.jupiter:junit-jupiter-api:5.6.0' 14 | testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine' 15 | } 16 | 17 | test { 18 | useJUnitPlatform() 19 | } 20 | -------------------------------------------------------------------------------- /stage #4/light-talks/spring-cloud-basics/demo/configServer/build.gradle: -------------------------------------------------------------------------------- 1 | plugins { 2 | id 'java' 3 | } 4 | 5 | group 'org.example' 6 | version '1.0-SNAPSHOT' 7 | 8 | repositories { 9 | mavenCentral() 10 | } 11 | 12 | dependencies { 13 | implementation group: 'org.springframework.cloud', name: 'spring-cloud-config-server', version: '3.1.3' 14 | 15 | testImplementation 'org.junit.jupiter:junit-jupiter-api:5.6.0' 16 | testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine' 17 | } 18 | 19 | test { 20 | useJUnitPlatform() 21 | } 22 | -------------------------------------------------------------------------------- /stage #4/light-talks/spring-cloud-basics/demo/configServer/src/main/java/com/epam/mjc/demo/ConfigApplication.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.demo; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.cloud.config.server.EnableConfigServer; 6 | 7 | @SpringBootApplication 8 | @EnableConfigServer 9 | public class ConfigApplication { 10 | public static void main(String[] args) { 11 | SpringApplication.run(ConfigApplication.class, args); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /stage #4/light-talks/spring-cloud-basics/demo/configServer/src/main/resources/application.yaml: -------------------------------------------------------------------------------- 1 | spring: 2 | cloud: 3 | config: 4 | server: 5 | native: 6 | search-locations: file:./properties/ 7 | profiles: 8 | active: native,dev,prod 9 | server: 10 | port: '8081' 11 | -------------------------------------------------------------------------------- /stage #4/light-talks/spring-cloud-basics/demo/discountServer/src/main/java/demo/DiscountApplication.java: -------------------------------------------------------------------------------- 1 | package demo; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class DiscountApplication { 8 | 9 | public static void main(String[] args) { 10 | SpringApplication.run(DiscountApplication.class, args); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /stage #4/light-talks/spring-cloud-basics/demo/discountServer/src/main/java/demo/model/Discount.java: -------------------------------------------------------------------------------- 1 | package demo.model; 2 | 3 | public class Discount { 4 | 5 | private int amount; 6 | 7 | public int getAmount() { 8 | return amount; 9 | } 10 | 11 | public Discount setAmount(int amount) { 12 | this.amount = amount; 13 | return this; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /stage #4/light-talks/spring-cloud-basics/demo/discountServer/src/main/resources/application.yaml: -------------------------------------------------------------------------------- 1 | management: 2 | endpoints: 3 | web: 4 | exposure: 5 | include: '*' 6 | eureka: 7 | instance: 8 | preferIpAddress: 'true' 9 | client: 10 | serviceUrl: 11 | defaultZone: http://localhost:8761/eureka 12 | spring: 13 | application: 14 | name: discount-service 15 | profiles: 16 | active: dev 17 | server: 18 | port: '8082' 19 | -------------------------------------------------------------------------------- /stage #4/light-talks/spring-cloud-basics/demo/eurekaServer/src/main/java/com/epam/mjc/demo/EurekaApplication.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.demo; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer; 6 | 7 | @SpringBootApplication 8 | @EnableEurekaServer 9 | public class EurekaApplication { 10 | public static void main(String[] args) { 11 | SpringApplication.run(EurekaApplication.class, args); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /stage #4/light-talks/spring-cloud-basics/demo/eurekaServer/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | server: 2 | port: 8761 3 | eureka: 4 | client: 5 | registerWithEureka: false 6 | fetchRegistry: false 7 | -------------------------------------------------------------------------------- /stage #4/light-talks/spring-cloud-basics/demo/gatewayServer/src/main/java/com/epam/mjc/demo/GatewayApplication.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.demo; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.cloud.netflix.eureka.EnableEurekaClient; 6 | 7 | @SpringBootApplication 8 | @EnableEurekaClient 9 | public class GatewayApplication { 10 | public static void main(String[] args) { 11 | SpringApplication.run(GatewayApplication.class, args); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /stage #4/light-talks/spring-cloud-basics/demo/gatewayServer/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | server: 2 | port: 8088 3 | eureka: 4 | client: 5 | serviceUrl: 6 | defaultZone: http://localhost:8761/eureka 7 | spring: 8 | application: 9 | name: gateway-service 10 | cloud: 11 | discovery: 12 | enabled: true 13 | gateway: 14 | routes: 15 | - id: hotel 16 | uri: lb://HOTEL-SERVICE 17 | predicates: 18 | - Path=/hotels/** 19 | - id: discount 20 | uri: lb://DISCOUNT-SERVICE 21 | predicates: 22 | - Path=/discount/** 23 | -------------------------------------------------------------------------------- /stage #4/light-talks/spring-cloud-basics/demo/hotelService/src/main/java/com/epam/mjc/demo/HotelApplication.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.demo; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.cloud.openfeign.EnableFeignClients; 6 | 7 | @SpringBootApplication 8 | //@EnableFeignClients 9 | public class HotelApplication { 10 | 11 | public static void main(String[] args) { 12 | SpringApplication.run(HotelApplication.class, args); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /stage #4/light-talks/spring-cloud-basics/demo/hotelService/src/main/java/com/epam/mjc/demo/model/Discount.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.demo.model; 2 | 3 | public class Discount { 4 | 5 | private int amount; 6 | 7 | public int getAmount() { 8 | return amount; 9 | } 10 | 11 | public Discount setAmount(int amount) { 12 | this.amount = amount; 13 | return this; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /stage #4/light-talks/spring-cloud-basics/demo/hotelService/src/main/java/com/epam/mjc/demo/service/DiscountClient.java: -------------------------------------------------------------------------------- 1 | package com.epam.mjc.demo.service; 2 | 3 | import com.epam.mjc.demo.model.Discount; 4 | import org.springframework.cloud.openfeign.FeignClient; 5 | import org.springframework.web.bind.annotation.RequestMapping; 6 | 7 | //@FeignClient("discount-service") 8 | public interface DiscountClient { 9 | 10 | @RequestMapping("/discount") 11 | Discount getDiscount(); 12 | } 13 | -------------------------------------------------------------------------------- /stage #4/light-talks/spring-cloud-basics/demo/hotelService/src/main/resources/application.yaml: -------------------------------------------------------------------------------- 1 | server: 2 | port: '8080' 3 | management: 4 | endpoints: 5 | web: 6 | exposure: 7 | include: '*' 8 | hotel: 9 | one: 10 | enabled: 'true' 11 | two: 12 | enabled: 'false' 13 | spring: 14 | # config: 15 | # import: configserver:http://localhost:8081 16 | application: 17 | name: hotel-service 18 | profiles: 19 | active: dev 20 | #eureka: 21 | # instance: 22 | # preferIpAddress: 'true' 23 | # client: 24 | # serviceUrl: 25 | # defaultZone: http://localhost:8761/eureka 26 | -------------------------------------------------------------------------------- /stage #4/light-talks/spring-cloud-basics/demo/properties/hotel-service-dev.yaml: -------------------------------------------------------------------------------- 1 | hotel: 2 | one: 3 | enabled: 'true' 4 | two: 5 | enabled: 'true' 6 | -------------------------------------------------------------------------------- /stage #4/light-talks/spring-cloud-basics/demo/properties/hotel-service-prod.yaml: -------------------------------------------------------------------------------- 1 | hotel: 2 | one: 3 | enabled: 'true' 4 | two: 5 | enabled: 'false' 6 | -------------------------------------------------------------------------------- /stage #4/light-talks/spring-cloud-basics/demo/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'demo' 2 | include 'hotelService' 3 | include 'configServer' 4 | include 'eurekaServer' 5 | include 'discountServer' 6 | include 'gatewayServer' 7 | -------------------------------------------------------------------------------- /stage #4/light-talks/spring-cloud-basics/springCloud.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/light-talks/spring-cloud-basics/springCloud.pptx -------------------------------------------------------------------------------- /stage #4/module #1. CI-CD/063018_1012_WhatisJenki1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #1. CI-CD/063018_1012_WhatisJenki1.jpg -------------------------------------------------------------------------------- /stage #4/module #1. CI-CD/063018_1012_WhatisJenki2.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #1. CI-CD/063018_1012_WhatisJenki2.webp -------------------------------------------------------------------------------- /stage #4/module #1. CI-CD/9fggUPzXV.avif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #1. CI-CD/9fggUPzXV.avif -------------------------------------------------------------------------------- /stage #4/module #1. CI-CD/VUba-GQlR.avif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #1. CI-CD/VUba-GQlR.avif -------------------------------------------------------------------------------- /stage #4/module #1. CI-CD/_aBv25XjS.avif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #1. CI-CD/_aBv25XjS.avif -------------------------------------------------------------------------------- /stage #4/module #1. CI-CD/w5CYoxeY3.avif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #1. CI-CD/w5CYoxeY3.avif -------------------------------------------------------------------------------- /stage #4/module #2. REST API Advanced/media/schema.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #2. REST API Advanced/media/schema.jpg -------------------------------------------------------------------------------- /stage #4/module #2. REST API Advanced/media/snowflake.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #2. REST API Advanced/media/snowflake.jpg -------------------------------------------------------------------------------- /stage #4/module #4. UI/media/add-new.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #4. UI/media/add-new.png -------------------------------------------------------------------------------- /stage #4/module #4. UI/media/all-news.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #4. UI/media/all-news.png -------------------------------------------------------------------------------- /stage #4/module #4. UI/media/delete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #4. UI/media/delete.png -------------------------------------------------------------------------------- /stage #4/module #4. UI/media/login-page.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #4. UI/media/login-page.png -------------------------------------------------------------------------------- /stage #4/module #5. AWS/practice/resources/dynamodb/media/example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #5. AWS/practice/resources/dynamodb/media/example.png -------------------------------------------------------------------------------- /stage #4/module #5. AWS/practice/resources/lambda/media/example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #5. AWS/practice/resources/lambda/media/example.png -------------------------------------------------------------------------------- /stage #4/module #5. AWS/practice/resources/lambda/samplcode/lambda_solution.py: -------------------------------------------------------------------------------- 1 | import json 2 | 3 | from datetime import datetime 4 | 5 | def lambda_handler(event, context): 6 | currentTime = datetime.now().strftime("%m-%d-%Y %H:%M:%S") 7 | message = "Hello, world! Now is {}".format(current_time) 8 | return { 9 | 'statusCode': 200, 10 | 'body': json.dumps(message) 11 | } 12 | -------------------------------------------------------------------------------- /stage #4/module #5. AWS/practice/resources/lambda/samplcode/optional_lambda_solution.py: -------------------------------------------------------------------------------- 1 | import boto3, os 2 | 3 | def main(event, context): 4 | s3Client = boto3.client('s3') 5 | try: 6 | buckets = s3Client.list_buckets() 7 | print(buckets) 8 | output = "" 9 | for bucket in buckets['Buckets']: 10 | output = output + bucket['Name'] + "\n" 11 | print("Buckets: " + output) 12 | except: 13 | print("An error occurred!") -------------------------------------------------------------------------------- /stage #4/module #5. AWS/practice/resources/vpc/media/img_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #5. AWS/practice/resources/vpc/media/img_1.png -------------------------------------------------------------------------------- /stage #4/module #5. AWS/practice/resources/vpc/media/img_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #5. AWS/practice/resources/vpc/media/img_2.png -------------------------------------------------------------------------------- /stage #4/module #5. AWS/practice/resources/vpc/media/img_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #5. AWS/practice/resources/vpc/media/img_3.png -------------------------------------------------------------------------------- /stage #4/module #5. AWS/practice/resources/vpc/media/img_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #5. AWS/practice/resources/vpc/media/img_4.png -------------------------------------------------------------------------------- /stage #4/module #5. AWS/practice/resources/vpc/media/img_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #5. AWS/practice/resources/vpc/media/img_5.png -------------------------------------------------------------------------------- /stage #4/module #5. AWS/practice/resources/vpc/media/img_6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #5. AWS/practice/resources/vpc/media/img_6.png -------------------------------------------------------------------------------- /stage #4/module #5. AWS/practice/resources/vpc/media/img_7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #5. AWS/practice/resources/vpc/media/img_7.png -------------------------------------------------------------------------------- /stage #4/module #5. AWS/practice/resources/vpc/names.csv: -------------------------------------------------------------------------------- 1 | Part,Name 2 | VPC,MJC--VPC 3 | Internet Gateway,MJC--Internet-Gateway 4 | Public subnet A,MJC--Public-Subnet-A 5 | Public subnet B,MJC--Public-Subnet-B 6 | Private subnet A,MJC--Private-Subnet-A 7 | Private subnet B,MJC--Private-Subnet-B 8 | Route table for public subnets,MJC--Public-Route-Table 9 | Route table for private subnet A,MJC--Private-Route-Table-A 10 | Route table for private subnet B,MJC--Private-Route-Table-B -------------------------------------------------------------------------------- /stage #4/module #5. AWS/practice/solution/dynamodb/dynamodb_solution_console.md: -------------------------------------------------------------------------------- 1 | # AWS DynamoDB 2 | 3 | ## Solution 4 | 5 | * Go to the DynamoDB service 6 | * Click *Create table* 7 | * Enter a proper name for a table 8 | * Choose and enter proper Hash and Range keys and types for fields 9 | * Use *default settings* 10 | * Add some data to your table 11 | * Next perform operations using Scan/Query and filters 12 | -------------------------------------------------------------------------------- /stage #4/module #5. AWS/practice/solution/dynamodb/dynamodb_solution_localstack.md: -------------------------------------------------------------------------------- 1 | # AWS DynamoDB 2 | 3 | ## Solution 4 | 5 | Please reference the doc
6 | [Working with DynamoDB via CLI](https://onexlab-io.medium.com/localstack-dynamodb-8befdaac802b) 7 | 8 | Use the following API with relevant arguments to perform operations: 9 | * CreateTable 10 | * Scan 11 | * GetItem 12 | * DescribeTable 13 | * BatchWriteItem 14 | * BatchGetItem -------------------------------------------------------------------------------- /stage #4/module #5. AWS/practice/solution/lambda/lambda_solution_localstack.md: -------------------------------------------------------------------------------- 1 | # AWS Lambda 2 | 3 | ## Solution 4 | 5 | In order to create a lambda function in terminal type the following 6 | ``` 7 | awslocal lambda create-function 8 | ``` 9 | 10 | After you create the function run this command to make a URL 11 | 12 | ``` 13 | awslocal lambda create-function-url-config 14 | ``` 15 | 16 | Then run it and see logs 17 | 18 | ``` 19 | aws lambda invoke 20 | ``` 21 | 22 | You can use as sample code [this](../../resources/lambda/samplcode/lambda_solution.py) 23 | -------------------------------------------------------------------------------- /stage #4/module #5. AWS/practice/solution/s3/s3_solution_localstack.md: -------------------------------------------------------------------------------- 1 | # Amazon S3 2 | 3 | ## Solution 4 | 5 | * Create a folder with some files. 6 | * To create an S3 bucket, use the following command: awslocal s3api create-bucket --bucket name-surname-website 7 | * To list all available buckets, use the following command: awslocal s3api list-buckets 8 | * To upload a file to an S3 bucket, use the following command: awslocal s3api put-object --bucket name-surname-website --key filename.html 9 | * To download a file from an S3 bucket, use the following command: awslocal s3api get-object --bucket name-surname-website --key filename.html -------------------------------------------------------------------------------- /stage #4/module #5. AWS/theory/resources/ec2/auto_scaling.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #5. AWS/theory/resources/ec2/auto_scaling.png -------------------------------------------------------------------------------- /stage #4/module #5. AWS/theory/resources/ec2/instance_types.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #5. AWS/theory/resources/ec2/instance_types.png -------------------------------------------------------------------------------- /stage #4/module #5. AWS/theory/resources/iam/iam.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #5. AWS/theory/resources/iam/iam.png -------------------------------------------------------------------------------- /stage #4/module #5. AWS/theory/resources/rds/engine_options.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #5. AWS/theory/resources/rds/engine_options.png -------------------------------------------------------------------------------- /stage #4/module #5. AWS/theory/resources/rds/read_and_standby_replica.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #5. AWS/theory/resources/rds/read_and_standby_replica.png -------------------------------------------------------------------------------- /stage #4/module #5. AWS/theory/resources/s3/storage_classes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mjc-school/MJC-School/b546a97d9c116e175be227f49cb5b70b83d09021/stage #4/module #5. AWS/theory/resources/s3/storage_classes.png --------------------------------------------------------------------------------