持续学习&持续更新中…
【Java】JavaWeb简介
WEB和JavaWeb简介
WEB
WEB,在英语中web即表示网页、网络的意思,它用于表示Internet主机上供外界访问的资源。
Internet上供外界访问的Web资源分为:
-
静态web资源:指web页面中供人们浏览的数据始终是不变的。例如(css/js文件、mp3、mp4文件)
-
动态web资源:指web页面中供人们浏览的数据是由程序产生的,不同的
时间、地点、用户操作
使得访问的web页面看到的内容不同。
动态网页需要使用到服务端脚本语言(JSP就是一种服务端脚本语言)
Web开发技术:
-
静态web资源开发技术:图片、CSS等
-
常用动态web资源开发技术:JSP/Servlet、ASP、PHP等
web资源的分类
Java Web
在Java中,动态web资源开发技术统称为JavaWeb。
一个Web应用程序包括Web客户端和Web服务器两个部分,即基于B/S(浏览器/服务器)架构的应用程序。
1.Web客户端通常是指用户机上的浏览器,如微软的IE浏览器或火狐浏览器等。客户端不需要开发任何用户界面,而统一采用浏览器即可。
2.Web服务器是一台或多台可运行Web应用程序的计算机,通常我们在浏览器中输入的网站地址,即Web服务器的地址。当用户在浏览器的地址栏中输入网站地址并按回车键后,请求即被发送到 Web服务器。服务器接收到请求后,会返回给用户带有请求资源的响应消息。
客户端主要用于展现信息内容;服务器端则主要用于处理业务逻辑以及与数据库的交互等。
JavaWeb的概念
请求和响应
BS/CS架构
BS(Broswer Server)
客户端可以通过浏览器直接访问服务端
CS(Client Server)
BS和CS区别
1.开发和维护成本
C/S结构的开发和维护成本都比B/S高,采用这种结构必须为不同客户端开发不同的程序,而且软件的安装、调试和升级均要在所有的客户端上完成
2.客户端负载
C/S的客户端不仅负责与用户的交互、收集用户信息,而且还需要通过网络向服务器发送请求以处理数据库、电子表格或文档等。由此可见,应用程序的功能越复杂,客户端程序也就越庞大,这也给软件的维护工作带来了很大的困难。而B/S结构的客户端把事务处理逻辑部分交给服务器处理,客户端只需要显示,这样将使应用程序服务器的运行数据负荷较重。一旦发生服务器崩溃等问题,后果不堪设想。因此许多单位都备有数据库存储服务器,以防万一。
3.安全性
CS的不足:
a.如果软件升级,那么全部软件都需要升级
b.维护麻烦:需要维护两端(服务器和客户端)
c.兼容性差(适配麻烦),使得开发成本变高
d.由于需要安装才能使用,使得用户也教少
BS的不足:
a.用户体验不如客户端
b.安全性低
域名解析
JSP简介
JSP宏观了解:在html中嵌套的java代码 (通过<%%>来嵌套)
JSP全称Java Server Pages,是一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码。标签通常以<%开头以%>结束。
JSP是一种Java servlet,主要用于实现Java web应用程序的用户界面部分。网页开发者们通过结合HTML代码、XHTML代码、XML元素以及嵌入JSP操作和命令来编写JSP。
JSP页面中的HTML代码用来显示静态内容部分,嵌入到页面中的Java代码与JSP标记来生成动态的内容部分。
JSP通过网页表单获取用户输入数据、访问数据库及其他数据源,然后动态地创建网页。
JSP标签有多种功能,比如访问数据库、记录用户选择信息、访问JavaBeans组件等,还可以在不同的网页中传递控制信息和共享信息。
JSP允许开发人员编写自己的标签库来完成应用程序的特定要求。它可以被预编译,从而提高了程序的运行速度。由于JSP开发的应用程序经过一次编译后即可运行,所以在绝大部分系统平台中,代码无须修改即可在支持JSP的任何服务器中运行。
为什么使用JSP?
JSP程序有如下优势:
性能更加优越,因为JSP可以直接在HTML网页中动态嵌入元素而不需要单独引用CGI文件。
服务器调用的是已经编译好的JSP文件,而不像CGI/Perl那样必须先载入解释器和目标脚本。
JSP 基于Java Servlet API,JSP 和Servlet 可以相互转换,因此,JSP拥有各种强大的企业级Java API,包括JDBC,JNDI,EJB,JAXP等等。
JSP页面可以与处理业务逻辑的 Servlet 一起使用,这种模式被Java servlet 模板引擎所支持。
最后,JSP是Java EE不可或缺的一部分,是一个完整的企业级应用平台。这意味着JSP可以用最简单的方式来实现最复杂的应用。
JSP的优势
以下列出了使用JSP带来的其他好处:
与ASP相比:JSP有两大优势。首先,动态部分用Java编写,而不是VB或其他MS专用语言,所以更加强大与易用。第二点就是JSP易于移植到非MS平台上。
与纯 Servlet 相比:JSP可以很方便的编写或者修改HTML网页而不用去面对大量的println语句。
与JavaScript相比:虽然JavaScript可以在客户端动态生成HTML,但是很难与服务器交互,因此不能提供复杂的服务,比如访问数据库和图像处理等等。
与静态HTML相比:静态HTML不包含动态信息。
JSP执行流程
一般所有的JSP项目都需要有如下文件
JSP执行流程:
jsp -> java(Servlet文件) -> class
class文件存放在:
D:\study\apache-tomcat-8.5.30\work\Catalina\localhost\JspProject\org\apache\jsp
运行后jsp项目首先会将jsp文件翻译为java文件其次编译为class文件然后存放在work->Catalina->localhost下的对应项目目录中。
JavaEE项目的三层架构
分层的目的是解耦。
解耦是为了降低代码的耦合度,方便项目后期的升级和维护。
项目包名设置
对应自己的项目:
参考
郭永峰: 郭永峰 Java开发工程师 基础就业班.
DT课堂颜群: JavaWeb视频教程.
王国辉 陈英: JavaWeb入门经典.
菜鸟教程: JSP教程.
尚硅谷最新版JavaWeb全套教程.
本文完,感谢您的关注支持!