How to create an REST API in Spring boot using Java

Поділитися
Вставка
  • Опубліковано 9 жов 2022
  • REST APIs are the base of how many modern backends are constructed, I, therefore, wanted to showcase how we can quickly create a working API using Spring Boot.
    Source code: gist.github.com/Da9el00/b9c32...
    My channel publishes programming and software engineering videos, especially Java and Python. If that is what you want, do not hesitate to join me on this journey!
    Subscribe to my UA-cam channel:
    / @randomcode_0
  • Наука та технологія

КОМЕНТАРІ • 73

  • @rhtonmoy
    @rhtonmoy Рік тому +16

    Brother, you are the best. What a great way of explaining Springboot rest API in short. Thanks for sharing ❤

  • @mauricemakesmovies
    @mauricemakesmovies Рік тому +8

    Clear instructions and it was a quick and short introduction to REST APIs in SpringBoot. Thumbs up!

    • @Randomcode_0
      @Randomcode_0  Рік тому

      Happy to hear you enjoyed my approach!

  • @lnlupo95
    @lnlupo95 3 місяці тому +1

    Nice content! I wanted a quick look into Spring boot and your video served me well! Thanks!

  • @abernau1
    @abernau1 Рік тому +2

    Thanks a lot! Great as an introduction to the Spring boot. Concise, clear and easy to follow.

    • @Randomcode_0
      @Randomcode_0  Рік тому

      Thank you for the kind feedback! I'm glad the Spring Boot introduction was concise, clear, and easy to follow. If you have any more questions, feel free to ask!

  • @rohitchanda8461
    @rohitchanda8461 Рік тому +8

    This is simply brilliant! Goldmine your channel is! Keep up the amazing work!
    PS - a detailed and complete playlist on Spring Boot right from scratch would be awesome! A playlist that introduces one to the world of Spring Boot and makes him a pro like you! Would love to follow that religiously ❤

    • @Randomcode_0
      @Randomcode_0  Рік тому +1

      Thank you! I might create a more general introduction to spring boot at some point.

    • @rohitchanda8461
      @rohitchanda8461 Рік тому

      @@Randomcode_0 Waiting eagerly for that. Also, I tried writing this API by following along, however I am not getting any output on Postman. HTTP Status Code is 200 OK but still is no output. Could you tell me why?

  • @whatcanihave08
    @whatcanihave08 6 місяців тому

    Nice content. Quick and easy to understand. Awesome for quick brush up before interviews.

    • @Randomcode_0
      @Randomcode_0  6 місяців тому

      Glad you liked it! If you have any other topics that might be interesting to brush up on, I would love to get some input.

  • @RioThejenero
    @RioThejenero Рік тому

    Most usefully video I have ever seen in my entire life. Ty bro

    • @Randomcode_0
      @Randomcode_0  Рік тому

      Wow! Thanks for the awesome comment! I'm thrilled that you found the video incredibly useful.

  • @newfoundland1956
    @newfoundland1956 2 дні тому

    Thanks just what I needed so I subscribed

  • @damilola_adegunwa
    @damilola_adegunwa Рік тому +3

    hurray! final my first java rest api ran! thanks a lot! now my java journey begins, wish me luck 🤣🤣

  • @lilMerla
    @lilMerla 9 місяців тому +1

    Thanks for the video. it was genuinely helpfull and easy to understand 😊👏

  • @Oi-mj6dv
    @Oi-mj6dv 9 місяців тому +18

    Very nice. Problem is i just remembered why i hate java so much.

  • @christio02
    @christio02 7 місяців тому

    Thank you for the tutorial!

  • @WRPXV
    @WRPXV Рік тому

    Awesome!, thanks for sharing it. 🤓

  • @BlueXDShadow
    @BlueXDShadow Рік тому

    Thanks for the tutorial.

    • @Randomcode_0
      @Randomcode_0  Рік тому +1

      You're welcome! Glad it was helpful for you.

  • @bugraosmansoysal9118
    @bugraosmansoysal9118 3 місяці тому

    Great video, thank you lots ❤

    • @Randomcode_0
      @Randomcode_0  3 місяці тому

      You're welcome 😊 Glad you like it!

  • @cristophermolina2721
    @cristophermolina2721 11 місяців тому +1

    Loved it! Just wanted to know if you know the way to implement the post method.

    • @Randomcode_0
      @Randomcode_0  11 місяців тому

      It is done in more or less the same way using a "@PostMapping" annotation.

  • @nald-dev
    @nald-dev Рік тому

    Thank you for this

  • @lennartreinecke4553
    @lennartreinecke4553 5 місяців тому +2

    What window do you open at 9:56?

  • @lucashayashii
    @lucashayashii Місяць тому

    Thanks!

  • @ponchobob
    @ponchobob 9 місяців тому

    hi, nice video. how did you disable the security part? i'm always redirected to a login page when calling the full api path in a browser.

    • @Randomcode_0
      @Randomcode_0  8 місяців тому

      Sorry for the late reply. I would assume you have added Spring Security, which will provide login functionality even without any extra setup.

  • @mongolhvv
    @mongolhvv 8 місяців тому

    Thank you

  • @PAUL1430
    @PAUL1430 7 місяців тому

    thank you for this video. it helps me well! Could you tell me what is the difference between rest api vs restFul api?

    • @Randomcode_0
      @Randomcode_0  7 місяців тому +1

      In short:
      REST API: used to describe any API that follows the principles of REST to some extent.
      RESTful API: should follow all the constraints of REST.
      But people often think of them as the same thing and they are used interchangeably.
      The Constraints of REST are:
      - Client-Server Architecture
      - Statelessness
      - Cacheability
      - Uniform Interface
      - Layered System
      - Code-On-Demand (Sometimes Optional)

    • @PAUL1430
      @PAUL1430 6 місяців тому

      @@Randomcode_0 thank you champ

  • @onthego22
    @onthego22 Рік тому

    how did you get spring initializer inside intelij ? is it community edition or ultimate?

    • @Randomcode_0
      @Randomcode_0  Рік тому

      I am using the ultimate edition. This makes the setup a bit simpler. The same project can be created using spring boots' initializer.

  • @haisesasaki3372
    @haisesasaki3372 6 місяців тому +1

    So I have to use ultimate version just to use spring on this IDE?

    • @Randomcode_0
      @Randomcode_0  6 місяців тому

      You can still use the IDE, you just can't use the built-in Spring project builder. However, it is the same project builder as on Spring's own website. You just need to create the project and then open it using IntelliJ. You can then just create an empty Maven project and import the dependencies or use the Spring Initializer: start.spring.io/

  • @sushilbhagat1405
    @sushilbhagat1405 6 місяців тому

    Nice

  • @bryanjonathan407
    @bryanjonathan407 Місяць тому

    the more i watched the videos . the more im confuse about his explanation . please explain it more detail and tell us why we should use the things that you said

  • @thesquarefish
    @thesquarefish 11 місяців тому

    OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended? I copied the video exactly but I got this error. What does it mean?

    • @Randomcode_0
      @Randomcode_0  11 місяців тому

      The warning message indicates that the JVM is unable to enable sharing for classes outside of the boot loader classes due to modifications in the bootstrap classpath. Check dependencies and project configuration, or update your JDK to resolve the warning.

  • @nk461
    @nk461 5 місяців тому

    Please increase the font size in your new videos!

  • @michaelfeeler1041
    @michaelfeeler1041 4 місяці тому

    Can someone please explain the return statement syntax inside the if statement of the controller?

    • @gehtdichnichtsan2194
      @gehtdichnichtsan2194 4 місяці тому +1

      as far as i understood: 9:32
      row 24: the optional "user" will be filled with the values of the given id. If id>= 6, it will be empty in this example.
      row 25: if the optional "user" got data (id 1-5), it will return the optional (row 26) as it has an actual value and stops there.
      row 28: it will return nothing, if it comes to this return (id>=6)

    • @michaelfeeler1041
      @michaelfeeler1041 4 місяці тому

      @@gehtdichnichtsan2194 thanks for the reply! Do you know why User is put in parentheses like that? (User). It’s the first time I’m seeing that syntax and can’t find answers with google. Any documentation would be appreciated.

    • @gehtdichnichtsan2194
      @gehtdichnichtsan2194 4 місяці тому

      @@michaelfeeler1041 if you follow the link in his description to github, you can find another solution, which should be better. However there you will stumble uppon the parentheses aswell.
      @GetMapping("/user")
      public User getUser(@RequestParam Integer id){
      Optional user = userService.getUser(id);
      return (User) user.orElse(null);
      the "(User)" is a type cast which should make sure that the return value gets interpreted as the User object. the returnvalue in this case is "user.orElse(null)" i personally would go with the github solution as it is shorter.

  • @orcestragamer3058
    @orcestragamer3058 Рік тому

    Sir, can I add this in my resume under project section? because it only do crud so is it worth to add?

    • @Randomcode_0
      @Randomcode_0  Рік тому

      Absolutely! Including this CRUD project in your resume can demonstrate your ability to create functional applications, which could be relevant to potential employers. Just be sure to highlight the skills and technologies you utilized in the project.

  • @xeryan9744
    @xeryan9744 Рік тому

    what IDE is this. looks clean

    • @Randomcode_0
      @Randomcode_0  Рік тому

      I am using the Intellij IDEA, which is an idea made by Jetbrains.

    • @musashi542
      @musashi542 Рік тому

      if u are a student u cant get it for free

  • @user-um7ok2qr1b
    @user-um7ok2qr1b 7 місяців тому

    how to write docker file in eclipse

    • @Randomcode_0
      @Randomcode_0  7 місяців тому

      I'm not entirely sure I fully understand your question. You can create a Dockerfile anywhere; it just needs to be named "Dockerfile," and it should work.

  • @nephylumsaracen6722
    @nephylumsaracen6722 7 місяців тому

    Is that you, Alex????😂😂😂😂

    • @Randomcode_0
      @Randomcode_0  7 місяців тому +1

      I am sorry to disappoint, but my name is not Alex.

  • @joshuamc8617
    @joshuamc8617 11 місяців тому

    source code pls?

    • @Randomcode_0
      @Randomcode_0  11 місяців тому +1

      Added to the description, and here is the link as well: gist.github.com/Da9el00/b9c3280b69ea0291227cf005f090a319

  • @user-td5gy2fh3p
    @user-td5gy2fh3p 10 місяців тому

    What is this garbage ultra compressed audio?

  • @ragnarlothbrok367
    @ragnarlothbrok367 Рік тому

    paywall ide, thumbs down

    • @mauricemakesmovies
      @mauricemakesmovies Рік тому

      ??? you can do the same things in many other ide's though.

  • @jimbo5437
    @jimbo5437 10 місяців тому +1

    getting a 404 status error not found path / and i did everything you did to the T with no errors.

    • @Randomcode_0
      @Randomcode_0  10 місяців тому

      If you are receiving a response of 404, you are hitting the correct port. However, you should double-check that you are using the correct URL and have the same endpoint defined in your controller (Spring Boot endpoints are also Case Sensitivity by default). The 404 error indicates that you might be on the wrong URL. You would encounter a 500 server error if you hit the correct endpoint but your backend is experiencing issues. Otherwise, you can view all of my code at: gist.github.com/Da9el00/b9c3280b69ea0291227cf005f090a319

    • @tasoscat4295
      @tasoscat4295 6 місяців тому +1

      @@Randomcode_0 im getting the same error. I completely copy pasted the source code from your git to be sure. Still same problem.

    • @ihordoroshenko2158
      @ihordoroshenko2158 2 місяці тому

      I tried to change jdk version to 17, it didn't really help, but after that I noticed that the code in video is not the same as on his Github and the important row where you define in controller, model, and service the package name is missed in the Github-files. Just add it and it should work - I hope it helps everyone who still has this problem