What do you need after all to create a web application using java? Explain the mechanism and what is necessary for learning

I started learning Java, but how far will it actually become a web application? What kind of technique do you need to learn? Is there anyone who is uncertain because they cannot see the future? 1190907.jpg There was a time when I was worried because java did not evolve from the image that runs on the command line, and the image that can be published on the Web did not boil. In the same way, I would like to explain the whole process of completing the Web application to those who are frustrated and anxious about learning java.

This is what you see in the Zackri diagram!

Looking at the contents of the web application in the figure, it looks like this.

Where is learning such as Java Primer used?

First of all, when you start learning Java, you will learn the processing method while outputting Hello World as in the example or on the command line. Image from Gyazo Where this corresponds to the Web service is the part marked with the red circle below. Image from Gyazo Although the service user requests "I want you to calculate this" and "I want this information", it performs dynamic processing. The so-called server side. I'm learning Java, and I don't get the image of becoming a web application because I'm learning the contents of the application on the server side. Those that are displayed on a browser, such as html, are faster to improve by using parts, and it is easier to see how they have grown. In that sense, I think some people may find Java sober at first. However, I hear that trends and methods on the design side change quickly, and even if it takes time, if you first learn the logical thinking and mechanism that is the core part necessary for the application, later learning will be much easier. I think it is.

A little more detail on how information arrives from users

As I explained in "This is what you see in the Zackli diagram!", The application runs in it, and there is some kind of processing like the arrow, and the "` part is too crisp, so it's a little detailed. In the previous example, JSP is the page where the user first presses the open button when making a request. Image from Gyazo JSP is like html where you can write Java processing that uses JSP files. For example, it is used by specifying http: //localhost/TestWorkspace/ test.jsp like when specifying html from the browser and checking. When the button is pressed, the information entered on the page is sent, and a Java file called a Servlet specified as the destination acts as an indicator, and java performs the necessary processing from there. In addition, the result is passed from the Servlet to the JSP and responded to the user.

Then what and how do you learn?

Now that you know the general mechanism, what should you learn from? Explain the learning content and order that I think from my experience.

1. 1. Java learning

First, learn what you can do with Java in the Java Primer. Once you understand the encapsulation, inheritance, and polymorphism, you will have an image of server-side processing.

Reference material

Introductory text that I also used → *** [Introduction to Java that is refreshing](https://www.amazon.co.jp/%E3%82%B9%E3%83%83%E3%82%AD%E3%83%AA%E3% 82% 8F% E3% 81% 8B% E3% 82% 8BJava% E5% 85% A5% E9% 96% 80-% E7% AC% AC2% E7% 89% 88-% E3% 82% B9% E3% 83% 83% E3% 82% AD% E3% 83% AA% E3% 82% B7% E3% 83% AA% E3% 83% BC% E3% 82% BA-% E4% B8% AD% E5% B1 % B1-% E6% B8% 85% E5% 96% AC / dp / 484433638X / ref = sr_1_1? ie = UTF8 & qid = 1544333892 & sr = 8-1 & keywords =% E3% 82% B9% E3% 83% 83% E3% 82 % AD% E3% 83% AA% E3% 82% 8F% E3% 81% 8B% E3% 82% 8B + java +% E5% 85% A5% E9% 96% 80) ***

2. Build a server and database and learn JDBC processing.

After learning Java, I think it's a good idea to use Java to learn how to work with databases. Writing and retrieving data is a necessary skill to create a service, and I would like you to learn it, but on top of that, put the OS in the circled part in the figure, set up a server, and build a DB environment. I want you to. Image from Gyazo Many people practice development in a local environment (on Windows), but if they don't know how the server works and how to build it, I don't think it will be useful in the field. I have seen some people who are accustomed to the local environment and cannot understand the mechanism of the server hierarchy, "I do not know where to place the application", "I do not know how to specify the path on the server". However, if young people who enter the field do not know how to move the hierarchy in the server, there may be more situations where they miss the chance to get a job because they teach too much from the beginning. Even if you build it on a server, you do not need a physical server by yourself, so you can set up a virtual server on VMware etc. and build it on your own PC.

Reference material

If you only have the procedure, you can build a virtual server and PostgreSQL database in the article linked below. → *** [For beginners] I will explain from the beginning until PostgreSQL built on the server can be used with tools from Windows. ***

Also, I learned the basic knowledge of servers in this book. It's easier to understand than suddenly starting from learning LPIC, etc., and the basics can be managed with this. → *** [Book to learn the basics of LPIC in one week](https://www.amazon.co.jp/1%E9%80%B1%E9%96%93%E3%81%A7LPIC%E3% 81% AE% E5% 9F% BA% E7% A4% 8E% E3% 81% 8C% E5% AD% A6% E3% 81% B9% E3% 82% 8B% E6% 9C% AC-% E7% AC % AC2% E7% 89% 88-% E5% BE% B9% E5% BA% 95% E6% 94% BB% E7% 95% A5% E3% 82% B7% E3% 83% AA% E3% 83% BC% E3% 82% BA-% E4% B8% AD% E5% B3% B6-% E8% 83% BD% E5% 92% 8C-ebook / dp / B00IWNEWS8 / ref = sr_1_1? Ie = UTF8 & qid = 1544345126 & sr = 8-1 & keywords = 1% E9% 80% B1% E9% 96% 93% E3% 81% A7lpic% E3% 81% AE% E5% 9F% BA% E7% A4% 8E% E3% 81% 8C% E5% AD% A6% E3% 81% B9% E3% 82% 8B% E6% 9C% AC) ***

If you can build a DB environment on the server, you can refer to the JDBC mechanism and usage at the following site. →***TECHSCORE JDBC(java.sql, javax.sql)***

3. Learning Servlets and JSPs

By learning this mechanism, you can understand the mechanism of the web application and see the whole picture of the web application. Learning around the circle in the movement of the server. Image from Gyazo There are many things to learn, such as the basic grammar of html, how to publish web pages, how to create dynamic pages, and how to develop. At this point, the development results while looking at the browser, such as the output results to the browser, are developed, which is very fun for me personally.

Reference material

Click here for the text I am using. It also describes how to use Eclipse and how to deploy it to a web server. → *** [Introduction to Servlet & JSP that you can understand clearly](https://www.amazon.co.jp/dp/4844335804/ref=asc_df_48443358042545974/?tag=jpgo-22&creative=9303&creativeASIN=4844335804&linkCode=df0&hvadid=295719984664&hvpos=1o1 = 10985391328792357083 & hvpone = & hvptwo = & hvqmt = & hvdev = c & hvdvcmdl = & hvlocint = & hvlocphy = 1009333 & hvtargid = pla-524758681562 & th = 1 & psc = 1) ***

at the end

I didn't touch on frameworks, but I think it's a good idea to learn the frameworks you want to use as needed. This concludes the explanation of the mechanism of web applications and the learning order, but did you see the path to developing web applications in Java? It may take some time to do everything, but seeing the goal and not seeing it can make a big difference in terms of feelings. Also, it takes time to learn the technology and make something that can be used, but I think that the technology that I have spent time learning will be the power to be useful in the field.

Let's continue together without rotting. Thank you for reading.

Recommended Posts

What do you need after all to create a web application using java? Explain the mechanism and what is necessary for learning
Do you use the for statement after all? Do you use a while statement? Proper use of for statement and while statement
After using Android Studio 3, Java application dependencies could not be resolved, so what to do about it Part 2
WSL2 Ubuntu 20 can no longer apt-get, so what to do
Start jnlp that has expired and can no longer be started without using Java Web Start
What do you need after all to create a web application using java? Explain the mechanism and what is necessary for learning
What to do if the log using JUL is no longer output to the app log after deploying the Spring Boot app to Tomcat as a war
After updating to OSX Catalina, I can no longer sass
[For beginners] Ruby is said to be ruby, but what about it?
What to do if you accidentally create a model
Create a JAVA WEB application and try OMC APM
What Java engineers need to prepare for the Java 11 release
I tried to explain what you can do in a popular language for web development from a beginner's point of view.
What you need to do to open a file from the menu in the document-Based App macOS app
What to do if the log using JUL is no longer output to the app log after deploying the Spring Boot app to Tomcat as a war
[Output] Learn Ruby from what you want to do at the fastest speed-Part 2 "Create a flowchart"
Write what you thought after using mybatis for half a year
What to do if you can't bundle update and bundle install after installing Ruby 3.0.0 in the Rails tutorial
What to do if Operation not permitted is displayed when you execute a command in the terminal
[Rails / Docker] What to do if access is denied by the browser (localhost: 3000) after adding a gem
What to do if the background image is not applied after deployment
There is LSP and I tried to create an environment to write Java with Vim (NeoVim), but after all I could not beat the IDE ...
Volume of trying to create a Java Web application on Windows Server 2016
Create a java web application development environment with docker for mac part2
What to do if you get an "A server is already running." Error when you try to start the rails server
After using Android Studio 3, Java application dependencies could not be resolved, so what to do about it Part 2
I tried to make a web application that searches tweets with vue-word cloud and examines the tendency of what is written in the associated profile
What to do if you get a SQLite3 :: BusyException: database is locked error
What to do when you want to delete a migration file that is "NO FILE"
[Java] Why do you bother to use the interface (Spring is also available)
What to do if you have installed Java for OS X on macOS
Androd: What to do about "The Realm is already in a write transaction in"
[Azure] I tried to create a Java application for free-Web App creation- [Beginner]
[Introduction to Docker] Create a Docker image for machine learning and use Jupyter notebook
[Solution] What to do if you get a Docker error'ERROR: Cannot connect to the Docker daemon at unix: ///var/run/docker.sock. Is the docker daemon running?'
Do you need a memory-aware implementation of Java?
[Java / PostgreSQL] Connect the WEB application to the database
Create a web app that is just right for learning [Spring Boot + Thymeleaf + PostgreSQL]
[For beginners] Until building a Web application development environment using Java on Mac OS
[Azure] I tried to create a Java application for free ~ Connect with FTP ~ [Beginner]
What to do if the breakpoint is shaded and does not stop during debugging
What to do if you cannot execute with the command "Java package name / class name"
A story about taking an HTTP trace using Charles to find out what requests the Java library is making to Slack
[Maven] What to do if you are asked to incorporate a jar that is not in the remote repository into the war
<Dot installation> What to do if you cannot proceed due to an error when building a development environment for Rails learning.
What to do if you select a JRE in Eclipse and get "The selected JRE does not support the current compliance level 11"