应用程序架构分为两种
C/S架构
C/S(Client/Server):客户端/服务器
B/S架构
B/S(Browser/Server):浏览器/服务器
相对于C/S应用程序而言, B/S应用程序更容易访问且部署维护时更加方便
1.Tomcat ①URL的组成https://localhost:8080/myProject/index.jsp
http:协议(Hypertext Transfer Protocol):超文本传输协议
Ip:服务器的地址
Port:端口号,让那个程序相应
myProject/index.jsp:路径/文件名
端口如果设置为80,可以不写端口
状态码 意义
200 成功处理请求
404 找不到服务器资源
500 服务器处理出错
②Tomcat的目录结构| 目录文件 | 作用 |
|---|---|
| bin | startup.bat, shutdown.bat |
| conf | 存放Tomcat的配置文件 |
| lib | Tomcat所需要的lib文件 |
| webapps | Web应用的发布目录 |
| work | JSP运行时生成的servlet文件 |
| temp | Tomcat运行时存放临时文件 |
| logs | 存放Tomcat的日志文件 |
//将8080端口修改为6060端口④在Tomcat中配置虚拟目录
打开conf目录中的server.xml文件,在其中的标签中使用一个标签进行配置。
2.IDEA建原生javaweb项目 Java Web 程序的目录结构
| 目录文件 | 作用 |
|---|---|
| 应用程序文档根目录 / | 在MyEclipse中为WebRoot |
| WEB-INF目录 | 该目录存于文档根目录下,并且不能被访问 |
| web.xml文件 | 存放应用使用的各种资源,该目录及其子目录对客户端都是不可以访问,其中包括web.xml(部署表述符) |
| classes目录 | 存放字节码文件 |
| lib文件夹 | 它包含Web应用程序所需要的JAR包文件 |
| tld文件 | 标签库描述文件 |
配置开发环境
创建Web项目
编写项目代码
部署Web项目到服务器中
打开浏览器,运行Web项目
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qXcgJPEo-1635413245670)(C:UsersAdministratorAppDataRoamingTyporatypora-user-imagesimage-20210913152916252.png)]
②打开file菜单,选择project Structure[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ABpoRU4X-1635413245673)(C:UsersAdministratorAppDataRoamingTyporatypora-user-imagesimage-20210913153100481.png)]
③选择Modules —》 sources ,在WEB-INF文件夹下新建classes、lib文件,并将classes文件设置为Excluded文件格式,class储存src目录下编译的源代码[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-q2y82QS8-1635413245675)(C:UsersAdministratorAppDataRoamingTyporatypora-user-imagesimage-20210913152706550.png)]
④选择Modules—》Paths,选择使用自己刚刚新建的文件路径classes[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ukZusSWR-1635413245677)(C:UsersAdministratorAppDataRoamingTyporatypora-user-imagesimage-20210913153516784.png)]
④选择Modules—》dependencies,添加jar包,设置jar包路径为刚才新建的lib文件夹。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MmlhI9Kp-1635413245680)(C:UsersAdministratorAppDataRoamingTyporatypora-user-imagesimage-20210913153754142.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GaSSpXDM-1635413245683)(C:UsersAdministratorAppDataRoamingTyporatypora-user-imagesimage-20210913153828709.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pokYWKnj-1635413245686)(C:UsersAdministratorAppDataRoamingTyporatypora-user-imagesimage-20210913153847234.png)]
⑤选择Artifacts—》修改输出路径为tomcat的webapps文件下,即部署的位置[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6mCKcOCk-1635413245688)(C:UsersAdministratorAppDataRoamingTyporatypora-user-imagesimage-20210913154108659.png)]
⑥选择设置Edit Configurations,选择Tomcat server 下的本地local,(Remote是远程)[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5uhiuXfC-1635413245690)(C:UsersAdministratorAppDataRoamingTyporatypora-user-imagesimage-20210913154249375.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nSAwVkKd-1635413245693)(C:UsersAdministratorAppDataRoamingTyporatypora-user-imagesimage-20210913154442783.png)]
⑦配置tomcat[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0gojaP2P-1635413245695)(C:UsersAdministratorAppDataRoamingTyporatypora-user-imagesimage-20210913155302567.png)]
⑧选择部署,按步骤依次点击,之后会添加第⑤步设置的部署位置,之后将Application context 名字修改为程序名,不修改的话地址栏访问时输入的就是http://localhost:8080/javaWeb_war_exploded;修改后地址栏访问输入的就是http://localhost:8080/程序名[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Uk9x5I24-1635413245697)(C:UsersAdministratorAppDataRoamingTyporatypora-user-imagesimage-20210913155623246.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XMtc2c9h-1635413245699)(C:UsersAdministratorAppDataRoamingTyporatypora-user-imagesimage-20210913155826022.png)]
⑨配置完成运行tomcat,此时修改index.jsp中的内容为欢迎使用jsp;ctrl+s保存后直接刷新页面,就会看到刚刚设置的
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5jGxhUnU-1635413245700)(C:UsersAdministratorAppDataRoamingTyporatypora-user-imagesimage-20210913160734906.png)]
这两个属性已经生效
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0Zq61sEW-1635413245702)(C:UsersAdministratorAppDataRoamingTyporatypora-user-imagesimage-20210913160717383.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8Qyr8hV8-1635413245704)(C:UsersAdministratorAppDataRoamingTyporatypora-user-imagesimage-20210913160705157.png)]
3.配置Web应用使用web.xml文件配置应用发布
web.xml文件必须保存在/WEB-INF目录下
在 web.xml文件中配置各种资源的发布信息
4.JSP ①JSP (Java Server Pages)是指:index.jsp home.jsp
在HTML中嵌入Java脚本代码
由应用服务器中的JSP引擎来编译和执行嵌入的Java脚本代码
然后将生成的整个页面信息返回给客户端
Web容器处理JSP文件请求需要经过3个阶段:
翻译阶段 JSP => Servlet
编译阶段 Servlet.java=> .class
执行阶段
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bt23RAlb-1635413245705)(C:UsersAdministratorAppDataRoamingTyporatypora-user-imagesimage-20210914162935177.png)]
④JSP中的注释合理、详细的注释有利于代码后期的维护和阅读
*在JSP文件的编写过程中,共有三种注释方法:
HTML的注释:
//缺点:不安全,加大网络传输负担
JSP注释:<%-- JSP注释–%> //不可见注释
在JSP脚本中注释:
<% //单行注释 %>
<% %>
JSP指令元素主要用来提供整个JSP网页相关的信息,并且用来设定JSP页面的相关属性。
JSP指令的格式
<%@ 指令名 属性= “属性值” %>
JSP有3种指令元素
page指令
include指令
taglib指令
page指令
通过设置内部的多个属性来定义整个页面的属性
语法:<%@ page 属性1=“属性值” 属性2=“属性值1,属性值2”… 属性n=“属性值n”%>
| 属性 | 描述 | 默认值 |
|---|---|---|
| language | 指定JSP页面使用的脚本语言 | java |
| import | 通过该属性来引用脚本语言中使用到的类文件 | 无 |
| contentType | 用来指定JSP页面所采用的编码方式 | text/html, GBK,UTF-8 |
| errorPage | 设置该JSP页面的错误处理页面的URL,处理当前页面中引发但未捕获到的异常 | |
| isErroePage | **设置该页面是否为错误处理页面 |
如果发现out.print()、request等内置对象没有提示方法爆红,都可以找到tomcat 的lib包下的:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WdkjLqil-1635413245707)(C:UsersAdministratorAppDataRoamingTyporatypora-user-imagesimage-20210914172621944.png)]
这三个包进行导入,放入项目的lib文件下就可以解决。如果有些不显示其实没有影响,tomcat包中有这些,但是开发阶段的lib包中没有,所以把包从tomcat中导出来,有些方法自己拼写太麻烦还是导入lib的好。
⑦声明声明就是在JSP页面中定义Java的变量和方法
语法:<%! Java代码%>
<%@ page language="java" import="java.util.*,java.text.*" contentType="text/html; charset=GBK" pageEncoding="GBK"%>
<%!
String formatDate(Date d){
SimpleDateFormat formater = new SimpleDateFormat("yyyy年MM月dd日");
retrun formater.format(d);
}
%>
你好,今天是
<%=formatDate(new Date()) %>


