前言
创建Java Web工程属于入门的知识,网上的文章也很多。本次基于最新的IDEA来阐述如何快速创建Java Web工程,并部署到本地最终通过浏览器访问,希望通过本篇文章让大家对Java Web有个最直观的认识。
通过本篇文章,你将了解到:
- 什么是Java Web?
- Java项目转为Java Web
- 通过Maven创建Java Web
- 如何部署服务到Tomcat中?
- 总结
1. 什么是Java Web?
用三张图说明:
我们手机上的App各式各样,他们的共同点之一是随时能够刷新内容,靠的就是每个App都接上了互联网,可以从网上获取最新内容。
对应到代码术语里的是:前端<--->服务端交互。
当前最常用的交互协议是TCP/IP,使用的应用层协议是HTTP协议,如下:
前端作为Http Client,服务端作为Http Server,共同为用户提供服务。
继续演变如下图:
客户端引入Http SDK,服务端引用Http SDK,通信交由该SDK负责。
对于服务端来说,只需要专注于写具体的业务逻辑代码,并根据计算得的数据渲染出前端页面,最后返回给客户端,我们通常称此类的应用为Web应用。
而Java Web 是指使用 Java 技术构建 Web 应用程序的开发领域,它通常包括如下内容:
- Servlet:用于处理网络请求和生成响应
- JSP:用于动态生成网页的内容
- Tomcat:用于运行Servlet并提供Http 基础服务(Http Server)
- 数据库:用于持久化数据
因此一个最简单的Web应用运行流程为:
接收客户端请求-->处理请求-->读写数据库-->返回处理后的数据-->渲染到页面-->生成响应给客户端
接下来我们探索如何快速创建Java Web项目,主要有两种方式:
- Java项目转为Java Web
- 通过Maven创建Java Web
2. Java 项目转为Java Web
IDEA 版本:IntelliJ IDEA 2024.3.2 (Ultimate Edition)
- 新建项目,选择Java,输入项目名,此处使用的是Maven方式依赖
- 创建成功后,查看Java项目结构
css
有一个入口函数,就是熟悉的Main函数,当我们运行该函数就可以看到打印,如此一个最简单的Java工程搭建完成。
- 引入Web依赖
上述步骤仅仅只是创建了纯Java项目,现在需要使它变为Java Web项目,需要添加对应的依赖。
打开项目结构:\
选择添加Web模块:
选择之后点确定即可。
此时再来查看项目的结构。
可以看出,多出了个web的目录,不过没有视图文件。
在web目录上右键,选择新建JSP文件:
新建后修改内容:
可以看出,JSP和HTML结构差不多,只是它里面可以插入Java代码进行动态修改界面。
- 引入Tomcat
经过上述步骤,我们创建好了Java Web项目,现在想让这个项目跑起来。根据之前的分析,我们现在只是搭建好了服务,还需要借助Http Server来帮助我们收发Http请求,此处使用最常用的Web 容器:Tomcat。
先下载Tomcat:
官网:tomcat.apache.org/index.html
根据不同的平台下载对应的包,解压即可。
编辑运行配置:
选择本地的Tomcat:
找到之前下载的Tomcat,设置为Server,其他可暂时不用动。
可以看到右下角有个提示,点击fix按钮。
跳转后选择新建artifacts:
最后一路点击确定按钮。
回到工程后就会发现配置构建多了Tomcat选项:
此时我们直接点击运行按钮,项目就会部署到Tomcat里,自动跳转到浏览器访问:
如此一来,最简单的没有任何逻辑的Java Web搭建并运行成功,后续就可以完善数据的输入输出,完善页面的显示。
3. 通过Maven创建Java Web
上面的步骤还是有点繁琐,现在我们的目的很明确,直接创建Java Web项目,而不是通过Java项目再转Java Web项目。
- 新建项目,选择Maven Archetype
确定后查看项目结构:
此时Java Web目录已经生成,可以看出此种方式比上一种方式快捷很多。
- 引入Tomcat
与上一种方式类似:指定Tomcat与Deployment。
此时运行项目:
成功展示页面。
通过比较创建Java Web的两种方式,第二种方式便捷了许多,推荐大家使用第二种方式创建Java Web项目。
4. 如何部署服务到Tomcat中?
上述我们都是直接点击IDEA里的运行按钮直接部署,观察项目编译产物:
产物放在target目录下,当我们点击IDEA的运行按钮时,Tomcat将会加载target下的文件。
当客户端发起请求时,Tomcat将会寻找到此处最终将UI返回给客户端。
可以看出,此时的target目录并没有在Tomcat目录下,那如何把target放在Tomcat目录下呢? 分两步:
- 构建War包
构建之后查看target目录,多了一个.war包。
-
将War包放到Tomcat目录下
找到Tomcat安装目录下的webapps,比如我的目录:/usr/local/apache-tomcat-9.0.96/webapps
将war包拷贝到该目录下。
-
启动Tomcat
找到Tomcat安装目录下的,比如我的目录:/usr/local/apache-tomcat-9.0.96/bin 执行命令启动tomcat(可能需要管理员权限):
mac/linux 下命令:./startup.sh
windows 下命令:./startup.bat
启动后查看webapps目录:
可以看出,.war包被自动解压了。
- 通过浏览器访问Java Web
bash
</div>
注意此时的路径是webapps下对应的.war包解压后的目录名。
5. 总结
以上我们实现了最简单的Java Web项目的创建到部署的功能,接下来我们会往里面添加实现逻辑,比如接收客户端的传值、接收客户端拉取数据等功能,让大家逐渐了解Java Web开发流程。
下篇将重点分析Servlet的编写、运行过程,敬请期待。
如果您觉得有帮助,记得一键三连哦~ 感谢感谢再感谢~
项目地址 持续维护中。