1 00:00:00,330 --> 00:00:06,750 In the last video, we have seen how easy bank application looks on on a high level, we understand 2 00:00:06,780 --> 00:00:11,970 what is a functional requirement of the application, but the application to work and to enhance it 3 00:00:11,970 --> 00:00:16,290 further, we have to think about its backend associated with the database. 4 00:00:16,379 --> 00:00:21,930 So as we have seen, there are particular pages which users should be able to navigate without any credentials 5 00:00:21,930 --> 00:00:24,330 associated with it, like contact us or not. 6 00:00:25,050 --> 00:00:32,060 So for the pages, we have to build associated back and services like contacts, national positions 7 00:00:32,070 --> 00:00:38,280 where they will accept requests from the UI and accordingly provide a response either from the database 8 00:00:38,280 --> 00:00:41,690 or taking the data from the U.S. and into the database. 9 00:00:41,700 --> 00:00:49,350 And at the same time, we also saw Dashboard Page, where it has four sections of operations and logged 10 00:00:49,350 --> 00:00:55,380 in user can perform like he can check his account details, balance details and loans and card details 11 00:00:55,380 --> 00:01:01,200 for those four operations we have to build associated with services and we have to make sure those services 12 00:01:01,200 --> 00:01:09,570 are protected so that someone from you why are you back in AIPA can't call them without any proper authentication 13 00:01:09,570 --> 00:01:10,520 dictums forwarded it. 14 00:01:10,560 --> 00:01:14,910 So these are the services that we are going to build in the backend. 15 00:01:14,940 --> 00:01:21,660 So let's go and first create a single security project like we have created in the previous videos. 16 00:01:21,670 --> 00:01:27,060 Let's try to create one more time the same way so that you get to use or to create a simple security 17 00:01:27,060 --> 00:01:27,610 project. 18 00:01:27,630 --> 00:01:31,970 And later on we can add all the services to the same project. 19 00:01:33,360 --> 00:01:39,930 So like we discussed, we had to first create a simple, good based project for that, we just have 20 00:01:39,930 --> 00:01:46,380 to go to start ups, being able to select all these values, project based project language, Java and 21 00:01:46,380 --> 00:01:52,670 Springboard, whatever version, and you'll feel comfortable next, followed by a group autographed. 22 00:01:53,060 --> 00:02:01,050 This time I just mentioned Spring Security Section two as a project me and followed by packaging should 23 00:02:01,050 --> 00:02:09,360 be John Salvacion should be eight and I will be adding and then please start a project like Spring Security 24 00:02:09,360 --> 00:02:12,460 and one more time that I need is spring. 25 00:02:12,870 --> 00:02:17,110 So now I click 200, which will download Culliton project. 26 00:02:17,340 --> 00:02:26,240 Now I have to go to that location and extract the words that come to eclipse and click on import projects, 27 00:02:26,250 --> 00:02:33,480 select existing Mavin projects, roads to the location where we have extracted that newly downloaded 28 00:02:33,480 --> 00:02:38,240 project, which is spring security detection to clicking on finish. 29 00:02:38,250 --> 00:02:41,730 We create the project in your workspace. 30 00:02:41,790 --> 00:02:46,950 And since you have all those Marin dependencies, if you are doing this first time, it will download 31 00:02:46,950 --> 00:02:48,170 all the independents. 32 00:02:48,320 --> 00:02:55,530 So this is how all American dependence dependencies downloaded, all the gas needed are going to the 33 00:02:55,680 --> 00:03:01,550 same class security section to application and job application. 34 00:03:01,910 --> 00:03:04,080 This is the first time that we're running inside. 35 00:03:04,080 --> 00:03:06,600 The project is trying to take some time to build. 36 00:03:06,810 --> 00:03:13,570 And as you see, the project started successfully at the port AT&T and like we are discussing the previous 37 00:03:13,570 --> 00:03:18,980 election, by default, bring security provides a password which is displayed in the console. 38 00:03:19,140 --> 00:03:24,480 We have the default security password that is provided by the spring framework here in the console. 39 00:03:24,480 --> 00:03:30,520 But if we can recollect from the previous sections that we discussed, we can always change the default 40 00:03:30,550 --> 00:03:37,470 behavior of the security by going through the application of properties and providing a couple of properties 41 00:03:37,470 --> 00:03:44,410 related username and password where you can define your username and password configurations. 42 00:03:44,880 --> 00:03:50,400 It could be we use these credentials to authenticate any request that is coming to the back. 43 00:03:50,400 --> 00:03:57,210 And the next thing that we have to do here is to build a rest controllers and the services associated 44 00:03:57,210 --> 00:04:00,720 for all the services that we are going to call from that you want. 45 00:04:00,720 --> 00:04:06,790 If you can recall from the previous video of the all the services that we are going to invoke from the 46 00:04:06,800 --> 00:04:12,560 UI to make this an application, we will have it back and the database interaction. 47 00:04:12,570 --> 00:04:18,860 So now to make it quick, I already created the controls for all the services associated to them. 48 00:04:18,870 --> 00:04:24,880 Let me walk you through all those controls before I already created a package called Kondrat Easy by 49 00:04:24,880 --> 00:04:30,390 the state controller in that I have created a controller for each and every service associate in the 50 00:04:30,390 --> 00:04:36,120 UK, for example, for notices where we are trying to get the notices from the database from UI. 51 00:04:36,150 --> 00:04:41,850 We have a part called Notices and the Method Name and Associated Matter implementation. 52 00:04:41,970 --> 00:04:48,630 So here we know we always return the static response for all the controllers, but in future we're going 53 00:04:48,630 --> 00:04:52,560 to implement the actual business logic where we interact with the database. 54 00:04:52,560 --> 00:04:55,310 The final is how it looks for all the controller. 55 00:04:55,330 --> 00:05:00,830 Similarly, if you go and see for the contact controller, so it will save contact in quite a detail, 56 00:05:00,840 --> 00:05:01,890 detailed the database. 57 00:05:01,890 --> 00:05:07,650 I know here we should not supposed to use mapping because we are actually saving data into the database, 58 00:05:07,650 --> 00:05:09,750 but not reading the data from the database. 59 00:05:09,750 --> 00:05:12,660 So ideally in this scenario we have to use post mapping. 60 00:05:12,660 --> 00:05:17,790 But for now, since the responses are always static, no, we're not saving anything to database. 61 00:05:17,790 --> 00:05:19,350 I just keep it as kept mapping. 62 00:05:19,470 --> 00:05:25,440 But in future, when we are doing actual database interaction, we can always change it to post maximally. 63 00:05:25,560 --> 00:05:33,030 We have no account controller with the parties my account and it will return the static response followed 64 00:05:33,030 --> 00:05:40,560 by balance controller with my balance and Gotz controller where we display the court's details using 65 00:05:40,560 --> 00:05:46,860 the my cards, followed by a launch controller, the path launch with a static response. 66 00:05:46,980 --> 00:05:53,190 Now we have all the control as defined in the back and the they're going to use and the response that 67 00:05:53,190 --> 00:05:58,050 they're going to let us try and test in the next will do all the services. 68 00:05:58,050 --> 00:05:59,400 What's happening with the default. 69 00:05:59,830 --> 00:06:01,490 Thank you to you in the next by.