Web后端学习「建议收藏」

Web后端学习「建议收藏」web后端一.cs/bs架构 CS/BS模式/客户端与浏览器模式 cs需要安装客户端,客户端向服务器请求,服务器响应数据返回。bs浏览器即可访问通过http协议3.web资源静态资源:人们浏览到的网页是一样的动态资源:不同人、时间可能都不一样4.web服务器将写好的web项目放入一个容器中,浏览器就通过这个容器来访问网页二.Tomcat1.TomCat安装与部署1.1TomCat目录结构 b…

大家好,又见面了,我是你们的朋友全栈君。

web后端

一.cs/bs架构

  1. CS/BS模式/客户端与浏览器模式

  2. Web后端学习「建议收藏」

     

cs 需要安装客户端,客户端向服务器请求,服务器响应数据返回。

bs 浏览器即可访问通过http协议

Web后端学习「建议收藏」

 

3.web资源

静态资源:人们浏览到的网页是一样的

动态资源:不同人、时间可能都不一样

4.web服务器

将写好的web项目放入一个容器中,浏览器就通过这个容器来访问网页

二.Tomcat

1.TomCat安装与部署

1.1TomCat目录结构

  1. Web后端学习「建议收藏」

     

    bin:2进制可执行文件eg:开始和关闭startup shutdown

    conf:配置文件,分为web.xml和server.xml

    lib:运行需要的jar包

    logs:日志文件

    temp:临时文件

    webapps(重要):存放web项目 每个文件夹就是一个项目

    work:运行生成的文件

    1.2启动

    bin中的star.bat启动即可 但是可能会一闪而过,直接打开start.bat修改文件 加入下面代码再启动即可,不要手动去添加环境变量。

    注意shutdown.bat也要加入一样的代码,不然会关闭失败。

    set JAVA_HOME=C:\Program Files\Java\jdk1.8.0_181
    set JRE_HOME=C:\Program Files\Java\jdk1.8.0_181\jre

1.3启动的乱码问题

进入conf中的logging-properties 编辑其中的logging -encodeing为GBK即可

1.4修改端口号

进入conf中的server.xml其中的port:8080改成其他的就可以了

2.部署项目

2.1创建项目:

在webapps中创建项目文件夹作为项目的名字eg myweb,然后把root中的web.xml文件复制到webapps中,然后在myweb下创建文件夹WEB-INF,再在阿webinf下创建文件夹classes和lib,网页文件和它的资源文件直接存在myweb下即可eg img文件等。

Web后端学习「建议收藏」

 Web后端学习「建议收藏」

 

Web后端学习「建议收藏」

 

2.2访问资源 url http://localhost:8080/myweb/hello.html 协议 主机 端口号 资源文件

2.3响应流程

用户向tomcat请求 tomcat寻找资源给用户响应

四.serverlet

1.概念

server applet 服务端程序即代码功能的实现,交互式处理客户端发送到服务的的请求并作出响应。

接受请求->生成动态网页->返回数据

2.开发与集成serverlet到tomcat

2.1编写servlet

1):新建项目

2):点击添加框架添加web框架支持

3):在WEB-INF下新建lib作为放jar包的文件夹并且把servlet的jar包放进去

4):编写sevlet程序:在项目下新建包com.xx.xxx再新建class类继承servlet并实现那5个类(自动导入)

其中service可用于输出到控制台。

4):编写web.xml文件

需要加入以下类容:

<servlet>
    <servlet-name>my</servlet-name>
    <servlet-class>com.lyj.servlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>my</servlet-name>
    <url-pattern>/servlet03</url-pattern>
</servlet-mapping>

第一个名字随便取,但是映射即maping中的第一个名字必须和servlet 的第一个名字一样,servlet class即servlet程序的位置,把包和类写清楚即可。url-maping 输入网址中项目下的名字,设置什么后边访问网页时就输入什么。注意url-maping后边名字的设置有斜杠千万不能省略,不然会出错。

2.2搭建环境idea 自动部署 开发版

idea集成tomcat 热部署

右上角

Web后端学习「建议收藏」

 

1):点击编辑配置添加tomcat服务器

Web后端学习「建议收藏」

 

2):部署

Web后端学习「建议收藏」

 

选择默认确定即可

2.2打包成war包(发布版,项目已经完成,不再改动了)

1):Ctrl+Alt+shift+s打开项目结构,或者点击右上角设置图标中的第二个

2):点击工件Artrifact,然后点击webapplication archieve 即web应用归档版点击for哪个项目的名字->ok

3):点击构建项目build下的构建工件build Atrifact 然后在out文件夹下将发布版的.war文件复制出来放到tomcat的webapps下即可

4):访问。启动start.bat文件后服务器会自动生产发布版的文件夹,再在网页中像开发板一样访问相关资源即可

五.http简介

Web后端学习「建议收藏」

Web后端学习「建议收藏」

 

 Web后端学习「建议收藏」

 Web后端学习「建议收藏」

 

3次握手:第一次:客户端发送到服务端询问服务器是否能收到

第二次:服务端发送到客户端表示服务端能收到

第三次:客户端发送到服务端,表示服务端发的消息客户端也能收到

六.servlet详解

6.1genericServlet

作用:只需要写重写server类,不需要重写其他4个类,简化编程。(记得在web.xml中配置相关信息)

6.2servlet(与协议无关)与httpServlet 与协议有关

Web后端学习「建议收藏」

 

推荐使用httpServerlet 重写 doget dopost方法即可

6.3web.xml配置匹配获取资源规则(sevlet3.0之前)

Web后端学习「建议收藏」

 

6.3.1web.xml配置servlet的加载顺序<load-on-startup>写在servlet标签中 参数为整数0-正整数,越靠前执行优先级越高

Web后端学习「建议收藏」

 

6.4web.xml文件的配置(servlet3.0之后 推荐使用)

即直接在servlet程序中添加注解,不用到xml文件中去配置 ,常用就value配置访问路径, loadonstartup配置加载优先权。

@WebServlet(value = "/web",loadOnStartup = 0)//放在servlet程序上即可

Web后端学习「建议收藏」

 

七.serverlet应用

Web后端学习「建议收藏」

Web后端学习「建议收藏」 

 

7.1 request接受get数据 getParameter 参数为标签的name

String name=req.getParameter("name");
String pwd=req.getParameter("pwd");

选择提交表单时 action的参数设置为项目的名字+serverlet value值即路径<form action=”/serverlet03_war_exploded/web02″ method=”get” class=”login”>

测试时先进入网页 url+xxx.html在提交数据

7.2request接受post数据

方式和get一样,只是会出现乱码问题

Web后端学习「建议收藏」

 

解决办法:

req.setCharacterEncoding(“UTF-8”);//解决乱码问题

Web后端学习「建议收藏」

 

7.3response

Web后端学习「建议收藏」

 

Web后端学习「建议收藏」

 

7.3.1服务端用于回应客户端注册成功

//2.响应数据给客户端
​
PrintWriter writer = resp.getWriter();//获取输出流
writer.println("注册成功!");

若返回中文数据则会出现乱码问题

乱码问题解决:加上代码如下且必须在获得字符流之前设置

Web后端学习「建议收藏」

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/149392.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月16日 下午10:46
下一篇 2022年6月16日 下午11:00


相关推荐

  • vps自建_七牛云搭建图床

    vps自建_七牛云搭建图床目的:将一些小服务应用部署到免费的serverless/VPS上去环境:0成本实现方式:github+vercel/freewha效果:项目一:个人导航项目二:个人博客项目三:个人音乐服务器:背景:上面的项目以前我都是部署在家里群晖上,或者VPS上,但是FRPC和VPS的流量,延时、运维更新等问题,实际用起来很繁琐,最近两年serverless发展很火,于是就萌生了把他们部署到免费的VPS或者serverless产品上网络上有很多hexo博客部署到vercel、github.

    2025年6月11日
    5
  • iptables防火墙配置

    iptables防火墙配置实验 iptables 防火墙配置实验的目的熟悉防火墙的基本原理 熟悉包过滤防火墙的测试 实验内容 1 学习 Linux 防火墙的基本架构 2 学习 IPtable 的基本原理 3 学习 IPtable 的使用方法实验环境 1 虚拟机 Linux 主机 2 宿主机 Windows 客户端实验原理防火墙会按照从上到下的顺序来读取配置的策略规则 在找到匹配项后就立即结束匹配工作并去执行匹配项中定义的行为 即放行或阻止 如果在读取完所有的策略规则之后没有匹配项 就去执行默认的策略 一般而言 防

    2026年3月17日
    2
  • mybatiscodehelperpro激活成功教程2.8.4_Mybatis框架

    mybatiscodehelperpro激活成功教程2.8.4_Mybatis框架#MyBatisCodeHelperPro2.9插件[2022最新有效]一、下载二、使用步骤1.引入库代码如下(示例):importnumpyasnpimportpandasaspdimportmatplotlib.pyplotaspltimportseabornassnsimportwarningswarnings.filterwarnings(‘ignore’)importsslssl._create_default_https_contex

    2025年12月3日
    5
  • Leetcode:minimum_depth_of_binary_tree解决问题的方法

    Leetcode:minimum_depth_of_binary_tree解决问题的方法

    2022年1月14日
    44
  • 1.什么是关系型数据库和非关系型数据库

    1.什么是关系型数据库和非关系型数据库一 什么是关系型数据库 1 关系数据库 是建立在关系模型基础上的数据库 借助于集合代数等数学概念和方法来处理数据库中的数据 简单说来就是关系型数据库用了选择 投影 连接 并 交 差 除 增删查改等数学方法来实现对数据的存储和查询 可以用 SQL 语句方便的在一个表及其多个表之间做非常复杂的数据查询 安全性高 2 非关系型数据库 简称 NOSQL 是基于键值对的对应关系 并且不需要经过 SQL 层的解析 所

    2026年3月17日
    1
  • plc学习经验及摘录

    plc学习经验及摘录如题

    2022年10月10日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号