Java Spring Boot Mongodb Full Project

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
foreign and finally the Java project is here that's right I know you are waiting for this from a long time so basically after watching gojava after watching spring framework there was one question right what next how do you build a project and that's where I have a small project for you so basically we'll do this project together using spring Boot and we are going to use a database as well for data storage right and for this project we are going to use mongodb now why spring boot why mongodb will discuss that bit later and also we need a front end right and for front end we are going to use react now basically in this project we are not going to build react application let's say we already have the UI ready now we have to work on the backend part so the back end part will be done with the help of spring Boot and the database will be mongodb even before looking at the project there is one particular question in your mind and that is is it a good time to watch this video maybe you don't know springboard maybe you don't know mongodb how will you understand this project so I am making this video considering two situation the first one is what if you know spring Boot and mongodb the basics you are at the right place is because you understand how will you use your knowledge of springboard and build an application and also if you know mongodb Basics you will know how to use the mongodb cloud which is atlas now what if you don't know this Technologies and that's the beauty now I'm making sure that when I'm explaining you the concepts at least you will understand the flow of a project you'll understand why I'm doing certain things and why exactly that line of code but yeah if you are if you want to do it by yourself after watching the videos that's where you will get stuck but of course there is different way of learning stuff sometimes you have to learn from the basics and sometimes you have to come from top to bottom okay this is what you can do in the project and now let me learn the basics so it doesn't matter at what stage you are you can enjoy this session now let me talk about the project which we're going to build so the project is actually very simple this is a project basically we are building a platform for someone to get a job and what if someone want to hire someone so basically this portal or this website is good for both the employer and for the job Seeker let's say you're a job seeker and you are looking for a job I know this is a very basic UI but again as I mentioned right the idea of this video is not to understand the UI part the main thing is the back end so I wanted some UI so we have it here and you will find this entire project the UI the back end in the description so you will get a GitHub link and you you can access the project and you can run on your machine okay so you don't have to type everything by yourself don't worry okay so let me click on this get job now so basically I'm looking for a job and these are all the job descriptions which I have so these people are looking for candidates who know so let's say if I talk about the first one they're looking for developer and basically they're looking for software engineer okay I've just typed the description the way I want it it doesn't matter you know the grammar is not may not be perfect the technology might not match we're just here to learn right so let's go with that so we got some description looking for software engineer who can work with spring Boot and mongodb and react okay you are watching the right project then uh the experience required is one year it should be year by then that's fine uh these are the skill set required in terms of Technology uh then we have the same profile let's say if you go scroll down uh we also have Junior data scientist uh spelling mistake here but you can ignore uh so data scientist who has end-to-end project experience that's great 12 years I'm not even sure if data science is that old but anyway it's my data I can do whatever I want with that okay so skill set required Python numpy and those stuff okay so this looks cool right and also we have an uh requirement for editor uh who knows Final Cut Pro and you can use my Mac Studio uh the actual editor is not using it so I'm looking for someone else okay doesn't matter so let's say these are the profiles we have here and now let's say if I have a lot of job requirements let's say one thousand or ten thousand how do I search for my specific requirement of course you can use a search box here so in this search box of course you can particular profile let's say I want to search my developer so I can type developer here okay and it should give me the results so it is giving me all the results of developers you can say developer developer developer developer here but what if I'm not sure what profile I need but I'm sure that I know something example let's say I'm not I know threads so I can simply type I know threads and you can see it will find a profile where the skill set is threads okay so basically we are also able to search and that's exciting right because we are implementing a search feature and trust me if you do it by yourself using a Java code or any programming language it is very time consuming and we have to write a lot of lines of code so we'll understand how do we do this using the mongodb atlas so here let's say if I want to search for maybe I'm looking for a job only in Mumbai so I can type Mumbai you can say it will give you the jobs which in the description where Mumbai is mentioned so basically for sure when you search for something we are not just searching in a profile so let's say this is a profile here this is a description this is the number of years of experience required and these are the Technologies you should know so basically we are not just searching in the profile we are also switching for the description and the technology okay maybe it's like more of a Google search which we are trying to build it will be quite awesome right and also what if you want to hire someone maybe if we want to post a new job so let's say in my office I need a requirement of a blockchain developer so I can click on higher talent and let's say job profile I would say blockchain developer and number of experience required is to let's say description person should be familiar with ethereum developer who knows how to make dabs that's it and then the the requirement is let's say the person should know JavaScript anyway we don't have a option of solidity here but again I wanted to keep it light so we got JavaScript there you can change the UI the way you want it's all about the submission which you do for the server so when I click on submit and if I search for let's say blockchain developer now is it there it should be okay let me refresh so you can see if I go back to this page if I go back to get job now we have a requirement for blockchain developer cool right and if I search for dab okay you can see we got the developer here okay so this is what we want to build now for this of course the react app is ready so I will show you the code update but will not be writing the record by yourself but we it will be requiring a spring boot so we are going to build this with spring Boot and we are going to use mongodb in the back end so let's get started so we'll minimize this screen I don't want this and in fact I wanted to show you the vs code so this is basically the the react project which we have so you can see we have multiple files here this is for the form this is for the feeds what you see all the developers all the job posting and you can say the request is getting sent to the server again if you don't want to use react in the front end you can you can use normal uh UI as well or even if you don't want to touch the UI part I'm not a big fan of UI by the way we can use the apis calling maybe you can use Postman to test these apis or we can use Swagger okay so we'll use all those things in this project I know it's quite exciting so let's get started okay so what we'll do is first of all let's create a project from scratch now what are the Technologies we're going to use here so we are going to use IntelliJ for Java we are going to use the database which is mongodb now why I'm choosing mongodb here why not our other database see the thing is there's a huge debate between SQL and nosql database databases which are good I have made a video and as well before this so you can find the link in description which talks about what is nosql so basically just to give an idea there are different types of databases available you can categorize them as SQL and non-sql in SQL we create tables right so we have a database in database we have tables so in in nosql basically we don't maintain the structure now why it is important is because when SQL got famous the at that point it was around 1970s at that point the memory was very costly so we have to make sure that we use minimum storage and we can install maximum data and that's why the SQL type of table makes sense now if you talk about the current world we have so much of data which is unstructured you can't actually create the columns based on that so what if your table is created and now you want to add a new column trust me it's a big headache in SQL that's one so basically we don't want to use SQL here the second one is you want to scale your application you want you want to have replicas of your of your database it is very difficult to do it in SQL of course you can have replicas but then it's very difficult to sync it so non-nosql database excel in that and we can Implement that with the help of bongodb so mongodb is a nosql database where you don't have tables what you have is documents so if you want to relate it's very easy database database is there on both the side in SQL we use tables right which is which has data here we have collections so we can have tables related to collections in SQL you store your data in the row format right so if you want to represent a particular entity let's say I want to store my information my name my age my phone number my email ID that becomes one row now that in no SQL becomes a document now the way we can have multiple rows in SQL we can have multiple documents which is a part of a collection that makes sense right so basically whatever data you're storing in fact the data which you have here this is a profile this is a description this is the experience and this is a technology you know so this becomes one document and if you have multiple data that multiple documents okay and we don't have to install any software for mongodb because we are going to use the cloud service and trust me this skill sets which we are going to do in today's session is very important okay so we I already have a IntelliJ on my machine which is entity Community version we are going to use that but then we want to create a spring project right and since we have a community version I'm not paying for it so we have to make sure that we have that second we want to create a service we want to create a mongodb service right so basically what we need to do is first we need to get the account on mongodb Atlas okay it's very simple you can just click on it and the important thing is it will not ask you for credit card information hopefully let's see if that is asking for you uh so I will sign up with my Google account and this should be a quick process so click on submit you can choose your email ID and you can choose you can click on submit I normally prefer to have Google login everywhere so that I don't have to remember the passwords so it says welcome you use your account to deploy a cloud database okay that's what you're going to do and you're still building it okay so basically it is asking you some questions you can just enter okay we are here to learn mongodb whatever application we are building we are building content management and then preferred language so basically we are going to do that with Java now that's the beauty about mongodb okay which is you can use multiple languages here now since we are going to use Java so I can click on Java here and click on finish now if you're getting confused how exactly that document looks like so if you have ever worked with JavaScript so JavaScript object you know how you create that's how the document is getting stored so basically that's a Json format for us but in the storage it is getting stored as Beason which is binary sun right which is Javascript or we can say Json to make it easy okay you're still loading the page maybe the Internet is slow on my side and that's why it is we got our story the only thing is it will ask you what type of service you want okay so if you can go for serverless you can go for dedicated but you have to pay for it now since we are into learning stage we can select the free one so you can you can click on share and you can click on create it will create a cluster for you now now of course this is not a point where we talk about cluster imagine you're getting these services and the beauty is you can choose any of this cloud service so mongodb behind the scene will allow you to choose AWS or Google cloud or Azure so we are going to use AWS here okay so region is Mumbai by defaulty selecting the good things uh don't need to change anything here the only thing I want to change here is the cluster name I will name this cluster as thalisco and click on create cluster the next thing is it will ask you for the username and password to protect your database right so if you want to connect you have to enter the username password so you can see we have the root by default I've entered this before as well so it is taking the default values so you can enter whatever data you want to have I'm just typing root and root and I will click on create user so my user is created quite simple right the next thing I want to do is I will be using this from the local environment so I'm connecting my application which is running on my machine with the mongodb address us so we have to enter the IP address I want to protect only I want to protect this by allowing that only my machine can use that database so I can click on add my current IP address click on that and click on finish and close so by doing this you got your database deployment so as you can see our database is created now what's the next step in fact we got our cluster not a database if you can see we don't have a database yet so it says database deployment but then we need to create a database so you can see we have an option of database here when I click on database we already have one now what I will do is I will click on browse collection so basically we don't have a database we'll create that in this so this is the dashboard and we can see we have an option of monitoring but will not do all those things let's click on browse collection and as I mentioned the tables in SQL you can map it with the you can wrap it with the collection here so let's click on the browse collection and it's trying to retrieve the database and you can see we don't have it yet so databases node of database is zero so we have a cluster ID which is the telescope and we need to create a database now so click on add my own data so basically you can also load some sample data set which they provide you so if you don't want to have your own database or stuff I mean if you don't want to have your own data so you can click on load sample but since we have our own data we can click on add my own data here and it will ask you for database name so I will say this is for job listing and then the collection is job post in fact you know what I will do I will also keep my database name as telescope just just to make it easy and the collection name is job post so click on create okay so as you can see we got our database name as telescope and we got our collection name as job post and as you can see we have enough multiple options here we'll see this aggregation search index later so we will have a separate video on it and I also try to explain some of the more features but as of now just to keep it simple let's say this is our data here and as you can see we don't have any data it's empty so we can click on insert document because I want to see some of the listings some of the jobs so I will click on insert document and this is how you can insert and the beauty is this data looks like a Json format maybe a key value pad just to simplify that now I don't want to enter the data by myself I already have some data set ready with me so as you can see this is the data I already have here so I will just copy paste this part into this so as you can see I have inserted data now how this data looks like so you can see we have an ID here we've got description the same thing which you were able to see on the page we got experience profile and the Technologies which you know and you can say this is an array basically in Java now how can you relate this with Java pojo so in the pojo we did a class right and we have different fields example if you talk about a person a person will have a name age now that thing comes as a key value pair here so you can say this is age this is name and stuff so I will click on insert it will insert some 11 10 11 records and you can see how many records we have so in total we have 10 records that's great so even this this enough in fact sometime in real application you'll be having a lot of data to play around but let's say we have 10 and I want to fetch this data from my Java application okay so remember this this is the thing we are building so if I remove the entire stuff this is what I want to fetch so what I will do now is so this thing is working because I already have this project ready in my IntelliJ so if you can see I was just doing some testing here so the project is ready but we are not going to use this project so I will stop this the moment I stop this project from this springboard so you can imagine we have two different applications running the front end and back end so what I will do now is if I go back to my browser if I refresh you can see data is not coming you know why because the server is not running of course you can do you can print some message here the server is done or something of course that comes as a later part but as of now I'm not printing any other you can check in the console log it will show you the other blood server is not running or something okay so this is what I want to make it work and as I mentioned before you can also use a Swagger API so let me show you how what Swagger API looks like of course we are going to build this the entire stuff one by one so let's say if I run this project and if if I go back to my browser and here I will run 8080 port and you can see the Swagger API is running with that so if you don't want to work on a UI part you can also use Swagger and you can see we have a post controller here and these are the options you have so even if you don't want to use frontend you can use Swagger you can get all the post so you can see if I click on try it now execute it will show me all the documents now this is coming because the server is running okay now if I stop the server even this will not work so if I click on execute now so you can see we got an error in fact this Swagger itself will not work so you can see that this is not working so if I open the Swagger homepage it's not running so we have to make it work okay now for this what we're going to do we have to build the project from scratch so basically we have to go to one of the page which is star.spring.io now basically you you can use IntelliJ Enterprise version you can use Eclipse you can use SDS your choice but I'm going to use IntelliJ Community version where you don't have an option of creating a spring project by default so I'm going to use start.spring.io which is spring initializer now in this we are creating a maven project so basically imagine you're creating a project and you need certain modules you need certain project structure so you can click on Maven project here and we are going to use Java language the next thing is you have to specify the version which is 2.7.4 the only thing is if you want to use Swagger this version does not work properly so I will change the version once the project is created but if you don't want to use Swagger this perfectly works the next thing you have to mention is the group so I will say this is com.isco and the artifact is job listing okay that's the project and we can keep it as it is this is the package name that works for me and then we got the Java file so we have to create a Java file here so once you deploy the application when you export when you create a package the packaging will be happening as a jar not bar and you can choose a Java version 11 works so we can go for 11. now that also depends upon what setup you have in your machine so you need to have a code Java setup basically a dedicate setup uh 11 17 works you can use that 19 just launched so you can use that as well but I'm a I'm a person who prefers stability so I will go for 11. the next thing is you have to add dependencies now what are the differences when dependencies we need here so basically we are building a web project so I will use a web spring web okay uh the next thing I will need here is mongodb so I will search for mongodb so basically we want to go for spring data mongodb and the beauty is you know all these things which will happen happen with less amount of lines and trust me it's beautiful so if I click on this you don't have to write a lot of lines and Sometimes It's Tricky when you have a lot of lines so I will click on generate and you can you can see we've got our project here so what I will do is I will just unzip this project so you can see this is the project which is unzipped okay so I'm making sure that that project belongs to idea project so in my uh user account I have this folder which is called idea projects I'm equipping that project there so that I can open that interview from IntelliJ so I will open IntelliJ of course when you open this you will not say the project so this is what you will see and this is my demo project which I've already done and now I will click on open project from here so basically when you open IntelliJ IDEA of course this is the community version free one so I will click on open and navigate to the idea projects and in that I have a job listing click on open okay we have to trust we don't have a choice and we got the empty project as you can see we don't have a code here but I just want to verify if my pom file has it so Palm file you can see the version is this this will may not work with you so I'm going back to 2.5.7 there's not much change between these two versions and it perfectly works so this version normally works with swagger and so you also do it when you are trying this also try with the older version and once it is working then try to change the version to see that if that is working okay now these are the dependencies which I have right so if I it is you can see it is downloading dependencies whatever Java files you need in this project will be downloaded but till that point we also needed two more dependencies which is for Swagger now how will you get this dependency it's very simple uh you can go to one of the website called mvn repository and you have to get this too the Swagger UI and Swagger 2 okay so you can click on that search and you can click on the first one the version which normally works is you can go for 2.9.2 you can see we have a lot of views here so I will use this particular version copy this go back to your code and paste the same thing you can do for the second one with the Swagger 2 so you can see I'm searching for Swagger 2 here the first one and the same version make sure that you have the same version so that you will not get any conflicts and paste so you can see we got these two libraries and if I open my external libraries you will find all this uh files here so you can see we've got mongodb we got spring framework files and there should be for Swagger as well it will be there don't worry you it will be there so let's say if I minimize this now so we got swaggered in case it's always good to refresh your memo and dependencies you can also click on this Maven and click refresh it will make sure that you have all the dependencies required anyway otherwise it will give you either here if it is not working you can see we have all the jar files and now it's time to write our code the first thing you will do is if you go to your main see ultimately we have to connect our application with mongodb right so we have to specify where you do you have your mongodb do you have your mongodb in your system or you're trying to connect the cloud that's first second what is your database name what is username password of course right for connection you have to pass the credentials as well so what I will do is I will do all the configuration if you can see we have a resource folder in which you have application.properties this is where you do the configuration now it's a configuration I need here so basically I need spring dot data dot mongodb dot URI so this is the first property of your assign spring dot data.mongodb dot URL and we have to assign a URL now from where you will get the URL or URI in that case you will go back to our mongodb the cloud and you can see we have we should be having an option of if you go to overview you can see this option of connect okay so if you click on this connect here it will ask you for what type of from where you where you want to use this URI so I want to say I want to connect to an application so click on this now it will ask you which language you are using so we are doing it with Java and the version is this and this my friend is your URI so I will copy this and paste done okay the things we need to change you can see it's a long string the things you need to change here is you can see this this is your cluster name and this is the URI but password is not mentioned here so you can enter the password manually so the password for my machine is root so username wrote password is wrote and that should work the next thing I might do is this is where I want to specify the database name as well so basically this is the property so string dot data dot I mean spring.data.mongodb.database and this is where you have to mention your database name and I guess database name was the list itself so we'll skip it the Disco I can just verify once again I can go back to the collections part here and you can see we have a database which is telescope so use the same name so database name is name is you can have a different so make sure that you enter your database name here okay that's it this is the property you have to mention and now I can simply close this I don't even need the form file close this okay now what next now we have to write a code to make it work so what I can do is I can go back to my Java and you can see we already have an application here now the thing is I want to enable this Swagger API and as of now we don't have a swaggered API enabled if you don't want to use Swagger you can skip the entire step and since we are not here to learn about Swagger and stuff so just to give an idea it helps you to request to your web service okay now if you don't want to use Swagger you can skip this step so if you can see I have just copy pasted and this is the only thing we are copy pasting okay because we are not here to learn about Swagger so the only thing you have to do is for the application you have to enable This Record too and we have to import the package for this uh we have to we have to make a bean because this is how this Swagger will load it as I mentioned before this is an optional step for the project so I'm just I'm not explaining this stuff because I just wanted to show you how do you build an application uh let me import the packages okay and the good thing is I will make sure that this budget is available in your uh in the link in the description as a GitHub link okay so this is done we have done with our main okay now this is only for Swagger and we are not going to use this file anymore so we have just enabled this Swagger okay but then now I want to send a request to the server right now how do how do we do that so in Spring framework basically we use something called Spring MVC which is model view controller and here we have to first create a controller and you can see we don't have a controller here so what I will do is I will create a new class and I will this is a class basically the name would be let's say post controller because now we are going to work with the post right job post so instead of saying job post every time I will say post controller and that's our controller here now how do you make this is the controller it's very simple you you make you make this controller with the help of flash controller okay and in this you will write your methods so for every request you want to send let's say I want to fetch all the post so I can use the URL which is localhost colon 8080 that's these that's the port number where the server will be running and I can say slash all post it will give me all the post what if I want to submit a new request so I can say slash post with the post method so the first one was get method the second will be post method and what if I want to search based on the term and for that we can use again a get to fetch but in this particular video we are going to focus only on how do you get all the records okay that's it or maybe I can also do it for the submit part but the first thing I want to do is I want to enable this Swagger right so in that case what I can do is I can create a method and this is only for Swagger's so I can say redirect so every time someone send a request for the home page it should redirect to the Swagger page and to do that we have to import HTTP servlet response response okay so basically what I want to do is every time someone requests for the home page okay we have to do the mapping for that as well which is request mapping so when someone requests for the home page we have to mention that hey call this Swagger API okay and to do that what I will do is I will say response dot redirect and in bracket I can mention Swagger dot Swagger UI dot HTML and it is giving me some okay it's asking me to add the exception so I will say those are exception and that's it the Swagger UI will be ready let me just prove you that now to prove that I will run this application first I will right click the main uh application and say one okay it will take some time I hope it will work without any error okay you can see it is working and how do I verify that so I can just go back to the browser and okay Swagger your API is not working refresh enter and you can see we got our Swagger API it's simple and this is our controller name if I click on this controller you get all these options by default but I don't want this options so in that case I can again what I can do is I can just write API ignore API ignore okay that's it so when I say API ignored I need the server go back here and now we're going to refresh so you can see it has removed all the predefined requests we want to Define our request by ourselves so I can say no operation defined in this specs okay that's good so what I can do is now I can Define the request now what request I want to send so basically here I want to have a option of fetching all the post now for that I can create a mapping so basically I want to okay what what mapping we want to do we want to map it for all the posts so I can say public which will return the list of posts now what is this post hold on so for a document I also want a pojo right which will map the document and pojo okay we don't have a pojo here and the first and one more thing the post controller should be a part of a controller right so let me just move that so it's a new package and it will make this as a controller I know let me just move this I want to create one more class here in fact one more package first package and this is where I will keep my models and in this model I want to create a pojo now what pojo a mapping class which will map my Java class with the document so I want to name this as post itself the job posting okay not the post method of HTTP the job posting and here I want to have some variables now what are the variables I need so if you compare with the database if I go back here so you can see we have a description here let me just increase the font size a bit or it's not visible so you can see we have a description we have experience we have profile and we have technology which is an array the same thing you'll be doing here okay so what are the things we need in the post so first of all we need a profile right so if you remember database we had profile description Technologies and experience so let's put that so we got first thing we got we are going to get is the profile then we are going to get the description then we'll need the experience and the technology so we can say text that makes sense okay but then this text will be an added and that's done of course you can keep this bracket here as well that works and for this I need Getters and Setters so right click I will say generate uh I want a data for all the fields and click on OK and with this I also need a Constructor generate a Constructor with in fact I I want a blank Constructor without any field and we also need a two string in case if I want to print that's it so I will say right click generate two string okay so we got our post right it's so simple okay so going back to the controller we got our post now so we can import the package that's imported and we have to also import the list that's done so if I want to fetch what method should I have so I can say get all post even that works and name doesn't matter right so we can say get all posts and now I want to do a mapping for it so when do you call this particular method so you see of course the home page is done now homepage Returns the Swagger page but let's say in this Swagger if I go back and I want to have let's say uh are you wonder if it's request for all the posts it should fetch the post so in that case I can just go back here and for get request I can say get mapping and the URL which I want to have is let's say all post so if we are requesting for all the posts or maybe I can simply say posts that works right so we can say posts and it should return the post but then how do I return the list here verify it will return empty that works now if I want to fetch this data what I will do now is I want to return the list how will I get the data so of course I want to fetch this data from database right now if you know kojava jdbc and database we have to write a lot of steps right but not in spring so we can use spring data remember we have added one of the library for spring data this one spring starter data so basically we can use that to fetch data and for that what I can do is I can create a new uh interface basically not the class interface and we'll name this as let's say post wrapper or we can say repository okay now this is this is how you will fetch data okay you don't have to write any methods any implementation I know that sounds new for some people they're like hey without writing any queries without writing anything how can I fetch data let me show you the magic now so what I can simply do is I can implement this interface or not implements I can extend this interface with the repository and in this you have to mention two things the first thing is uh what type of data you want to you want to fetch which is of course which is of post type so basically this is the mapping uh so whatever data whatever document your fetch will be a type post and the next thing is the primary key basically but then we don't have a key so I can keep it string I'm assuming that it will be string okay so let's get it that way uh and then that's it we don't have to write any methods in this you don't have to create any class which implements this the repository will take care of all the code operations fetching creating updating and deleting okay that sounds fun right let me show you so what I can simply do is once I got this Repository remember I don't I'm not creating any class or stuff I'm just going top here and I'm saying create the object of post repository not the object but not not the object of the interface but behind the scene the spring framework will create a class for it it will create an object for it you don't have to do that and I will simply say this is a Zappo and I will just map this as Auto wire So when you say AutoVoice it simply means spring will create an object for you and it will map it that's it that that auto wiring part and you don't have to do anything else just come back here and say repo dot find organ so that we have so many methods we have not written those methods it's in build in repository that's it I know you will not trust me at this point the only way I can prove my point here is by restarting the application and I know you might be saying there is a difference between the time here it's just that my camera was not working properly so I have to take a pause and do it again and if I refresh oh okay so that we got all post and if I click on this hopefully this will work it's already been a lengthy video I will click on try it out execute oh okay we got data but it's not printing data here oh something went wrong here so we're requesting for posts and it is requesting for the Post find all okay now what is missing remember when we go for the Post repository we have mentioned that there's a post right there should be mapping but post is not aware of that so what we have to do is we have to say document here and we have to mention which collections this will map to so this will map to okay what's my collection name if I go back to my thing it is drop post so we'll just come back here and say job post now this should work so if I start the server there's no error and if I go back to my Swagger API hopefully this time it will work execute oh okay so that we got the data this is what we wanted right oh it's working and if you look at the code it's so simple we just got a controller here where we are doing the mapping we got the post repository and nothing much here we're not declaring any methods or stuff and if I look at the post this is just a pojo so fetching is working that's awesome how about posting the data what if I want to submit data Maybe I want so apart from this all post I also want to have post which was submit data a post method let's try this should be simple so I can create I can simply create another method here for posting data what if I want to get my own records so I can create a method which will return the post itself so whatever post you are submitting it will return that and I will say add post of course method name can be anything and okay the mapping what type of mapping I'm going to do any guess we are submitting data so for submitting we have to use post mapping and here we have to specify the U model I can I say URL post see when I say posts for get it is it will fetch okay so in the method we are specifying it's get method so it will fetch in post we are submitting data okay this post and post might be confusing but this this post is basically the job post this post is HTTP method but then when you submit data we have to also accept it right here so I can use a request body here to accept now say if you don't understand all this concept say flow is something very easy right easy right but what if you want to do do it by yourself don't worry I have a spring boot tutorial you will find the link in description which explains each and everything properly this is a project video right so I'm just focusing around the project part okay so request body and here I can mention the object where it will receive the data so I wanted to receive data in a post format so whatever data you will submit from this from the client side will be accepted here in the post object I know that's something which spring is amazing at okay once you've got the data I can simply say repo dot uh okay how do I which method I have to use for saving I should I think there's a save method yeah there's a save method which will accept the post object that's it that's it no need to mention any query no need to mention any code for it we are done with this but I guess save return something okay what I will do is save Returns the object of course so we can simply say save it will return the post object and returning it that's it and here I think it should work if I go back or we have to restart the server so you can see we are fetching data we are also submitting data and if I go back refresh okay both okay so that we got post here that's that's awesome and you can see it will give you some demo data as well so that it is already mapped right so I want to submit data I can say description okay description or first of all I will set the profile profile I'm looking for is blockchain developer and here description can be ethereum developer with dapps experience in Mumbai or maybe I can say this time I can say Pune okay experience I need only two years Blossom developer technology what you should know let's say you should know Java I don't know why you should know Java but let's say Java then we can say solidity and you need to know XML I don't know why but let's say XML and let's click on execute it should work oh it worked you can see that we got the data but then we are getting the data on the client side right let's verify from database so if I go to database now and let's see if that is there Let me refresh the database hopefully it should be there it should be there it should be there if I scroll down down down can you see that we got the blockchain developer ethereum developer whatever we have written that and the array of your skills awesome it was so simple right so basically we were able to request data we were able to save data but of course at this point we have only worked with the Swagger part we have not connected with the UI uh we'll do that and also there is no searching option okay we have not created something for searching we'll do that in the next video so in the next video we'll also try to understand how will you use mongodb what is the feature it provides and then we'll explore one more application which is called mongodb Compass okay which is a UI basically I'm just everything which I'm going to do I'm just going to the browser right and I'm accessing the cloud service what if I want to access everything on a desktop application sometimes it's very easy to access a desktop application then going to the website so we'll try to explore that as well in this video we'll focus on two important features of mongodb the first one is the mongodb compass and the second one is mongodb atlas search that's right search because remember the first video if you have seen it so basically we were able to search the data from the document and irrespect you where the data is is it a key or in the values okay somewhere in the description there was something mentioned it was able to search search for every text not just the title okay so let's try to implement that so how will you get the compass so there should be an option here otherwise what you can do is I can just go to Google and search for search for mongodb Compass and this is the website in fact you can directly click on download but let me just go to the website first so this is how the mongod AP Compass website looks like so this is a GUI for mongodb that's right so basically you can access the mongodb atlas from the browser in fact you know we have multiple options you can use mongodb on your local machine when you do that basically you have to use the console and you have to type a lot of commands and if it of course as a programmer it's a good thing but if you want to use a GUI tool you can use compass for that as well which connects with the local system or you can use Compass to connect with the cloud as well you have a choice so this act as a GUI for both and for this example we are going to use compass for the cloud so you can click on download now it will download and it's a straightforward setup you can just click click next next uh nothing difficult it's just that you have to specify which version of compass you want to download uh which platform you're using and what format you want to download so click on download it will give you the setup now once you click on the setup once you click on next and install it's very easy nothing fancy there the only thing is when you open mongodb compass you need to do some configuration that's it when you open it and I'm just I've just clicked on it it made it might take some time so this is how your mongodb compass will look like and you can see it will ask you for the connection now mongodb Compass is not sure do you want to connect with the local machine or from the cloud now based on that if it is a local address this is support number you can click on connect but I think in my machine I don't have a local setup you can see connection reviews I don't have a local setup but what I have is I have a cloud and to connect the cloud you have to enter the URI oh from where you will get the URI remember in the project we have done that but if you are not following the project that's completely fine when you open your uh let me just start from the cloud itself so when you go to the mongodb atlas and when you have your database here you can click on connect and when you click on that you can see we have multiple options but this time we are going for the mongodb compass and the beauty is they both have the same URL so if I click on this and I will say yes I have mongodb compass and the version is this and later this is the URI so just copy this and for my database I have a user name which is root and the password is also root so I will replace that with with this so here I just have to replace this part with root that's it and click on connect I hope it will be connected oh it is you have to also mention the database right why does giving test database I want my database it should be that you score let's try so click on connect and it says connecting oh it connected Can you see that you got your host and that's the beauty of mongodb so every time you create a database it will create multiple replicas of it of course we have to be fail safe right what if you have only one server and that goes down you need a backup servers so mongodb for every database it creates two extra copies for you we call them as replica set so in total you have three working databases at the same time and you can see that is what you can see here on the left hand side if I click on databases here it will show all the database which we have created and we have created only one telescope it was by default and if I click on telescope database you can see it is giving you option of the collection which is job post if I click on this we got all our records so it's better to use the GUI than using Cloud the only drawback which I can see is if your machine is slow Compass will give you issue that time you can use cloud but it's not that heavy normal machine can take it up so again it's depend upon the developers what they want to use I normally prefer to use the cloud service Some people prefer to use the GUI tool to do everything or the desktop application but again that's that is preferred depend upon the people okay now this is the first the first show the next I want to implement search feature Beauty about Atlas search so in the mongodb the atlas we use something called a search option remember whenever we work with data and we have created database right and normally we only had around 12 13 records or 11 records in normal databases which is production grade we have thousands of Records oh that's less we have millions of Records now if you want to search for a single word from all the records trust me it's very time consuming so basically as a user of that application when you type you have to wait for minutes to get the output and we don't have that much of time right so how will you speed it up and that's where in the database concept we have something called indexing so every field every text will be indexed so that it will be easier for search okay but then how will you do that do you have as a developer do you have to do everything not exactly if you can see the the same option is there in the on the cloud as well okay so you can click on this index and you can create index from here but since as I mentioned before I'm a big fan of cloud so I will be doing that from the cloud itself so let me go back to the cloud service and if I go back here okay so I will click on my collections there is an option of creating a search index so if I click on this index okay this is where you can create your index so it says make your data more discountable with Atlas search and I can create the index here the only thing is when you're creating the index it will give you two options Visual and Json I am a newbie to this I will click on visual that's what we do right when you learn something new you go with the basic steps keep it simple learn the first layer and I always believe in the learning where we have onion uh peel like learning right we have different layers so you learn the basics and then you'll learn the advanced part then you learn the more advanced part so if you click on next it will ask me for the index Name by default the name will be default keep it that as it is you can change it but let's keep it default and you can mention what database and collection you want to index I want to call in I want to index the job post if you have multiple databases and collection it will show you the options you can choose one and click on next and that's done we have to click on this create search index now before I do that in fact let me just do that and I will show you something this interesting thing called index Fields there's option of Dynamics so what happens is by default it will in the it will try to index everything from your database or everything from the from the collections it's good but then if you have a huge database and if you have huge number of documents it is very time consuming because it will it will take a lot of time second it will consume lot of memory and sometimes we don't want to do that why you will not do that because what if you have multiple fields let's say we have 8 or 10 fields in the document and not everything need to be indexed maybe you can specify these are the three in the three fields which I want to index example in our case maybe I want to index description I want to index the profile that's it I don't want to index at other things I can specify that with this static mapping by default is dynamic it will map everything I can also make it static now even for 11 records it is taking so much of time maybe it is done I'm not sure let me just refresh this so you can see we got only 11 records and it is working now so the mapping is dynamic mapping here and if I yeah that's done so indexing is done now let me just go back to my collections so that's the first thing if you want to apply the search you have to first create the index and now using that index we can actually test it uh so okay how do I test so let me just go back to search there should be an option of testing as well click on visual editor okay so if I click on visual data you can see we have an option of search tester it is indexed right you should be able to search now example let's say I'm searching based on Java so if I say Java and if I click on search it will show all the documents where Java is mentioned in the profile in the description or in the technology the example in the blockchain developer we don't have Java mentioned in the profile and in the experience in the description but it is mentioned in the Technologies if you can expand this you can see we have a Java here so basically everything is indexed it is easier to search and you can use this search from the from the client side but you will say hey that works right I mean this is working from the cloud what if I want to do that on the Java code that's tricky right how will you do that let me show you how to do that so if I go back to the collections and if I click on aggregation can use that we have an option of aggregation now this is where you can create a pipeline what you want to search and you it's not like you you can search only one thing maybe I want to search based on Java and even for Java let's say we have 50 records so let's say in total we have 200 records and if I specify Java it is giving me only it it will it is giving me let's say uh 50 records now out of 50 records I only want five and that too in this sorted order of experience can we do that so basically you can see I've applied three filters the keyword Java second I want to sort it and I also want to limit the number of posts which I can see so we can do that from the aggregation uh so if I click on aggregation here it's taking some time for the aggregation Builder so if you don't apply any filter it will show all the posts so in total how many posts we have uh so we can see we have 11 documents here but then if I want to apply a filter I can do that by from here so you can see we have an option of stage by default it will give it will show you one stage I will click on select now you can you can basically apply multiple operators here the first operator which I want to use is search so if I scroll down you can see if I have an option of search and this is what it will give you so I will just remove this extra things from here now index what index we have remember when we created the index we have to also mention the index okay so if index has not specified or not created this will not work so you can specify the default but even if you don't mention that's fine since it is we have a default index we don't have a different name so you can skip this part next you can specify the query what you're searching so basically I'm searching for Java in description or maybe I can specify in text now you can see it will only it is only giving you eight documents so out of 11 documents it is giving you eight documents here which has Java in it okay that much that makes sense now you will say what if I don't want to just search Java in text let's say I want to do I want to search for Java in description profile everywhere so what you can do is you can make this as an list so we can say list of text comma maybe I want to search in description maybe I want to search in profile so basically we are searching for Java in everywhere and also we can we only got eight documents which is there so you can see we got Java and profile uh we got Java in profile okay we got Java in Technologies this time played and we got Java in um we have Java here so basically this is how you get it this is how you apply search what if you want to apply a sorting on this how I want to sort this I want to sort this based on the experience you can see we got experience 10 we got experience five I want to sort in ascending order so what you can do is you can apply a stage here that's what aggregation is pipeline right the first search then sort it then limit it so we can expand this and I want to sort so we can just scroll down here and you can see we have an option of sort now it will ask based on what field you want to sort I want to sort based on experience and sorting order so if you say one it is ascending minus one is descending if I'm not wrong yeah so one is ascending so you can see the experience we got experience here the first profile has experienced one second profile experience two it is working you can see that we got expense five experience 10 and then this goes on it it keeps increasing right so the Sorting is also done and that's eight documents but I don't want eight documents I only want five documents again I can apply a stage and this time I want to do it for I want to limit right so limit should be there yeah limit is here and it says how many documents you need is mention the number I will say five and that's it you can see here it is loading sample five documents and if you only got five documents it's that beautiful right and yeah you got your pipeline now you will say okay that the pipeline is done here itself what if I do that from the code we still are we have this we have still not done that right okay that's one thing we'll do that okay in the next video we'll try to implement this feature in the Java code but before that I want to mention one more feature of mongodb now mongodb Atlas has one more feature which is client-side field encryption now what it means example let's say you have a client application where user is submitting data now it can be your name it can be your age it can be your email ID that that works if anyone can see that even I don't think email ID should be shown email ID SSN maybe there are some sensitive information so you have a bunch of data with you and some of the data is public is okay for you but I want to encrypt some of the fields maybe email ID SSN number or whatever fields we have how will I do that what I want is from the client side the moment your data goes on the public database of course right in mongodb behind this it is using AWS Azure gcp which is a public Cloud I don't want to compromise my data based on their security how about encrypting the data and sending it there so basically it provides you something called field encryption where you can specify which field you want to encrypt from the server side okay let's say this is your server that's your database the moment you send your data from server to database it will get encrypted okay so the what you say when the database is encrypted but what if you want to get data back when you fetch data from database it will be coming in encrypted format itself but the moment it is received on the server where you have your driver it will get decrypted okay so basically you don't have to do that encryption decryption uh Atlas will take care of it of course we're not going to do that in this course because that's a way out of the curriculum but yeah we can do that again try that there's some amazing documentation available I will try to put that link in description as well otherwise you can search for client-side field encryption using mongodb and you will get the documentation now basically till this point we were able to create a spring boot project which has basically some controllers using which you can request to the database which is in mongodb and we have some documents available there we have a collection using which we are fetching data and then we were able to fetch data we were able to submit a new post right we are basically what talking with a job post application here and then in the previous video we have also seen how do we create a search index how do we create a pipeline and then we are able to filter data right so basically we were able to search we were able to sort data we were able to limit if you have not seen those videos first I would recommend you to watch the first two videos to get proper understanding what we are doing if you have already seen that let's continue so basically at this point we know how to do it from the mongodb aggregation pipeline console and we were able to get the data right but now I want to achieve that with the help of java so how do I fetch data from Java application whatever we have done here and I think that will be tricky right it will we have to write multiple lines of code multiple files to filter out and all the stuff let's see how complex that would be apart from that we'll also connect our application with the react project remember we have the react project we which was not working because we we stopped the earlier project which was working and then we are building the Java project from scratch so we'll also connect those two applications let's see how so basically uh the pipeline is very here right so this is what you've got but now that what I want is I want to do the same thing from java so maybe as a Java developer when you uh maybe we can create an API where you can search for a particular term and it should do those processing here now to do that it's not very complex okay so in the Java code which we have here we can add one more controller let's say let me just add one more controller here which is public uh it will return the list of post of course the same thing but this time it will be filtered right so the difference between in fact let me just write it next to or just below the get mapping this one uh so this should be similar right or maybe I can say search to make it simple so we are searching for something right so it should also return some data so I can say return repo dot find all as of now let's let me just go with find all and the request for this would be get mapping and I want the request type should be uh it should be for posts the only difference is in the post I will also specify the text which which without which I want to search example let's say I'm searching for Java so it should be Java but then I want to make it Dynamic so I can say text whatever is user is entering so if a user says Java this will be replaced by Java if a user says blockchain or maybe Mumbai so whatever text a user want to search this will get replaced but I will accept that in a variable so in that case we have one more iteration which is called path variable and I can say string text so whatever data is coming here example the URL is let's say posts slash Java now this text will be replaced by Java and that's what you will get here okay as of now we are just doing find all just to see if this works and whatever text you are passing here and how to identify that let me just run this code I mean restart this server and okay everything is working there's no error let me just go back to my browser and Swagger the UI let's refresh controller you can see we have three now so initially we had only two this time we also have a text search if I click on that it will ask you for a text or we have not um okay try it out it will ask for the text let's say if I say Java and if I let me be very specific it is Mumbai because we only have one or two with Mumbai post but if I execute you can see we have received multiple not just two if I'm not wrong you can see we have received multiples filtering is not happening okay we have to do something for that right now why it is not working is because it's very simple we are saying find all we don't we should not be saying find all we have to be very specific can I say search by text I mean whatever text I'm getting here it should search by text or maybe I can say find by text so I can say find by text but you can say it is giving you error because there is no method which says find by text uh that's tricky so what I can do is instead of touching our post repository which is very specific so post repositories extending repository here which provides you basic operation fetching data posting and all those basic features right good op current operations create read update and delete if you want to do something else you want to search based on your own condition that's where we have to implement it that's why we have to do some customization so what I can do is I can just you I can just create one more uh okay this should be a part of something else this should be a part of a repository package so I can say this is Repository and I want to move this post repository here and in the same repository I want to create one more class now or interface actually which is let's say for search search post or maybe I can say search Repository I'm just finding a good word for it so against the search repository that's it now in this what I want is I don't want to use any mongodb in already present methods I want to get my own so can I create a method in fact it's an interface I can declare it here so I can say find by text which will accept a string I can say string text right and it should return the list list of posts so basically I'm creating a new interface but then the only thing is this thing is not present in this spring data or mongodb features we have to implement it by ourselves okay for that what I will do is I will create a class which basically implements this I can I can say search or Repository implementation and this particular class should Implement our search repository as I mentioned we have to implement this code by ourselves right uh okay it says we have to implement a method which is this fine by text so basically we have to return a list right so what I will do is as of now let's keep it empty so I can say list of post and I will also make this as a final variable because it's good to have a final variable when you when you know that it will not be changed okay so I will name this as posts itself equal to it's an added list so I can say are they list okay that's it so we have created this added list here and we have to import the package is it done am I missing something here oh I'm missing a new keyword my bad okay so you can see we got the list here and the same list I will return of course at this point it will return an empty list right and I just want to verify if it is doing that so I will restart the server I think it should return an empty list it should not be giving all the data okay it's not working oh I forgot to one more thing this is a new class which we have created right and I want my thing to read this so I can say it should be component yeah one more thing in fact in the post controller we still have an error we don't want to say repo right wrappers don't have find by text what what where do we have find by text it is there in the search repository so apart from the post repository I need to create one more which is search repository and I can call this as s repo which is for search I'm very bad with names so let's go for this report and here we'll say this is auto wired so basically now we have two different repositories one which is getting the features from Spring data and second is from the what we have created and instead of creating this as repo dot find text we have search Ripper byte find text it is asking me for the text as well let's enter that so at this point think should work and we should get a empty string let's verify if that works let me just run this application uh no error let me just go back to my Swagger and if I say execute now it should return the empty at least that's the idea yeah so we are getting to empty right at least we are not getting everything now we have to make sure that we fill this up how let's go back to our code and we just need to change this particular method we have to fill this list I will do that it's quite simple actually if I go back in fact I don't know the code right so what I can do is I can just go back to my cloud and see the beauty here uh if I this you can see in the aggregation when we do all this pipeline here when we created this pipeline here there's an option of export to language let's see what happens if I click on this uh this is for this is the pipeline which we have okay for mongodb but if you want a language specific code this is for python what if you want to do that for Java this is a code that's it just copy this code and it will work oh not exactly we have to do something extra as well so we need to import you can see we have two check box here let's click on this click on this you will get the entire stuff so the first thing we need is this import libraries and copy and paste and if I go back here paste I need to import all this the only thing is uh I think mongodb client is not a part of in fact you know what I will do I will not just use import because there's some version issues and I was able to resolve that by not copying it okay the only thing you will need here is do we need a mongodb client okay how will I get mongodb client here okay it says we have to create an object okay I will not do that what I will do is I will just go back here and since we are using spring framework we have to we can do something extra here I can say client and I can say this is client I will just declare it I will not get the object I want spring framework to do it for me so that will reduce that line so we don't have to use this line now the next thing is to ask you for database connection now we already have a database connection but just to keep it simple I will use the same line I can use the entire code from here and paste it inside by Method here that simple okay it's just that now uh it's not no more mongodb client we're just saying client and we have to import all the packages for mongodb we have to import for the control space anyway we have already done that before right so this should be coming from the bson is it Basin uh yeah and then we have to import for mongodb collection as well from a client and then we have to in fact we'll change this we'll not be using find your table uh because when I was trying it it was giving some issues I found a solution instead of going for find a table we are going for aggregate ittrable you know why I'm doing that because this aggregate method returns a aggregated table so let's go with that let's import it for arrays as well and then this is your code I know this doesn't look good because it's not formatted properly so you can just do the formatting here so that you can see everything in one line so basically let me explain uh in brief what we have done so basically what it does is whatever we have done in the pipeline here right so this pipeline is converted into Java code so basically it is using a document search you can see we are doing a search here search is happening based on a text so we can also replace that with a while card uh and then it is ask for the query what is your query we have specified the queries Java of course this should be change this should not be uh Java here we'll replace that later and then it also asks you for where exactly you want to search you have to specify the path so I want to search this in I want to search this in text Technologies description profile I also want to specify I want to sort but based on what I want to sort based on the experience and one is ascending order and then we have to limit by five I I only want to see the five post but then I don't want Java here what I want is I want text so whatever text I'm receiving from here that will be the search term okay this works but then if you say we only got data and result I want this data not in result I want data in a post how will you do that so maybe we have to go we have to iterate we have to search one by one post and put that into post how do you do that okay so how do you get data from result oh there's one more thing missing here the database name is the Risco you can also get this from the uh application.properties you can just see uh we already have a database name here so you can fetch data from there you can fetch this value well just to keep it simple since we got code from the website itself we'll use that and here we need to make sure that we have okay we are fetching one by one so what I can do is I can use a result here and result is retrievable right so it says it table so we can iterate between the elements and if I say dot there is a method which is for each so basically we'll iterate between each document so I got a document here and I will be using a Lambda expression here which is much better so whatever document I received for each iteration I will add that in a post as simple as that so I can simply say post dot or posts dot add now the only thing is I can simply add doc here but that will not work because doc has a different format post a different format this Doc is basically a document format the post here is basically a Java format that will not work so what we can do is we can basically use a converter here so there's something called a converter so if I go back here and if I say converter and I can say converter we just need to use this and since I want the object of this I can say Auto wired Now using this converter so I can say add but I have to convert this before so I have to say converter dot there's a method called read okay and then in this you have to pass two parameters first is the Class Type you want to convert so I want to convert this dock into post format so post dot class and the second is a decent source bson is basically document the document itself is Doc so whatever doc you're saving we are passing that here and this converter will convert that dock into post and it will add into the collection or the list and where we are returning it I think we are done with this but the main question is will this work let's try so I will save this and I will go back to my Swagger it's here if you have to restart the application as well restart okay server is running go back here and hopefully this will work click oh there's an error we missed something so basically we are passing Mumbai and Mumbai is not working in the post so basically there's something wrong with the mapping which we have done it's sending text here that text goes here so what is the exact error let me check this file so we got a client and then we have specified database name as well oh this is empty we have to also specify the collection The Collection is job post I miss that okay no errors let's go back here and say execute oh okay so that we got it so we got only one entry which is for Mumbai because we don't have more entries for Mumbai okay let's try something else let's try with threads there should be only one post or one job with which has threads involved and you can say we got thread so we are basically searching for text now and if I search for let's say Java execute and you can see you will get multiple records now it's searching for Java in the technologies that you're searching for Java in the text now what is important is if you can search the XP you can see the list it starts with the one Experience One experience two because we have sorted and in total you will get only five you know five or five because we have mentioned the limit here if we remove the limit it will be coming with all the records and if you don't mention sort it will just print as it is added in the collection it's that simple okay at this point the Swagger is working Swagger is very happy but remember when we have a react application refresh if I go home and if I say get job now it's not working the data is not coming here okay what is wrong what why is not coming if I see the console let's see the console here let's see what it says console says there is no issue with uh okay there's a block there's a problem with the access control allow origin basically we have to allow the origins because they're coming from different server right the request is coming from the localhost 3000 so what you can do is for that it's very simple you can just come here and on top of your rest controller you can mention cross origin and you can also mention from where you're getting the request so I can say Origins there's only one as at this point which is HTTP colon slash slash localhost colon 3000 that's the react application we have and that's it we are done with this let's I hope this will work go back here refresh oh it's still not working there's something missing oh it still says blocked oh do I have to apply okay let me know the solution the proper solution for this what I will do time bit is oh first of all it is post it should be all post that's what we have mentioned in the react application I can change that maybe you can change that in real react application or you can change it here itself just to make it easy I'm changing it here itself all post and then I will use cross origin everywhere in every method just to be safe and now if I go back and refresh okay so that we got our data yay things are working out I don't need you anymore close and you can see we got our entries and let's see if that search happens and if I search for Java or let's search for Threads it should print only one yeah it's working can you see that so what have what we have done in the react is every time you type something if the length is more than two characters it will hit the request so for every character it is hitting the request I guess it is uh no it's it has to match with it words so it is sending the request and the moment it matches with the words you can also implement the wild card and let me know how you do that in the in the comment section if you are implemented wildcard and if it is working record a video upload that on YouTube and paste that link in the comments and I will approve it okay I want to I want to see your implementations how you are doing it so this is the threads and it is working we can also try it for higher the talent let me just enter the job profile here which is for let's say editor and it is only there right let's say we want to search for I want to hire a mongodb developer and experience should be let's say three years I'll type something here and the developer should also be familiar with Java submit let's refresh and you can see that we got mongodb developer working out right so this is how you build a project so don't worry I will just push this project in the GitHub you will find that in the description for all three videos and yeah we have talked about everything everything is working fine and let me know your experience in the comment section and let me know if you want me to create more of such videos on projects so that's it everyone thank you so much for watching and do subscribe for further videos bye
Info
Channel: Telusko
Views: 28,869
Rating: undefined out of 5
Keywords: telusko, navin, reddy, tutorial, java, python, blockchain, django
Id: kYiLzIiHVY8
Channel Id: undefined
Length: 75min 35sec (4535 seconds)
Published: Wed Oct 19 2022
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.