Learn Java Fast

why do we want to do this in 2021, by Rick Delpo, 11-26-21

Learn Java because we appear more sophisticated. In 2021 many perceive java as hard to learn. Since this is so, then we must be pretty smart to grasp the Java language and this is why we Java Programmers are above the fray. In 2021, java is still widely used so if u opt for easier python u may miss out on many lucrative opportunities.

Learn Java because there is money to be made. As i just said, there are lucrative opportunities out there for Java Programmers. My opinion is that learning Java is proper upbringing for young wannabes. Many big corporations still use micro services with Spring Boot in 2021 and they are not about to change just because something new came along. Spring Boot is where Tomcat, Servlet and JDBC lives nowadays. Don't leave money on the table by not learning java.

Learn Java and have it in your tool box, our expanded skillset is worth more money.

Learn Java because other languages use similar syntax

Learn Java to become more well rounded

Become Full Stack by Learning Java along with SQL and Javascript. In 2021 being full stack seems to mean more. Back in my day we specialized inside our silos. I was sql only for 20 years. Full Stack is not only a thing but u become more well rounded because of it.

Have I given u enough reasons to learn Java? Many opinions out there have java as a dying, old school language but in fact, Java is still very widely used and definitely worth learning. But my recommendation is to learn only the absolutely necessary pieces like JDBC, Servlets and Arrays with for loops. By combining some basic sql with java we can achieve our basic understanding in as little as one day. But I must warn that it is up to u to expand ur knowledge by practicing the many free java tutorials out there. Another reason I am touting this fast track java learning approach is because, when overwhelmed, it is very easy for the java beginner to give up. Also I want u to beware that self teaching can result in what i refer to as research hell. There are many ways to accomplish a section of coding and it can get confusing during research when the beginner finds himself way over her/his head very quickly. But hang in there and focus first on my abbreviated agenda taught here.


Achieving our goal of Learning Java quickly and efficiently

I like to demonstrate how a Java Servlet works very early on. The reason for this is because we learn about the request and response mechanism (http api) right away. The user requests something and the server responds by answering the request. This is called a response object in the Java Servlet spec. Lesson learned here, Request and response is the very backbone of the internet and is used in all programming languages. This is why it is imperative to learn it right away. The Java Servlet is one way to access request and response thru the service method. Servlet is essentially the http client for Java like Axios is one such http client for Javascript. Probably the most common way to request something is to do a Fetch in front end javascript where u will get a json response. Back in the ole days Ajax did this very task of fetching.

Another programming structure is the for loop of an array or collection of data. When we fetch data we iterate over its contents and render the result. This act of iteration or looping is another must have in any programming language. Thus we have SQL (structured query language) which is found in the JDBC api of the java2 platform. BTW, servlet above is a separate specification and is not part of the java 2 platform.

Thus far, I have introduced two important concepts, java and sql. We need to embrace them both for quicker learning, in my opinion. I offer tutorials for the beginner on using both these concepts together. The main reason for this is because we need to do more than just a hello world program in java. We need a reason to use java and that is to access some data.

By now some of u are rolling your eyes because these two concepts can be done in most any programming language. Yes I agree but we must begin somewhere and it is good to be multi lingual as we appear more well rounded, more full stack to a hiring manager out there.

I recommend SQLite for the beginner because we can embed this database right inside our java application. My tutorials show u how to do all this. We also use Tomcat as a servlet container or simply referred to as the server. BTW, Javascript circumvents the container and for more advanced learners the Java Spring Boot platform embeds the tomcat container right into the app and uses the jdbc api.

As we progress I would like to quickly get away from the Tomcat container structure and move onto the Lambda process which replaces the need for a java servlet. But it is recommended not to skip all these beginner steps because it is a good foundation to build upon.

I also want to introduce Lambda because these days (2021) java servlets seem to be more passe. We can still use request and response and can store our data elsewhere like in a Serverless environment which is all the rage these days. Note: even though I mention that servlets are passe they are still widely used and should not be ignored. But we still also need to understand current Lambda Serverless technology too. Both are equally important so please do not misunderstand me and learn both.

My old school java tutorials can be found here.

Note a couple of things. I am instructing all on a Windows platform. U will be redirected to our parent site for now because this site is still under construction.

Also I am using only Eclipse as my IDE and u, the beginner, should move on to Eclipse with Maven quickly because most of the tutorials out there are in Maven.

Also, I am providing ONLY the very basics and it is up to u to keep the research going at ur own pace. My java tutorials are only a small piece of the puzzle but they are Foundational knowledge and should be embraced, not skipped over.

So by all means, please do Learn Java, u will not regret it.

Happy Coding !!

this is an addendum added to the above content on 11-27-21 by the author, Rick Delpo

It is also important to understand the JDBC API of Java. JDBC stands for Java Database Connectivity. Here we learn about the Connection Class and the JDBC Driver. Once connected to the data we then do Prepared Statements which are sql queries into our database. The data is then rendered into a ResultSet object which is passed along to the users frontend (the client) via some html mixed in with our jdbc content in our Java Servlet. The ResultSet is an array that uses the .next method of the ResultSet in a while loop. So we are learning all about looping and rendering data to the client using, as I previously mentioned, the Java http client which is a servlet. Now this may all sound complicated at the moment but it is foundational knowledge that sets u apart from our fellow Python programmers. We become well rounded because we understand all the underlying mechanics of how the data actually works. Over in Python we skip all this rigamarole and our collection of data just appears magically without the programmer ever understanding the real mechanism which I deem as valuable knowledge. I wrote a tutorial on the comparison of Java with Python which can be found here. For now u may skip over the first part of the tutorial and go to part 2 where I make the comparison between Java and Python. Please consider this carefully before deciding not to learn java. How will u ever learn Spring Boot and create Microservices without this foundational understanding of Servlet and JDBC.

Another important piece of this Java Puzzle is Maven which is an add-on to Eclipse and I encourage u to download this IDE soon after playing around with the plain J2EE version of Eclipse. When I first learned Java, Maven was not around so I spent many years using the same old tools that seemed to work just fine. Every time we developers turned around there was something new out there and believe me, it made me want to quit many times. Maven has a file called POM.xml which handles all the build dependencies, in a central web repository. In the old school we needed to download a jar file and then add it to our build path. This became very cumbersome, so Maven made it much easier using the central online repository. Another reason why we all need Maven is that most tutorials out there refer to Maven so u can't do the tutorial unless u know how Maven works. Finally a last reason to know Maven is because we all want to graduate from Java to AWS Lambda. Now this does not mean that we completely give up on Java because we always want our toolbox to be full of knowledgeable stuff so we look good among our peers. A note on Lambda, it is very current technology and we must not parade around as dinosaurs like me. Hiring managers do NOT appreciate dinosaurs. So this is why we need stepping stones to graduate to Lambda and my learn java agenda is simply a quick way to get there. If we bog ourselves down with java theory and tons of needless apis then we only slow down the process of fast tracking ourselves into a current tech environment. So cut out all the fluff and learn just the necessary basics for now. Please note that my free java tutorials were written before Maven arrived on the scene but it is good anyway to understand the old school way of downloading jar files and including them in ur build path. I do urge all of u to quickly graduate to Maven as soon as possible because new versions of eclipse include it. In any event I am trying to demonstrate the old way of building in eclipse versus the current way.

Now I have made very little or no mention of Javascript in this article. But in order to access backend data these days, the current way of doing it is with a cool javascript frontend like React or even plain vanilla javascript will do. Now being the old dinosaur that I am, I used JQuery AJAX for ions to fetch my data from javascript. But over time AJAX gave way to the fetch api and now we have Axios which is a native json javascript http client. And we also have the AWS API Gateway that provides a url to enable Axios to do its thing. But most of u probably already know all this. I am just trying to link Java to modern day technology in this article. Spoiler alert, I want to teach u all how to use a JSON S3 database, a not very orthodox methodology, but just a fun way to present limited use case, ad hoc data stores. More to come on this topic.

It is up to u, my friends, to do ur diligence with learning java and all this other cool stuff. Please do a lot of research because I only scratch the surface here touching on all these topics. For each topic above, in addition to doing my free java tutorials, you should expand ur knowledge of each topic. Be forewarned that things move so fast out there that u really need to check the dates on everything u are reading and it gets confusing. Also beware that the Chrome browser has changed the way things are allowed just in the past 4 years (2018-2021). Things that worked in chrome before may not work anymore so many tutorials are literally outdated. This topic is a very 2021 thing. The Chrome Browser wreaked havoc on us poor developers over the past 4 years so beware. Caveat Emptor. I will also be publishing an article on this topic soon so stay tuned for more.

Good Luck folks !! if you need me, do a google search on Rick Delpo or find me on Facebook

added below on 11-28 by author Rick Delpo

If u want to develop Enterprise Level Java apps and Microservices for a large corporation, u best learn Java, and they will most likely be using the Spring Boot platform with embedded Tomcat and JDBC connectivity called the JdbcTemplate. There are most certainly big buck opportunities here for all u Java wannabees. I have firsthand experience having worked at GE where they embrace Java and frown upon Python.

Just another quick note on what IDE (integrated development environment) we beginners are using. Many gravitate to Netbeans which is a great drag and drop environment. But i recommend graduating quickly to Eclipse with Maven. Also there is another bigee out there called IntelliJ. For u Android developers there is Android Studio. My preference is Eclipse only because this is what I grew up with.

Thanks for reading Folks, search for Rick Delpo on Google or Facebook for more information and FREE Java Tutorials for the beginner.

also published on dev.to - u can read my other articles on dev.to - click here.

Now that we understand why we need to learn java click here to get started on an easy to follow JDBC tutorial about connecting to data. Just copy and paste the code into Eclipse (or preferably Spring STS) and run as a dynamic web project.

About the Author:

Rick Delpo

This is not Rick Delpo's First Rodeo. With 20 years experience in web dev and data management, Rick has seen a thing or two. In fact, Rick Delpo has witnessed the entire evolving of the web over this 20 year period. Now retired, Rick has plenty of time to dabble here and there with data, webdev, blogging and content writing. Click here for more on Rick Delpo.

Follow @RickDelpo