Javaweb(第十一周)

文章介绍了前台通过超链接、JS和表单发送请求的方式,以及后台通过Servlet接收数据的方法。还讨论了Web项目中的缓存问题和Servlet的四大作用域,包括request、session和application。
摘要由CSDN通过智能技术生成

1、index

  <a href="index1.html">前台发送请求的三种方式</a><br><br><br>
       <a href="index2.html">后台如何接受前台发出的请求---Servlet创建方式</a><br><br><br>
       <a href="index3.html">前台如何发送带有数据的请求</a><br><br><br>
       <a href="index4.html">后台如何接受前台的数据</a><br><br><br>
       <a href="index5.html">实现用户注册基础版</a><br><br><br>


        <p>web项目是存在缓存问题的:好处就是节省流量节省加载时间。</p>
        <p>web项目是存在缓存问题的:坏处就是无法得到理想的正确的结果。</p>
        <p>Web缓存存在的两个地方 : 1.浏览器内部--更多工具--清除浏览数据</p>
        <p>Web缓存存在的两个地方 : 2.idea项目内部的out目录(加载web项目的缓存目录)</p>
 

2、index1

<p>前台发送请求的方式1:通过超链接</p>
    <a href="http://www.baidu.com">指向互联网资源</a>
    <a href="index.html">指向项目内部的页面资源</a>
    <a href="/xxx">指向项目内部的Java资源</a>

    <hr>
    <p>前台发送请求的方式2:通过JS</p>
    <button id="btn">点击按钮发送一个请求</button>

    <hr>
    <p>前台发送请求的方式3:通过表单</p>
    <form action="index.html" method="post">
        账号:<input type="text" name="username"><br>
        <input type="submit" value="提交">
    </form>


    <script>
        document.getElementById("btn").onclick = function (){
            location.href = "index.html";//本质依然是超链接
        }

3、index2


        <p>后台如何获取前台发来的请求</p>
        <p>答:通过tomcat提供的Servlet类来实现</p>
        <p>什么是Servlet:处理前台请求的一个类</p>
        <p>如何去创建Servlet:</p>
        <p>1.导入jar包---servet-api.jar  在tomcat的lib目录里面</p>
        <p>2.在servlet的包下创建一个Servlet的类</p>
        <p>2.1 Servlet的命名规范: XxxServlet  其中Xxx表示什么功能的Servlet </p>
        <p>3.继承HttpServlet</p>
        <p>4.重写父类的service方法,然后把默认的super删除</p>
        <p>5.在类上添加@WebServlet("/Xxx") 注解。表示前台通过什么请求路径访问该类,一般和类名同名</p>

        <p>测试如下Servlet</p>
        <a href="/TestServlet">通过超链接访问Servlet</a>
        <button id="btn">通过JS访问Servlet</button>

    <script>
        document.getElementById("btn").onclick = function (){
            location.href = "/TestServlet";
        }

4、index3

<p>前台发送携带数据的请求的方式1:通过超链接</p>
<p>语法如下:在URL地址的后面加上?key=value&key=value&key=value的形式即可</p>
<p>注意事项:都是英文状态下的符号,如果含有中文的内容 也无需加引号</p>
<a href="index.html?id=123&name=张三">指向互联网资源</a>

<hr>
<p>前台发送携带数据的请求的方式1:通过JS</p>
<button id="btn">点击按钮发送一个请求</button>

<hr>
<p>前台发送请求的方式3:通过表单</p>
<p>注意事项:内部的表达元素都要加上name来修饰。因为后台都是通过name来获取值</p>
<p>注意事项:单选框:加上若干个相同的name即可,记得补充value</p>
<p>注意事项:多选框:加上若干个相同的name即可,记得补充value</p>
<p>注意事项:下拉框:内部的option的value值可以省略的,但是你要知道,如果省略了以option标签的内部为准。如果没省略就以value为准</p>

<form action="/RegServlet" method="post">
    账号:<input type="text" name="username"><br>
    密码:<input type="password" name="password"><br>
    性别:
    <input type="radio" name="sex" value="男" checked >男
    <input type="radio" name="sex" value="女"  >女<br>
    爱好:
    <input type="checkbox" name="likes" value="吃">吃
    <input type="checkbox" name="likes" value="喝">喝
    <input type="checkbox" name="likes" value="玩">玩
    <input type="checkbox" name="likes" value="乐">乐
    <br>
    地址:
    <select name="address">
        <option>湖南</option>
        <option value="123广东~">广东</option>
        <option>云南</option>
    </select> <br>
    自我介绍:
    <textarea name="jieshao">自我介绍:</textarea>
    <br>
    生日:<input type="date" name="birthday"><br>
    <input type="submit" value="提交">
</form>

5、servlet的跳转

servlet的跳转:
        1.可以从servlet跳转到另外一个servlet(删除数据之后返回到刷新查询servlet)
        2.可以从servlet跳转到前台页面(注册成功返回登录页面)
        有两种方式: <br>
        <a href="BServlet">通过转发跳转</a><br>
        <a href="CServlet">通过重定向跳转</a><br>
    </p>
    <p>
        转发跳转:   只需1次请求即可完成  效率高    URL地址不会改变  例如从B转发到A  URL地址依然是B <br>
        重定向跳转: 只需2次请求即可完成  效率低     URL地址会改变   例如从B定向到A  URL地址就是A<br>

        总结:能用转发就用转发。但是以下情况不推荐:涉及到敏感操作一定不能使用转发,
        涉及到注册操作.涉及到增删改都推荐使用重定向

        备注:超链接本质就是重定向跳转

6、Servlet的四大作用域

<h3>Servlet的四大作用域</h3>
    <p>有些情况下:我们需要实现后台servlet的数据共享(先掌握这里)</p>
    <p>有些情况下:我们需要实现后台servlet和前台页面的数据共享(暂时不讲解)</p>
    <p>比如:后台查询到了数据 需要丢给前台去渲染</p>
    <p>四大作用域:pageContext < request < session < application </p>
    <p>pageContext作用域:仅在当前页面有效,只要页面发生了跳转就失效。 所以不用</p>
    <p>request作用域:重点掌握:作用域一次请求有效。超过一次请求就失效,所以切忌使用重定向跳珠</p>
    <p>session作用域:重点掌握:作用域一次回话有效。(浏览器打开到关闭为一次回话)</p>
    <p>application作用域:了解即可:作用域全局有效。只想项目不关,就一直生效,例如网站访问量</p>

    <a href="FServlet">测试request作用域</a> <hr>
    <a href="GServlet">测试session作用域</a> <hr>
    <a href="HServlet">测试application作用域</a> <hr>

  • 20
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值