├── L15-16-Redis ├── src │ ├── main │ │ ├── resources │ │ │ └── application.properties │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── demoredis │ │ │ ├── Person.java │ │ │ └── DemoRedisApplication.java │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── demoredis │ │ └── DemoRedisApplicationTests.java ├── .mvn │ └── wrapper │ │ ├── maven-wrapper.jar │ │ └── maven-wrapper.properties └── .gitignore ├── .idea ├── sonarlint │ └── issuestore │ │ ├── 0 │ │ ├── 0 │ │ │ ├── 00abb7d9764e75b007fe412e25ed5334d40d3ec2 │ │ │ └── 00f6362d806f060c14abe78a25fec905f0f67156 │ │ ├── 5 │ │ │ └── 054dafeafbe5a0c4c02ac64eb01c4102f505b439 │ │ ├── 6 │ │ │ └── 06b7ccf011249ca6d97e9bd818bf991315fca918 │ │ └── e │ │ │ └── 0e74208c4d9641087c3d55235417518fc974139a │ │ ├── 1 │ │ ├── 6 │ │ │ ├── 169abc708a78c99cbb05a8d2e1813ee6bbb6383b │ │ │ └── 1685f039d0a59b1aa08ce4b29b7b7633cde583cc │ │ ├── 9 │ │ │ ├── 193cd2e7fd0aaf65241ea8c61c66c9c4690fe10e │ │ │ ├── 19911d567eb817325aff06e6caca93269340c67f │ │ │ ├── 19d5301c9e8fd07daea5ec77bcbd98e4fe5d16c0 │ │ │ ├── 1920c9b6773d02bab153307968ade37491a29617 │ │ │ └── 19870239e9e79dfe82738f019d6c73e25d6c7d5f │ │ ├── b │ │ │ └── 1b35050d12f70273d5cde537efc08bb0f8f2164e │ │ └── c │ │ │ └── 1c81cc78993decf5571c987a813b69664e6c4378 │ │ ├── 2 │ │ ├── 2 │ │ │ └── 22fc500847ee53d92963b65f231ed6410ad961c4 │ │ ├── 3 │ │ │ └── 235c7d60911589df42e30f952ee5a8c6a3590232 │ │ ├── 5 │ │ │ └── 257391814101d5d6f6220d64c4cab3d272442aff │ │ ├── 8 │ │ │ ├── 281a7dd28867b7d6896e3e750a064ab730ae6c5e │ │ │ └── 28fc50528a76d95769212d23efc22f4dce0cc0e3 │ │ ├── 9 │ │ │ └── 2909b1ac957d3cce86431b4a4dc8271231bacbe5 │ │ └── b │ │ │ └── 2b4668f31705f6c69b5dbcc4f6a0f021c47cbdfd │ │ ├── 3 │ │ ├── 0 │ │ │ └── 30ac3e53308b8dd00abe8be6d2076629c88695a5 │ │ ├── 3 │ │ │ └── 33b3f96d1adc0627337d1012dfa655aaa3dacfb7 │ │ ├── 9 │ │ │ └── 391d2d6558386663582afb466f50ce0ee7e24c9a │ │ ├── a │ │ │ ├── 3a7fc0000103a6fb2ae1f5f44e14a9f01abbfc78 │ │ │ └── 3aa550a72e4e8e328e4cb68700b57795ef5b6546 │ │ └── f │ │ │ └── 3fd9568edee7eb0de67e7c56bdf402029f11e469 │ │ ├── 4 │ │ ├── 1 │ │ │ └── 41566893b6c76f92a82344b67f3e1747bfb93698 │ │ ├── 4 │ │ │ └── 448be94179fc252a05886cd08215d32f9e9f9605 │ │ ├── a │ │ │ └── 4ae15f6b2fe2f562081bdd10a05e0b1e13030632 │ │ └── c │ │ │ └── 4c0bac9fc2155ea57559006ad19f3a499384815b │ │ ├── 5 │ │ ├── 0 │ │ │ └── 5074504e9259348092490aacdfa624e60577e572 │ │ ├── 3 │ │ │ └── 53792b8029f29e56494a58448573444c6522407b │ │ ├── 5 │ │ │ ├── 557861a4f4da78764ab85f8973a7f8df4881ecb0 │ │ │ └── 558050e5a2ec41bb8c6b536e0e47e2c04223bff9 │ │ ├── 7 │ │ │ └── 57ce7ed965515f124187621c0365a3dccfbdc757 │ │ ├── 9 │ │ │ └── 59b5a08ff14bb5f954d68e2857cc4821493bad18 │ │ ├── f │ │ │ └── 5f07b0458b013405a114a6d9308a8df2e9c982cc │ │ ├── c │ │ │ └── 5cfc6e9b5bfe7c036ae797ee04c3bbe06eadc72c │ │ ├── d │ │ │ └── 5d50a92a95b37dde0fc6e9e9e82c2d62804c1250 │ │ └── e │ │ │ └── 5ec6d9b837c31bdae50c8c1e3fa477d3da3146fb │ │ ├── 6 │ │ ├── 4 │ │ │ ├── 647df405c52364da38ef6fca67e3382c44b6a56f │ │ │ └── 64916f154aa6b758f2b4d03bc0af721a701b1960 │ │ ├── 5 │ │ │ └── 6564a566e900692848fcb9db2a55b0fd081fb85c │ │ ├── 6 │ │ │ └── 663975ce63008409d9e4885fb18979ca924afaf7 │ │ └── 8 │ │ │ └── 689186777d2390df0374ba33cabca5383d45c178 │ │ ├── 7 │ │ ├── 0 │ │ │ └── 7080836b4b6aeb410c996c1d12b382e34c7472e9 │ │ ├── 4 │ │ │ └── 7420e78e239d0efce8aa9e88a2b8b635686b0fd2 │ │ ├── 5 │ │ │ └── 75e743121426cbb8daa616dbbf4f24489e0e9374 │ │ ├── 8 │ │ │ ├── 78005b0acb62f0e5979fa333a71f01a04336e73a │ │ │ ├── 78619ee05195e47db1d1f0c90bd94fa2fa378d7a │ │ │ └── 78e344ad00ebb5cd8da3c3c2943ed22e3457658a │ │ └── c │ │ │ └── 7c996b38c7fe13afb2883182a5bb010bd4ec1402 │ │ ├── 8 │ │ ├── 2 │ │ │ └── 82b03c21c8237f579d3a7febde86dd4284f611ea │ │ ├── 3 │ │ │ └── 834f133f333dd4b04089ceb02e3036ebd9abcf30 │ │ ├── 5 │ │ │ └── 85423c2da3b530e5d61fe133bb3bd192cd25148a │ │ ├── 6 │ │ │ └── 861f4aa2428b6b3d587a6ac58582e4cfe5d2a3af │ │ ├── 7 │ │ │ └── 872af82a207ea6c8ad16e001fd4c7cb7e256241b │ │ ├── a │ │ │ ├── 8af1ab4e1d82af73c8dbb3fc632f9bee3f449f00 │ │ │ └── 8ab8aae2f610bcd70116a7c98fb84fde7fa2c003 │ │ ├── d │ │ │ └── 8dc0dd2ba5196592f38cb6dab2a3ce6ab50b493b │ │ ├── f │ │ │ └── 8ff4ff8552499928e2f14abe8fc5502b5cf85564 │ │ └── b │ │ │ └── 8b49234e5bd2c61515a9e5097d4179954457f39c │ │ ├── 9 │ │ ├── 0 │ │ │ └── 9002274fe84523a273ef2f4aa60d2d0f09bec884 │ │ ├── 3 │ │ │ ├── 930f78615563ac4308e1dde54f1110f648ce5455 │ │ │ └── 935b57bf2e1d352bcebba467bb879eb7f6f4f029 │ │ ├── 4 │ │ │ └── 940743192d0cc5b362425b881a16104e528426bf │ │ ├── b │ │ │ └── 9b5854183f7960cad0b7dbf1033438e4c2fd7a7a │ │ ├── d │ │ │ └── 9df077d19de144ee60c52d283791906aaa58dbb5 │ │ └── f │ │ │ └── 9f60d700fa0105a8855b5d588bba2242b3d261e5 │ │ ├── a │ │ ├── 0 │ │ │ └── a071c653ccb67fe792ccb13423564ac82e5e57f8 │ │ ├── 1 │ │ │ └── a1e5140435278617a76c6a2a996f628a01bea754 │ │ ├── 2 │ │ │ └── a26ca9a007f0292b878880765c0d251b5588a06e │ │ ├── 5 │ │ │ ├── a503377994b17e997c4e832fd4e7e02523eb129e │ │ │ └── a5a585c9e592a6385b1e9c1c9f9688d721e7ab1b │ │ └── 6 │ │ │ └── a6c1e00de86709bde7257927b8dc21b31eb16860 │ │ ├── b │ │ ├── 1 │ │ │ ├── b1554c5ff4b3b2bc529f96693ec018f333d81a1f │ │ │ └── b107729eda23c07c9372f87404a4679b0650695f │ │ ├── 2 │ │ │ └── b28d98251f4ab64fb1b244047c1cb917b3d4ed0c │ │ ├── 6 │ │ │ └── b6054e12cb36439c5f3e250e7765585de8eaf679 │ │ ├── 7 │ │ │ └── b735c85bf68bf3368a1d4dfb82a8f84a84ba9677 │ │ └── b │ │ │ └── bbdfe72e21cd961ee7caaa88b7ac3cc84def1390 │ │ ├── c │ │ ├── 2 │ │ │ └── c2826469541349d9926a43cb18fd6286b7459bee │ │ ├── 3 │ │ │ └── c35f2a3b71ccc9506e9a84bc9ddcafe77adbe86b │ │ ├── 5 │ │ │ └── c578c3017f92ebcd8a25d579893f54f2885d9050 │ │ └── 6 │ │ │ └── c636b3f1642a52825cc5f343e57896414781fded │ │ ├── d │ │ ├── 0 │ │ │ └── d0cd7a1e55070550fd87f3228fb7eb4765184d48 │ │ ├── 6 │ │ │ └── d65d373be0f3e7b9ffc91b8527b2c073349e0c83 │ │ ├── 7 │ │ │ ├── d77a104e04062f9c7476c6e01e68b90e2528e532 │ │ │ └── d7b55e605b9f17b5871c18ddaac4c04267624a25 │ │ ├── 8 │ │ │ └── d8546ba88bcb9e0a612702ee037c0967fd026ae5 │ │ ├── 9 │ │ │ └── d95c708e154c00439bfe3c790e5b0907f780488c │ │ └── e │ │ │ └── dea3f7c35d39dc58a495f561b0d79d1a2e011524 │ │ ├── e │ │ ├── 0 │ │ │ └── e0476cf886071f513a983f418ae96b013aeedcb2 │ │ ├── 1 │ │ │ ├── e10509ff101622bf16397e4192253c3b0c2f7369 │ │ │ └── e1381703cf3fd9e9393b778ffcd45cb60cf72823 │ │ ├── 2 │ │ │ └── e23dbb367b9935a4f4b8f472a62922c546ecf363 │ │ ├── 7 │ │ │ ├── e779ef50a0c2b397bcb2f52a3834b7c72176b0af │ │ │ └── e7e0ec35a582e2c5b51b912ea1426df12b386eb6 │ │ ├── 8 │ │ │ ├── e82362788a8f9574c90425fc748c57638cf30eee │ │ │ ├── e8540704edd200534c64ad76935853f2f5b09e17 │ │ │ └── e86e0083ff071520245e968f44bfd42f7de21e80 │ │ ├── 9 │ │ │ └── e9faafb4ba3093801406a64b512c13b19081e55b │ │ ├── a │ │ │ └── ea9ae0fa7696a90d85cc58150f7e247875f6793d │ │ ├── c │ │ │ └── ec7c3b0b35133c7c410ecac6b1d43eaa4e4ca3e4 │ │ └── d │ │ │ └── ed6e6bdc86349130b3bfef10f406cf979974a413 │ │ ├── f │ │ ├── 2 │ │ │ └── f29eccf52b560fa8166ea0586dd70e6cbe00c574 │ │ ├── 8 │ │ │ └── f8a06f737fc8e5b58323983d7eb931f3b238c319 │ │ ├── b │ │ │ └── fb69e7288fd564f08e44c20ca297857045af1573 │ │ └── d │ │ │ └── fdcd3c0e3634399c38cf12122c217a99ea6e8a2b │ │ └── index.pb ├── .gitignore ├── vcs.xml ├── modules.xml └── jarRepositories.xml ├── L22-Kafka.pdf ├── L23-24-MajorProject-Ewallet ├── src │ ├── main │ │ └── resources │ │ │ └── application.properties │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── L2324MajorProjectEwallet │ │ └── L2324MajorProjectEwalletApplicationTests.java ├── .mvn │ └── wrapper │ │ ├── maven-wrapper.jar │ │ └── maven-wrapper.properties ├── L23-24-MajorProject.txt ├── utils │ ├── src │ │ └── main │ │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── L2324MajorProjectEWallet │ │ │ ├── enums │ │ │ ├── WalletUpdateStatusEnum.java │ │ │ └── UserIdentifierEnum.java │ │ │ └── constants │ │ │ └── CommonConstants.java │ └── pom.xml ├── transaction-service │ ├── src │ │ └── main │ │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── MajorProjectEWallet │ │ │ │ ├── enums │ │ │ │ └── TransactionStatusEnum.java │ │ │ │ ├── TransactionApplication.java │ │ │ │ ├── repository │ │ │ │ └── TransactionRepository.java │ │ │ │ ├── service │ │ │ │ └── TransactionService.java │ │ │ │ ├── model │ │ │ │ └── Transaction.java │ │ │ │ └── controller │ │ │ │ └── TransactionController.java │ │ │ └── resources │ │ │ └── application.properties │ └── pom.xml ├── wallet-service │ ├── src │ │ └── main │ │ │ ├── resources │ │ │ └── application.properties │ │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── L2324MajorProjectEWallet │ │ │ ├── WalletApplication.java │ │ │ ├── repository │ │ │ └── WalletRepository.java │ │ │ ├── service │ │ │ └── WalletService.java │ │ │ └── model │ │ │ └── Wallet.java │ └── pom.xml ├── notification-service │ ├── src │ │ └── main │ │ │ ├── resources │ │ │ └── application.properties │ │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── L2324MajorProectEWallet │ │ │ ├── NotificationApplication.java │ │ │ └── service │ │ │ ├── NotificationService.java │ │ │ └── impl │ │ │ └── NotificationServiceImpl.java │ └── pom.xml ├── user-service │ ├── src │ │ └── main │ │ │ ├── resources │ │ │ └── application.properties │ │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── L2324MajorProjectEWallet │ │ │ ├── repository │ │ │ └── UserRepository.java │ │ │ ├── service │ │ │ └── UserService.java │ │ │ └── request │ │ │ └── UserCreateRequest.java │ └── pom.xml └── .gitignore ├── L7-Rest-Apis ├── src │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── org │ │ └── example │ │ ├── Author.java │ │ ├── BookAuthor.java │ │ ├── L7.txt │ │ ├── RestApisApplication.java │ │ └── Book.java └── pom.xml ├── README.md ├── L4-Maven ├── target │ ├── maven-status │ │ └── maven-compiler-plugin │ │ │ ├── testCompile │ │ │ └── default-testCompile │ │ │ │ └── inputFiles.lst │ │ │ └── compile │ │ │ └── default-compile │ │ │ ├── createdFiles.lst │ │ │ └── inputFiles.lst │ ├── L4-Maven-1.0-SNAPSHOT.jar │ ├── L4-Maven-util-1.0-SNAPSHOT.jar │ ├── classes │ │ └── org │ │ │ └── example │ │ │ ├── Main.class │ │ │ └── MathOperations.class │ └── maven-archiver │ │ └── pom.properties ├── src │ └── main │ │ └── java │ │ └── org │ │ └── example │ │ ├── Main.java │ │ └── MathOperations.java └── pom.xml ├── L22-Introduction to Kafka.pdf ├── L5-L6-Spring-Boot ├── target │ ├── maven-status │ │ └── maven-compiler-plugin │ │ │ ├── testCompile │ │ │ └── default-testCompile │ │ │ │ └── inputFiles.lst │ │ │ └── compile │ │ │ └── default-compile │ │ │ ├── createdFiles.lst │ │ │ └── inputFiles.lst │ ├── classes │ │ ├── application.properties │ │ └── org │ │ │ └── example │ │ │ ├── Demo.class │ │ │ ├── DemoConfig.class │ │ │ ├── DemoController.class │ │ │ ├── DemoController2.class │ │ │ └── DemoSpringApplication.class │ ├── L5-L6-Spring-Boot-1.0-SNAPSHOT.jar │ └── maven-archiver │ │ └── pom.properties ├── src │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── org │ │ └── example │ │ ├── DemoSpringApplication.java │ │ ├── Demo.java │ │ └── DemoConfig.java └── pom.xml ├── out └── production │ ├── JBDL-33 │ └── Main.class │ ├── L1-Core-Java │ └── Lecture1 │ │ ├── MyMap.class │ │ ├── Person.class │ │ ├── MyHashMap.class │ │ ├── Question1.class │ │ ├── FinalKeyword.class │ │ ├── FuncInterface.class │ │ ├── MethodReference.class │ │ ├── MyHashMapImpl$1.class │ │ ├── MyHashMapImpl.class │ │ ├── PrivateClassInMainClass.class │ │ ├── PrivateClassInMainClass$InnerClass.class │ │ └── L1.txt │ ├── L3-Core-Java │ └── Lecture3 │ │ ├── Main.class │ │ ├── Factorial.class │ │ ├── MyThread.class │ │ ├── OtherClass.class │ │ ├── FactorialMT.class │ │ ├── SingletonClass.class │ │ ├── ThreadUsingRunnable.class │ │ └── L3.txt │ ├── L0-Core-Java │ ├── JavaBasics │ │ ├── Main.class │ │ ├── Point.class │ │ ├── Test.class │ │ ├── Test1.class │ │ ├── EvenOdd.class │ │ ├── Player.class │ │ ├── Point1.class │ │ ├── BuubleSort.class │ │ ├── HelloWorld.class │ │ ├── JavaInput.class │ │ ├── JavaOutput.class │ │ ├── MergeSort.class │ │ ├── BinarySearch.class │ │ ├── LinearSearch.class │ │ ├── Static_Member.class │ │ ├── SumOfNumbers.class │ │ ├── Main$InnerClass.class │ │ ├── TypeConversion.class │ │ ├── CommandLineArguments.class │ │ ├── AutoboxingAndUnboxing.class │ │ ├── This_Chaining_Function.class │ │ ├── This_Chaining_Constructor.class │ │ ├── MultithreadingUsingThreadClass.class │ │ └── MultithreadingImplementingRunnable.class │ ├── JavaOOPs │ │ ├── Bicycle.class │ │ ├── Student.class │ │ ├── Inheritance.class │ │ ├── MountainBike.class │ │ ├── Encapsulation.class │ │ └── oops.txt │ └── JavaStreamsAndLambda │ │ ├── WithStream.class │ │ ├── WithLambdaExpression.class │ │ ├── WithoutLambdaUsingAnonymousClass.class │ │ ├── WithoutLambdaUsingAnonymousClass$1.class │ │ ├── WithoutLambdaUsingFunctionalInterface.class │ │ └── WithoutLambdaUsingFunctionalInterface$1MyPredicateEven.class │ └── L2-Core-Java │ └── Lecture2 │ ├── FindFirstEvenNumberInAList.class │ ├── SumOfSquaresOfEvenNumbersInAList.class │ ├── SumOfSquaresOfEvenNumbersInAList$1.class │ ├── SumOfSquaresOfEvenNumbersInAList$2.class │ ├── SumOfSquaresOfEvenNumbersInAList$3.class │ └── l2.txt ├── L17-Spring-Security ├── src │ ├── main │ │ ├── resources │ │ │ └── application.properties │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── demosecurity │ │ │ ├── DemoController.java │ │ │ └── DemoSecurityApplication.java │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── demosecurity │ │ └── DemoSecurityApplicationTests.java ├── .mvn │ └── wrapper │ │ ├── maven-wrapper.jar │ │ └── maven-wrapper.properties └── .gitignore ├── L2-Core-Java ├── src │ └── Lecture2 │ │ ├── MyException.java │ │ ├── Person.java │ │ └── l2.txt └── L2-Core-Java.iml ├── src └── Main.java ├── L8-L9-MySQL ├── target │ └── classes │ │ └── org │ │ └── example │ │ ├── DBConfig.class │ │ ├── HandlerConfig.class │ │ ├── model │ │ ├── Person.class │ │ └── Person$PersonBuilder.class │ │ ├── DemoMySQLApplication.class │ │ ├── service │ │ ├── PersonService.class │ │ └── impl │ │ │ └── PersonServiceImpl.class │ │ ├── controller │ │ └── PersonController.class │ │ ├── repository │ │ ├── PersonRepository.class │ │ └── impl │ │ │ └── PersonRepositoryImpl.class │ │ ├── request │ │ ├── CreatePersonRequest.class │ │ └── CreatePersonRequest$CreatePersonRequestBuilder.class │ │ └── utils │ │ └── BadPersonRequestException.class └── src │ └── main │ └── java │ └── org │ └── example │ ├── utils │ └── BadPersonRequestException.java │ ├── repository │ └── PersonRepository.java │ ├── model │ └── Person.java │ ├── service │ └── PersonService.java │ ├── DemoMySQLApplication.java │ ├── DBConfig.java │ └── request │ └── CreatePersonRequest.java ├── L4-Maven-Calculator ├── target │ └── classes │ │ └── org │ │ └── example │ │ └── Main.class ├── src │ └── main │ │ └── java │ │ └── org │ │ └── example │ │ └── Main.java └── pom.xml ├── L12-13-14-20-MinorProject1And2 ├── .mvn │ └── wrapper │ │ ├── maven-wrapper.jar │ │ └── maven-wrapper.properties ├── src │ ├── main │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── minor1 │ │ │ │ ├── model │ │ │ │ ├── TransactionType.java │ │ │ │ ├── AccountStatus.java │ │ │ │ ├── Genre.java │ │ │ │ ├── TempModel.java │ │ │ │ ├── Transaction.java │ │ │ │ ├── Author.java │ │ │ │ ├── Admin.java │ │ │ │ └── Student.java │ │ │ │ ├── request │ │ │ │ ├── BookFilterTypeEnum.java │ │ │ │ ├── UserCreateRequest.java │ │ │ │ └── BookCreateRequest.java │ │ │ │ ├── exception │ │ │ │ ├── BookNotFoundException.java │ │ │ │ ├── StudentNotFoundException.java │ │ │ │ └── TransactionServiceException.java │ │ │ │ ├── repository │ │ │ │ ├── StudentRepository.java │ │ │ │ ├── MyUserRepository.java │ │ │ │ ├── AdminRepository.java │ │ │ │ ├── TransactionRepository.java │ │ │ │ ├── BookRepository.java │ │ │ │ └── MyUserCacheRepository.java │ │ │ │ ├── service │ │ │ │ ├── StudentService.java │ │ │ │ ├── BookService.java │ │ │ │ ├── TransactionService.java │ │ │ │ └── Impl │ │ │ │ │ ├── AdminServiceImpl.java │ │ │ │ │ └── StudentServiceImpl.java │ │ │ │ ├── config │ │ │ │ └── CommonConfig.java │ │ │ │ └── response │ │ │ │ └── BookSearchResponse.java │ │ └── resources │ │ │ └── application.properties │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── minor1 │ │ └── MinorProject1And2Tests.java └── .gitignore ├── L10-11-Spring-JPA-Hibernate ├── target │ └── classes │ │ ├── com │ │ └── example │ │ │ └── demojpa │ │ │ ├── models │ │ │ ├── Author.class │ │ │ ├── Person.class │ │ │ ├── Author$AuthorBuilder.class │ │ │ └── Person$PersonBuilder.class │ │ │ ├── DemoJpaApplication.class │ │ │ ├── configs │ │ │ └── HandlerConfig.class │ │ │ ├── services │ │ │ ├── AuthorService.class │ │ │ └── PersonService.class │ │ │ ├── controllers │ │ │ ├── AuthorController.class │ │ │ └── PersonController.class │ │ │ ├── repositories │ │ │ ├── AuthorRepository.class │ │ │ └── PersonRepository.class │ │ │ ├── requests │ │ │ ├── CreatePersonRequest.class │ │ │ └── CreatePersonRequest$CreatePersonRequestBuilder.class │ │ │ └── exceptions │ │ │ └── PersonNotFoundException.class │ │ └── application.properties └── src │ ├── main │ ├── java │ │ └── com │ │ │ └── example │ │ │ └── demojpa │ │ │ ├── exceptions │ │ │ └── PersonNotFoundException.java │ │ │ ├── repositories │ │ │ ├── AuthorRepository.java │ │ │ └── PersonRepository.java │ │ │ ├── DemoJpaApplication.java │ │ │ ├── models │ │ │ ├── Author.java │ │ │ └── Person.java │ │ │ ├── services │ │ │ └── AuthorService.java │ │ │ ├── configs │ │ │ └── HandlerConfig.java │ │ │ ├── controllers │ │ │ ├── AuthorController.java │ │ │ └── PersonController.java │ │ │ └── requests │ │ │ └── CreatePersonRequest.java │ └── resources │ │ └── application.properties │ └── test │ └── java │ └── com │ └── example │ └── demojpa │ └── DemoJpaApplicationTests.java ├── L18-Spring-Security-In-Memory └── src │ ├── main │ ├── resources │ │ └── application.properties │ └── java │ │ └── com │ │ └── example │ │ └── demosecurity │ │ └── DemoSecurityApplication.java │ └── test │ └── java │ └── com │ └── example │ └── demosecurity │ └── DemoSecurityApplicationTests.java ├── L19-Spring-Security-User-Details ├── target │ └── classes │ │ ├── com │ │ └── example │ │ │ └── demosecurity │ │ │ ├── MyUser.class │ │ │ ├── MongoUser.class │ │ │ ├── DemoConfig.class │ │ │ ├── DemoController.class │ │ │ ├── MyUserRepository.class │ │ │ ├── MongoUserRepository.class │ │ │ ├── MyUser$MyUserBuilder.class │ │ │ ├── MyUserDetailsService.class │ │ │ └── DemoSecurityApplication.class │ │ └── application.properties └── src │ ├── main │ ├── java │ │ └── com │ │ │ └── example │ │ │ └── demosecurity │ │ │ ├── MongoUser.java │ │ │ ├── MongoUserRepository.java │ │ │ ├── MyUserRepository.java │ │ │ ├── MyUserDetailsService.java │ │ │ └── L18+L19.txt │ └── resources │ │ └── application.properties │ └── test │ └── java │ └── com │ └── example │ └── demosecurity │ └── DemoSecurityApplicationTests.java ├── L1-Core-Java ├── src │ └── Lecture1 │ │ ├── FuncInterface.java │ │ ├── MyMap.java │ │ ├── MyHashMap.java │ │ ├── PrivateClassInMainClass.java │ │ ├── FinalKeyword.java │ │ ├── L1.txt │ │ └── MethodReference.java └── L1-Core-Java.iml ├── L11-MultipleDatasource └── src │ ├── main │ ├── java │ │ └── com │ │ │ └── example │ │ │ └── demomultipledb │ │ │ ├── PersonNotFoundException.java │ │ │ ├── authordb │ │ │ ├── AuthorRepository.java │ │ │ └── Author.java │ │ │ ├── persondb │ │ │ ├── PersonRepository.java │ │ │ └── Person.java │ │ │ ├── DemoMultipleDbApplication.java │ │ │ ├── L11.txt │ │ │ ├── PersonController.java │ │ │ └── CreatePersonRequest.java │ └── resources │ │ └── application.properties │ └── test │ └── java │ └── com │ └── example │ └── demomultipledb │ └── DemoMultipleDbApplicationTests.java ├── L0-Core-Java ├── src │ ├── JavaBasics │ │ ├── Main.java │ │ ├── HelloWorld.java │ │ ├── CommandLineArguments.java │ │ ├── EvenOdd.java │ │ ├── This_Chaining_Constructor.java │ │ ├── MultithreadingUsingThreadClass.java │ │ ├── SumOfNumbers.java │ │ ├── MultithreadingImplementingRunnable.java │ │ ├── TypeConversion.java │ │ ├── JavaOutput.java │ │ ├── AutoboxingAndUnboxing.java │ │ ├── This_Chaining_Function.java │ │ ├── LinearSearch.java │ │ ├── BinarySearch.java │ │ ├── BuubleSort.java │ │ ├── Static_Member.java │ │ └── JavaInput.java │ ├── JavaOOPs │ │ ├── Encapsulation.java │ │ ├── oops.txt │ │ └── Inheritance.java │ └── JavaStreamsAndLambda │ │ ├── WithStream.java │ │ └── WithLambdaExpression.java └── L0-Core-Java.iml ├── JBDL-33.iml ├── L3-Core-Java ├── L3-Core-Java.iml └── src │ └── Lecture3 │ ├── L3.txt │ ├── MyThread.java │ ├── ThreadUsingRunnable.java │ ├── SingletonClass.java │ ├── OtherClass.java │ └── Factorial.java └── L21-Spring-OAuth2.0 ├── src ├── main │ ├── resources │ │ └── application.properties │ └── java │ │ └── com │ │ └── example │ │ └── Controller.java └── test │ └── java │ └── com │ └── example │ └── SocialApplicationTests.java └── notes.txt /L15-16-Redis/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/0/6/06b7ccf011249ca6d97e9bd818bf991315fca918: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/1/6/169abc708a78c99cbb05a8d2e1813ee6bbb6383b: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/1/9/193cd2e7fd0aaf65241ea8c61c66c9c4690fe10e: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/1/9/19911d567eb817325aff06e6caca93269340c67f: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/1/9/19d5301c9e8fd07daea5ec77bcbd98e4fe5d16c0: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/2/2/22fc500847ee53d92963b65f231ed6410ad961c4: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/2/3/235c7d60911589df42e30f952ee5a8c6a3590232: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/2/5/257391814101d5d6f6220d64c4cab3d272442aff: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/2/b/2b4668f31705f6c69b5dbcc4f6a0f021c47cbdfd: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/3/0/30ac3e53308b8dd00abe8be6d2076629c88695a5: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/3/3/33b3f96d1adc0627337d1012dfa655aaa3dacfb7: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/3/9/391d2d6558386663582afb466f50ce0ee7e24c9a: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/3/a/3a7fc0000103a6fb2ae1f5f44e14a9f01abbfc78: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/3/a/3aa550a72e4e8e328e4cb68700b57795ef5b6546: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/4/a/4ae15f6b2fe2f562081bdd10a05e0b1e13030632: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/4/c/4c0bac9fc2155ea57559006ad19f3a499384815b: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/5/0/5074504e9259348092490aacdfa624e60577e572: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/5/3/53792b8029f29e56494a58448573444c6522407b: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/5/9/59b5a08ff14bb5f954d68e2857cc4821493bad18: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/5/f/5f07b0458b013405a114a6d9308a8df2e9c982cc: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/6/4/647df405c52364da38ef6fca67e3382c44b6a56f: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/6/5/6564a566e900692848fcb9db2a55b0fd081fb85c: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/7/0/7080836b4b6aeb410c996c1d12b382e34c7472e9: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/7/5/75e743121426cbb8daa616dbbf4f24489e0e9374: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/7/8/78005b0acb62f0e5979fa333a71f01a04336e73a: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/7/c/7c996b38c7fe13afb2883182a5bb010bd4ec1402: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/8/2/82b03c21c8237f579d3a7febde86dd4284f611ea: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/8/6/861f4aa2428b6b3d587a6ac58582e4cfe5d2a3af: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/8/a/8af1ab4e1d82af73c8dbb3fc632f9bee3f449f00: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/8/d/8dc0dd2ba5196592f38cb6dab2a3ce6ab50b493b: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/8/f/8ff4ff8552499928e2f14abe8fc5502b5cf85564: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/9/b/9b5854183f7960cad0b7dbf1033438e4c2fd7a7a: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/a/0/a071c653ccb67fe792ccb13423564ac82e5e57f8: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/b/1/b1554c5ff4b3b2bc529f96693ec018f333d81a1f: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/b/7/b735c85bf68bf3368a1d4dfb82a8f84a84ba9677: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/b/b/bbdfe72e21cd961ee7caaa88b7ac3cc84def1390: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/c/2/c2826469541349d9926a43cb18fd6286b7459bee: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/c/3/c35f2a3b71ccc9506e9a84bc9ddcafe77adbe86b: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/c/5/c578c3017f92ebcd8a25d579893f54f2885d9050: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/c/6/c636b3f1642a52825cc5f343e57896414781fded: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/d/e/dea3f7c35d39dc58a495f561b0d79d1a2e011524: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/e/a/ea9ae0fa7696a90d85cc58150f7e247875f6793d: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/e/c/ec7c3b0b35133c7c410ecac6b1d43eaa4e4ca3e4: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/f/2/f29eccf52b560fa8166ea0586dd70e6cbe00c574: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/f/8/f8a06f737fc8e5b58323983d7eb931f3b238c319: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /L22-Kafka.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L22-Kafka.pdf -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /L7-Rest-Apis/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | logging.level.org.springframework=debug -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # JDBL 2 | ## Learning Java Backend Development 3 | ### Lecture 1 -> Core Java 4 | -------------------------------------------------------------------------------- /L4-Maven/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /L22-Introduction to Kafka.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L22-Introduction to Kafka.pdf -------------------------------------------------------------------------------- /L5-L6-Spring-Boot/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /L7-Rest-Apis/src/main/java/org/example/Author.java: -------------------------------------------------------------------------------- 1 | package org.example; 2 | 3 | public class Author { 4 | } 5 | -------------------------------------------------------------------------------- /out/production/JBDL-33/Main.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/JBDL-33/Main.class -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/index.pb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/index.pb -------------------------------------------------------------------------------- /L17-Spring-Security/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | logging.level.org.springframework.security=debug 2 | -------------------------------------------------------------------------------- /L5-L6-Spring-Boot/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | logging.level.org.springframework = debug 2 | server.port = 8000 -------------------------------------------------------------------------------- /L5-L6-Spring-Boot/target/classes/application.properties: -------------------------------------------------------------------------------- 1 | logging.level.org.springframework = debug 2 | server.port = 8000 -------------------------------------------------------------------------------- /L4-Maven/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst: -------------------------------------------------------------------------------- 1 | org\example\MathOperations.class 2 | -------------------------------------------------------------------------------- /L5-L6-Spring-Boot/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst: -------------------------------------------------------------------------------- 1 | org\example\Main.class 2 | -------------------------------------------------------------------------------- /L15-16-Redis/.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L15-16-Redis/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /L4-Maven/target/L4-Maven-1.0-SNAPSHOT.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L4-Maven/target/L4-Maven-1.0-SNAPSHOT.jar -------------------------------------------------------------------------------- /L2-Core-Java/src/Lecture2/MyException.java: -------------------------------------------------------------------------------- 1 | package Lecture2; 2 | 3 | public class MyException extends RuntimeException{ 4 | 5 | } 6 | -------------------------------------------------------------------------------- /L4-Maven/target/L4-Maven-util-1.0-SNAPSHOT.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L4-Maven/target/L4-Maven-util-1.0-SNAPSHOT.jar -------------------------------------------------------------------------------- /L4-Maven/target/classes/org/example/Main.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L4-Maven/target/classes/org/example/Main.class -------------------------------------------------------------------------------- /out/production/L1-Core-Java/Lecture1/MyMap.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L1-Core-Java/Lecture1/MyMap.class -------------------------------------------------------------------------------- /out/production/L3-Core-Java/Lecture3/Main.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L3-Core-Java/Lecture3/Main.class -------------------------------------------------------------------------------- /L17-Spring-Security/.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L17-Spring-Security/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/Main.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/Main.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/Point.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/Point.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/Test.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/Test.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/Test1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/Test1.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaOOPs/Bicycle.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaOOPs/Bicycle.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaOOPs/Student.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaOOPs/Student.class -------------------------------------------------------------------------------- /out/production/L1-Core-Java/Lecture1/Person.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L1-Core-Java/Lecture1/Person.class -------------------------------------------------------------------------------- /src/Main.java: -------------------------------------------------------------------------------- 1 | public class Main { 2 | public static void main(String[] args) { 3 | System.out.println("Hello world!"); 4 | } 5 | } -------------------------------------------------------------------------------- /L8-L9-MySQL/target/classes/org/example/DBConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L8-L9-MySQL/target/classes/org/example/DBConfig.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/EvenOdd.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/EvenOdd.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/Player.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/Player.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/Point1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/Point1.class -------------------------------------------------------------------------------- /out/production/L1-Core-Java/Lecture1/MyHashMap.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L1-Core-Java/Lecture1/MyHashMap.class -------------------------------------------------------------------------------- /out/production/L1-Core-Java/Lecture1/Question1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L1-Core-Java/Lecture1/Question1.class -------------------------------------------------------------------------------- /out/production/L3-Core-Java/Lecture3/Factorial.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L3-Core-Java/Lecture3/Factorial.class -------------------------------------------------------------------------------- /out/production/L3-Core-Java/Lecture3/MyThread.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L3-Core-Java/Lecture3/MyThread.class -------------------------------------------------------------------------------- /out/production/L3-Core-Java/Lecture3/OtherClass.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L3-Core-Java/Lecture3/OtherClass.class -------------------------------------------------------------------------------- /L5-L6-Spring-Boot/target/classes/org/example/Demo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L5-L6-Spring-Boot/target/classes/org/example/Demo.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/BuubleSort.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/BuubleSort.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/HelloWorld.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/HelloWorld.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/JavaInput.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/JavaInput.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/JavaOutput.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/JavaOutput.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/MergeSort.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/MergeSort.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaOOPs/Inheritance.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaOOPs/Inheritance.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaOOPs/MountainBike.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaOOPs/MountainBike.class -------------------------------------------------------------------------------- /out/production/L1-Core-Java/Lecture1/FinalKeyword.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L1-Core-Java/Lecture1/FinalKeyword.class -------------------------------------------------------------------------------- /out/production/L3-Core-Java/Lecture3/FactorialMT.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L3-Core-Java/Lecture3/FactorialMT.class -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L23-24-MajorProject-Ewallet/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /L4-Maven-Calculator/target/classes/org/example/Main.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L4-Maven-Calculator/target/classes/org/example/Main.class -------------------------------------------------------------------------------- /L4-Maven/target/classes/org/example/MathOperations.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L4-Maven/target/classes/org/example/MathOperations.class -------------------------------------------------------------------------------- /L8-L9-MySQL/target/classes/org/example/HandlerConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L8-L9-MySQL/target/classes/org/example/HandlerConfig.class -------------------------------------------------------------------------------- /L8-L9-MySQL/target/classes/org/example/model/Person.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L8-L9-MySQL/target/classes/org/example/model/Person.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/BinarySearch.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/BinarySearch.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/LinearSearch.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/LinearSearch.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/Static_Member.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/Static_Member.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/SumOfNumbers.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/SumOfNumbers.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaOOPs/Encapsulation.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaOOPs/Encapsulation.class -------------------------------------------------------------------------------- /out/production/L1-Core-Java/Lecture1/FuncInterface.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L1-Core-Java/Lecture1/FuncInterface.class -------------------------------------------------------------------------------- /out/production/L1-Core-Java/Lecture1/MethodReference.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L1-Core-Java/Lecture1/MethodReference.class -------------------------------------------------------------------------------- /out/production/L1-Core-Java/Lecture1/MyHashMapImpl$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L1-Core-Java/Lecture1/MyHashMapImpl$1.class -------------------------------------------------------------------------------- /out/production/L1-Core-Java/Lecture1/MyHashMapImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L1-Core-Java/Lecture1/MyHashMapImpl.class -------------------------------------------------------------------------------- /out/production/L3-Core-Java/Lecture3/SingletonClass.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L3-Core-Java/Lecture3/SingletonClass.class -------------------------------------------------------------------------------- /L5-L6-Spring-Boot/target/L5-L6-Spring-Boot-1.0-SNAPSHOT.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L5-L6-Spring-Boot/target/L5-L6-Spring-Boot-1.0-SNAPSHOT.jar -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/Main$InnerClass.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/Main$InnerClass.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/TypeConversion.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/TypeConversion.class -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L12-13-14-20-MinorProject1And2/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /L4-Maven/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst: -------------------------------------------------------------------------------- 1 | D:\Tutorials\JBDL-Training\JBDL-33\L4-Maven\src\main\java\org\example\Main.java 2 | -------------------------------------------------------------------------------- /L5-L6-Spring-Boot/target/classes/org/example/DemoConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L5-L6-Spring-Boot/target/classes/org/example/DemoConfig.class -------------------------------------------------------------------------------- /out/production/L3-Core-Java/Lecture3/ThreadUsingRunnable.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L3-Core-Java/Lecture3/ThreadUsingRunnable.class -------------------------------------------------------------------------------- /L4-Maven/target/maven-archiver/pom.properties: -------------------------------------------------------------------------------- 1 | #Generated by Maven 2 | #Mon Feb 13 13:50:01 IST 2023 3 | groupId=org.example 4 | artifactId=L4-Maven 5 | version=1.0-SNAPSHOT 6 | -------------------------------------------------------------------------------- /L5-L6-Spring-Boot/target/classes/org/example/DemoController.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L5-L6-Spring-Boot/target/classes/org/example/DemoController.class -------------------------------------------------------------------------------- /L8-L9-MySQL/target/classes/org/example/DemoMySQLApplication.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L8-L9-MySQL/target/classes/org/example/DemoMySQLApplication.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/CommandLineArguments.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/CommandLineArguments.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaStreamsAndLambda/WithStream.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaStreamsAndLambda/WithStream.class -------------------------------------------------------------------------------- /L5-L6-Spring-Boot/target/classes/org/example/DemoController2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L5-L6-Spring-Boot/target/classes/org/example/DemoController2.class -------------------------------------------------------------------------------- /L8-L9-MySQL/target/classes/org/example/service/PersonService.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L8-L9-MySQL/target/classes/org/example/service/PersonService.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/AutoboxingAndUnboxing.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/AutoboxingAndUnboxing.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/This_Chaining_Function.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/This_Chaining_Function.class -------------------------------------------------------------------------------- /out/production/L1-Core-Java/Lecture1/PrivateClassInMainClass.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L1-Core-Java/Lecture1/PrivateClassInMainClass.class -------------------------------------------------------------------------------- /L7-Rest-Apis/src/main/java/org/example/BookAuthor.java: -------------------------------------------------------------------------------- 1 | package org.example; 2 | 3 | 4 | public class BookAuthor { 5 | 6 | private Author author; 7 | private Book book; 8 | } 9 | -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/This_Chaining_Constructor.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/This_Chaining_Constructor.class -------------------------------------------------------------------------------- /out/production/L2-Core-Java/Lecture2/FindFirstEvenNumberInAList.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L2-Core-Java/Lecture2/FindFirstEvenNumberInAList.class -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/0/0/00abb7d9764e75b007fe412e25ed5334d40d3ec2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/0/0/00abb7d9764e75b007fe412e25ed5334d40d3ec2 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/0/0/00f6362d806f060c14abe78a25fec905f0f67156: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/0/0/00f6362d806f060c14abe78a25fec905f0f67156 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/0/5/054dafeafbe5a0c4c02ac64eb01c4102f505b439: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/0/5/054dafeafbe5a0c4c02ac64eb01c4102f505b439 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/0/e/0e74208c4d9641087c3d55235417518fc974139a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/0/e/0e74208c4d9641087c3d55235417518fc974139a -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/1/6/1685f039d0a59b1aa08ce4b29b7b7633cde583cc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/1/6/1685f039d0a59b1aa08ce4b29b7b7633cde583cc -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/1/9/1920c9b6773d02bab153307968ade37491a29617: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/1/9/1920c9b6773d02bab153307968ade37491a29617 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/1/9/19870239e9e79dfe82738f019d6c73e25d6c7d5f: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/1/9/19870239e9e79dfe82738f019d6c73e25d6c7d5f -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/1/b/1b35050d12f70273d5cde537efc08bb0f8f2164e: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/1/b/1b35050d12f70273d5cde537efc08bb0f8f2164e -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/1/c/1c81cc78993decf5571c987a813b69664e6c4378: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/1/c/1c81cc78993decf5571c987a813b69664e6c4378 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/2/8/281a7dd28867b7d6896e3e750a064ab730ae6c5e: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/2/8/281a7dd28867b7d6896e3e750a064ab730ae6c5e -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/2/8/28fc50528a76d95769212d23efc22f4dce0cc0e3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/2/8/28fc50528a76d95769212d23efc22f4dce0cc0e3 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/2/9/2909b1ac957d3cce86431b4a4dc8271231bacbe5: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/2/9/2909b1ac957d3cce86431b4a4dc8271231bacbe5 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/3/f/3fd9568edee7eb0de67e7c56bdf402029f11e469: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/3/f/3fd9568edee7eb0de67e7c56bdf402029f11e469 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/4/1/41566893b6c76f92a82344b67f3e1747bfb93698: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/4/1/41566893b6c76f92a82344b67f3e1747bfb93698 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/4/4/448be94179fc252a05886cd08215d32f9e9f9605: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/4/4/448be94179fc252a05886cd08215d32f9e9f9605 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/5/5/557861a4f4da78764ab85f8973a7f8df4881ecb0: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/5/5/557861a4f4da78764ab85f8973a7f8df4881ecb0 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/5/5/558050e5a2ec41bb8c6b536e0e47e2c04223bff9: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/5/5/558050e5a2ec41bb8c6b536e0e47e2c04223bff9 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/5/7/57ce7ed965515f124187621c0365a3dccfbdc757: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/5/7/57ce7ed965515f124187621c0365a3dccfbdc757 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/5/c/5cfc6e9b5bfe7c036ae797ee04c3bbe06eadc72c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/5/c/5cfc6e9b5bfe7c036ae797ee04c3bbe06eadc72c -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/5/d/5d50a92a95b37dde0fc6e9e9e82c2d62804c1250: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/5/d/5d50a92a95b37dde0fc6e9e9e82c2d62804c1250 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/5/e/5ec6d9b837c31bdae50c8c1e3fa477d3da3146fb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/5/e/5ec6d9b837c31bdae50c8c1e3fa477d3da3146fb -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/6/4/64916f154aa6b758f2b4d03bc0af721a701b1960: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/6/4/64916f154aa6b758f2b4d03bc0af721a701b1960 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/6/6/663975ce63008409d9e4885fb18979ca924afaf7: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/6/6/663975ce63008409d9e4885fb18979ca924afaf7 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/6/8/689186777d2390df0374ba33cabca5383d45c178: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/6/8/689186777d2390df0374ba33cabca5383d45c178 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/7/4/7420e78e239d0efce8aa9e88a2b8b635686b0fd2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/7/4/7420e78e239d0efce8aa9e88a2b8b635686b0fd2 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/7/8/78619ee05195e47db1d1f0c90bd94fa2fa378d7a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/7/8/78619ee05195e47db1d1f0c90bd94fa2fa378d7a -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/7/8/78e344ad00ebb5cd8da3c3c2943ed22e3457658a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/7/8/78e344ad00ebb5cd8da3c3c2943ed22e3457658a -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/8/3/834f133f333dd4b04089ceb02e3036ebd9abcf30: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/8/3/834f133f333dd4b04089ceb02e3036ebd9abcf30 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/8/5/85423c2da3b530e5d61fe133bb3bd192cd25148a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/8/5/85423c2da3b530e5d61fe133bb3bd192cd25148a -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/8/7/872af82a207ea6c8ad16e001fd4c7cb7e256241b: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/8/7/872af82a207ea6c8ad16e001fd4c7cb7e256241b -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/8/a/8ab8aae2f610bcd70116a7c98fb84fde7fa2c003: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/8/a/8ab8aae2f610bcd70116a7c98fb84fde7fa2c003 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/8/b/8b49234e5bd2c61515a9e5097d4179954457f39c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/8/b/8b49234e5bd2c61515a9e5097d4179954457f39c -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/9/0/9002274fe84523a273ef2f4aa60d2d0f09bec884: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/9/0/9002274fe84523a273ef2f4aa60d2d0f09bec884 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/9/3/930f78615563ac4308e1dde54f1110f648ce5455: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/9/3/930f78615563ac4308e1dde54f1110f648ce5455 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/9/3/935b57bf2e1d352bcebba467bb879eb7f6f4f029: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/9/3/935b57bf2e1d352bcebba467bb879eb7f6f4f029 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/9/4/940743192d0cc5b362425b881a16104e528426bf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/9/4/940743192d0cc5b362425b881a16104e528426bf -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/9/d/9df077d19de144ee60c52d283791906aaa58dbb5: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/9/d/9df077d19de144ee60c52d283791906aaa58dbb5 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/9/f/9f60d700fa0105a8855b5d588bba2242b3d261e5: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/9/f/9f60d700fa0105a8855b5d588bba2242b3d261e5 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/a/1/a1e5140435278617a76c6a2a996f628a01bea754: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/a/1/a1e5140435278617a76c6a2a996f628a01bea754 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/a/2/a26ca9a007f0292b878880765c0d251b5588a06e: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/a/2/a26ca9a007f0292b878880765c0d251b5588a06e -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/a/5/a503377994b17e997c4e832fd4e7e02523eb129e: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/a/5/a503377994b17e997c4e832fd4e7e02523eb129e -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/a/5/a5a585c9e592a6385b1e9c1c9f9688d721e7ab1b: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/a/5/a5a585c9e592a6385b1e9c1c9f9688d721e7ab1b -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/a/6/a6c1e00de86709bde7257927b8dc21b31eb16860: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/a/6/a6c1e00de86709bde7257927b8dc21b31eb16860 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/b/1/b107729eda23c07c9372f87404a4679b0650695f: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/b/1/b107729eda23c07c9372f87404a4679b0650695f -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/b/2/b28d98251f4ab64fb1b244047c1cb917b3d4ed0c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/b/2/b28d98251f4ab64fb1b244047c1cb917b3d4ed0c -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/b/6/b6054e12cb36439c5f3e250e7765585de8eaf679: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/b/6/b6054e12cb36439c5f3e250e7765585de8eaf679 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/d/0/d0cd7a1e55070550fd87f3228fb7eb4765184d48: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/d/0/d0cd7a1e55070550fd87f3228fb7eb4765184d48 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/d/6/d65d373be0f3e7b9ffc91b8527b2c073349e0c83: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/d/6/d65d373be0f3e7b9ffc91b8527b2c073349e0c83 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/d/7/d77a104e04062f9c7476c6e01e68b90e2528e532: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/d/7/d77a104e04062f9c7476c6e01e68b90e2528e532 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/d/7/d7b55e605b9f17b5871c18ddaac4c04267624a25: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/d/7/d7b55e605b9f17b5871c18ddaac4c04267624a25 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/d/8/d8546ba88bcb9e0a612702ee037c0967fd026ae5: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/d/8/d8546ba88bcb9e0a612702ee037c0967fd026ae5 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/d/9/d95c708e154c00439bfe3c790e5b0907f780488c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/d/9/d95c708e154c00439bfe3c790e5b0907f780488c -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/e/0/e0476cf886071f513a983f418ae96b013aeedcb2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/e/0/e0476cf886071f513a983f418ae96b013aeedcb2 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/e/1/e10509ff101622bf16397e4192253c3b0c2f7369: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/e/1/e10509ff101622bf16397e4192253c3b0c2f7369 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/e/1/e1381703cf3fd9e9393b778ffcd45cb60cf72823: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/e/1/e1381703cf3fd9e9393b778ffcd45cb60cf72823 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/e/2/e23dbb367b9935a4f4b8f472a62922c546ecf363: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/e/2/e23dbb367b9935a4f4b8f472a62922c546ecf363 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/e/7/e779ef50a0c2b397bcb2f52a3834b7c72176b0af: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/e/7/e779ef50a0c2b397bcb2f52a3834b7c72176b0af -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/e/7/e7e0ec35a582e2c5b51b912ea1426df12b386eb6: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/e/7/e7e0ec35a582e2c5b51b912ea1426df12b386eb6 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/e/8/e82362788a8f9574c90425fc748c57638cf30eee: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/e/8/e82362788a8f9574c90425fc748c57638cf30eee -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/e/8/e8540704edd200534c64ad76935853f2f5b09e17: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/e/8/e8540704edd200534c64ad76935853f2f5b09e17 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/e/8/e86e0083ff071520245e968f44bfd42f7de21e80: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/e/8/e86e0083ff071520245e968f44bfd42f7de21e80 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/e/9/e9faafb4ba3093801406a64b512c13b19081e55b: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/e/9/e9faafb4ba3093801406a64b512c13b19081e55b -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/e/d/ed6e6bdc86349130b3bfef10f406cf979974a413: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/e/d/ed6e6bdc86349130b3bfef10f406cf979974a413 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/f/b/fb69e7288fd564f08e44c20ca297857045af1573: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/f/b/fb69e7288fd564f08e44c20ca297857045af1573 -------------------------------------------------------------------------------- /.idea/sonarlint/issuestore/f/d/fdcd3c0e3634399c38cf12122c217a99ea6e8a2b: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/.idea/sonarlint/issuestore/f/d/fdcd3c0e3634399c38cf12122c217a99ea6e8a2b -------------------------------------------------------------------------------- /L5-L6-Spring-Boot/target/classes/org/example/DemoSpringApplication.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L5-L6-Spring-Boot/target/classes/org/example/DemoSpringApplication.class -------------------------------------------------------------------------------- /L5-L6-Spring-Boot/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst: -------------------------------------------------------------------------------- 1 | D:\Tutorials\JBDL-Training\JBDL-33\L5-L6-Spring-Boot\src\main\java\org\example\Main.java 2 | -------------------------------------------------------------------------------- /L8-L9-MySQL/target/classes/org/example/controller/PersonController.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L8-L9-MySQL/target/classes/org/example/controller/PersonController.class -------------------------------------------------------------------------------- /L8-L9-MySQL/target/classes/org/example/model/Person$PersonBuilder.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L8-L9-MySQL/target/classes/org/example/model/Person$PersonBuilder.class -------------------------------------------------------------------------------- /L8-L9-MySQL/target/classes/org/example/repository/PersonRepository.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L8-L9-MySQL/target/classes/org/example/repository/PersonRepository.class -------------------------------------------------------------------------------- /L8-L9-MySQL/target/classes/org/example/request/CreatePersonRequest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L8-L9-MySQL/target/classes/org/example/request/CreatePersonRequest.class -------------------------------------------------------------------------------- /L5-L6-Spring-Boot/target/maven-archiver/pom.properties: -------------------------------------------------------------------------------- 1 | #Generated by Maven 2 | #Tue Feb 14 10:31:57 IST 2023 3 | groupId=org.example 4 | artifactId=L5-L6-Spring-Boot 5 | version=1.0-SNAPSHOT 6 | -------------------------------------------------------------------------------- /L8-L9-MySQL/target/classes/org/example/service/impl/PersonServiceImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L8-L9-MySQL/target/classes/org/example/service/impl/PersonServiceImpl.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/MultithreadingUsingThreadClass.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/MultithreadingUsingThreadClass.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaStreamsAndLambda/WithLambdaExpression.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaStreamsAndLambda/WithLambdaExpression.class -------------------------------------------------------------------------------- /out/production/L2-Core-Java/Lecture2/SumOfSquaresOfEvenNumbersInAList.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L2-Core-Java/Lecture2/SumOfSquaresOfEvenNumbersInAList.class -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/model/TransactionType.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.model; 2 | 3 | public enum TransactionType { 4 | ISSUE, 5 | RETURN 6 | } 7 | -------------------------------------------------------------------------------- /L8-L9-MySQL/target/classes/org/example/utils/BadPersonRequestException.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L8-L9-MySQL/target/classes/org/example/utils/BadPersonRequestException.class -------------------------------------------------------------------------------- /out/production/L1-Core-Java/Lecture1/PrivateClassInMainClass$InnerClass.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L1-Core-Java/Lecture1/PrivateClassInMainClass$InnerClass.class -------------------------------------------------------------------------------- /out/production/L2-Core-Java/Lecture2/SumOfSquaresOfEvenNumbersInAList$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L2-Core-Java/Lecture2/SumOfSquaresOfEvenNumbersInAList$1.class -------------------------------------------------------------------------------- /out/production/L2-Core-Java/Lecture2/SumOfSquaresOfEvenNumbersInAList$2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L2-Core-Java/Lecture2/SumOfSquaresOfEvenNumbersInAList$2.class -------------------------------------------------------------------------------- /out/production/L2-Core-Java/Lecture2/SumOfSquaresOfEvenNumbersInAList$3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L2-Core-Java/Lecture2/SumOfSquaresOfEvenNumbersInAList$3.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaBasics/MultithreadingImplementingRunnable.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaBasics/MultithreadingImplementingRunnable.class -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/models/Author.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/models/Author.class -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/models/Person.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/models/Person.class -------------------------------------------------------------------------------- /L7-Rest-Apis/src/main/java/org/example/L7.txt: -------------------------------------------------------------------------------- 1 | GET - Retrieve some info 2 | POST - Save some info on the server 3 | DELETE - Delete something on the server 4 | PUT - Updates the already existing info on the server -------------------------------------------------------------------------------- /L8-L9-MySQL/target/classes/org/example/repository/impl/PersonRepositoryImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L8-L9-MySQL/target/classes/org/example/repository/impl/PersonRepositoryImpl.class -------------------------------------------------------------------------------- /L18-Spring-Security-In-Memory/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | logging.level.org.springframework=debug 2 | 3 | 4 | # 37C5D26D350BEEFACE4EB846C2EA86C4 5 | 6 | # user - pwd --> session id 7 | # session id --> -------------------------------------------------------------------------------- /L19-Spring-Security-User-Details/target/classes/com/example/demosecurity/MyUser.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L19-Spring-Security-User-Details/target/classes/com/example/demosecurity/MyUser.class -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/DemoJpaApplication.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/DemoJpaApplication.class -------------------------------------------------------------------------------- /L19-Spring-Security-User-Details/target/classes/com/example/demosecurity/MongoUser.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L19-Spring-Security-User-Details/target/classes/com/example/demosecurity/MongoUser.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaStreamsAndLambda/WithoutLambdaUsingAnonymousClass.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaStreamsAndLambda/WithoutLambdaUsingAnonymousClass.class -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/configs/HandlerConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/configs/HandlerConfig.class -------------------------------------------------------------------------------- /L19-Spring-Security-User-Details/target/classes/com/example/demosecurity/DemoConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L19-Spring-Security-User-Details/target/classes/com/example/demosecurity/DemoConfig.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaStreamsAndLambda/WithoutLambdaUsingAnonymousClass$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaStreamsAndLambda/WithoutLambdaUsingAnonymousClass$1.class -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/services/AuthorService.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/services/AuthorService.class -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/services/PersonService.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/services/PersonService.class -------------------------------------------------------------------------------- /L19-Spring-Security-User-Details/target/classes/com/example/demosecurity/DemoController.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L19-Spring-Security-User-Details/target/classes/com/example/demosecurity/DemoController.class -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaStreamsAndLambda/WithoutLambdaUsingFunctionalInterface.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaStreamsAndLambda/WithoutLambdaUsingFunctionalInterface.class -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/model/AccountStatus.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.model; 2 | 3 | public enum AccountStatus { 4 | ACTIVE, 5 | INACTIVE, 6 | BLOCKED, 7 | PAUSED 8 | } 9 | -------------------------------------------------------------------------------- /L19-Spring-Security-User-Details/target/classes/com/example/demosecurity/MyUserRepository.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L19-Spring-Security-User-Details/target/classes/com/example/demosecurity/MyUserRepository.class -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/controllers/AuthorController.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/controllers/AuthorController.class -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/controllers/PersonController.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/controllers/PersonController.class -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/models/Author$AuthorBuilder.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/models/Author$AuthorBuilder.class -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/models/Person$PersonBuilder.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/models/Person$PersonBuilder.class -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/repositories/AuthorRepository.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/repositories/AuthorRepository.class -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/repositories/PersonRepository.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/repositories/PersonRepository.class -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/requests/CreatePersonRequest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/requests/CreatePersonRequest.class -------------------------------------------------------------------------------- /L19-Spring-Security-User-Details/target/classes/com/example/demosecurity/MongoUserRepository.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L19-Spring-Security-User-Details/target/classes/com/example/demosecurity/MongoUserRepository.class -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/L23-24-MajorProject.txt: -------------------------------------------------------------------------------- 1 | Dependencies defined at parent(pom) level are automatically inherited by modules which are at child level. 2 | 3 | Topic name should depend on the functionality performed by the producer. -------------------------------------------------------------------------------- /L19-Spring-Security-User-Details/target/classes/com/example/demosecurity/MyUser$MyUserBuilder.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L19-Spring-Security-User-Details/target/classes/com/example/demosecurity/MyUser$MyUserBuilder.class -------------------------------------------------------------------------------- /L19-Spring-Security-User-Details/target/classes/com/example/demosecurity/MyUserDetailsService.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L19-Spring-Security-User-Details/target/classes/com/example/demosecurity/MyUserDetailsService.class -------------------------------------------------------------------------------- /L8-L9-MySQL/target/classes/org/example/request/CreatePersonRequest$CreatePersonRequestBuilder.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L8-L9-MySQL/target/classes/org/example/request/CreatePersonRequest$CreatePersonRequestBuilder.class -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/exceptions/PersonNotFoundException.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/exceptions/PersonNotFoundException.class -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/request/BookFilterTypeEnum.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.request; 2 | 3 | public enum BookFilterTypeEnum { 4 | NAME, 5 | AUTHOR_NAME, 6 | GENRE, 7 | BOOK_ID 8 | } 9 | -------------------------------------------------------------------------------- /L19-Spring-Security-User-Details/src/main/java/com/example/demosecurity/MongoUser.java: -------------------------------------------------------------------------------- 1 | package com.example.demosecurity; 2 | 3 | import org.springframework.data.mongodb.core.mapping.Document; 4 | 5 | @Document 6 | public class MongoUser { 7 | } 8 | -------------------------------------------------------------------------------- /L19-Spring-Security-User-Details/target/classes/com/example/demosecurity/DemoSecurityApplication.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L19-Spring-Security-User-Details/target/classes/com/example/demosecurity/DemoSecurityApplication.class -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/utils/src/main/java/com/example/L2324MajorProjectEWallet/enums/WalletUpdateStatusEnum.java: -------------------------------------------------------------------------------- 1 | package com.example.L2324MajorProjectEWallet.enums; 2 | 3 | public enum WalletUpdateStatusEnum { 4 | FAILED, 5 | SUCCESS 6 | } 7 | -------------------------------------------------------------------------------- /L1-Core-Java/src/Lecture1/FuncInterface.java: -------------------------------------------------------------------------------- 1 | package Lecture1; 2 | 3 | @FunctionalInterface 4 | public interface FuncInterface { 5 | int add(int a,int b); 6 | 7 | default int subtract(int a,int b){ 8 | return a-b; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /L1-Core-Java/src/Lecture1/MyMap.java: -------------------------------------------------------------------------------- 1 | package Lecture1; 2 | 3 | public interface MyMap { 4 | 5 | int add(int a,int b); 6 | 7 | int subtract(int a,int b); 8 | 9 | default int multiply(int a,int b){ 10 | return a*b; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaStreamsAndLambda/WithoutLambdaUsingFunctionalInterface$1MyPredicateEven.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/out/production/L0-Core-Java/JavaStreamsAndLambda/WithoutLambdaUsingFunctionalInterface$1MyPredicateEven.class -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/model/Genre.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.model; 2 | 3 | public enum Genre { 4 | FICTIONAL, 5 | NON_FICTIONAL, 6 | SCIENCE_AND_TECHNOLOGY, 7 | HISTORY, 8 | PSYCHOLOGY 9 | } 10 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/utils/src/main/java/com/example/L2324MajorProjectEWallet/enums/UserIdentifierEnum.java: -------------------------------------------------------------------------------- 1 | package com.example.L2324MajorProjectEWallet.enums; 2 | 3 | public enum UserIdentifierEnum { 4 | PAN, 5 | AADHAAR_CARD, 6 | SERVICE_ID 7 | } 8 | -------------------------------------------------------------------------------- /L8-L9-MySQL/src/main/java/org/example/utils/BadPersonRequestException.java: -------------------------------------------------------------------------------- 1 | package org.example.utils; 2 | 3 | public class BadPersonRequestException extends Exception{ 4 | 5 | public BadPersonRequestException(String msg){ 6 | super(msg); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/transaction-service/src/main/java/com/example/MajorProjectEWallet/enums/TransactionStatusEnum.java: -------------------------------------------------------------------------------- 1 | package com.example.MajorProjectEWallet.enums; 2 | 3 | public enum TransactionStatusEnum { 4 | PENDING, 5 | SUCCESSFUL, 6 | FAILED 7 | } 8 | -------------------------------------------------------------------------------- /L15-16-Redis/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.6/apache-maven-3.8.6-bin.zip 2 | wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar 3 | -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/requests/CreatePersonRequest$CreatePersonRequestBuilder.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sudzzz/JBDL/HEAD/L10-11-Spring-JPA-Hibernate/target/classes/com/example/demojpa/requests/CreatePersonRequest$CreatePersonRequestBuilder.class -------------------------------------------------------------------------------- /L11-MultipleDatasource/src/main/java/com/example/demomultipledb/PersonNotFoundException.java: -------------------------------------------------------------------------------- 1 | package com.example.demomultipledb; 2 | 3 | public class PersonNotFoundException extends Exception { 4 | 5 | public PersonNotFoundException(String msg){ 6 | super(msg); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/exception/BookNotFoundException.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.exception; 2 | 3 | public class BookNotFoundException extends Exception{ 4 | public BookNotFoundException(String message){ 5 | super(message); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/src/main/java/com/example/demojpa/exceptions/PersonNotFoundException.java: -------------------------------------------------------------------------------- 1 | package com.example.demojpa.exceptions; 2 | 3 | public class PersonNotFoundException extends Exception { 4 | 5 | public PersonNotFoundException(String msg){ 6 | super(msg); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /L11-MultipleDatasource/src/main/java/com/example/demomultipledb/authordb/AuthorRepository.java: -------------------------------------------------------------------------------- 1 | package com.example.demomultipledb.authordb; 2 | 3 | import org.springframework.data.jpa.repository.JpaRepository; 4 | 5 | public interface AuthorRepository extends JpaRepository { 6 | } 7 | -------------------------------------------------------------------------------- /L11-MultipleDatasource/src/main/java/com/example/demomultipledb/persondb/PersonRepository.java: -------------------------------------------------------------------------------- 1 | package com.example.demomultipledb.persondb; 2 | 3 | import org.springframework.data.jpa.repository.JpaRepository; 4 | 5 | public interface PersonRepository extends JpaRepository { 6 | } 7 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.6/apache-maven-3.8.6-bin.zip 2 | wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar 3 | -------------------------------------------------------------------------------- /L19-Spring-Security-User-Details/src/main/java/com/example/demosecurity/MongoUserRepository.java: -------------------------------------------------------------------------------- 1 | package com.example.demosecurity; 2 | 3 | import org.springframework.data.mongodb.repository.MongoRepository; 4 | 5 | public interface MongoUserRepository extends MongoRepository { 6 | } 7 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/exception/StudentNotFoundException.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.exception; 2 | 3 | public class StudentNotFoundException extends Exception{ 4 | 5 | public StudentNotFoundException(String message){ 6 | super(message); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/exception/TransactionServiceException.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.exception; 2 | 3 | public class TransactionServiceException extends Exception{ 4 | public TransactionServiceException(String message){ 5 | super(message); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/src/main/java/com/example/demojpa/repositories/AuthorRepository.java: -------------------------------------------------------------------------------- 1 | package com.example.demojpa.repositories; 2 | 3 | import com.example.demojpa.models.Author; 4 | import org.springframework.data.jpa.repository.JpaRepository; 5 | 6 | public interface AuthorRepository extends JpaRepository { 7 | } 8 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/repository/StudentRepository.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.repository; 2 | 3 | import com.example.minor1.model.Student; 4 | import org.springframework.data.jpa.repository.JpaRepository; 5 | 6 | public interface StudentRepository extends JpaRepository { 7 | } 8 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/wallet-service/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=8800 2 | spring.datasource.url=jdbc:mysql://localhost:3306/jbdl33_WalletDb?createDatabaseIfNotExist=true 3 | spring.datasource.username=root 4 | spring.datasource.password=password 5 | spring.jpa.hibernate.ddl-auto=update 6 | spring.jpa.show-sql=true -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/src/main/java/com/example/demojpa/repositories/PersonRepository.java: -------------------------------------------------------------------------------- 1 | package com.example.demojpa.repositories; 2 | 3 | import com.example.demojpa.models.Person; 4 | import org.springframework.data.jpa.repository.JpaRepository; 5 | 6 | public interface PersonRepository extends JpaRepository { 7 | } 8 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/notification-service/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=8000 2 | spring.datasource.url=jdbc:mysql://localhost:3306/jbdl33_NotificationDb?createDatabaseIfNotExist=true 3 | spring.datasource.username=root 4 | spring.datasource.password=password 5 | spring.jpa.hibernate.ddl-auto=create 6 | spring.jpa.show-sql=true -------------------------------------------------------------------------------- /L15-16-Redis/src/test/java/com/example/demoredis/DemoRedisApplicationTests.java: -------------------------------------------------------------------------------- 1 | package com.example.demoredis; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class DemoRedisApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /L17-Spring-Security/src/main/java/com/example/demosecurity/DemoController.java: -------------------------------------------------------------------------------- 1 | package com.example.demosecurity; 2 | import org.springframework.web.bind.annotation.*; 3 | 4 | @RestController 5 | public class DemoController { 6 | 7 | @GetMapping("/demo") 8 | public String greet(){ 9 | return "Hello World"; 10 | } 11 | 12 | } 13 | -------------------------------------------------------------------------------- /L2-Core-Java/src/Lecture2/Person.java: -------------------------------------------------------------------------------- 1 | package Lecture2; 2 | 3 | 4 | public class Person { 5 | 6 | private String name; 7 | private int age; 8 | 9 | public Person(String name, int age) { 10 | this.name = name; 11 | this.age = age; 12 | } 13 | 14 | public static void main(String[] args) { 15 | 16 | } 17 | } -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/src/test/java/com/example/demojpa/DemoJpaApplicationTests.java: -------------------------------------------------------------------------------- 1 | package com.example.demojpa; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class DemoJpaApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/test/java/com/example/minor1/MinorProject1And2Tests.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class MinorProject1And2Tests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /L19-Spring-Security-User-Details/target/classes/application.properties: -------------------------------------------------------------------------------- 1 | logging.level.org.springframework=debug 2 | 3 | spring.datasource.url=jdbc:mysql://localhost:3306/jbdl33_SpringSecurity?createDatabaseIfNotExist=true 4 | spring.datasource.username=root 5 | spring.datasource.password=password 6 | spring.jpa.hibernate.ddl-auto=create 7 | spring.jpa.show-sql=true -------------------------------------------------------------------------------- /L19-Spring-Security-User-Details/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | logging.level.org.springframework=debug 2 | 3 | spring.datasource.url=jdbc:mysql://localhost:3306/jbdl33_SpringSecurity?createDatabaseIfNotExist=true 4 | spring.datasource.username=root 5 | spring.datasource.password=password 6 | spring.jpa.hibernate.ddl-auto=create 7 | spring.jpa.show-sql=true -------------------------------------------------------------------------------- /L17-Spring-Security/src/test/java/com/example/demosecurity/DemoSecurityApplicationTests.java: -------------------------------------------------------------------------------- 1 | package com.example.demosecurity; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class DemoSecurityApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/transaction-service/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=8080 2 | spring.logging.level=debug 3 | spring.datasource.url=jdbc:mysql://localhost:3306/jbdl33_TransactionDb?createDatabaseIfNotExist=true 4 | spring.datasource.username=root 5 | spring.datasource.password=password 6 | spring.jpa.hibernate.ddl-auto=create 7 | spring.jpa.show-sql=true -------------------------------------------------------------------------------- /L11-MultipleDatasource/src/test/java/com/example/demomultipledb/DemoMultipleDbApplicationTests.java: -------------------------------------------------------------------------------- 1 | package com.example.demomultipledb; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class DemoMultipleDbApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/repository/MyUserRepository.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.repository; 2 | 3 | import com.example.minor1.model.MyUser; 4 | import org.springframework.data.jpa.repository.JpaRepository; 5 | 6 | public interface MyUserRepository extends JpaRepository { 7 | MyUser findByUsername(String username); 8 | } 9 | -------------------------------------------------------------------------------- /L18-Spring-Security-In-Memory/src/test/java/com/example/demosecurity/DemoSecurityApplicationTests.java: -------------------------------------------------------------------------------- 1 | package com.example.demosecurity; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class DemoSecurityApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /L19-Spring-Security-User-Details/src/test/java/com/example/demosecurity/DemoSecurityApplicationTests.java: -------------------------------------------------------------------------------- 1 | package com.example.demosecurity; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class DemoSecurityApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaBasics/Main.java: -------------------------------------------------------------------------------- 1 | package JavaBasics; 2 | 3 | public class Main { 4 | public static void main(String[] args) { 5 | Main.InnerClass innerClass = new InnerClass(); 6 | innerClass.func(10); 7 | } 8 | 9 | private static class InnerClass{ 10 | public void func(int a){ 11 | System.out.println("a = "+ a); 12 | } 13 | } 14 | } -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaBasics/HelloWorld.java: -------------------------------------------------------------------------------- 1 | package JavaBasics; 2 | 3 | public class HelloWorld { 4 | public static void main(String[] args){ 5 | // string[] args --> We can specify some special parameters to this application while running this through command line. 6 | // args is name of array, we can write any name here. 7 | System.out.println("Hello World!"); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/target/classes/application.properties: -------------------------------------------------------------------------------- 1 | 2 | spring.datasource.url=jdbc:mysql://localhost:3306/jbdl33_jpa?createDatabaseIfNotExist=true 3 | spring.datasource.username=root 4 | spring.datasource.password=password 5 | spring.jpa.hibernate.ddl-auto=create 6 | 7 | 8 | 9 | spring.jpa.show-sql=true 10 | 11 | # hibernate's dialect - resolved 12 | 13 | # how to behave on application run -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/repository/AdminRepository.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.repository; 2 | 3 | import com.example.minor1.model.Admin; 4 | import org.springframework.data.jpa.repository.JpaRepository; 5 | import org.springframework.stereotype.Repository; 6 | 7 | @Repository 8 | public interface AdminRepository extends JpaRepository { 9 | } 10 | -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | 2 | spring.datasource.url=jdbc:mysql://localhost:3306/jbdl33_jpa?createDatabaseIfNotExist=true 3 | spring.datasource.username=root 4 | spring.datasource.password=password 5 | spring.jpa.hibernate.ddl-auto=create 6 | 7 | 8 | 9 | spring.jpa.show-sql=true 10 | 11 | # hibernate's dialect - resolved 12 | 13 | # how to behave on application run -------------------------------------------------------------------------------- /L15-16-Redis/src/main/java/com/example/demoredis/Person.java: -------------------------------------------------------------------------------- 1 | package com.example.demoredis; 2 | 3 | import lombok.*; 4 | 5 | import java.io.Serializable; 6 | 7 | @Getter 8 | @Setter 9 | @NoArgsConstructor 10 | @AllArgsConstructor 11 | @Builder 12 | public class Person implements Serializable { 13 | private long id; 14 | private String name; 15 | private int age; 16 | private double creditScore; 17 | } 18 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/src/test/java/com/example/L2324MajorProjectEwallet/L2324MajorProjectEwalletApplicationTests.java: -------------------------------------------------------------------------------- 1 | package com.example.L2324MajorProjectEWallet; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class L2324MajorProjectEwalletApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/user-service/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=9000 2 | spring.datasource.url=jdbc:mysql://localhost:3306/jbdl33_UserDb?createDatabaseIfNotExist=true 3 | spring.datasource.username=root 4 | spring.datasource.password=password 5 | spring.jpa.hibernate.ddl-auto=update 6 | spring.jpa.show-sql=true 7 | 8 | users.user.authority=usr 9 | users.admin.authority=adm 10 | users.service.authority=srv -------------------------------------------------------------------------------- /L19-Spring-Security-User-Details/src/main/java/com/example/demosecurity/MyUserRepository.java: -------------------------------------------------------------------------------- 1 | package com.example.demosecurity; 2 | 3 | import org.springframework.data.jpa.repository.JpaRepository; 4 | import org.springframework.security.core.userdetails.UserDetails; 5 | 6 | import java.util.List; 7 | 8 | public interface MyUserRepository extends JpaRepository { 9 | 10 | MyUser findByEmail(String u); 11 | } 12 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=9000 2 | 3 | spring.datasource.url=jdbc:mysql://localhost:3306/jbdl33_library?createDatabaseIfNotExist=true 4 | spring.datasource.username=root 5 | spring.datasource.password=password 6 | spring.jpa.hibernate.ddl-auto=update 7 | spring.jpa.hibernate.show-sql=true 8 | 9 | book.return.due_date=14 10 | 11 | users.student.authority=std 12 | users.admin.authority=adm -------------------------------------------------------------------------------- /L15-16-Redis/src/main/java/com/example/demoredis/DemoRedisApplication.java: -------------------------------------------------------------------------------- 1 | package com.example.demoredis; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class DemoRedisApplication { 8 | 9 | public static void main(String[] args) { 10 | SpringApplication.run(DemoRedisApplication.class, args); 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/src/main/java/com/example/demojpa/DemoJpaApplication.java: -------------------------------------------------------------------------------- 1 | package com.example.demojpa; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class DemoJpaApplication { 8 | 9 | public static void main(String[] args) { 10 | SpringApplication.run(DemoJpaApplication.class, args); 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /L8-L9-MySQL/src/main/java/org/example/repository/PersonRepository.java: -------------------------------------------------------------------------------- 1 | package org.example.repository; 2 | 3 | import org.example.model.Person; 4 | 5 | import java.sql.SQLException; 6 | import java.util.List; 7 | 8 | public interface PersonRepository { 9 | 10 | Person createPerson(Person person); 11 | 12 | Person getPersonById(int id); 13 | 14 | List getAllPersons(); 15 | 16 | boolean deletePersonById(int id); 17 | } 18 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/service/StudentService.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.service; 2 | 3 | import com.example.minor1.exception.StudentNotFoundException; 4 | import com.example.minor1.model.Student; 5 | import com.example.minor1.request.StudentCreateRequest; 6 | 7 | public interface StudentService { 8 | Student create(StudentCreateRequest studentCreateRequest); 9 | Student findStudentById(int studentId); 10 | } 11 | -------------------------------------------------------------------------------- /L17-Spring-Security/src/main/java/com/example/demosecurity/DemoSecurityApplication.java: -------------------------------------------------------------------------------- 1 | package com.example.demosecurity; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class DemoSecurityApplication { 8 | 9 | public static void main(String[] args) { 10 | SpringApplication.run(DemoSecurityApplication.class, args); 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /JBDL-33.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /L18-Spring-Security-In-Memory/src/main/java/com/example/demosecurity/DemoSecurityApplication.java: -------------------------------------------------------------------------------- 1 | package com.example.demosecurity; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class DemoSecurityApplication { 8 | 9 | public static void main(String[] args) { 10 | SpringApplication.run(DemoSecurityApplication.class, args); 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaBasics/CommandLineArguments.java: -------------------------------------------------------------------------------- 1 | package JavaBasics; 2 | 3 | public class CommandLineArguments { 4 | public static void main(String []args){ 5 | if(args.length > 0){ 6 | System.out.println("Arguments are "); 7 | for(String str : args){ 8 | System.out.print(str + " "); 9 | } 10 | } 11 | else { 12 | System.out.println("No Arguments"); 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /L11-MultipleDatasource/src/main/java/com/example/demomultipledb/DemoMultipleDbApplication.java: -------------------------------------------------------------------------------- 1 | package com.example.demomultipledb; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class DemoMultipleDbApplication { 8 | 9 | public static void main(String[] args) { 10 | SpringApplication.run(DemoMultipleDbApplication.class, args); 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /L8-L9-MySQL/src/main/java/org/example/model/Person.java: -------------------------------------------------------------------------------- 1 | package org.example.model; 2 | 3 | import lombok.*; 4 | 5 | @Getter 6 | @Setter 7 | @AllArgsConstructor 8 | @NoArgsConstructor 9 | @ToString 10 | @Builder 11 | public class Person { 12 | 13 | private Integer id; // automatically generated by the server | FE need not send this. 14 | private String firstName; 15 | private String lastName; 16 | private Integer age; 17 | private String dob; 18 | 19 | } 20 | -------------------------------------------------------------------------------- /L0-Core-Java/L0-Core-Java.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /L1-Core-Java/L1-Core-Java.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /L2-Core-Java/L2-Core-Java.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /L3-Core-Java/L3-Core-Java.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaBasics/EvenOdd.java: -------------------------------------------------------------------------------- 1 | package JavaBasics; 2 | 3 | import java.util.Scanner; 4 | 5 | public class EvenOdd { 6 | public static void main(String []args){ 7 | Scanner sc = new Scanner(System.in); 8 | System.out.println("Enter a number"); 9 | int num = sc.nextInt(); 10 | if(num%2 == 0){ 11 | System.out.println("Even number"); 12 | } 13 | else 14 | System.out.println("Odd number"); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/wallet-service/src/main/java/com/example/L2324MajorProjectEWallet/WalletApplication.java: -------------------------------------------------------------------------------- 1 | package com.example.L2324MajorProjectEWallet; 2 | import org.springframework.boot.SpringApplication; 3 | import org.springframework.boot.autoconfigure.SpringBootApplication; 4 | 5 | @SpringBootApplication 6 | public class WalletApplication { 7 | 8 | public static void main(String[] args) { 9 | SpringApplication.run(WalletApplication.class, args); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/transaction-service/src/main/java/com/example/MajorProjectEWallet/TransactionApplication.java: -------------------------------------------------------------------------------- 1 | package com.example.MajorProjectEWallet; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class TransactionApplication { 8 | 9 | public static void main(String[] args) { 10 | SpringApplication.run(TransactionApplication.class, args); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /L1-Core-Java/src/Lecture1/MyHashMap.java: -------------------------------------------------------------------------------- 1 | package Lecture1; 2 | 3 | import java.util.Map; 4 | 5 | public class MyHashMap implements MyMap{ 6 | @Override 7 | public int add(int a, int b) { 8 | return a+b; 9 | } 10 | 11 | @Override 12 | public int subtract(int a, int b) { 13 | return a-b; 14 | } 15 | 16 | public int divide(int a,int b){ 17 | return a/b; 18 | } 19 | 20 | public double power(int a,int b){ 21 | return Math.pow(a,b); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/src/main/java/com/example/demojpa/models/Author.java: -------------------------------------------------------------------------------- 1 | package com.example.demojpa.models; 2 | 3 | import lombok.*; 4 | 5 | import javax.persistence.*; 6 | 7 | @Entity 8 | @Getter 9 | @Setter 10 | @NoArgsConstructor 11 | @AllArgsConstructor 12 | @Builder 13 | public class Author { 14 | 15 | @Id 16 | @GeneratedValue(strategy = GenerationType.IDENTITY) 17 | private int id; 18 | 19 | @Column(unique = true) 20 | private String name; 21 | 22 | private int age; 23 | } 24 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/notification-service/src/main/java/com/example/L2324MajorProectEWallet/NotificationApplication.java: -------------------------------------------------------------------------------- 1 | package com.example.L2324MajorProectEWallet; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class NotificationApplication { 8 | 9 | public static void main(String[] args) { 10 | SpringApplication.run(NotificationApplication.class, args); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/user-service/src/main/java/com/example/L2324MajorProjectEWallet/repository/UserRepository.java: -------------------------------------------------------------------------------- 1 | package com.example.L2324MajorProjectEWallet.repository; 2 | 3 | import com.example.L2324MajorProjectEWallet.model.User; 4 | import org.springframework.data.jpa.repository.JpaRepository; 5 | import java.util.*; 6 | public interface UserRepository extends JpaRepository { 7 | User findByPhoneNumber(String phoneNumber); 8 | 9 | List findByAuthorities(String authority); 10 | } 11 | -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaOOPs/Encapsulation.java: -------------------------------------------------------------------------------- 1 | package JavaOOPs; 2 | 3 | class Student{ 4 | String name; 5 | private float CGPA; 6 | 7 | public float getCGPA(){ 8 | return this.CGPA; 9 | } 10 | 11 | public void setCGPA(float CGPA){ 12 | this.CGPA = CGPA; 13 | } 14 | } 15 | public class Encapsulation { 16 | public static void main(String []args){ 17 | Student s1 = new Student(); 18 | s1.setCGPA(9.7f); 19 | 20 | System.out.println(s1.getCGPA()); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/request/UserCreateRequest.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.request; 2 | 3 | import com.example.minor1.model.Admin; 4 | import com.example.minor1.model.Student; 5 | import lombok.*; 6 | 7 | @Getter 8 | @Setter 9 | @NoArgsConstructor 10 | @AllArgsConstructor 11 | @Builder 12 | public class UserCreateRequest { 13 | private String username; 14 | private String password; 15 | private String authority; 16 | private Student student; 17 | private Admin admin; 18 | } 19 | -------------------------------------------------------------------------------- /L8-L9-MySQL/src/main/java/org/example/service/PersonService.java: -------------------------------------------------------------------------------- 1 | package org.example.service; 2 | 3 | import org.example.model.Person; 4 | import org.example.request.CreatePersonRequest; 5 | import org.example.utils.BadPersonRequestException; 6 | 7 | import java.util.List; 8 | 9 | public interface PersonService { 10 | Person createPerson(CreatePersonRequest createPersonRequest); 11 | Person getPersonById(int id); 12 | List getAllPersons(); 13 | Person deletePersonById(int id) throws BadPersonRequestException; 14 | } 15 | -------------------------------------------------------------------------------- /L1-Core-Java/src/Lecture1/PrivateClassInMainClass.java: -------------------------------------------------------------------------------- 1 | package Lecture1; 2 | 3 | public class PrivateClassInMainClass { 4 | public static void main(String[] args) { 5 | 6 | System.out.println("Hello world!"); 7 | PrivateClassInMainClass.InnerClass innerClass = new InnerClass(); 8 | innerClass.func(10); 9 | } 10 | 11 | private static class InnerClass{ 12 | private int a; 13 | 14 | private void func(int a){ 15 | this.a = a; 16 | System.out.println("a = "+a); 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /L15-16-Redis/.gitignore: -------------------------------------------------------------------------------- 1 | HELP.md 2 | target/ 3 | !.mvn/wrapper/maven-wrapper.jar 4 | !**/src/main/**/target/ 5 | !**/src/test/**/target/ 6 | 7 | ### STS ### 8 | .apt_generated 9 | .classpath 10 | .factorypath 11 | .project 12 | .settings 13 | .springBeans 14 | .sts4-cache 15 | 16 | ### IntelliJ IDEA ### 17 | .idea 18 | *.iws 19 | *.iml 20 | *.ipr 21 | 22 | ### NetBeans ### 23 | /nbproject/private/ 24 | /nbbuild/ 25 | /dist/ 26 | /nbdist/ 27 | /.nb-gradle/ 28 | build/ 29 | !**/src/main/**/build/ 30 | !**/src/test/**/build/ 31 | 32 | ### VS Code ### 33 | .vscode/ 34 | -------------------------------------------------------------------------------- /L17-Spring-Security/.gitignore: -------------------------------------------------------------------------------- 1 | HELP.md 2 | target/ 3 | !.mvn/wrapper/maven-wrapper.jar 4 | !**/src/main/**/target/ 5 | !**/src/test/**/target/ 6 | 7 | ### STS ### 8 | .apt_generated 9 | .classpath 10 | .factorypath 11 | .project 12 | .settings 13 | .springBeans 14 | .sts4-cache 15 | 16 | ### IntelliJ IDEA ### 17 | .idea 18 | *.iws 19 | *.iml 20 | *.ipr 21 | 22 | ### NetBeans ### 23 | /nbproject/private/ 24 | /nbbuild/ 25 | /dist/ 26 | /nbdist/ 27 | /.nb-gradle/ 28 | build/ 29 | !**/src/main/**/build/ 30 | !**/src/test/**/build/ 31 | 32 | ### VS Code ### 33 | .vscode/ 34 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/.gitignore: -------------------------------------------------------------------------------- 1 | HELP.md 2 | target/ 3 | !.mvn/wrapper/maven-wrapper.jar 4 | !**/src/main/**/target/ 5 | !**/src/test/**/target/ 6 | 7 | ### STS ### 8 | .apt_generated 9 | .classpath 10 | .factorypath 11 | .project 12 | .settings 13 | .springBeans 14 | .sts4-cache 15 | 16 | ### IntelliJ IDEA ### 17 | .idea 18 | *.iws 19 | *.iml 20 | *.ipr 21 | 22 | ### NetBeans ### 23 | /nbproject/private/ 24 | /nbbuild/ 25 | /dist/ 26 | /nbdist/ 27 | /.nb-gradle/ 28 | build/ 29 | !**/src/main/**/build/ 30 | !**/src/test/**/build/ 31 | 32 | ### VS Code ### 33 | .vscode/ 34 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/.gitignore: -------------------------------------------------------------------------------- 1 | HELP.md 2 | target/ 3 | !.mvn/wrapper/maven-wrapper.jar 4 | !**/src/main/**/target/ 5 | !**/src/test/**/target/ 6 | 7 | ### STS ### 8 | .apt_generated 9 | .classpath 10 | .factorypath 11 | .project 12 | .settings 13 | .springBeans 14 | .sts4-cache 15 | 16 | ### IntelliJ IDEA ### 17 | .idea 18 | *.iws 19 | *.iml 20 | *.ipr 21 | 22 | ### NetBeans ### 23 | /nbproject/private/ 24 | /nbbuild/ 25 | /dist/ 26 | /nbdist/ 27 | /.nb-gradle/ 28 | build/ 29 | !**/src/main/**/build/ 30 | !**/src/test/**/build/ 31 | 32 | ### VS Code ### 33 | .vscode/ 34 | -------------------------------------------------------------------------------- /L3-Core-Java/src/Lecture3/L3.txt: -------------------------------------------------------------------------------- 1 | Command to get name of Current Thread is --> Thread.currentThread().getName(). currentThread() is a native function. 2 | There are 2 ways of creating a thread:- 3 | 1. By using Thread Class 4 | 2. By using Runnable Interface 5 | 6 | In Thread class, there are two functions:- 7 | 1. start -> It is used to create a new thread at core. It internally calls start0() function which is a native call, which creates 8 | a new thread. After a thread is created, run() function is called. 9 | 2. run 10 | 11 | MapToObj is used to covert IntStream --> Stream -------------------------------------------------------------------------------- /L4-Maven/src/main/java/org/example/Main.java: -------------------------------------------------------------------------------- 1 | package org.example; 2 | 3 | import java.sql.DriverManager; 4 | import java.sql.Connection; 5 | import java.sql.SQLException; 6 | import java.sql.Statement; 7 | 8 | public class Main { 9 | public static void main(String[] args) throws SQLException { 10 | 11 | Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/jbdl","root","password"); 12 | 13 | Statement statement = connection.createStatement(); 14 | statement.execute("create table jbdl_33(id int, name varchar(30))"); 15 | 16 | } 17 | } -------------------------------------------------------------------------------- /out/production/L3-Core-Java/Lecture3/L3.txt: -------------------------------------------------------------------------------- 1 | Command to get name of Current Thread is --> Thread.currentThread().getName(). currentThread() is a native function. 2 | There are 2 ways of creating a thread:- 3 | 1. By using Thread Class 4 | 2. By using Runnable Interface 5 | 6 | In Thread class, there are two functions:- 7 | 1. start -> It is used to create a new thread at core. It internally calls start0() function which is a native call, which creates 8 | a new thread. After a thread is created, run() function is called. 9 | 2. run 10 | 11 | MapToObj is used to covert IntStream --> Stream -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/src/main/java/com/example/demojpa/services/AuthorService.java: -------------------------------------------------------------------------------- 1 | package com.example.demojpa.services; 2 | 3 | import com.example.demojpa.models.Author; 4 | import com.example.demojpa.repositories.AuthorRepository; 5 | import org.springframework.beans.factory.annotation.Autowired; 6 | import org.springframework.stereotype.Service; 7 | 8 | @Service 9 | public class AuthorService { 10 | 11 | @Autowired 12 | AuthorRepository authorRepository; 13 | public Author createAuthor(Author author){ 14 | return authorRepository.save(author); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/notification-service/src/main/java/com/example/L2324MajorProectEWallet/service/NotificationService.java: -------------------------------------------------------------------------------- 1 | package com.example.L2324MajorProectEWallet.service; 2 | 3 | import com.example.L2324MajorProjectEWallet.constants.CommonConstants; 4 | import org.json.simple.parser.ParseException; 5 | import org.springframework.kafka.annotation.KafkaListener; 6 | 7 | public interface NotificationService { 8 | 9 | @KafkaListener(topics = {CommonConstants.TRANSACTION_COMPLETED_TOPIC}, groupId = "group123") 10 | void sendNotification(String msg) throws ParseException; 11 | } 12 | -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaBasics/This_Chaining_Constructor.java: -------------------------------------------------------------------------------- 1 | package JavaBasics; 2 | 3 | class Point1{ 4 | int x; 5 | int y; 6 | Point1(int x,int y){ 7 | this.x = x; 8 | this.y = y; 9 | } 10 | 11 | Point1(){ 12 | this(10,10); 13 | } 14 | void print(){ 15 | System.out.println(x+" "+y); 16 | } 17 | } 18 | public class This_Chaining_Constructor { 19 | public static void main(String []args){ 20 | Point1 p1 = new Point1(10,20); 21 | Point1 p2 = new Point1(); 22 | p1.print(); 23 | p2.print(); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaBasics/MultithreadingUsingThreadClass.java: -------------------------------------------------------------------------------- 1 | package JavaBasics; 2 | 3 | class Test extends Thread{ 4 | public void run(){ 5 | for(int i=0;i<10;i++) 6 | System.out.println("Inside Test Thread"); 7 | } 8 | } 9 | public class MultithreadingUsingThreadClass { 10 | public static void main(String []args) throws InterruptedException { 11 | Test t = new Test(); 12 | t.start(); 13 | for(int i=0;i<10;i++){ 14 | System.out.println("Inside Main Thread"); 15 | Thread.sleep(1); 16 | } 17 | 18 | } 19 | 20 | } 21 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/utils/pom.xml: -------------------------------------------------------------------------------- 1 | 3 | 4.0.0 4 | 5 | com.example 6 | L23-24-MajorProject-Ewallet 7 | 0.0.1-SNAPSHOT 8 | 9 | utils 10 | Archetype - utils 11 | http://maven.apache.org 12 | 13 | -------------------------------------------------------------------------------- /L3-Core-Java/src/Lecture3/MyThread.java: -------------------------------------------------------------------------------- 1 | package Lecture3; 2 | 3 | public class MyThread extends Thread{ 4 | @Override 5 | public void run(){ 6 | System.out.println("Inside run function, thread: " + Thread.currentThread()); // 1ms 7 | 8 | int a = 1/0; 9 | 10 | int sum = 0; 11 | for(int i = 0; i < 10; i++){ 12 | sum += i; 13 | } // 3ms 14 | 15 | try { 16 | Thread.sleep(5000); 17 | } catch (InterruptedException e) { 18 | e.printStackTrace(); 19 | } 20 | 21 | System.out.println("Sum = " + sum); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /L3-Core-Java/src/Lecture3/ThreadUsingRunnable.java: -------------------------------------------------------------------------------- 1 | package Lecture3; 2 | 3 | public class ThreadUsingRunnable implements Runnable { 4 | 5 | public static void main(String[] args) { 6 | 7 | System.out.println("Inside main function, thread = " + Thread.currentThread()); 8 | ThreadUsingRunnable threadUsingRunnable = new ThreadUsingRunnable(); 9 | 10 | Thread thread = new Thread(threadUsingRunnable); 11 | thread.start(); 12 | } 13 | 14 | @Override 15 | public void run() { 16 | System.out.println("Inside run function of thread - " + Thread.currentThread()); 17 | } 18 | } -------------------------------------------------------------------------------- /L11-MultipleDatasource/src/main/java/com/example/demomultipledb/L11.txt: -------------------------------------------------------------------------------- 1 | @EnableJpaRepositories --> Tells where we will run sql queries. Here it tells hibernate which packages to scan and perform db 2 | operations on. 3 | 4 | Basically to have multiple database connection in one project, we need to configure three things:- 5 | 1. Datasource 6 | 2. EntityManager 7 | 3. TransactionManager 8 | 9 | When we have multiple data sources, we need to map EntityManager for every data source. If in a project, there is only one db, then 10 | default implementation of data source, takes care of EntityManager. 11 | 12 | -------------------------------------------------------------------------------- /L7-Rest-Apis/src/main/java/org/example/RestApisApplication.java: -------------------------------------------------------------------------------- 1 | package org.example; 2 | 3 | import org.slf4j.Logger; 4 | import org.slf4j.LoggerFactory; 5 | import org.springframework.boot.SpringApplication; 6 | import org.springframework.boot.autoconfigure.SpringBootApplication; 7 | 8 | @SpringBootApplication 9 | public class RestApisApplication { 10 | 11 | private static final Logger logger = LoggerFactory.getLogger(RestApisApplication.class); 12 | public static void main(String[] args) { 13 | 14 | SpringApplication.run(RestApisApplication.class,args); 15 | logger.info("My application has started"); 16 | } 17 | } -------------------------------------------------------------------------------- /L8-L9-MySQL/src/main/java/org/example/DemoMySQLApplication.java: -------------------------------------------------------------------------------- 1 | package org.example; 2 | 3 | import org.slf4j.Logger; 4 | import org.slf4j.LoggerFactory; 5 | import org.springframework.boot.SpringApplication; 6 | import org.springframework.boot.autoconfigure.SpringBootApplication; 7 | 8 | @SpringBootApplication 9 | public class DemoMySQLApplication { 10 | private static final Logger logger = LoggerFactory.getLogger(DemoMySQLApplication.class); 11 | public static void main(String[] args) { 12 | 13 | SpringApplication.run(DemoMySQLApplication.class,args); 14 | logger.info("My application has started"); 15 | } 16 | } -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/repository/TransactionRepository.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.repository; 2 | 3 | import com.example.minor1.model.Book; 4 | import com.example.minor1.model.Student; 5 | import com.example.minor1.model.Transaction; 6 | import com.example.minor1.model.TransactionType; 7 | import org.springframework.data.jpa.repository.JpaRepository; 8 | 9 | public interface TransactionRepository extends JpaRepository{ 10 | Transaction findTopByBookAndStudentAndTransactionTypeOrderByIdDesc( 11 | Book book, Student student, TransactionType transactionType); 12 | } 13 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/service/BookService.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.service; 2 | 3 | import com.example.minor1.exception.BookNotFoundException; 4 | import com.example.minor1.model.Book; 5 | import com.example.minor1.request.BookCreateRequest; 6 | import com.example.minor1.request.BookFilterTypeEnum; 7 | 8 | import java.util.List; 9 | 10 | public interface BookService { 11 | Book createOrUpdate(BookCreateRequest bookCreateRequest); 12 | List findBookByFilter(BookFilterTypeEnum bookFilterTypeEnum,String value) throws BookNotFoundException; 13 | Book createOrUpdate(Book book); 14 | } 15 | -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaBasics/SumOfNumbers.java: -------------------------------------------------------------------------------- 1 | package JavaBasics; 2 | 3 | import java.util.Scanner; 4 | 5 | import static java.lang.System.exit; 6 | 7 | public class SumOfNumbers { 8 | public static void main(String []args){ 9 | Scanner sc = new Scanner(System.in); 10 | System.out.println("Enter a number"); 11 | int num = sc.nextInt(); 12 | if(num < 0){ 13 | System.out.println("Invalid number"); 14 | exit(0); 15 | } 16 | else { 17 | int sum = (num*(num+1))/2; 18 | System.out.println("Sum of n natural numbers is "+sum); 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /L5-L6-Spring-Boot/src/main/java/org/example/DemoSpringApplication.java: -------------------------------------------------------------------------------- 1 | package org.example; 2 | 3 | import org.slf4j.Logger; 4 | import org.slf4j.LoggerFactory; 5 | import org.springframework.boot.SpringApplication; 6 | import org.springframework.boot.autoconfigure.SpringBootApplication; 7 | 8 | @SpringBootApplication 9 | public class DemoSpringApplication { 10 | 11 | private static final Logger logger = LoggerFactory.getLogger(DemoSpringApplication.class); 12 | public static void main(String[] args) { 13 | 14 | SpringApplication.run(DemoSpringApplication.class,args); 15 | logger.info("My application has started"); 16 | } 17 | } -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaBasics/MultithreadingImplementingRunnable.java: -------------------------------------------------------------------------------- 1 | package JavaBasics; 2 | 3 | class Test1 implements Runnable{ 4 | @Override 5 | public void run() { 6 | for(int i=0;i<10;i++) 7 | System.out.println("Inside Test Thread"); 8 | } 9 | } 10 | 11 | public class MultithreadingImplementingRunnable { 12 | public static void main(String []args) throws InterruptedException { 13 | Thread t = new Thread(new Test1()); 14 | t.start(); 15 | for(int i=0;i<10;i++){ 16 | System.out.println("Inside Main Thread"); 17 | Thread.sleep(1); 18 | } 19 | 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaBasics/TypeConversion.java: -------------------------------------------------------------------------------- 1 | package JavaBasics; 2 | 3 | public class TypeConversion { 4 | public static void main(String []args){ 5 | TypeConversion typeConversion = new TypeConversion(); 6 | typeConversion.implicit(); 7 | typeConversion.explicit(); 8 | } 9 | public void implicit(){ 10 | int x = 100; 11 | long y = x; 12 | float z = y; 13 | System.out.println(x+" "+y+" "+z); 14 | } 15 | public void explicit(){ 16 | double d = 65.4; 17 | int i = (int) d; 18 | char c = (char) i; 19 | System.out.println(d+" "+i+" "+c); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/service/TransactionService.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.service; 2 | 3 | import com.example.minor1.exception.BookNotFoundException; 4 | import com.example.minor1.exception.StudentNotFoundException; 5 | import com.example.minor1.exception.TransactionServiceException; 6 | 7 | public interface TransactionService { 8 | String issueTxn(int studentId,int bookId) throws StudentNotFoundException, BookNotFoundException, TransactionServiceException; 9 | 10 | String returnTxn(int studentId,int bookId) throws StudentNotFoundException, BookNotFoundException, TransactionServiceException; 11 | } 12 | -------------------------------------------------------------------------------- /L4-Maven-Calculator/src/main/java/org/example/Main.java: -------------------------------------------------------------------------------- 1 | package org.example; 2 | 3 | import java.util.Scanner; 4 | 5 | public class Main { 6 | public static void main(String[] args) { 7 | 8 | Scanner sc = new Scanner(System.in); 9 | int a = sc.nextInt(); 10 | int b = sc.nextInt(); 11 | System.out.println("Addition of a and b " + MathOperations.add(a, b)); 12 | 13 | System.out.println("Division of a and b " + MathOperations.divide(a, b)); 14 | System.out.println("Power of a and b" + MathOperations.power(a, b)); 15 | 16 | 17 | System.out.println("concatenate a " + MathOperations.concatenate(a)); 18 | } 19 | } -------------------------------------------------------------------------------- /L11-MultipleDatasource/src/main/java/com/example/demomultipledb/authordb/Author.java: -------------------------------------------------------------------------------- 1 | package com.example.demomultipledb.authordb; 2 | 3 | import lombok.*; 4 | 5 | import javax.persistence.*; 6 | 7 | @Entity 8 | @Getter 9 | @Setter 10 | @AllArgsConstructor 11 | @NoArgsConstructor 12 | @Builder 13 | public class Author { 14 | 15 | @Id 16 | @GeneratedValue(strategy = GenerationType.IDENTITY) 17 | private int id; 18 | 19 | @Column(unique = true) 20 | private String name; 21 | 22 | private int age; 23 | 24 | private String country; 25 | } 26 | 27 | // flyway, liquibase 28 | 29 | // alter table add column 30 | // alter table add constraint ON name (unique) -------------------------------------------------------------------------------- /L8-L9-MySQL/src/main/java/org/example/DBConfig.java: -------------------------------------------------------------------------------- 1 | package org.example; 2 | 3 | import org.springframework.context.annotation.Bean; 4 | import org.springframework.context.annotation.Configuration; 5 | 6 | import java.sql.Connection; 7 | import java.sql.DriverManager; 8 | import java.sql.SQLException; 9 | 10 | @Configuration 11 | public class DBConfig { 12 | 13 | @Bean 14 | public Connection getConnection(){ 15 | try { 16 | return DriverManager.getConnection("jdbc:mysql://localhost:3306/jbdl","root","password"); 17 | } catch (SQLException e) { 18 | e.printStackTrace(); 19 | } 20 | return null; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/repository/BookRepository.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.repository; 2 | 3 | import com.example.minor1.model.Book; 4 | import com.example.minor1.model.Genre; 5 | import org.springframework.data.jpa.repository.JpaRepository; 6 | 7 | import java.util.List; 8 | 9 | public interface BookRepository extends JpaRepository{ 10 | //select * from book where name = ?1 11 | List findByName(String name); 12 | //select * from book,author where author.name = ?1 and author.id = book.author_id; 13 | List findByAuthor_Name(String author_name); 14 | List findByGenre(Genre genre); 15 | } 16 | -------------------------------------------------------------------------------- /L4-Maven/src/main/java/org/example/MathOperations.java: -------------------------------------------------------------------------------- 1 | package org.example; 2 | 3 | public class MathOperations { 4 | 5 | public static int add(int a, int b){ 6 | return a + b; 7 | } 8 | 9 | public static int subtract(int a, int b){ 10 | return a - b; 11 | } 12 | 13 | public static int multiply(int a, int b){ 14 | return a * b; 15 | } 16 | 17 | public static int divide(int a, int b){ 18 | return a / b; 19 | } 20 | 21 | public static int power(int a, int b){ 22 | return (int)Math.pow(a, b); 23 | } 24 | 25 | public static String concatenate(int a){ 26 | return "" + a + a; 27 | } 28 | 29 | } -------------------------------------------------------------------------------- /L11-MultipleDatasource/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | 2 | spring.authords.jdbc-url=jdbc:mysql://localhost:3306/authordb_33?createDatabaseIfNotExist=true 3 | spring.authords.username=root 4 | spring.authords.password= 5 | spring.authords.driverClassName = com.mysql.cj.jdbc.Driver 6 | 7 | spring.personds.jdbc-url=jdbc:mysql://localhost:3306/persondb_33?createDatabaseIfNotExist=true 8 | spring.personds.username=root 9 | spring.personds.password= 10 | spring.personds.driverClassName = com.mysql.cj.jdbc.Driver 11 | personds.hibernate.ddl-auto=create 12 | authords.hibernate.ddl-auto=update 13 | 14 | 15 | #spring.jpa.hibernate.ddl-auto=update 16 | 17 | 18 | #spring.jpa.show-sql=true 19 | -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaBasics/JavaOutput.java: -------------------------------------------------------------------------------- 1 | package JavaBasics; 2 | 3 | public class JavaOutput { 4 | public static void main(String []args){ 5 | double pi = Math.PI; 6 | System.out.println(pi); 7 | System.out.format("%.2f\n",pi); //print 2 digits after decimal 8 | System.out.format("%5.2f\n",pi); //print 5 characters in total and 2 digits after decimal. The remaining characters are filled with space. 9 | //if we give 3.2f instead of 5.2f, it will still print 3.14 as it is the minimum requirement 10 | System.out.format("%05.2f\n",pi);//print 5 characters in total and 2 digits after decimal. The remaining characters are filled with 0. 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /L3-Core-Java/src/Lecture3/SingletonClass.java: -------------------------------------------------------------------------------- 1 | package Lecture3; 2 | 3 | public class SingletonClass { 4 | 5 | private static volatile SingletonClass object = null; 6 | 7 | private SingletonClass(){ 8 | 9 | } 10 | 11 | public static SingletonClass getInstance() { 12 | if(object == null){ 13 | synchronized (SingletonClass.class) { 14 | if(object == null) { 15 | object = new SingletonClass(); 16 | } 17 | } 18 | } 19 | 20 | return object; 21 | } 22 | 23 | 24 | 25 | public static void main(String[] args) { 26 | SingletonClass singletonClass = new SingletonClass(); 27 | 28 | } 29 | } -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaStreamsAndLambda/WithStream.java: -------------------------------------------------------------------------------- 1 | package JavaStreamsAndLambda; 2 | 3 | // Java Program Demonstrate 4 | // stream in Java 5 | import java.util.*; 6 | 7 | public class WithStream { 8 | 9 | public static void main(String[] args) 10 | { 11 | 12 | // Creates a list using asList() 13 | List l = Arrays.asList(5, 10, 20, 30, 8, 7); 14 | 15 | // Taking the list as a source 16 | // Applying stream 17 | // filtering out the even numbers 18 | // filtering out the numbers > 10 19 | // Printing the list 20 | l.stream() 21 | .filter(x -> x % 2 == 0) 22 | .filter(x-> x>10) 23 | .forEach(System.out::println); 24 | } 25 | } -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaBasics/AutoboxingAndUnboxing.java: -------------------------------------------------------------------------------- 1 | package JavaBasics; 2 | 3 | public class AutoboxingAndUnboxing { 4 | public static void main(String[] args){ 5 | int x1 =10; 6 | Integer x2 = x1; //Autoboxing 7 | int x3 = x2; //Unboxing 8 | System.out.println(x1); 9 | System.out.println(x2); 10 | System.out.println(x3); 11 | AutoboxingAndUnboxing test = new AutoboxingAndUnboxing(); 12 | test.check(); 13 | } 14 | 15 | public void check(){ 16 | Integer x1 = 4; 17 | Integer x2 = 4; 18 | if(x1==x2){ 19 | System.out.println("Same"); 20 | } 21 | else { 22 | System.out.println("Not Same"); 23 | } 24 | } 25 | } 26 | 27 | 28 | -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/src/main/java/com/example/demojpa/configs/HandlerConfig.java: -------------------------------------------------------------------------------- 1 | package com.example.demojpa.configs; 2 | 3 | import com.example.demojpa.exceptions.PersonNotFoundException; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.http.HttpStatus; 6 | import org.springframework.http.ResponseEntity; 7 | import org.springframework.web.bind.annotation.ControllerAdvice; 8 | import org.springframework.web.bind.annotation.ExceptionHandler; 9 | 10 | @ControllerAdvice 11 | public class HandlerConfig { 12 | 13 | @ExceptionHandler(PersonNotFoundException.class) 14 | public ResponseEntity handlePersonNotFoundEx(PersonNotFoundException ex){ 15 | return new ResponseEntity(ex.getMessage(), HttpStatus.BAD_REQUEST); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/wallet-service/src/main/java/com/example/L2324MajorProjectEWallet/repository/WalletRepository.java: -------------------------------------------------------------------------------- 1 | package com.example.L2324MajorProjectEWallet.repository; 2 | 3 | import com.example.L2324MajorProjectEWallet.model.Wallet; 4 | import org.springframework.data.jpa.repository.JpaRepository; 5 | import org.springframework.data.jpa.repository.Modifying; 6 | import org.springframework.data.jpa.repository.Query; 7 | 8 | import javax.transaction.Transactional; 9 | 10 | @Transactional 11 | public interface WalletRepository extends JpaRepository { 12 | 13 | Wallet findByPhoneNumber(String phoneNumber); 14 | @Modifying 15 | @Query("update Wallet w set w.balance = w.balance + ?2 where w.phoneNumber = ?1") 16 | void updateWallet(String phoneNumber,Double amount); 17 | } 18 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/config/CommonConfig.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.config; 2 | 3 | import org.springframework.context.annotation.Bean; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; 6 | import org.springframework.security.crypto.password.PasswordEncoder; 7 | 8 | @Configuration 9 | public class CommonConfig { 10 | @Bean 11 | public PasswordEncoder getpasswordEncoder(){ 12 | return new BCryptPasswordEncoder(); 13 | } 14 | 15 | /** 16 | * We can make a common generic function to implement redis cache on all the get apis of the project 17 | * T getData(Repository class ref, Cache class ref){ 18 | * 19 | * } 20 | */ 21 | } 22 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/wallet-service/src/main/java/com/example/L2324MajorProjectEWallet/service/WalletService.java: -------------------------------------------------------------------------------- 1 | package com.example.L2324MajorProjectEWallet.service; 2 | 3 | import com.example.L2324MajorProjectEWallet.constants.CommonConstants; 4 | import com.fasterxml.jackson.core.JsonProcessingException; 5 | import org.json.simple.parser.ParseException; 6 | import org.springframework.kafka.annotation.KafkaListener; 7 | 8 | public interface WalletService { 9 | @KafkaListener(topics = CommonConstants.USER_CREATION_TOPIC,groupId = "group123") 10 | void createWallet(String message) throws ParseException; 11 | 12 | @KafkaListener(topics = CommonConstants.TRANSACTION_CREATION_TOPIC,groupId = "group123") 13 | void updateWalletsForTransactions(String message) throws ParseException, JsonProcessingException; 14 | } 15 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/model/TempModel.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.model; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Builder; 5 | import lombok.NoArgsConstructor; 6 | import org.hibernate.annotations.CreationTimestamp; 7 | 8 | import javax.persistence.Entity; 9 | import javax.persistence.Id; 10 | import javax.persistence.OneToMany; 11 | import java.io.Serializable; 12 | import java.util.Date; 13 | import java.util.List; 14 | 15 | @Entity 16 | @Builder 17 | @NoArgsConstructor 18 | @AllArgsConstructor 19 | public class TempModel implements Serializable { 20 | 21 | @Id 22 | private int id; 23 | @Id 24 | private String name; 25 | @CreationTimestamp 26 | private Date createdOn; 27 | // @OneToMany(mappedBy = "tempModel") 28 | // private List bookList; 29 | } 30 | -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaBasics/This_Chaining_Function.java: -------------------------------------------------------------------------------- 1 | package JavaBasics; 2 | 3 | class Point{ 4 | int x; 5 | int y; 6 | Point(int x,int y){ 7 | this.x = x; 8 | this.y = y; 9 | } 10 | Point setX(int x){ 11 | this.x = x; 12 | return this; // returns the reference of current object so that setY() function can be called 13 | } 14 | Point setY(int y){ 15 | this.y = y; 16 | return this; 17 | } 18 | void print(){ 19 | System.out.println(x+" "+y); 20 | } 21 | } 22 | public class This_Chaining_Function { 23 | public static void main(String []args){ 24 | Point p1 = new Point(10,20); 25 | Point p2 = new Point(30,40); 26 | p1.print(); 27 | p2.print(); 28 | p1.setX(50).setY(60); 29 | p1.print(); 30 | } 31 | 32 | } 33 | -------------------------------------------------------------------------------- /L8-L9-MySQL/src/main/java/org/example/request/CreatePersonRequest.java: -------------------------------------------------------------------------------- 1 | package org.example.request; 2 | 3 | import lombok.*; 4 | import org.example.model.Person; 5 | 6 | import javax.validation.constraints.NotBlank; 7 | 8 | @Data 9 | @NoArgsConstructor 10 | @AllArgsConstructor 11 | @Builder 12 | @ToString 13 | public class CreatePersonRequest { 14 | 15 | @NotBlank(message = "Date of birth should not be empty") 16 | private String dob; //mandatory 17 | @NotBlank(message = "First name should not be empty") 18 | private String firstName; //should not be empty 19 | private String lastName; // can be empty 20 | 21 | public Person to(){ 22 | return Person.builder() 23 | .firstName(firstName) 24 | .lastName(lastName) 25 | .dob(dob) 26 | .build(); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/wallet-service/src/main/java/com/example/L2324MajorProjectEWallet/model/Wallet.java: -------------------------------------------------------------------------------- 1 | package com.example.L2324MajorProjectEWallet.model; 2 | 3 | import com.example.L2324MajorProjectEWallet.enums.UserIdentifierEnum; 4 | import lombok.*; 5 | import javax.persistence.*; 6 | import java.io.Serializable; 7 | 8 | @Getter 9 | @Setter 10 | @AllArgsConstructor 11 | @NoArgsConstructor 12 | @Builder 13 | @Entity 14 | public class Wallet { 15 | 16 | @Id 17 | @GeneratedValue(strategy = GenerationType.IDENTITY) 18 | private Integer id; 19 | private Long userId; 20 | @Column(unique = true,nullable = false) 21 | private String phoneNumber; 22 | private Double balance; 23 | @Enumerated(value = EnumType.STRING) 24 | private UserIdentifierEnum userIdentifier; 25 | private String userIdentifierValue; 26 | 27 | } 28 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/transaction-service/src/main/java/com/example/MajorProjectEWallet/repository/TransactionRepository.java: -------------------------------------------------------------------------------- 1 | package com.example.MajorProjectEWallet.repository; 2 | 3 | import com.example.MajorProjectEWallet.enums.TransactionStatusEnum; 4 | import com.example.MajorProjectEWallet.model.Transaction; 5 | import org.springframework.data.jpa.repository.JpaRepository; 6 | import org.springframework.data.jpa.repository.Modifying; 7 | import org.springframework.data.jpa.repository.Query; 8 | import javax.transaction.Transactional; 9 | 10 | @Transactional 11 | public interface TransactionRepository extends JpaRepository { 12 | 13 | @Modifying 14 | @Query("update Transaction t set t.transactionStatus = ?2 where t.transactionId = ?1") 15 | void updateTxn(String txnId, TransactionStatusEnum transactionStatus); 16 | } 17 | -------------------------------------------------------------------------------- /L5-L6-Spring-Boot/src/main/java/org/example/Demo.java: -------------------------------------------------------------------------------- 1 | package org.example; 2 | 3 | import org.slf4j.Logger; 4 | import org.slf4j.LoggerFactory; 5 | import org.springframework.context.annotation.Scope; 6 | import org.springframework.stereotype.Component; 7 | 8 | @Component 9 | @Scope("prototype") 10 | public class Demo { 11 | private int id; 12 | private String name; 13 | 14 | private static Logger logger = LoggerFactory.getLogger(Demo.class); 15 | 16 | public Demo(){ 17 | logger.info("Creating demo object .... {}",this); 18 | } 19 | public int getId() { 20 | return id; 21 | } 22 | 23 | public void setId(int id) { 24 | this.id = id; 25 | } 26 | 27 | public String getName() { 28 | return name; 29 | } 30 | 31 | public void setName(String name) { 32 | this.name = name; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/model/Transaction.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.model; 2 | 3 | import lombok.*; 4 | import org.hibernate.annotations.CreationTimestamp; 5 | 6 | import javax.persistence.*; 7 | import java.util.Date; 8 | 9 | @Getter 10 | @Setter 11 | @Builder 12 | @NoArgsConstructor 13 | @AllArgsConstructor 14 | @Entity 15 | public class Transaction { 16 | 17 | @Id 18 | @GeneratedValue(strategy = GenerationType.IDENTITY) 19 | private int id; 20 | private String externalTxnId; 21 | @Enumerated(value = EnumType.STRING) 22 | private TransactionType transactionType; 23 | private double payment; 24 | @ManyToOne 25 | @JoinColumn 26 | private Book book; 27 | @ManyToOne 28 | @JoinColumn 29 | private Student student; 30 | @CreationTimestamp 31 | private Date transactionDate; 32 | } 33 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/transaction-service/src/main/java/com/example/MajorProjectEWallet/service/TransactionService.java: -------------------------------------------------------------------------------- 1 | package com.example.MajorProjectEWallet.service; 2 | 3 | import com.example.L2324MajorProjectEWallet.constants.CommonConstants; 4 | import com.fasterxml.jackson.core.JsonProcessingException; 5 | import org.json.simple.parser.ParseException; 6 | import org.springframework.kafka.annotation.KafkaListener; 7 | import org.springframework.security.core.userdetails.UserDetailsService; 8 | 9 | public interface TransactionService extends UserDetailsService { 10 | 11 | String initiateTxn(String sender, String receiver, String purpose, Double amount) throws JsonProcessingException; 12 | @KafkaListener(topics = CommonConstants.WALLET_UPDATE_TOPIC,groupId = "group123") 13 | void updateTxn(String message) throws ParseException, JsonProcessingException; 14 | } 15 | -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaBasics/LinearSearch.java: -------------------------------------------------------------------------------- 1 | package JavaBasics; 2 | 3 | import java.util.Scanner; 4 | 5 | public class LinearSearch { 6 | public static void main(String []args){ 7 | Scanner sc = new Scanner(System.in); 8 | int n = sc.nextInt(); 9 | int[] arr = new int[n]; 10 | for(int i=0;i 3 | 4.0.0 4 | 5 | com.example 6 | L23-24-MajorProject-Ewallet 7 | 0.0.1-SNAPSHOT 8 | 9 | wallet-service 10 | Archetype - wallet-service 11 | http://maven.apache.org 12 | 13 | 14 | com.example 15 | utils 16 | 0.0.1-SNAPSHOT 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/user-service/src/main/java/com/example/L2324MajorProjectEWallet/service/UserService.java: -------------------------------------------------------------------------------- 1 | package com.example.L2324MajorProjectEWallet.service; 2 | 3 | 4 | import com.example.L2324MajorProjectEWallet.model.User; 5 | import com.example.L2324MajorProjectEWallet.request.UserCreateRequest; 6 | import com.fasterxml.jackson.core.JsonProcessingException; 7 | import org.springframework.security.core.userdetails.UserDetailsService; 8 | 9 | import java.util.List; 10 | 11 | public interface UserService extends UserDetailsService { 12 | 13 | User createUser(UserCreateRequest userCreateRequest) throws JsonProcessingException; 14 | 15 | User createAdmin(UserCreateRequest userCreateRequest); 16 | User createService(UserCreateRequest userCreateRequest); 17 | List getAllUsers(); 18 | 19 | List getAllAdmins(); 20 | 21 | List getAllServices(); 22 | 23 | } 24 | -------------------------------------------------------------------------------- /.idea/jarRepositories.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 9 | 10 | 14 | 15 | 19 | 20 | -------------------------------------------------------------------------------- /L5-L6-Spring-Boot/src/main/java/org/example/DemoConfig.java: -------------------------------------------------------------------------------- 1 | package org.example; 2 | 3 | import org.slf4j.Logger; 4 | import org.slf4j.LoggerFactory; 5 | import org.springframework.context.annotation.Bean; 6 | import org.springframework.context.annotation.Configuration; 7 | import org.springframework.web.client.RestTemplate; 8 | 9 | @Configuration 10 | public class DemoConfig { 11 | 12 | private static final Logger logger = LoggerFactory.getLogger(DemoConfig.class); 13 | @Bean 14 | public RestTemplate getTemplate(){ 15 | RestTemplate restTemplate = new RestTemplate(); 16 | logger.info("Inside getTemplate() --- {}",restTemplate); 17 | return restTemplate; 18 | } 19 | 20 | @Bean 21 | public RestTemplate getTemplate2(){ 22 | RestTemplate restTemplate = new RestTemplate(); 23 | logger.info("Inside getTemplate() --- {}",restTemplate); 24 | return restTemplate; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /L21-Spring-OAuth2.0/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | #spring: 2 | # security: 3 | # oauth2: 4 | # client: 5 | # registration: 6 | # github: 7 | # client-id: a4756f30a0f78bc40417 8 | # client-secret: 67a05ddb5523fc15a17c723179e01222847669b1 9 | # 10 | #logging: 11 | # level: 12 | # org: 13 | # springframework: DEBUG 14 | # springframework.security: DEBUG 15 | # 16 | #server: 17 | # port: 8080 18 | # 19 | ## server.port=8080 20 | 21 | logging.level.org.springframework=debug 22 | spring.security.oauth2.client.registration.github.client-id = b678042456aefdab9cda 23 | spring.security.oauth2.client.registration.github.client-secret = f0c49568c8a4f3d2597af01d89eea76142b3e395 24 | spring.security.oauth2.client.registration.github.scope=[user:follow, user:email] 25 | 26 | #logging.level.org.springframework.security=DEBUG 27 | #logging.level.org.springframework = DEBUG 28 | #logging.level.root=debug -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/model/Author.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.model; 2 | 3 | import lombok.*; 4 | import org.hibernate.annotations.CreationTimestamp; 5 | 6 | import javax.persistence.*; 7 | import java.util.Date; 8 | import java.util.List; 9 | 10 | @Getter 11 | @Setter 12 | @Builder 13 | @AllArgsConstructor 14 | @NoArgsConstructor 15 | @Entity 16 | @ToString 17 | public class Author { 18 | @Id 19 | @GeneratedValue(strategy = GenerationType.IDENTITY) 20 | private int id; 21 | private String name; 22 | private int age; 23 | @Column(unique = true,nullable = false) 24 | private String email; 25 | @Column(name = "land") 26 | private String country; 27 | @OneToMany(mappedBy = "author",fetch = FetchType.EAGER) //Whenever we do select * from author, eager will also do select * from book where author_id = id 28 | private List bookList; 29 | @CreationTimestamp 30 | private Date addedOn; 31 | } 32 | -------------------------------------------------------------------------------- /L3-Core-Java/src/Lecture3/OtherClass.java: -------------------------------------------------------------------------------- 1 | package Lecture3; 2 | 3 | import java.util.ArrayList; 4 | import java.util.List; 5 | 6 | public class OtherClass extends Thread{ 7 | public static void main(String[] args) { 8 | 9 | List otherClassList = new ArrayList<>(); 10 | otherClassList.add(new OtherClass()); 11 | otherClassList.add(new OtherClass()); 12 | otherClassList.add(new OtherClass()); 13 | otherClassList.add(new OtherClass()); 14 | otherClassList.add(new OtherClass()); 15 | otherClassList.add(new OtherClass()); 16 | otherClassList.add(new OtherClass()); 17 | otherClassList.add(new OtherClass()); 18 | 19 | otherClassList.stream().forEach(x -> x.start()); 20 | } 21 | 22 | @Override 23 | public void run() { 24 | 25 | SingletonClass obj1 = SingletonClass.getInstance(); 26 | System.out.println("In thread " + currentThread() + ", obj = " + obj1); 27 | 28 | } 29 | } -------------------------------------------------------------------------------- /L4-Maven-Calculator/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | org.example 8 | L4-Maven-Calculator 9 | 1.0-SNAPSHOT 10 | 11 | 12 | 16 13 | 16 14 | UTF-8 15 | 16 | 17 | 18 | 19 | org.example 20 | L4-Maven 21 | 1.0-SNAPSHOT 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/response/BookSearchResponse.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.response; 2 | 3 | import com.example.minor1.model.Author; 4 | import com.example.minor1.model.Genre; 5 | import com.example.minor1.model.Student; 6 | import com.example.minor1.model.Transaction; 7 | import com.fasterxml.jackson.annotation.JsonIgnoreProperties; 8 | import lombok.*; 9 | 10 | import java.util.Date; 11 | import java.util.List; 12 | 13 | @Getter 14 | @Setter 15 | @Builder 16 | @AllArgsConstructor 17 | @NoArgsConstructor 18 | public class BookSearchResponse { 19 | private int id; 20 | private String name; 21 | @JsonIgnoreProperties({"bookList","addedOn"}) //Ignores the properties and don't fall in loop. To ignore whole object use @JsonIgnore 22 | private Author author; 23 | private int cost; 24 | private Genre genre; 25 | private Student student; 26 | private List transactionList; 27 | private Date createdOn; 28 | private Date updatedOn; 29 | } 30 | -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/src/main/java/com/example/demojpa/models/Person.java: -------------------------------------------------------------------------------- 1 | package com.example.demojpa.models; 2 | 3 | import lombok.*; 4 | 5 | import javax.persistence.*; 6 | 7 | @Getter 8 | @Setter 9 | @AllArgsConstructor 10 | @NoArgsConstructor 11 | @ToString 12 | @Builder 13 | @Entity 14 | @Table(name = "my_person") 15 | public class Person { 16 | 17 | /** 18 | * Hibernate converts all the camel cases into two words separated by underscore 19 | * Hibernate convert all the upercases into lowercase 20 | */ 21 | private static int counter; 22 | 23 | // myFirstName --> my_first_name 24 | 25 | @Id 26 | @GeneratedValue(strategy = GenerationType.IDENTITY) 27 | private Integer id; // automatically generated by server | FE need not send this 28 | 29 | @Column(name = "first_name", length = 30) 30 | private String firstName; 31 | private String lastName; 32 | 33 | private Integer age; 34 | private String dob; 35 | 36 | @Transient 37 | private String countryCode; 38 | } 39 | -------------------------------------------------------------------------------- /L4-Maven/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | org.example 8 | L4-Maven 9 | 1.0-SNAPSHOT 10 | 11 | 12 | 16 13 | 16 14 | UTF-8 15 | 16 | 17 | 18 | 19 | 20 | mysql 21 | mysql-connector-java 22 | 8.0.26 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/user-service/pom.xml: -------------------------------------------------------------------------------- 1 | 3 | 4.0.0 4 | 5 | com.example 6 | L23-24-MajorProject-Ewallet 7 | 0.0.1-SNAPSHOT 8 | 9 | user-service 10 | Archetype - user-service 11 | http://maven.apache.org 12 | 13 | 14 | 15 | org.springframework.boot 16 | spring-boot-starter-security 17 | 18 | 19 | com.example 20 | utils 21 | 0.0.1-SNAPSHOT 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /L1-Core-Java/src/Lecture1/FinalKeyword.java: -------------------------------------------------------------------------------- 1 | package Lecture1; 2 | 3 | public class FinalKeyword { 4 | 5 | // 1. Variables - These can be defined while declaring or in the constructor 6 | // 2. Functions - Final functions can not be overridden in child classes 7 | // 3. Classes - 8 | 9 | final int a = 5; 10 | static int b = 10; 11 | static final int c; 12 | 13 | static { 14 | b = 50; 15 | System.out.println("In first static block " + b); 16 | c = 10; 17 | } 18 | 19 | static { 20 | b = 70; 21 | System.out.println("In another static block " + b); 22 | } 23 | 24 | // public FinalKeyword() { 25 | // this.a = 10; 26 | // } 27 | 28 | public static void func(){ 29 | System.out.println(b); 30 | } 31 | 32 | public static void main(String[] args) { 33 | System.out.println("Starting main...."); 34 | FinalKeyword o = new FinalKeyword(); 35 | func(); 36 | b = 60; 37 | func(); 38 | 39 | // System.out.println(b); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/request/BookCreateRequest.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.request; 2 | 3 | import com.example.minor1.model.Author; 4 | import com.example.minor1.model.Book; 5 | import com.example.minor1.model.Genre; 6 | import lombok.*; 7 | 8 | import javax.validation.constraints.NotBlank; 9 | import javax.validation.constraints.NotNull; 10 | import javax.validation.constraints.Positive; 11 | 12 | @Getter 13 | @Setter 14 | @NoArgsConstructor 15 | @AllArgsConstructor 16 | @Builder 17 | public class BookCreateRequest { 18 | 19 | @NotBlank //NotNull can take "", which NotBlank will give error. 20 | private String name; 21 | @NonNull 22 | private Author author; 23 | @Positive 24 | private int cost; 25 | @NotNull 26 | private Genre genre; 27 | public Book to(){ 28 | return Book.builder() 29 | .cost(this.cost) 30 | .author(this.author) 31 | .name(this.name) 32 | .genre(this.genre) 33 | .build(); 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/notification-service/pom.xml: -------------------------------------------------------------------------------- 1 | 3 | 4.0.0 4 | 5 | com.example 6 | L23-24-MajorProject-Ewallet 7 | 0.0.1-SNAPSHOT 8 | 9 | notification-service 10 | Archetype - notification-service 11 | http://maven.apache.org 12 | 13 | 14 | com.example 15 | utils 16 | 0.0.1-SNAPSHOT 17 | 18 | 19 | org.springframework.boot 20 | spring-boot-starter-mail 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/transaction-service/pom.xml: -------------------------------------------------------------------------------- 1 | 3 | 4.0.0 4 | 5 | com.example 6 | L23-24-MajorProject-Ewallet 7 | 0.0.1-SNAPSHOT 8 | 9 | transaction-service 10 | Archetype - transaction-service 11 | http://maven.apache.org 12 | 13 | 14 | org.springframework.boot 15 | spring-boot-starter-security 16 | 17 | 18 | com.example 19 | utils 20 | 0.0.1-SNAPSHOT 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/repository/MyUserCacheRepository.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.repository; 2 | 3 | import com.example.minor1.model.MyUser; 4 | import org.springframework.beans.factory.annotation.Autowired; 5 | import org.springframework.data.redis.core.RedisTemplate; 6 | import org.springframework.stereotype.Repository; 7 | 8 | import java.util.concurrent.TimeUnit; 9 | 10 | @Repository 11 | public class MyUserCacheRepository { 12 | 13 | private final String USER_KEY_PREFIX = "usr::"; 14 | 15 | @Autowired 16 | RedisTemplate redisTemplate; 17 | 18 | public void set(MyUser myUser){ 19 | String key = getKey(myUser.getUsername()); 20 | redisTemplate.opsForValue().set(key,myUser,24, TimeUnit.HOURS); 21 | } 22 | 23 | public MyUser get(String username){ 24 | String key = getKey(username); 25 | return (MyUser) redisTemplate.opsForValue().get(key); 26 | } 27 | 28 | private String getKey(String username){ 29 | return USER_KEY_PREFIX+username; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /L3-Core-Java/src/Lecture3/Factorial.java: -------------------------------------------------------------------------------- 1 | package Lecture3; 2 | 3 | import java.math.BigInteger; 4 | import java.util.Arrays; 5 | 6 | public class Factorial { 7 | 8 | public static void main(String[] args) { 9 | Integer[] numbers = {10000, 20000, 50000, 30000, 43000, 50000, 65000, 15000, 42000}; 10 | Integer[] shortNumbers = {1, 2, 3, 4, 5, 6, 7, 8}; 11 | 12 | long start = System.currentTimeMillis(); 13 | 14 | // MapToObj is used to covert IntStream --> Stream 15 | Arrays.stream(shortNumbers) 16 | .map(Factorial::calculateFactorial) 17 | .forEach(System.out::println); 18 | 19 | long end = System.currentTimeMillis(); 20 | 21 | System.out.println("The total time taken = " + (end-start)); 22 | } 23 | 24 | public static BigInteger calculateFactorial(int number){ 25 | BigInteger result = BigInteger.ONE; 26 | 27 | for(int i = 2; i <= number; i++){ 28 | result = result.multiply(BigInteger.valueOf(i)); 29 | } 30 | 31 | return result; 32 | } 33 | } -------------------------------------------------------------------------------- /out/production/L2-Core-Java/Lecture2/l2.txt: -------------------------------------------------------------------------------- 1 | Streams will only run when it has terminal operations. There are 2 types of operations in streams:- 2 | 1. Intermediate operations -> it takes streams as input, perform some operations and then returns streams as output. 3 | 2. Terminal operations -> It takes streams as input and gives single element as output. 4 | 5 | Number of operations is streams is same as compared to number of operations in for loop. It only executes an element once. 6 | 7 | Core is the smallest unit of out infrastructure where a thread can run. One thread can run on one core. 8 | Command to check number of cores present in our machine is "Runtime.getRuntime().availableProcessors()" 9 | 10 | We can increase our number of threads from JVM, but it is not recommended as it can lead to deadlock at OS level. 11 | 12 | The result of the stream which we get, depends on three things:- 13 | 1. Type of stream we are using (Parallel or Sequential) 14 | 2. Type of Collection we are using(Ordered(e.g. List) or Unordered(e.g. Set) 15 | 3. Type of Terminal function we are using(like findFirst() or findAny()) -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/transaction-service/src/main/java/com/example/MajorProjectEWallet/model/Transaction.java: -------------------------------------------------------------------------------- 1 | package com.example.MajorProjectEWallet.model; 2 | 3 | 4 | import com.example.MajorProjectEWallet.enums.TransactionStatusEnum; 5 | import lombok.*; 6 | import org.hibernate.annotations.CreationTimestamp; 7 | import org.hibernate.annotations.UpdateTimestamp; 8 | 9 | import javax.persistence.*; 10 | import java.util.Date; 11 | 12 | @Entity 13 | @Getter 14 | @Setter 15 | @NoArgsConstructor 16 | @AllArgsConstructor 17 | @Builder 18 | public class Transaction { 19 | 20 | @Id 21 | @GeneratedValue(strategy = GenerationType.AUTO) 22 | private int id; 23 | 24 | private String transactionId; 25 | 26 | private String sender; 27 | 28 | private String receiver; 29 | private String purpose; 30 | 31 | @Enumerated(value = EnumType.STRING) 32 | private TransactionStatusEnum transactionStatus; 33 | 34 | private Double amount; 35 | 36 | @CreationTimestamp 37 | private Date createdOn; 38 | 39 | @UpdateTimestamp 40 | private Date updatedOn; 41 | 42 | } -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaBasics/BinarySearch.java: -------------------------------------------------------------------------------- 1 | package JavaBasics; 2 | 3 | import java.util.Scanner; 4 | 5 | public class BinarySearch { 6 | public static void main(String []args){ 7 | Scanner sc = new Scanner(System.in); 8 | int n = sc.nextInt(); 9 | int[] arr = new int[n]; 10 | for(int i=0;inum) 29 | high = mid-1; 30 | else 31 | low = mid+1; 32 | } 33 | return false; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /L17-Spring-Security/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one 2 | # or more contributor license agreements. See the NOTICE file 3 | # distributed with this work for additional information 4 | # regarding copyright ownership. The ASF licenses this file 5 | # to you under the Apache License, Version 2.0 (the 6 | # "License"); you may not use this file except in compliance 7 | # with the License. You may obtain a copy of the License at 8 | # 9 | # https://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, 12 | # software distributed under the License is distributed on an 13 | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 14 | # KIND, either express or implied. See the License for the 15 | # specific language governing permissions and limitations 16 | # under the License. 17 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.7/apache-maven-3.8.7-bin.zip 18 | wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar 19 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one 2 | # or more contributor license agreements. See the NOTICE file 3 | # distributed with this work for additional information 4 | # regarding copyright ownership. The ASF licenses this file 5 | # to you under the Apache License, Version 2.0 (the 6 | # "License"); you may not use this file except in compliance 7 | # with the License. You may obtain a copy of the License at 8 | # 9 | # https://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, 12 | # software distributed under the License is distributed on an 13 | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 14 | # KIND, either express or implied. See the License for the 15 | # specific language governing permissions and limitations 16 | # under the License. 17 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.7/apache-maven-3.8.7-bin.zip 18 | wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar 19 | -------------------------------------------------------------------------------- /L19-Spring-Security-User-Details/src/main/java/com/example/demosecurity/MyUserDetailsService.java: -------------------------------------------------------------------------------- 1 | package com.example.demosecurity; 2 | 3 | import org.springframework.beans.factory.annotation.Autowired; 4 | import org.springframework.dao.DuplicateKeyException; 5 | import org.springframework.security.core.userdetails.UserDetails; 6 | import org.springframework.security.core.userdetails.UserDetailsService; 7 | import org.springframework.security.core.userdetails.UsernameNotFoundException; 8 | import org.springframework.stereotype.Service; 9 | 10 | @Service 11 | public class MyUserDetailsService implements UserDetailsService { 12 | 13 | @Autowired 14 | MyUserRepository myUserRepository; 15 | 16 | @Override 17 | public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { 18 | 19 | // Logic for getting the user details 20 | 21 | return myUserRepository.findByEmail(username); 22 | } 23 | 24 | public void createUser(MyUser myUser) { 25 | try { 26 | myUserRepository.save(myUser); 27 | }catch (DuplicateKeyException e){ 28 | 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaBasics/BuubleSort.java: -------------------------------------------------------------------------------- 1 | package JavaBasics; 2 | 3 | import java.util.Scanner; 4 | 5 | public class BuubleSort { 6 | public static void main(String []args){ 7 | Scanner sc = new Scanner(System.in); 8 | int n = sc.nextInt(); 9 | int[] arr = new int[n]; 10 | for(int i=0;iarr[j+1]){ 24 | int temp = arr[j]; 25 | arr[j] = arr[j+1]; 26 | arr[j+1] = temp; 27 | swapped = true; 28 | } 29 | } 30 | //If no two elements are swapped by inner loop, then the array is already sorted 31 | if(!swapped) 32 | break; 33 | } 34 | 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/src/main/java/com/example/demojpa/controllers/AuthorController.java: -------------------------------------------------------------------------------- 1 | package com.example.demojpa.controllers; 2 | 3 | import com.example.demojpa.models.Author; 4 | import com.example.demojpa.services.AuthorService; 5 | import org.springframework.beans.factory.annotation.Autowired; 6 | import org.springframework.http.HttpStatus; 7 | import org.springframework.http.ResponseEntity; 8 | import org.springframework.web.bind.annotation.PostMapping; 9 | import org.springframework.web.bind.annotation.RequestParam; 10 | import org.springframework.web.bind.annotation.RestController; 11 | 12 | @RestController 13 | public class AuthorController { 14 | 15 | @Autowired 16 | private AuthorService authorService; 17 | 18 | @PostMapping("/author") 19 | public ResponseEntity createAuthor(@RequestParam("age") int age, @RequestParam("name") String name){ 20 | Author author = Author.builder() 21 | .age(age) 22 | .name(name) 23 | .build(); 24 | return new ResponseEntity<>(authorService.createAuthor(author), HttpStatus.CREATED); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /L7-Rest-Apis/src/main/java/org/example/Book.java: -------------------------------------------------------------------------------- 1 | package org.example; 2 | 3 | public class Book { 4 | 5 | private int id; 6 | private String name; 7 | private int cost; 8 | private String author; 9 | 10 | public int getId() { 11 | return id; 12 | } 13 | 14 | public void setId(int id) { 15 | this.id = id; 16 | } 17 | 18 | public String getName() { 19 | return name; 20 | } 21 | 22 | public void setName(String name) { 23 | this.name = name; 24 | } 25 | 26 | public int getCost() { 27 | return cost; 28 | } 29 | 30 | public void setCost(int cost) { 31 | this.cost = cost; 32 | } 33 | 34 | public String getAuthor() { 35 | return author; 36 | } 37 | 38 | public void setAuthor(String author) { 39 | this.author = author; 40 | } 41 | 42 | @Override 43 | public String toString() { 44 | return "Book{" + 45 | "id=" + id + 46 | ", name='" + name + '\'' + 47 | ", cost=" + cost + 48 | ", author='" + author + '\'' + 49 | '}'; 50 | } 51 | } -------------------------------------------------------------------------------- /L21-Spring-OAuth2.0/src/test/java/com/example/SocialApplicationTests.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012-2015 the original author or authors. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package com.example; 17 | 18 | import org.junit.Test; 19 | import org.junit.runner.RunWith; 20 | import org.springframework.boot.test.context.SpringBootTest; 21 | import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; 22 | 23 | @RunWith(SpringJUnit4ClassRunner.class) 24 | @SpringBootTest 25 | public class SocialApplicationTests { 26 | 27 | @Test 28 | public void contextLoads() { 29 | } 30 | 31 | } 32 | -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaBasics/Static_Member.java: -------------------------------------------------------------------------------- 1 | package JavaBasics; 2 | 3 | 4 | class Player{ 5 | String name; 6 | int id; 7 | 8 | // static int playerCount = 0; 9 | private static int playerCount = 0; 10 | 11 | Player(String name){ 12 | this.name = name; 13 | this.id = ++playerCount; 14 | } 15 | 16 | static int getPlayerCount(){ 17 | return playerCount; 18 | } 19 | 20 | void printDetails(){ 21 | System.out.println(id+" : "+name); 22 | } 23 | 24 | } 25 | public class Static_Member { 26 | public static void main(String []args){ 27 | System.out.println(Player.getPlayerCount()); 28 | Player p1 = new Player("Sudhir"); 29 | System.out.println(Player.getPlayerCount()); 30 | Player p2 = new Player("Ajay"); 31 | System.out.println(Player.getPlayerCount()); 32 | p1.printDetails(); 33 | p2.printDetails(); 34 | 35 | //We can access static members either by using Class or by using objects 36 | // System.out.println(Player.playerCount); 37 | // System.out.println(p1.playerCount); 38 | // System.out.println(p2.playerCount); 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /L2-Core-Java/src/Lecture2/l2.txt: -------------------------------------------------------------------------------- 1 | Streams will only run when it has terminal operations. There are 2 types of operations in streams:- 2 | 1. Intermediate operations -> it takes streams as input, perform some operations and then returns streams as output. 3 | 2. Terminal operations -> It takes streams as input and gives single element as output. 4 | 5 | Number of operations is streams is same as compared to number of operations in for loop. It only executes an element once. 6 | 7 | Core is the smallest unit of out infrastructure where a thread can run. One thread can run on one core. 8 | Command to check number of cores present in our machine is "Runtime.getRuntime().availableProcessors()" 9 | 10 | We can increase our number of threads from JVM, but it is not recommended as it can lead to deadlock at OS level. 11 | 12 | The result of the stream which we get, depends on three things:- 13 | 1. Type of stream we are using (Parallel or Sequential) 14 | 2. Type of Collection we are using(Ordered(e.g. List) or Unordered(e.g. Set) 15 | 3. Type of Terminal function we are using(like findFirst() or findAny()) 16 | 17 | For unordered collections findFirst() does not make sense. It is similar to findAny(). -------------------------------------------------------------------------------- /L1-Core-Java/src/Lecture1/L1.txt: -------------------------------------------------------------------------------- 1 | Using default keyword, interfaces can have non-abstract functions which has a body. This feature was added from JAVA 8. 2 | Default functions are automatically implemented in inherited class. 3 | 4 | For best practices we create a reference of interface and use it on the instance of class implementing that interface to use all 5 | the functions(abstract + default) declared in Interface and functions declared in class. 6 | 7 | For example, we make an interface named PasswordEncryption with two functions, encrypt() and encode(). 8 | There are also two classes BcryptEncoder and MD5Encoder which encrypts these file. The best way to use all the functionalities is 9 | to make instances of classes using reference of interface. For example 10 | 11 | PasswordEncryption obj1 = new BcryptEncoder(); 12 | or 13 | PasswordEncryption obj2 = new MD5Encoder(); 14 | 15 | 16 | Functional Interfaces are interfaces that have only one abstract method. If more methods are there, then it should be default. 17 | @FunctionalInterface annotation is used to apply such restrictions. 18 | 19 | Native functions are functions which makes call to OS library. These are not present as part of java code. -------------------------------------------------------------------------------- /out/production/L1-Core-Java/Lecture1/L1.txt: -------------------------------------------------------------------------------- 1 | Using default keyword, interfaces can have non-abstract functions which has a body. This feature was added from JAVA 8. 2 | Default functions are automatically implemented in inherited class. 3 | 4 | For best practices we create a reference of interface and use it on the instance of class implementing that interface to use all 5 | the functions(abstract + default) declared in Interface and functions declared in class. 6 | 7 | For example, we make an interface named PasswordEncryption with two functions, encrypt() and encode(). 8 | There are also two classes BcryptEncoder and MD5Encoder which encrypts these file. The best way to use all the functionalities is 9 | to make instances of classes using reference of interface. For example 10 | 11 | PasswordEncryption obj1 = new BcryptEncoder(); 12 | or 13 | PasswordEncryption obj2 = new MD5Encoder(); 14 | 15 | 16 | Functional Interfaces are interfaces that have only one abstract method. If more methods are there, then it should be default. 17 | @FunctionalInterface annotation is used to apply such restrictions. 18 | 19 | Native functions are functions which makes call to OS library. These are not present as part of java code. -------------------------------------------------------------------------------- /L1-Core-Java/src/Lecture1/MethodReference.java: -------------------------------------------------------------------------------- 1 | package Lecture1; 2 | 3 | import java.util.Arrays; 4 | import java.util.List; 5 | 6 | public class MethodReference { 7 | 8 | public static void main(String[] args){ 9 | 10 | List cities = Arrays.asList("Delhi","Mumbai"); 11 | 12 | /** 13 | * Convert to Uppercase in normal stream 14 | */ 15 | 16 | cities.stream().map(x->x.toUpperCase()) 17 | .forEach(x->System.out.println(x)); 18 | 19 | /** 20 | * Other Way using method reference 21 | */ 22 | cities.stream().map(x->x.toUpperCase()) 23 | .forEach(System.out::println); 24 | 25 | /** 26 | * Other Way using normal method and method reference 27 | */ 28 | cities.stream().map(x->replace(x)) 29 | .forEach(System.out::println); 30 | 31 | /** 32 | * Other Way using only method reference 33 | */ 34 | cities.stream().map(MethodReference::replace) 35 | .forEach(System.out::println); 36 | 37 | 38 | } 39 | 40 | 41 | public static String replace(String a){ 42 | return a.toUpperCase(); 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /L19-Spring-Security-User-Details/src/main/java/com/example/demosecurity/L18+L19.txt: -------------------------------------------------------------------------------- 1 | UserDetailsService: Service used to get the user's information / details like username, pwd, authorities etc. 2 | UserDetails: Interface which should be implemented by your entity class which is going to be stored in db 3 | UserNamePasswordAuthenticationFilter: 4 | * in memory authentication --> usernamepasswordauthenticationfilter 5 | getting the user details from some class which is getting the info from memory 6 | * user details service authentication --> usernamepasswordauthenticationfilter 7 | getting the user details from our custom class which we have written which is getting the info from external datasource 8 | 9 | role based access --> your ant matchers can have multiple roles for a set of APIs and your user in db will have a single role in 10 | the authority's column 11 | 12 | action based access --> your ant matcher will have only 1 action for a set of APIs and your user in db will have multiple actions 13 | in the authority's column 14 | 15 | role and action bases access --> combination of above two 16 | 17 | Unsafe methods can not be permit all with csrf enabled -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/model/Admin.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.model; 2 | 3 | import com.fasterxml.jackson.annotation.JsonIgnoreProperties; 4 | import lombok.*; 5 | import org.hibernate.annotations.CreationTimestamp; 6 | import org.hibernate.annotations.UpdateTimestamp; 7 | 8 | import javax.persistence.*; 9 | import java.io.Serializable; 10 | import java.util.Date; 11 | 12 | @Getter 13 | @Setter 14 | @Builder 15 | @NoArgsConstructor 16 | @AllArgsConstructor 17 | @Entity 18 | public class Admin implements Serializable { 19 | @Id 20 | @GeneratedValue(strategy = GenerationType.IDENTITY) 21 | private int id; 22 | private String name; 23 | private int age; 24 | @Column(unique = true) 25 | private String email; 26 | @Column(unique = true,nullable = false) 27 | private String contact; 28 | private String address; 29 | @Enumerated(value = EnumType.STRING) 30 | private AccountStatus accountStatus; 31 | @CreationTimestamp 32 | private Date createdOn; 33 | @UpdateTimestamp 34 | private Date updatedOn; 35 | @OneToOne 36 | @JoinColumn 37 | @JsonIgnoreProperties({"admin","student","password"}) 38 | private MyUser myUser; 39 | } 40 | -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaBasics/JavaInput.java: -------------------------------------------------------------------------------- 1 | package JavaBasics; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.util.Scanner; 7 | 8 | public class JavaInput { 9 | public static void main(String []args) throws IOException{ 10 | JavaInput javaInput = new JavaInput(); 11 | javaInput.bufferedReader(); 12 | javaInput.scannerReader(); 13 | } 14 | 15 | public void bufferedReader() throws IOException { 16 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 17 | System.out.println("Enter a String"); 18 | String str = br.readLine(); 19 | System.out.println("Enter a Number"); 20 | int x = Integer.parseInt(br.readLine()); 21 | System.out.println("You Entered "+str+" "+x); 22 | } 23 | 24 | public void scannerReader(){ 25 | Scanner sc = new Scanner(System.in); 26 | String str = sc.nextLine(); 27 | System.out.println("You Entered String "+str); 28 | int x = sc.nextInt(); 29 | System.out.println("You Entered Integer "+x); 30 | float f = sc.nextFloat(); 31 | System.out.println("You Entered Float "+f); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaStreamsAndLambda/WithLambdaExpression.java: -------------------------------------------------------------------------------- 1 | package JavaStreamsAndLambda; 2 | 3 | 4 | 5 | // Java code to illustrate the working 6 | // of Lambda Expression 7 | import java.util.*; 8 | import java.util.function.Predicate; 9 | 10 | class WithLambdaExpression 11 | { 12 | // Take a Collection and a Predicate 13 | // Predicate helps in unit-testing 14 | // Collection can accept LinkedList, 15 | // ArrayList, Queue etc 16 | static void printCond(Collection c, Predicate p) 17 | { 18 | // Traverse the Collection 19 | // Print only those elements which 20 | // pass the test 21 | for (Integer x: c) 22 | if(p.test(x)) 23 | System.out.print(x + " "); 24 | } 25 | public static void main(String args[]) 26 | { 27 | // ArrayList to check the function 28 | List al = new ArrayList<>(Arrays.asList(10, 5, 20, 7, 30)); 29 | 30 | // Passes the collection and a 31 | // lambda expression which is a functional 32 | // interface 33 | // This lambda expression maps the test 34 | // function of abstract method 35 | printCond(al, x -> x%2 == 0); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/service/Impl/AdminServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.service.Impl; 2 | 3 | import com.example.minor1.model.Admin; 4 | import com.example.minor1.model.MyUser; 5 | import com.example.minor1.repository.AdminRepository; 6 | import com.example.minor1.request.StudentCreateRequest; 7 | import com.example.minor1.request.UserCreateRequest; 8 | import org.springframework.beans.factory.annotation.Autowired; 9 | import org.springframework.stereotype.Service; 10 | 11 | import java.util.List; 12 | 13 | @Service 14 | public class AdminServiceImpl { 15 | 16 | @Autowired 17 | private AdminRepository adminRepository; 18 | 19 | @Autowired 20 | private MyUserDetailsServiceImpl myUserDetailsService; 21 | 22 | public Admin create(StudentCreateRequest studentCreateRequest){ 23 | UserCreateRequest userCreateRequest = studentCreateRequest.toAdminUser(); 24 | MyUser myUser = myUserDetailsService.createUser(userCreateRequest); 25 | Admin admin = studentCreateRequest.toAdmin(); 26 | admin.setMyUser(myUser); 27 | return adminRepository.save(admin); 28 | } 29 | 30 | public List getAllAdmin(){ 31 | return adminRepository.findAll(); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /L11-MultipleDatasource/src/main/java/com/example/demomultipledb/PersonController.java: -------------------------------------------------------------------------------- 1 | package com.example.demomultipledb; 2 | 3 | import com.example.demomultipledb.persondb.Person; 4 | import org.slf4j.Logger; 5 | import org.slf4j.LoggerFactory; 6 | import org.springframework.beans.factory.annotation.Autowired; 7 | import org.springframework.web.bind.annotation.*; 8 | 9 | import javax.validation.Valid; 10 | import java.util.List; 11 | 12 | @RestController 13 | public class PersonController { 14 | 15 | @Autowired 16 | PersonService personService; 17 | 18 | private static Logger logger = LoggerFactory.getLogger(PersonController.class); 19 | 20 | 21 | @PostMapping("/person") 22 | public void createPerson(@Valid @RequestBody CreatePersonRequest createPersonRequest){ 23 | 24 | // Validations and Exception handling we have outsourced 25 | // Invoking service class' function 26 | personService.createPerson(createPersonRequest); 27 | } 28 | 29 | @GetMapping("/person") 30 | public Person getPersonById(@RequestParam("id") int id) throws PersonNotFoundException { 31 | return personService.getPerson(id); 32 | } 33 | 34 | @GetMapping("/person/all") 35 | public List getPeople(){ 36 | return personService.getPeople(); 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /L11-MultipleDatasource/src/main/java/com/example/demomultipledb/persondb/Person.java: -------------------------------------------------------------------------------- 1 | package com.example.demomultipledb.persondb; 2 | import lombok.*; 3 | 4 | import javax.persistence.*; 5 | 6 | @Getter 7 | @Setter 8 | @AllArgsConstructor 9 | @NoArgsConstructor 10 | @ToString 11 | @Builder 12 | @Entity 13 | @Table(name = "my_person") 14 | public class Person { 15 | 16 | /** 17 | * Hibernate converts all the camel cases into two words separated by underscore 18 | * Hibernate convert all the uppercase into lowercase 19 | */ 20 | private static int counter; 21 | 22 | // myFirstName --> my_first_name 23 | 24 | /** 25 | * AUTO - 26 | create table person(id int primary key, ....) 27 | insert into person(id, name, ...) VALUES (, , ....) 28 | * IDENTITY - 29 | create table person(id int primary key auto_increment, ..... ) 30 | insert into person(name, ...) VALUES (, ...) 31 | **/ 32 | 33 | @Id 34 | @GeneratedValue(strategy = GenerationType.IDENTITY) 35 | private Integer id; // automatically generated by server | FE need not send this 36 | 37 | @Column(name = "first_name", length = 30) 38 | private String firstName; 39 | private String lastName; 40 | 41 | private Integer age; 42 | private String dob; 43 | 44 | @Transient 45 | private String countryCode; 46 | } 47 | 48 | -------------------------------------------------------------------------------- /L21-Spring-OAuth2.0/notes.txt: -------------------------------------------------------------------------------- 1 | Oauth2.0 2 | 3 | 1. End user revoking the access of the oauth2.0 client app from the provider (Ex: github) 4 | 5 | Why ? Maybe the user no longer wants to share his/her data with the oauth2.0 client 6 | 7 | 2. Oauth 2.0 revoking the authority given by the end user 8 | 9 | Why ? Maybe the oauth2.0 client has made changes in their policy / scope and they want users to authorise again with the changed scope 10 | 11 | 12 | 13 | —————————————————X——————————————————— 14 | 15 | 1. From our hyper link —> http://localhost:8080/oauth2/authorization/github 16 | 2. Step 1 redirected to —> https://github.com/login/oauth/authorize?response_type=code&client_id=b767ecfb32547411ec84&scope=read:user&state=tDFzBWpZjgVjgRrHRRT8roG6WouYznDlCKv3HhKN7tc%3D&redirect_uri=http://localhost:8080/login/oauth2/code/github 17 | 3. Once the end-user authorizes oauth2.0 client to use their resources on github, the following call is made by github’s FE: https://github.com/login/oauth/authorize 18 | 4. After step 3 GitHub redirected to : http://localhost:8080/login/oauth2/code/github?code=32df6f3a74ff11a213c4&state=KNN_EdKbo7ez8Bx4Xvp7ec17SRigObaYToPWFVB5ub4%3D which is nothing but our authorisation callback url 19 | 5. Authorisation call back url redirects to our homepage url: http://localhost:8080 20 | 21 | XSRF token is set when the callback url is executed from github. 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaOOPs/oops.txt: -------------------------------------------------------------------------------- 1 | Encapsulation and Data Hiding 2 | 3 | Object stores its state in fields and exposes its behaviour through methods. Encapsulation is hiding internal state(from the outside 4 | classes) and requiring all interaction to be performed through an object's publicly exposed methods. It ensures that sensitive data 5 | is always hidden. 6 | 7 | Encapsulation is achieved using access modifiers by declaring class variables/attributes as private and by defining getter and setter 8 | methods to access and update private variable 9 | 10 | Inheritance 11 | 12 | It is a way to organize set of interrelated classes. The class whose features are inherited is known as super class whereas class, 13 | who inherits is known as subclass. Subclass can add its own methods and variables other than super class. Inheritance is achieved 14 | by using "extends" keyword. 15 | A child class can inherit any method of its parent class except the private and the final methods. 16 | Multiple and hybrid inheritance is not allowed in java. 17 | 18 | Interfaces 19 | 20 | It allows multiple inheritance in java. It specifies what a class must do and does not specify how. Members defined in interface 21 | are by default public static and final. If a class implements an interface, then it should implement all the methods defined in 22 | that interface. If it is not implementing, then the class must be declared abstract. -------------------------------------------------------------------------------- /L0-Core-Java/src/JavaOOPs/Inheritance.java: -------------------------------------------------------------------------------- 1 | package JavaOOPs; 2 | 3 | class Bicycle{ 4 | public int gear; 5 | public int speed; 6 | 7 | public Bicycle(int gear,int speed){ 8 | this.gear = gear; 9 | this.speed = speed; 10 | } 11 | 12 | public void applyBrake(int decrement){ 13 | speed -= decrement; 14 | } 15 | 16 | public void speedUp(int increment){ 17 | speed += increment; 18 | } 19 | public void printInfo(){ 20 | System.out.println("gears are "+gear); 21 | System.out.println("speed is "+speed); 22 | } 23 | } 24 | 25 | class MountainBike extends Bicycle{ 26 | public int seatHeight; 27 | public MountainBike(int gear, int speed, int seatHeight) { 28 | super(gear, speed); //always needs to be the first statement 29 | this.seatHeight = seatHeight; 30 | } 31 | 32 | public void setSeatHeight(int newValue){ 33 | this.seatHeight = newValue; 34 | } 35 | @Override 36 | public void printInfo(){ 37 | super.printInfo(); 38 | System.out.println("seatHeight is "+seatHeight); 39 | } 40 | } 41 | public class Inheritance { 42 | public static void main(String []args){ 43 | MountainBike mb = new MountainBike(3,100,25); 44 | mb.printInfo(); 45 | mb.speedUp(20); 46 | mb.printInfo(); 47 | mb.setSeatHeight(22); 48 | 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/utils/src/main/java/com/example/L2324MajorProjectEWallet/constants/CommonConstants.java: -------------------------------------------------------------------------------- 1 | package com.example.L2324MajorProjectEWallet.constants; 2 | 3 | public class CommonConstants { 4 | 5 | public static final String USER_CREATION_TOPIC = "user_creation"; 6 | public static final String TRANSACTION_CREATION_TOPIC = "transaction_created"; 7 | public static final String TRANSACTION_CREATION_TOPIC_SENDER = "sender"; 8 | public static final String TRANSACTION_CREATION_TOPIC_RECEIVER = "receiver"; 9 | public static final String TRANSACTION_CREATION_TOPIC_AMOUNT = "amount"; 10 | public static final String EMAIL = "email"; 11 | public static final String MESSAGE = "message"; 12 | public static final String TRANSACTION_CREATION_TOPIC_TRANSACTION_ID = "transactionId"; 13 | public static final String WALLET_UPDATE_TOPIC = "wallet_updated"; 14 | public static final String WALLET_UPDATE_TOPIC_STATUS = "walletUpdateStatus"; 15 | public static final String TRANSACTION_COMPLETED_TOPIC = "transaction_completed"; 16 | public static final String USER_CREATION_TOPIC_IDENTIFIER_KEY = "userIdentifier"; 17 | public static final String USER_CREATION_TOPIC_IDENTIFIER_VALUE = "userIdentifierValue"; 18 | public static final String USER_CREATION_TOPIC_USERID = "userId"; 19 | public static final String USER_CREATION_TOPIC_PHONE_NUMBER = "phoneNumber"; 20 | } 21 | -------------------------------------------------------------------------------- /out/production/L0-Core-Java/JavaOOPs/oops.txt: -------------------------------------------------------------------------------- 1 | Encapsulation and Data Hiding 2 | 3 | Object stores its state in fields and exposes its behaviour through methods. Encapsulation is hiding internal state(from the outside 4 | classes) and requiring all interaction to be performed through an object's publicly exposed methods. It ensures that sensitive data 5 | is always hidden. 6 | 7 | Encapsulation is achieved using access modifiers by declaring class variables/attributes as private and by defining getter and setter 8 | methods to access and update private variable 9 | 10 | Inheritance 11 | 12 | It is a way to organize set of interrelated classes. The class whose features are inherited is known as super class whereas class, 13 | who inherits is known as subclass. Subclass can add its own methods and variables other than super class. Inheritance is achieved 14 | by using "extends" keyword. 15 | A child class can inherit any method of its parent class except the private and the final methods. 16 | Multiple and hybrid inheritance is not allowed in java. 17 | 18 | Interfaces 19 | 20 | It allows multiple inheritance in java. It specifies what a class must do and does not specify how. Members defined in interface 21 | are by default public static and final. If a class implements an interface, then it should implement all the methods defined in 22 | that interface. If it is not implementing, then the class must be declared abstract. -------------------------------------------------------------------------------- /L11-MultipleDatasource/src/main/java/com/example/demomultipledb/CreatePersonRequest.java: -------------------------------------------------------------------------------- 1 | package com.example.demomultipledb; 2 | 3 | import com.example.demomultipledb.persondb.Person; 4 | import lombok.*; 5 | 6 | import javax.validation.constraints.NotBlank; 7 | import java.util.Random; 8 | 9 | @Getter 10 | @Setter 11 | @Builder 12 | @AllArgsConstructor 13 | @NoArgsConstructor 14 | @ToString 15 | public class CreatePersonRequest { 16 | 17 | @NotBlank(message = "FirstName should not be empty") 18 | private String firstName; // should not be empty 19 | 20 | private String lastName; // can be empty 21 | 22 | @NotBlank(message = "Date of birth should not be empty") 23 | private String dob; // mandatory 24 | 25 | @NotBlank 26 | private String location; 27 | 28 | public Person to(){ 29 | //TODO: Need to remove the id and add auto increment at the model layer 30 | return Person.builder() 31 | .id(new Random().nextInt()) 32 | .firstName(firstName) 33 | .lastName(lastName) 34 | .dob(dob) 35 | // .countryCode(getCountryCodeFromLocation()) 36 | .build(); 37 | } 38 | 39 | // public String getCountryCodeFromLocation(){ 40 | // if(this.location.equalsIgnoreCase("india")){ 41 | // return "+91"; 42 | // } 43 | // 44 | // return null; 45 | // } 46 | 47 | } 48 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/service/Impl/StudentServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.service.Impl; 2 | 3 | import com.example.minor1.model.MyUser; 4 | import com.example.minor1.model.Student; 5 | import com.example.minor1.repository.StudentRepository; 6 | import com.example.minor1.request.StudentCreateRequest; 7 | import com.example.minor1.request.UserCreateRequest; 8 | import com.example.minor1.service.StudentService; 9 | import org.springframework.beans.factory.annotation.Autowired; 10 | import org.springframework.stereotype.Service; 11 | 12 | @Service 13 | public class StudentServiceImpl implements StudentService { 14 | 15 | @Autowired 16 | private StudentRepository studentRepository; 17 | 18 | @Autowired 19 | MyUserDetailsServiceImpl myUserDetailsService; 20 | 21 | @Override 22 | public Student create(StudentCreateRequest studentCreateRequest) { 23 | UserCreateRequest userCreateRequest = studentCreateRequest.toStudentUser(); 24 | MyUser myUser = myUserDetailsService.createUser(userCreateRequest); 25 | Student student = studentCreateRequest.toStudent(); 26 | student.setMyUser(myUser); 27 | return studentRepository.save(student); 28 | } 29 | 30 | @Override 31 | public Student findStudentById(int studentId) { 32 | return studentRepository.findById(studentId).orElse(null); 33 | } 34 | 35 | } 36 | -------------------------------------------------------------------------------- /L12-13-14-20-MinorProject1And2/src/main/java/com/example/minor1/model/Student.java: -------------------------------------------------------------------------------- 1 | package com.example.minor1.model; 2 | 3 | import com.fasterxml.jackson.annotation.JsonIgnoreProperties; 4 | import lombok.*; 5 | import org.hibernate.annotations.CreationTimestamp; 6 | import org.hibernate.annotations.UpdateTimestamp; 7 | 8 | import javax.persistence.*; 9 | import java.io.Serializable; 10 | import java.util.Date; 11 | import java.util.List; 12 | 13 | @Getter 14 | @Setter 15 | @Builder 16 | @NoArgsConstructor 17 | @AllArgsConstructor 18 | @Entity 19 | public class Student implements Serializable { 20 | 21 | @Id 22 | @GeneratedValue(strategy = GenerationType.IDENTITY) 23 | private int id; 24 | 25 | private String name; 26 | @Column(unique = true,nullable = false) 27 | private String contact; 28 | private int age; 29 | private String address; 30 | @Column(unique = true) 31 | private String email; 32 | @CreationTimestamp 33 | private Date createdOn; 34 | @UpdateTimestamp 35 | private Date updatedOn; 36 | @OneToMany(mappedBy = "student") 37 | private List bookList; 38 | @OneToMany(mappedBy = "student") 39 | private List transactionList; 40 | @Enumerated(value = EnumType.STRING) 41 | private AccountStatus accountStatus; 42 | @OneToOne 43 | @JoinColumn 44 | @JsonIgnoreProperties({"student","admin","password"}) 45 | private MyUser myUser; 46 | } 47 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/user-service/src/main/java/com/example/L2324MajorProjectEWallet/request/UserCreateRequest.java: -------------------------------------------------------------------------------- 1 | package com.example.L2324MajorProjectEWallet.request; 2 | 3 | import javax.validation.constraints.NotBlank; 4 | import javax.validation.constraints.NotNull; 5 | 6 | import com.example.L2324MajorProjectEWallet.enums.UserIdentifierEnum; 7 | import com.example.L2324MajorProjectEWallet.model.User; 8 | import lombok.*; 9 | 10 | 11 | @Getter 12 | @Setter 13 | @AllArgsConstructor 14 | @NoArgsConstructor 15 | @Builder 16 | public class UserCreateRequest { 17 | 18 | @NotBlank 19 | private String name; 20 | @NotBlank 21 | private String phoneNumber; // will act as username in case of spring security 22 | @NotBlank 23 | private String email; 24 | @NotBlank 25 | private String password; 26 | private String country; 27 | private String dob; 28 | @NotNull 29 | private UserIdentifierEnum userIdentifier; 30 | private String userIdentifierValue; 31 | 32 | public User to(){ 33 | return User.builder() 34 | .name(name) 35 | .email(email) 36 | .password(password) 37 | .dob(dob) 38 | .phoneNumber(phoneNumber) 39 | .userIdentifier(userIdentifier) 40 | .userIdentifierValue(userIdentifierValue) 41 | .country(country) 42 | .build(); 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/src/main/java/com/example/demojpa/requests/CreatePersonRequest.java: -------------------------------------------------------------------------------- 1 | package com.example.demojpa.requests; 2 | 3 | import com.example.demojpa.models.Person; 4 | import lombok.*; 5 | 6 | import javax.validation.constraints.NotBlank; 7 | import java.util.Locale; 8 | import java.util.Random; 9 | 10 | @Getter 11 | @Setter 12 | @Builder 13 | @AllArgsConstructor 14 | @NoArgsConstructor 15 | @ToString 16 | public class CreatePersonRequest { 17 | 18 | @NotBlank(message = "FirstName should not be empty") 19 | private String firstName; // should not be empty 20 | 21 | private String lastName; // can be empty 22 | 23 | @NotBlank(message = "Date of birth should not be empty") 24 | private String dob; // mandatory 25 | 26 | @NotBlank 27 | private String location; 28 | 29 | public Person to(){ 30 | //TODO: Need to remove the id and add auto increment at the model layer 31 | return Person.builder() 32 | .id(new Random().nextInt()) 33 | .firstName(firstName) 34 | .lastName(lastName) 35 | .dob(dob) 36 | // .countryCode(getCountryCodeFromLocation()) 37 | .build(); 38 | } 39 | 40 | // public String getCountryCodeFromLocation(){ 41 | // if(this.location.equalsIgnoreCase("india")){ 42 | // return "+91"; 43 | // } 44 | // 45 | // return null; 46 | // } 47 | 48 | } 49 | -------------------------------------------------------------------------------- /L10-11-Spring-JPA-Hibernate/src/main/java/com/example/demojpa/controllers/PersonController.java: -------------------------------------------------------------------------------- 1 | package com.example.demojpa.controllers; 2 | 3 | import com.example.demojpa.exceptions.PersonNotFoundException; 4 | import com.example.demojpa.models.Person; 5 | import com.example.demojpa.requests.CreatePersonRequest; 6 | import com.example.demojpa.services.PersonService; 7 | import org.slf4j.Logger; 8 | import org.slf4j.LoggerFactory; 9 | import org.springframework.beans.factory.annotation.Autowired; 10 | import org.springframework.web.bind.annotation.*; 11 | 12 | import javax.validation.Valid; 13 | import java.util.List; 14 | 15 | @RestController 16 | public class PersonController { 17 | 18 | @Autowired 19 | PersonService personService; 20 | 21 | private static Logger logger = LoggerFactory.getLogger(PersonController.class); 22 | 23 | 24 | @PostMapping("/person") 25 | public void createPerson(@Valid @RequestBody CreatePersonRequest createPersonRequest){ 26 | 27 | // Validations and Exception handling we have outsourced 28 | // Invoking service class' function 29 | personService.createPerson(createPersonRequest); 30 | } 31 | 32 | @GetMapping("/person") 33 | public Person getPersonById(@RequestParam("id") int id) throws PersonNotFoundException { 34 | return personService.getPerson(id); 35 | } 36 | 37 | @GetMapping("/person/all") 38 | public List getPeople(){ 39 | return personService.getPeople(); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/transaction-service/src/main/java/com/example/MajorProjectEWallet/controller/TransactionController.java: -------------------------------------------------------------------------------- 1 | package com.example.MajorProjectEWallet.controller; 2 | 3 | import com.example.MajorProjectEWallet.service.TransactionService; 4 | import com.fasterxml.jackson.core.JsonProcessingException; 5 | import org.springframework.beans.factory.annotation.Autowired; 6 | import org.springframework.security.core.Authentication; 7 | import org.springframework.security.core.context.SecurityContextHolder; 8 | import org.springframework.security.core.userdetails.UserDetails; 9 | import org.springframework.web.bind.annotation.*; 10 | 11 | @RestController 12 | public class TransactionController { 13 | 14 | /** 15 | * Parameters for transaction 16 | * SenderId 17 | * ReceiverId 18 | * Reason 19 | */ 20 | 21 | @Autowired 22 | private TransactionService transactionService; 23 | 24 | @PostMapping("/txn") 25 | public String initiateTxn(@RequestParam("receiver") String receiver, 26 | @RequestParam("purpose") String purpose, 27 | @RequestParam("amount") Double amount) throws JsonProcessingException { 28 | Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); 29 | UserDetails user = (UserDetails) authentication.getPrincipal(); 30 | return transactionService.initiateTxn(user.getUsername(),receiver,purpose,amount); 31 | } 32 | 33 | } 34 | -------------------------------------------------------------------------------- /L23-24-MajorProject-Ewallet/notification-service/src/main/java/com/example/L2324MajorProectEWallet/service/impl/NotificationServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.example.L2324MajorProectEWallet.service.impl; 2 | 3 | import com.example.L2324MajorProectEWallet.service.NotificationService; 4 | import com.example.L2324MajorProjectEWallet.constants.CommonConstants; 5 | import org.json.simple.JSONObject; 6 | import org.json.simple.parser.JSONParser; 7 | import org.json.simple.parser.ParseException; 8 | import org.springframework.beans.factory.annotation.Autowired; 9 | import org.springframework.mail.SimpleMailMessage; 10 | import org.springframework.mail.javamail.JavaMailSender; 11 | import org.springframework.stereotype.Service; 12 | 13 | @Service 14 | public class NotificationServiceImpl implements NotificationService { 15 | @Autowired 16 | SimpleMailMessage simpleMailMessage; 17 | 18 | @Autowired 19 | JavaMailSender javaMailSender; 20 | @Override 21 | public void sendNotification(String msg) throws ParseException { 22 | JSONObject data = (JSONObject) new JSONParser().parse(msg); 23 | String email = (String)data.get(CommonConstants.EMAIL); 24 | String emailMsg = (String) data.get(CommonConstants.MESSAGE); 25 | 26 | 27 | simpleMailMessage.setFrom("ewallet.gfg.33@gmail.com"); 28 | simpleMailMessage.setTo(email); 29 | simpleMailMessage.setText(emailMsg); 30 | simpleMailMessage.setSubject("E wallet Payment Updates"); 31 | 32 | javaMailSender.send(simpleMailMessage); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /L21-Spring-OAuth2.0/src/main/java/com/example/Controller.java: -------------------------------------------------------------------------------- 1 | package com.example; 2 | 3 | import org.springframework.security.core.Authentication; 4 | import org.springframework.security.core.annotation.AuthenticationPrincipal; 5 | import org.springframework.security.core.context.SecurityContextHolder; 6 | import org.springframework.security.core.userdetails.User; 7 | import org.springframework.security.oauth2.core.user.OAuth2User; 8 | import org.springframework.web.bind.annotation.RequestMapping; 9 | import org.springframework.web.bind.annotation.RestController; 10 | 11 | import java.security.Principal; 12 | import java.util.HashMap; 13 | import java.util.Map; 14 | 15 | @RestController 16 | public class Controller { 17 | 18 | @RequestMapping("/user") 19 | public Map user() { 20 | 21 | Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); 22 | OAuth2User principal = (OAuth2User) authentication.getPrincipal(); 23 | 24 | Map answer = new HashMap<>(); 25 | answer.put("name", principal.getAttribute("name")); 26 | answer.put("company", principal.getAttribute("company")); 27 | return answer; 28 | // return Collections.singletonMap("name", principal.getAttribute("name")); 29 | } 30 | 31 | @RequestMapping("/user_details") 32 | public OAuth2User getUserDetails(@AuthenticationPrincipal OAuth2User principal){ 33 | Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); 34 | return principal; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /L7-Rest-Apis/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | org.example 8 | L7-Rest-Apis 9 | 1.0-SNAPSHOT 10 | 11 | 12 | 16 13 | 16 14 | UTF-8 15 | 16 | 17 | 18 | 19 | org.springframework.boot 20 | spring-boot-starter-web 21 | 2.7.6 22 | 23 | 24 | 25 | org.springframework.boot 26 | spring-boot-starter-test 27 | 2.7.6 28 | test 29 | 30 | 31 | 32 | 33 | 34 | 35 | org.springframework.boot 36 | spring-boot-maven-plugin 37 | 2.4.4 38 | 39 | 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /L5-L6-Spring-Boot/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | org.example 8 | L5-L6-Spring-Boot 9 | 1.0-SNAPSHOT 10 | 11 | 12 | 16 13 | 16 14 | UTF-8 15 | 16 | 17 | 18 | 19 | org.springframework.boot 20 | spring-boot-starter-web 21 | 2.7.6 22 | 23 | 24 | 25 | org.springframework.boot 26 | spring-boot-starter-test 27 | 2.7.6 28 | test 29 | 30 | 31 | 32 | 33 | 34 | 35 | org.springframework.boot 36 | spring-boot-maven-plugin 37 | 2.4.4 38 | 39 | 40 | 41 | 42 | --------------------------------------------------------------------------------