学习心得
软件架构有B/S C/S
普通类继承HttpServlet就会变为Servlet类
从浏览器发送给服务器的数据包称为请求从服务器返回给浏览器的结果称为响应
一个URL地址中可以带有多个请求参数
Get和Post是发送数据的两种形式。Post的方式比Get方式更安全。
Post的请求提交的数据可以在浏览器调试页面的form data中查看。
Get请求提交的数据可以在浏览器调试页面的Query String Parameters中查看
在java web中 servlet是在服务器端运行,已处理客户端请求而做出响应的程序,属于servlet生命周期阶段的是加载和实例化,初始化服务和销毁
心情
今日学习的是在idea中添加tomcat这样就可以在Java中写出html,可以整合到一起,但是路径什么的总容易搞错出现404,还需要改来改去
掌握情况:一般,路径总容易搞错,出现404
学习总结
软件架构
1、C/S架构:客户端 / 服务器--------QQ,Typora,腾讯会议。
2、B/S架构:浏览器 / 服务器--------京东,爱奇艺,B站。
资源分类
- 静态资源:所有用户访问后,得到的结果都是一样的。(HTML,CSS,JS,图片,音频,视频...)
- 动态资源:每个用户访问相同的资源,得到的结果可能不一样。动态资源被访问后,需要先转换为静态资源,再返回给浏览器,通过浏览器来进行解析。
常见的web服务器
概念
- 服务器:安装了服务器软件的计算机。
- 服务器软件:接收用户的请求,处理请求,给出响应。(
接请求,给响应
) web
服务器软件:接收用户的请求,处理请求,给出响应。
在web服务器软件中,可以部署web项目,让用户通过浏览器访问这些项目。
常见的服务器软件
动态服务器
- webLogic:oracle公司出品,大型的web服务器,几乎支持了所有的JavaEE规范,收费的。
- webSphere:IBM公司,大型的web服务器,几乎支持了所有的JavaEE规范,收费的。
- JBOSS:JBOSS公司,中型的JavaEE服务器,几乎支持了所有的JavaEE规范,收费的。
- Tomcat:Apache基金会,中小型的web服务器,支持了少量的JavaEE规范,开源免费。
静态服务器
- Nginx(代理,反向代理,动静分离...)极高的并发
- Apache
Tomcat
- bin:存放一些批处理脚本文件,可执行文件。
- conf:用来存放tomcat的相关配置文件。
- lib:Tomcat依赖的jar包。
- logs:存放日志。
- temp:临时文件目录。
- webapps:Tomcat默认的Web应用部署目录。
- work:Web应用JSP代码生成和遍历的临时目录。
Tomcat的启动
双击 bin/startup.bat文件
Tomcat的停止
双击 bin/shutdown.bat文件
访问
http://127.0.0.1:8080
IDEA整合tomcat
- 创建一个普通的Java工程
- 点击settings--->project structure
- 点击Moduls,点击+号,选择web,点击OK
- 点击idea运行处的Edit Configurations
- 点击左上角的+号,在列表中选择tomcat server,
注意,不要选择TomEE Server
。 - 点击右侧的Configure,配置Tomcat的本地路径。
路径到Tomcat根目录就可以
。 - 点击settings--->project structure
- 点击Artifacts,点击+号,选择web Application Exploded:From
- 修改output directory为tomcat下的webapps,点击OK
- 点击idea运行处的Edit Configurations,点击Deployment选项卡,点击+号,选择Artifact,自动添加了。
- 回到Server选项卡,可以修改端口号以及服务器的两个配置改为update classes and resources。
- 在web目录下新建HTML文件,点击启动服务器,通过
http://localhost:8888/JavaWEB20220829/index.html
地址来访问自己的项目。
Servlet
任务
- Servlet就是一个普通的Java类而已。
- 处理请求,给出响应的类。
创建Sevlet
- 实现
javax.servlet.Servlet
接口 - 继承
javax.servlet.GenericServlet
类 - 继承
javax.servlet.http.HttpServlet
类
我们在开发中一般会使用第三种方法来创建Servlet。
Servlet生命周期
- 初始化---init方法。
- 实例化---构造器。
- 调用
service
方法,处理请求。 - 销毁---destory方法。
Servlet的配置
web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0"> <!-- 注册servlet --> <servlet> <servlet-name>hello</servlet-name> <servlet-class>com.jsoft.afternoon.HelloServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>hello</servlet-name> <url-pattern>/hello.do</url-pattern> </servlet-mapping> </web-app>
注解
@WebServlet("/hello.do")
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南