I apreciate the video, but it has many flaws, not just what this comment points out, which is not a huge issue, but there are many things skipped through the video, like the cross origin part (important!), the HTML on bootdey IS NOT THE SAME code used in the IDE (nav bar and tools, modals, all magically appeared with no explanation, we know how to make a modal, but it would be nice to follow the right way to do it), and many small things that summing up becomes a huge pain, still, I've been learning a lot, so I don't wanna be ungrateful, this is useful indeed but far from polished.
31:46 Service Class 36:49 Exception Handling 38:53 Exposing the API (Rest Controller) 50:02 Testing with Postman 57:27 Testing with HTTPIE 1:03:33 CREATING Angular APP 1:09:22 Angular Service 1:14:02 Angular Service PT2 1:19:37 Angular Component 1:27:51 CORS Configuration 1:32:49 UI Intro 1:40:26 UI Modal Logic 1:54:53 Testing Modal Logic 1:59:04 Angular Form 2:08:03 Update Functionality 2:21:37 Delete Functionality 2:28:44 Search Functionality It's been 3 years since I didn't work it's really helpful. Thank you.
1:09:22 Angular Service 1:14:02 Angular Service PT2 Setting up the Service starts at 1:14:02 (Go through this first) and Building the Service starts at 1:09:22 (And then follow through this section)
Anybody being confused at 1:09:31 . Don't worry, its just a bit of a mixup with clips. This service creation part can be seen at 1:14:02 . These are just a bit mixed up.
The correct order: 1:03:33 CREATING Angular APP 1:14:02 Angular Service PT2 (actually, this is first) 1:09:22 Angular Service (actually, this is second)
20:02 - Database Configuration 25:59 - Employee Repository 31:46 Service Class 36:49 Exception Handling 38:53 Exposing the API (Rest Controller) 50:02 Testing with Postman 57:27 Testing with HTTPIE 1:03:33 CREATING Angular APP 1:14:02 Angular Service PT2 (first) 1:09:22 Angular Service (second) 1:19:37 Angular Component 1:27:51 CORS Configuration 1:32:49 UI Intro 1:40:26 UI Modal Logic 1:54:53 Testing Modal Logic 1:59:04 Angular Form 2:08:03 Update Functionality 2:21:37 Delete Functionality 2:28:44 Search Functionality Thanks to @Jonghyun Park, @Dhaval Nick Shrimankar, @Leo D. Penrose for the preparation this list.
Your tutorial material is at par if not better than those paid learning platforms. What you're producing here is wonderful for the community of developers and learning developers. Keep it up!
Thank you so much for this! Just completed the full project on 11-15-2022 and wanted to share 2 errors I came across and solved: 1. Had an error where I couldn’t compile the front end due to sending null in this function call: (click)="onOpenModal(null, 'add')" SOLUTION-> make sure your tsconfig.json has "strict": false 2. Was getting an error in the back end when trying to Delete an employee: “javax.persistence.TransactionRequiredException: No EntityManager with actual transaction available for current thread - cannot reliably process 'remove' call” SOLUTION -> Add the @Transactional annotation to the delete function in EmployeeService right about the deleteEmployee() function Thank you again for such a fantastic instructional video!
This is the type of content I was looking for! (surprisingly it is hard to find the combo Angular + JAVA spring boot) so thank you for bringing it. Great work and I hope to watch more of this in the future :D
33:00 The method deleteById(Long id) exist by default from the JpaRepository 49:00 To really make a REST api, why did you change the route for all method ? The basic of a REST api is to have the same route for the resources and change only the method of request. The employee is your resource, the method of the request is what you do with her. /employee GET all POST PUT /employee/id GET one DELETE Of course you can add specific route for your controller, that's not a problem.
Thanx for this tutorial, it was great how Junior explain everything that simple and quick. I just need to add that i developed this using Angular 13 and SpringBoot 2.6.1 and there is some considerations, like: 1.- on the onOpenModal method you need to specify that the employee parameter is optional and that means that you have to put it as the second parameter with the ? in the name of the parameter. 2.- the subscribe method now needs to specify "next" and "error" objects (just add {} inside the parameters of the subscribe method and replace "(response: " for "next: (response:", the same with the error handling, replace "(error: " with "error: (error: ". 3.- The attributes in the components needs initialization, so employees needs to be initialized with "[ ]", editEmployee and deleteEmployee with " Employee | undefined". 4.- I needed to specify that the id of the employee to delete can't be null, so i replaced "deleteEmployee?.id" with "deleteEmployee!.id". 5.- This is because i found it more perfomant, to evaluate the "mode" on onOpenModal method, i did it with "else if" instead of only "if" (there's only one action to execute with the "mode" sent). Hope this will be helpful to somebody!
@@SBKaneriya in your component declare openModal with these parameters: mode: string, employee?: Employee A required parameter cannot follow an optional parameter so you'll have to switch the order as shown above
Thank you for a great video! This is exactly what I needed for a personal project. It looks like there was significant modification of the html from bootdey to add the nav bar, buttons, etc. This made it impossible to follow along and make all the changes in the video. I had to just copy and paste the html and then just watch the video without making the changes myself. It would help immensely if the modified app.component.html were included so that we can follow along and make the changes in the video.
TypeScript 4.1.5 - Property 'employees' has no initializer and is not definitely assigned in the constructor. in app.component.js you need to initialize employees like: constructor(private employeeService: EmployeeService) { this.employees = []; }
"The "employees" property has no initializer and is not permanently assigned in the constructor." can you help me? 1:23:14 in this line: public employees: Employee[];
I highly recommand this tutorial to every beginner starting with angular and looking for something instructive step by step. You're amazing dude, keep uploading videos I'm subscribing right now!
Hey can we get a complete videos on microservice in spring boot along with deployment process. It would be really appreciated. Thanks man for the work you do.
For those who can't open modal(s): with the newest version of bootstrap the data-* attributes are data-bs-*. So you need to change this on the onOpenModal method.
@@davidgoncalves2879 OMG...I changed data-target to data-bs-target, but forget to change the data-toggle to data-bs-toggle as you wrote. Now I changed both and the Modal popup just works. Thank you!
For anyone that's interested to quicken the getters setters and constructors, in IntelIJ if you press Ctrl + Insert it brings a menu that can autogenerate getters, setters, counstructors and the like. Beautiful tutorial btw
ماشاءالله I spent weeks and weeks reading books and tutorials, i had never foud answers to my questions. In Your tutorials i found exactelly wshat i was seeking for. Thanks brother. Zakari from Germany
I just found this tutorial and I am glad I did. You have done a terrific job in throughout the entire course. I have learned so much more than I did after I attended a Java Bootcamp a few years ago in which I left feeling very confused. But after watching and following your tutorial step by step it is so much clearer to me. I know there is plenty to learn, but this has given me the foundation. Thank You!!!
Walaikumsalam warahmatullahi wabarakatuh. Watching From Mozambique, i'm not a native english speaker but, your tutorials i understand natively. Thank you for all, and may Allah reward you in the best way
Is it just me or is the "Angular Service" Part 1 & Part 2 switched around? Part 2 needs to be first, THEN the part 1 should be watched. (1:14:02 first then 1:09:22)
1:35:00 where is the html code coming from? the referenced snippet has a different html, even the html that appears in the video is not the same as the one he pastes, and obviously you can´t use the one in the source code because it´s already worked on and defeats the purpose of the tutorial copying and pasting it.
I must say that this is the cleanest way of coding springboot plus angular. I have seen many other videos but this one is by far the best . Subscribed to Get Arrays
Where do you get the template for the app from? I can only find the one that is setup with static data. Also where did the code for the modals, & the navbar come from? Seem you often jump the shark in this tutorial it's pretty confusing.
This was an excellent demo connecting the service layer all the way up to Angular. Thank you Junior and Amigoscode! You both are so very helpful and generous sharing your knowledge here.
Muito bom, parabéns pelo conteúdo! Desenvolvi o app conforme motrado no vídeo, tudo funcionou perfeitamente. Gostei da simplicidade nas explicações e o fato de ir direto ao ponto, sem rodeios. Thank you so much man. Big hug from Brazil!
@@agnus_vins não, mas algumas coisas do backend eu tive que ver no repositório, pois o q estava no vídeo não executou com sucesso, mas no frontend não tive problema
@@jonascbamt kkkkkk no meu caso foi ao contrário, o Back-End foi de boas, mas no Front deu problema e pior que eu já tinha desenvolvido uma aplicação semelhante. Enfim, vlw amigo e boa sorte nos estudos!
Am I the only one confused at 1:09:30? continue to visual studio without beginning? how we ended up there? edit: btw tutorials are so good, thanks amigos :)
28:15 you know, some years back, I created the same interface for a project.... I did it so that the other developers will only have to worry about creating the models and custom SQL statements. Now I'm realizing I literally created my own version of the JPARepository. Huh. Feels weird.
Very good tutorial, one of the best. I only have one recommendation, instead of depending on specific implementations it would be best to depend on the interface. This helps to separate the layers of my application.
Jazak Allah Khayran, brother! Your tutorial has been incredibly insightful and comprehensive, serving as an excellent starting point. It covered everything we need to kickstart our journey. Thank you for your efforts and valuable guidance. May Allah reward you abundantly
@@abdulraqeebm.3305 Check the answer of Nagasesa Nagasesa one Month ago, it explains the same: 1:09:30 "Angular Service" (explains Creation of Employee interface and add methods to service) 1:14.01 "Angular Service PT2" ( Explains creation of employee.service.ts using CLI)
@@ernestovalle6460 but I am talking about something else, not the service part. I know that the service part is inverted, but there is another missing part, the part where he design the modal (add modal, edit modal, delete modal)
@@abdulraqeebm.3305 the last versión of the code in the page that he mentions doesn't contain the same code, just a demo with users, what i did wqs to "reverse" his html code to remove all the angular, there are the modals he is talking about
Dude I Love you , I love your work just amazing tuttoriel, i admired the backend part, 1 hour watching was more than enough to become a springboot developer your just amazing
Great video and thank you. I have an issue where I'm using typescript 4.1.2, which gives me an error when calling onOpenModal(employee: Employee, mode: string): void{...} on my template and passing null as the 1st parameter for adding a new user. I get the following error: error TS2345: Argument of type 'null' is not assignable to parameter of type 'Employee'.
thank you so much , i was confused by all of these concepts , and now , after watching this video , and practicing , i understand everything related to the backend i am grateful to you
Amigos your are the best I like the combination between the spring boot and angular , also I liked the way you teach things very detailed plus very fast , thank you looking forward for such a work
Thanks for the tutorial, it is useful indeed. Though I would say that Junior is sometimes not explaining important points, and just keep typing and going. For example, in the backend in the EmployeeService class, an annotation of @Transactional appeared, and no details about it. Similarly, in Angular part, I was expecting that Junior would give some details about how he have created the service, but instead it was already there! It would be great to give few moments to explain the "why" in addition to the "how".
Helloo, Thank you so much. A very helpful cours!!!! Although i have an error in my Angular Project. I am on 1:27:00, I am using Standalone Application so I don't have the app.module file. All I have to do is to import the right module in the @Component part. But when I try to run the FrontEnd, I got an injection error (NG0203): inject() must be called from an injection context. And cannot keep going. Any thoughts please? Thank you!
So many bugs I don't know where to start... I'm very confused by the fact that you have functioning code in the video but the source code is so messed up. Multiple things simply don't work. What happened?
Hi Amigos, Demo is simply awesome & superb. can u plz extend ur project with the below most wanted functionalities. It would be great. 1. pagination 2. login using jwt + spring boot Eagerly Awaiting for ur Response.
when testing the delete endpoint on postman i was getting a 500 error. I fixed this by putting the @Transactional annotation above the deleteEmployee method within EmployeeResource
Very nice video, learned a lot and hope I would find it earlier. I think there's tiny functional error at the very end. Inside the front appcomponent searchEmployees function The condition "if (!key || results.length === 0)" is making that when you put non sense input all employees appear and would be more suitable the have the "no employees found" message. To fix that it's as simple as removing the " || results.length === 0" condition. Thanks for the video!
I had to make some changes to the bootstrap due to a new version, without problems. But there is an error in the onOpenModal method when the null parameter is passed, in the navigation bar, to add a new user. How can I solve this? The error is: "The argument of type 'null' cannot be assigned to the parameter of type 'Employee'."
Salam, I just finished this video. I learned a lot over the 2 hours. Thank you for this video. I do recommend this video but it is a tiny bit outdated with typescript. But that is only minor changes. Other than that, this was an amazing course intro for Springboot and angular.!!!
this is ridiculous, you add the template and suddenly your app has navigation bar, shows that there are no employees etc. In reality, none of this happens. Such a waste of time
Hello, yesterday I downloaded the BackEnd part and with some adaptations to America/Santiago and a column name it functions correctly, Now I am going to the Front End part ... see you soon ... thanks
it is more correct to aim update method of the controller to the path with id of the updated instance as the update method is idempotent while post method is not
This is the error I that killed my progress ``` Argument of type 'null' is not assignable to parameter of type 'Employee'. ``` ``` Add New Employee (current) ```
Amazing video man! You kinda rushed the HTML / snippet part but it's ok, your explanations are great and I hope to see more of your tutorials soon, my best regards!
"You're just gonna paste the code of the snippet that I just showed you" Why would you say that? your HTML doesn't even match the one on the website. Where's the part where you write it??
@@HandledToaster2 I can't even copy some of the HTML from the video because it's covered up by the scroll preview box... I'm completely new to html and js and just wanted to follow along with a video to get started but this makes it literally impossible to do that.
@@noelle5145 bro do not follow this video it's terrible. I don't know what's up with everyone here saying good stuff about the channel, this is the worst excuse for a tutorial I've ever seen, it just gave me a huge headache and anxiety. I don't know what to recommend since I really just hate frontend in general, but definitely don't follow this video. It's like he made this for somebody who already knows everything and wants a quick refresher.
@@HandledToaster2 I was specifically looking for a full stack tutorial because idk anything about front end and sadly this is the best video ive found :-(
@@noelle5145 you and me on the same boat man. All the good videos have too much of a thick indian accent and bad mic. Don't mean to be offensive, all the good Java content is indian, but I can't understand when the accent is too strong :/
I think it may has some bugs, if you have 2 employee such as David and Daniel, when you type 'Dan' (key = 'Dan') it only shows Daniel, but when you delete the 'n' letter (key = 'Da'), it won't show David since the this.employees array only has Daniel left
I have a problem with (click)="onOpenModal, when I try to click the "Add Employee" the inscription is not recognized as a click. When I inspect in chrome this button I've message"Cannot read property 'appendChild' of null" Can you help?
minute 52:13 { "timestamp": "2022-08-08T15:14:49.814+00:00", "status": 404, "error": "Not Found", "path": "/employee/all" } for some reasson Postman doesn't want to read my backend, I followed the tutorial step by step
Great course, but I have a question why in my IntelliJ the application. properties file has a standard icon, not a green leaf like in your case ? Additionally, I have no syntax hints inside this file Greetings from Poland
[little revision]
1:09:29 is the part 2
1:14:04 is the part 1 (which should come earlier)
Correct
Thanks for the info.
this comment should get pinned. i was soo confused
Requesting, that this comment gets pinned to the top. Otherwise its really confusing to figure out what is going on.
I apreciate the video, but it has many flaws, not just what this comment points out, which is not a huge issue, but there are many things skipped through the video, like the cross origin part (important!), the HTML on bootdey IS NOT THE SAME code used in the IDE (nav bar and tools, modals, all magically appeared with no explanation, we know how to make a modal, but it would be nice to follow the right way to do it), and many small things that summing up becomes a huge pain, still, I've been learning a lot, so I don't wanna be ungrateful, this is useful indeed but far from polished.
31:46 Service Class
36:49 Exception Handling
38:53 Exposing the API (Rest Controller)
50:02 Testing with Postman
57:27 Testing with HTTPIE
1:03:33 CREATING Angular APP
1:09:22 Angular Service
1:14:02 Angular Service PT2
1:19:37 Angular Component
1:27:51 CORS Configuration
1:32:49 UI Intro
1:40:26 UI Modal Logic
1:54:53 Testing Modal Logic
1:59:04 Angular Form
2:08:03 Update Functionality
2:21:37 Delete Functionality
2:28:44 Search Functionality
It's been 3 years since I didn't work it's really helpful. Thank you.
1:09:22 Angular Service
1:14:02 Angular Service PT2
Setting up the Service starts at 1:14:02 (Go through this first) and Building the Service starts at 1:09:22 (And then follow through this section)
you should be pinned
@@dhavalnickshrimankar7055 Yes, also noted that. PT2 is actually PT1 and PT1 is actually PT2. So, should see in inverse order.
Thank you!
thank you !
Anybody being confused at 1:09:31 . Don't worry, its just a bit of a mixup with clips. This service creation part can be seen at 1:14:02 . These are just a bit mixed up.
Thank you
I haven't started the video yet but thank you for letting me know
THANK YOU
Thank you for that I thought I missed something
thank you
thanks bro!
The correct order:
1:03:33 CREATING Angular APP
1:14:02 Angular Service PT2 (actually, this is first)
1:09:22 Angular Service (actually, this is second)
20:02 - Database Configuration
25:59 - Employee Repository
31:46 Service Class
36:49 Exception Handling
38:53 Exposing the API (Rest Controller)
50:02 Testing with Postman
57:27 Testing with HTTPIE
1:03:33 CREATING Angular APP
1:14:02 Angular Service PT2 (first)
1:09:22 Angular Service (second)
1:19:37 Angular Component
1:27:51 CORS Configuration
1:32:49 UI Intro
1:40:26 UI Modal Logic
1:54:53 Testing Modal Logic
1:59:04 Angular Form
2:08:03 Update Functionality
2:21:37 Delete Functionality
2:28:44 Search Functionality
Thanks to @Jonghyun Park, @Dhaval Nick Shrimankar, @Leo D. Penrose for the preparation this list.
Your tutorial material is at par if not better than those paid learning platforms. What you're producing here is wonderful for the community of developers and learning developers. Keep it up!
Angular + Spring Boot... the day in the life of a corporate software developer...
Why do u say that?
@@marwanla1870 because it's true lmao
@@GradeFX what is true lol ?
@@AbhishekKumar-vl3cb Big corp is going to be a Java/Spring shop typically... and angular for at least internal applications
is this a negative implication or?
I'm literally starting to work for a big corp that uses angular + spring boot in a week 😂
Chapter order is wrong between 01:09:24 and 1:19:38 in case anyone was wondering.
Do you know solution? please help me
20:02 - Database Configuration
25:59 - Employee Repository
31:41 - Service Class
36:50 - Exception Handling
38:49 - Exposing The API (Controller)
50:05 - Testing
Thank you so much for this! Just completed the full project on 11-15-2022 and wanted to share 2 errors I came across and solved:
1. Had an error where I couldn’t compile the front end due to sending null in this function call: (click)="onOpenModal(null, 'add')"
SOLUTION-> make sure your tsconfig.json has "strict": false
2. Was getting an error in the back end when trying to Delete an employee: “javax.persistence.TransactionRequiredException: No EntityManager with actual transaction available for current thread - cannot reliably process 'remove' call”
SOLUTION -> Add the @Transactional annotation to the delete function in EmployeeService right about the deleteEmployee() function
Thank you again for such a fantastic instructional video!
Thanks bro
Had the exact same errors, I really appreciate the comment, thanks man!
Why did the deleteEmployee() function need @Transactional annotation though while all other functions didn't?
This is the type of content I was looking for! (surprisingly it is hard to find the combo Angular + JAVA spring boot) so thank you for bringing it. Great work and I hope to watch more of this in the future :D
33:00
The method deleteById(Long id) exist by default from the JpaRepository
49:00
To really make a REST api, why did you change the route for all method ?
The basic of a REST api is to have the same route for the resources and change only the method of request.
The employee is your resource, the method of the request is what you do with her.
/employee
GET all
POST
PUT
/employee/id
GET one
DELETE
Of course you can add specific route for your controller, that's not a problem.
for app.component html i watched entire part frame by frame here is the result :
Employee Manager
Add Employee (current)
Phone :
Add Employee
×
Name
Email Address
Job title
Phone
Image URL
Close
Save changes
Edit Employee
×
Name
Email Address
Job title
Phone
Image URL
Close
Save changes
Delete Employee
×
Are you sure you want to delete employee
No
Yes
NO EMPLOYEES!
No Employees were found.
you are a life saver
Thank you
The Goat himself
Thank YOU!!! Very nice of you!
16:30 why implements serializable
35:10 optional and exception handling
41:50 generics ResponseEntity
1:03:39 creating angular app
Thanx for this tutorial, it was great how Junior explain everything that simple and quick.
I just need to add that i developed this using Angular 13 and SpringBoot 2.6.1 and there is some considerations, like:
1.- on the onOpenModal method you need to specify that the employee parameter is optional and that means that you have to put it as the second parameter with the ? in the name of the parameter.
2.- the subscribe method now needs to specify "next" and "error" objects (just add {} inside the parameters of the subscribe method and replace "(response: " for "next: (response:", the same with the error handling, replace "(error: " with "error: (error: ".
3.- The attributes in the components needs initialization, so employees needs to be initialized with "[ ]", editEmployee and deleteEmployee with " Employee | undefined".
4.- I needed to specify that the id of the employee to delete can't be null, so i replaced "deleteEmployee?.id" with "deleteEmployee!.id".
5.- This is because i found it more perfomant, to evaluate the "mode" on onOpenModal method, i did it with "else if" instead of only "if" (there's only one action to execute with the "mode" sent).
Hope this will be helpful to somebody!
You saved me a lot of problem solving
@Mauricio Mendoza can you please show how did you put the parameter for onOpenModal. it's not working for me
@@SBKaneriya in your component declare openModal with these parameters: mode: string, employee?: Employee
A required parameter cannot follow an optional parameter so you'll have to switch the order as shown above
honestly I just turned off strict null checks lmao does this bear any significant consequences can anyone elaborate
Hi Mauricio, i use same version of Angular and Spring Boot. Can you explain better your code for subscribe method?
Thank you for a great video! This is exactly what I needed for a personal project.
It looks like there was significant modification of the html from bootdey to add the nav bar, buttons, etc. This made it impossible to follow along and make all the changes in the video. I had to just copy and paste the html and then just watch the video without making the changes myself. It would help immensely if the modified app.component.html were included so that we can follow along and make the changes in the video.
agree
Could I ask how you managed to get the modals to work?
@@peytonhobson1906 same
TypeScript 4.1.5 -
Property 'employees' has no initializer and is not definitely assigned in the constructor.
in app.component.js you need to initialize employees like:
constructor(private employeeService: EmployeeService) {
this.employees = [];
}
thanks for this
"The "employees" property has no initializer and is not permanently assigned in the constructor." can you help me? 1:23:14 in this line: public employees: Employee[];
or you can initialize right there: public employees:Employee[] =[];
@@MrJobember thanks worked
@@MrJobember zone.js:2863 GET localhost:4200/$%7Bthis.apiServerUrl%7D/employee/all 404 (Not Found) next problem, can you help?
I highly recommand this tutorial to every beginner starting with angular and looking for something instructive step by step. You're amazing dude, keep uploading videos I'm subscribing right now!
1:47:49 you can set the modal data-target at the mode and then just rename the modal forms accordingly. This saves you the unnecessary if statements.
Hey can we get a complete videos on microservice in spring boot along with deployment process. It would be really appreciated. Thanks man for the work you do.
+1
+1
For those who can't open modal(s): with the newest version of bootstrap the data-* attributes are data-bs-*. So you need to change this on the onOpenModal method.
Would you be able to explain this a little further? I'm not quite understanding what you're saying.
@@peytonhobson1906 the attributes data-toggle, data-target, etc... are now data-bs-toggle, data-bs-target, etc...
@@davidgoncalves2879 Thank you for the response. Still can't seem to get them to work, but good to know nonetheless!
@@peytonhobson1906 late reply, but did you fix the issue?
@@davidgoncalves2879 OMG...I changed data-target to data-bs-target, but forget to change the data-toggle to data-bs-toggle as you wrote. Now I changed both and the Modal popup just works. Thank you!
I really want to understand spring boot back-end! thank you and we are waiting
th-cam.com/video/her_7pa0vrg/w-d-xo.html
This tutorial was way much better. I followed it to the last minute and I feel it covered 90% of the things I wanted to know as a beginner
0:00 - 3:37 - introduction
3:37 - 4:39 - Quick Word (practice as much as possible)
4:39 -10:10 - Prerequisites
This course was an absolute lifesaver. Built everything the same way for my little library application and it works flawlessly. Thank you so much!
For anyone that's interested to quicken the getters setters and constructors, in IntelIJ if you press Ctrl + Insert it brings a menu that can autogenerate getters, setters, counstructors and the like.
Beautiful tutorial btw
Use Lombok instead...no need to generate anything :)
ماشاءالله
I spent weeks and weeks reading books and tutorials, i had never foud answers to my questions. In Your tutorials i found exactelly wshat i was seeking for.
Thanks brother.
Zakari from Germany
I just found this tutorial and I am glad I did. You have done a terrific job in throughout the entire course. I have learned so much more than I did after I attended a Java Bootcamp a few years ago in which I left feeling very confused. But after watching and following your tutorial step by step it is so much clearer to me. I know there is plenty to learn, but this has given me the foundation. Thank You!!!
Walaikumsalam warahmatullahi wabarakatuh.
Watching From Mozambique, i'm not a native english speaker but, your tutorials i understand natively.
Thank you for all, and may Allah reward you in the best way
You two are heroes we don't deserve! Thank you for the insight and tutorial.
That's what i've been searching for so long! So exited to get into it. Thank You so much! :)
This is what I was waiting for , I learn Java with Spring ,Hibernate with MySQL, and on front end Angular and using Postman . Thanks !
14:03 if you can't find the option to create a new package, right click -> Mark Directory as -> Sources Root
Is it just me or is the "Angular Service" Part 1 & Part 2 switched around? Part 2 needs to be first, THEN the part 1 should be watched. (1:14:02 first then 1:09:22)
1:35:00 where is the html code coming from? the referenced snippet has a different html, even the html that appears in the video is not the same as the one he pastes, and obviously you can´t use the one in the source code because it´s already worked on and defeats the purpose of the tutorial copying and pasting it.
I must say that this is the cleanest way of coding springboot plus angular. I have seen many other videos but this one is by far the best . Subscribed to Get Arrays
Where do you get the template for the app from? I can only find the one that is setup with static data. Also where did the code for the modals, & the navbar come from? Seem you often jump the shark in this tutorial it's pretty confusing.
Thank you so much man! been waiting for this, really excited for this great course! Much love and support!
This was an excellent demo connecting the service layer all the way up to Angular. Thank you Junior and Amigoscode! You both are so very helpful and generous sharing your knowledge here.
Muito bom, parabéns pelo conteúdo!
Desenvolvi o app conforme motrado no vídeo, tudo funcionou perfeitamente.
Gostei da simplicidade nas explicações e o fato de ir direto ao ponto, sem rodeios.
Thank you so much man.
Big hug from Brazil!
Vou implementar também rsrs
Você teve algum problema com o erro do TypeScript 'Object is possibly null' ?
@@agnus_vins não, mas algumas coisas do backend eu tive que ver no repositório, pois o q estava no vídeo não executou com sucesso, mas no frontend não tive problema
@@jonascbamt kkkkkk no meu caso foi ao contrário, o Back-End foi de boas, mas no Front deu problema e pior que eu já tinha desenvolvido uma aplicação semelhante. Enfim, vlw amigo e boa sorte nos estudos!
@@agnus_vins opaaaa pra vc também, sucesso!
I created Add Category (current), at html page, it shows "null is not assignable to parameter of type employee". Please Let me know, Mr.
me too, did you fix it?
@@DDGAMEX put ! after null, it worked for me: (click)="onOpenModal(null, 'add')" ==> (click)="onOpenModal(null!, 'add')"
@@lucastvms thanks a lot man !!
@@lucastvms thanks buddy, this gave me a headache the whole night
@@lucastvms can someone explain why this works?
Am I the only one confused at 1:09:30? continue to visual studio without beginning? how we ended up there?
edit: btw tutorials are so good, thanks amigos :)
28:15 you know, some years back, I created the same interface for a project.... I did it so that the other developers will only have to worry about creating the models and custom SQL statements. Now I'm realizing I literally created my own version of the JPARepository. Huh. Feels weird.
I was searching full stack web development with java from over 5 months and here I got it!. Thanks Nelson
You completed this project? Were there any errors or change in syntax in newer versions
Very good tutorial, one of the best. I only have one recommendation, instead of depending on specific implementations it would be best to depend on the interface. This helps to separate the layers of my application.
Jazak Allah Khayran, brother! Your tutorial has been incredibly insightful and comprehensive, serving as an excellent starting point. It covered everything we need to kickstart our journey. Thank you for your efforts and valuable guidance. May Allah reward you abundantly
I think there is a missing part, which is the design of the modal (employee name field, email ...etc)
It is inverted, the next part explains how to do that, just it was bad ordered
@@ernestovalle6460 please provide the timestamp for that
@@abdulraqeebm.3305 Check the answer of Nagasesa Nagasesa one Month ago, it explains the same:
1:09:30 "Angular Service" (explains Creation of Employee interface and add methods to service)
1:14.01 "Angular Service PT2" ( Explains creation of employee.service.ts using CLI)
@@ernestovalle6460 but I am talking about something else, not the service part.
I know that the service part is inverted, but there is another missing part, the part where he design the modal (add modal, edit modal, delete modal)
@@abdulraqeebm.3305 the last versión of the code in the page that he mentions doesn't contain the same code, just a demo with users, what i did wqs to "reverse" his html code to remove all the angular, there are the modals he is talking about
very clear tutorial, simple to implement step by step. thankyou bro. hopefully i cant watch more tutorial like this
Dude I Love you , I love your work just amazing tuttoriel, i admired the backend part, 1 hour watching was more than enough to become a springboot developer your just amazing
Great Job , i finshed this tuto for one week- end (14 hours )both frent-end and back-end thank Junior for your efforts
Hey, can you help me with app.component.html?
Great video and thank you. I have an issue where I'm using typescript 4.1.2, which gives me an error when calling onOpenModal(employee: Employee, mode: string): void{...} on my template and passing null as the 1st parameter for adding a new user. I get the following error: error TS2345: Argument of type 'null' is not assignable to parameter of type 'Employee'.
just solved the issue by adding this line in my tsconfig "strictNullChecks": false
onOpenModal(employee: Employee|null, mode: string)
this modification will fix the issue
@@vikashkumaryadav1685 thanks mate! It worked!
@@vikashkumaryadav1685 Thanks was looking for this solution!
@@vikashkumaryadav1685 thanks
thank you so much , i was confused by all of these concepts , and now , after watching this video , and practicing , i understand everything related to the backend
i am grateful to you
Incredibly hard to follow the Angular part. After importing Bootstrap you suddenly have the whole app sketched up?
IMPOSSIBLE to follow is what you mean.
you can look at the source code of the template in the front-end github repository
@@fakherhabib7952 i did that just getting a bunch of errors in the html and i literally copied his code
On 33:44, why you want to create another method? JPA has deleteById am I right?
Amigos your are the best I like the combination between the spring boot and angular , also I liked the way you teach things very detailed plus very fast , thank you looking forward for such a work
Thanks for the tutorial, it is useful indeed. Though I would say that Junior is sometimes not explaining important points, and just keep typing and going. For example, in the backend in the EmployeeService class, an annotation of @Transactional appeared, and no details about it. Similarly, in Angular part, I was expecting that Junior would give some details about how he have created the service, but instead it was already there! It would be great to give few moments to explain the "why" in addition to the "how".
Helloo, Thank you so much. A very helpful cours!!!!
Although i have an error in my Angular Project.
I am on 1:27:00, I am using Standalone Application so I don't have the app.module file. All I have to do is to import the right module in the @Component part.
But when I try to run the FrontEnd, I got an injection error (NG0203): inject() must be called from an injection context.
And cannot keep going.
Any thoughts please?
Thank you!
This content is just amazing. I have no words for how much this will save me in my job and in my future. Thank you so much.
When using delete api throws some error,
Put a @Tranactonal annotation upon ur service class or controller class
So many bugs I don't know where to start... I'm very confused by the fact that you have functioning code in the video but the source code is so messed up. Multiple things simply don't work. What happened?
Amazing Content... Simple Language... Highly Recommended...
Thank You for making this free..
Thanks GOD, you really were made for this!!! I counldn't even think how to get started and i could make a single angular component/form run. Love u!!!
Hi Amigos, Demo is simply awesome & superb.
can u plz extend ur project with the below most wanted functionalities. It would be great.
1. pagination
2. login using jwt + spring boot
Eagerly Awaiting for ur Response.
when testing the delete endpoint on postman i was getting a 500 error. I fixed this by putting the @Transactional annotation above the deleteEmployee method within EmployeeResource
I had to do the same
Thank you for saving me!!!
thank you!
Not sure when you'll read this response....but THANK YOU! Thank you sir.
THANK YOUUUUU
Very nice video, learned a lot and hope I would find it earlier. I think there's tiny functional error at the very end. Inside the front appcomponent searchEmployees function The condition "if (!key || results.length === 0)" is making that when you put non sense input all employees appear and would be more suitable the have the "no employees found" message. To fix that it's as simple as removing the " || results.length === 0" condition. Thanks for the video!
Thank you brother, you are amazing. Hope your Ramadan is going well, Alhamdulillah.
بارك الله فيكم, مجهود رائع, في ميزان حسناتكم
Thanks a lot for this course.
P.S. There is a mistake in video, 1st and 2nd parts of Angular Service are vice verse.
DUDE! This is so timely! Thank you :)
Can you maybe add that text file with all the employees to git... That will really save some time if you still have it! Awesome video btw!!!
Chapter order is wrong between 01:09:24 and 1:19:38 in case anyone was wondering !!!!
Do you know solution bro? please help me
I had to make some changes to the bootstrap due to a new version, without problems. But there is an error in the onOpenModal method when the null parameter is passed, in the navigation bar, to add a new user. How can I solve this? The error is: "The argument of type 'null' cannot be assigned to the parameter of type 'Employee'."
did you find a solution? same error here
@@marcelomiller8593 the same here
just add this to your tsconfig file :
"strictNullChecks": false
@@aminebenslimane1543 you are the best
Salam, I just finished this video. I learned a lot over the 2 hours. Thank you for this video. I do recommend this video but it is a tiny bit outdated with typescript. But that is only minor changes. Other than that, this was an amazing course intro for Springboot and angular.!!!
Cuanto tiempo espere este tutorial ... Al fin Gracias en serio
Such a helpful, well thought-out, and detailed tutorial!! Thank you so much!
this is ridiculous, you add the template and suddenly your app has navigation bar, shows that there are no employees etc. In reality, none of this happens. Such a waste of time
shut up
Isn't there an edit problem around 1:10-1:16? you create the employee.service.ts file after coding it it seems?
Nice, simple, and concise tutorial. Love it. Thanks gents
Hello, yesterday I downloaded the BackEnd part and with some adaptations to America/Santiago and a column name it functions correctly, Now I am going to the Front End part ... see you soon ... thanks
it is more correct to aim update method of the controller to the path with id of the updated instance as the update method is idempotent while post method is not
Another video added to the playlist. Cheers Nelson and Junior!
This is the error I that killed my progress
``` Argument of type 'null' is not assignable to parameter of type 'Employee'. ```
``` Add New Employee (current) ```
I have the same 😁When you inspect in chrome this button, do you have "Cannot read property 'appendChild' of null"?
If you want to take it to the next level try to
split the backend into microservices
Amazing video man! You kinda rushed the HTML / snippet part but it's ok, your explanations are great and I hope to see more of your tutorials soon, my best regards!
Great tutorial - very entertaining and very detailed. Thank you a lot
"You're just gonna paste the code of the snippet that I just showed you"
Why would you say that? your HTML doesn't even match the one on the website. Where's the part where you write it??
My god this completely threw me off. I tried copying your html from the frond end and now I have to follow the whole video with mismatching files.
@@HandledToaster2 I can't even copy some of the HTML from the video because it's covered up by the scroll preview box... I'm completely new to html and js and just wanted to follow along with a video to get started but this makes it literally impossible to do that.
@@noelle5145 bro do not follow this video it's terrible. I don't know what's up with everyone here saying good stuff about the channel, this is the worst excuse for a tutorial I've ever seen, it just gave me a huge headache and anxiety.
I don't know what to recommend since I really just hate frontend in general, but definitely don't follow this video. It's like he made this for somebody who already knows everything and wants a quick refresher.
@@HandledToaster2 I was specifically looking for a full stack tutorial because idk anything about front end and sadly this is the best video ive found :-(
@@noelle5145 you and me on the same boat man. All the good videos have too much of a thick indian accent and bad mic. Don't mean to be offensive, all the good Java content is indian, but I can't understand when the accent is too strong :/
I think it may has some bugs, if you have 2 employee such as David and Daniel, when you type 'Dan' (key = 'Dan') it only shows Daniel, but when you delete the 'n' letter (key = 'Da'), it won't show David since the this.employees array only has Daniel left
No need to add @Autowired on constructors in order to inject beans. Spring by default, injects beans with constructor if any.
You are great.. very important, helpful video.. lots of respect for you 🙏🙏.. expect many these types of helpful videos from you 🙏🙏
It was good from the start, until 1:41, dang.. I could not follow what those HTML codes were. ts
Amazing tutorial .1:20:00 there is a conflict on the tutorial with the previous one
1:14:00 the videos are not in order. The service generation video should be first.
Good day. Please did you post the actual template you used in your html anywhere?
I will love this tutorial. Will probably watch it to learn more on this combination. Thank you Amigoscode!
Very pedagogique , very cool, very impressive course and explanation
Thank you
i love your tutorials so much, thanks for taking the time! maybe a golang backend, vue frontend project?
Love your teaching style - thanks so much!
I have a problem with (click)="onOpenModal, when I try to click the "Add Employee" the inscription is not recognized as a click. When I inspect in chrome this button I've message"Cannot read property 'appendChild' of null" Can you help?
did you solve?
Hey, to solve this you must add a "!" after the null parameter. (click)="onOpenModal(null!, 'add')"
After this, your code will be succefully compiled!
minute 52:13
{
"timestamp": "2022-08-08T15:14:49.814+00:00",
"status": 404,
"error": "Not Found",
"path": "/employee/all"
}
for some reasson Postman doesn't want to read my backend, I followed the tutorial step by step
Same, i have this exact problem.. How did you manage to resolve it 1 year ago ?
Great course, but I have a question why in my IntelliJ the application. properties file has a standard icon, not a green leaf like in your case ?
Additionally, I have no syntax hints inside this file
Greetings from Poland
Same here, my guess is that's the difference between the community and the ultimate version of IntelliJ.