Servlet从了解到放弃(08)

简介: Servlet从了解到放弃(08)

配置欢迎页面


在web.xml中添加以下代码, 访问工程根路径的时候会自动找到该列表内的请求路径


<welcome-file-list>
    <welcome-file>HomeServlet</welcome-file>
  </welcome-file-list>


同步请求和异步请求


同步请求: 返回的内容包括页面和数据, 整个页面内容刷新使用


通过浏览器地址栏, 超链接,form表单发出请求


异步请求: 返回的内容只有数据,局部页面内容刷新使用


通过ajax发出异步请求


前后端分离:服务器端接收到请求后不需要考虑这个请求是浏览器发出的还是客户端app发出的, 一视同仁 统统只返回数据即可. 对于后端Java程序员而言只需要开发一套业务代码即可, 要想实现前后端分离必须要求 浏览器发出的请求必须是异步请求, 这样网站的所有功能都是静态页面里面通过Ajax发出异步请求实现


JSON


JSON是一个类似于XML的轻量级数据封装格式(数据交换格式).


<books>
  <book>
  <name>Java基础</name>
  <author>苍老师</author>
  <price>5</price>
</book>
  <book>
  <name>Java基础</name>
  <author>苍老师</author>
  <price>5</price>
</book>
</books>


json:格式 [{“name”:“Java基础”,“author”:“苍老师”,“price”:“5”},{“name”:“Java基础”,“author”:“苍老师”,“price”:“5”}]


为什么使用JSON?


服务器和客户端之间可能会传递比较复杂的数据内容, 这个数据又必须保存到字符串中,那么保存到字符串中的数据,必须按照某种特定的格式保存,不然不利于客户端获取里面的数据,JSON格式就是目前最流行使用率最高的一种数据交换格式.


如何将服务器里面的复杂数据转成JSON?


服务器中的各种数据一般都会封装到某个实体中, 通过现有的三方框架可以非常便捷的将对象转成json字符串


AJax发出的异步请求和JSON的关系


AJax是前端开发中发出异步请求的技术, 发出异步请求服务器在进行处理时一般给客户端返回的只有数据没有页面, 那么当返回的数据比较复杂时就需要使用JSON字符串将数据封装到JSON字符串中,便于客户端进行处理.

实现加载更多步骤


home.html里面添加加载更多按钮 并且给按钮添加点击事件,在点击事件中通过ajax向LoadMoreServlet发出异步请求 把当前已有的图片数量传递过去

创建LoadMoreServlet, 获取参数 创建ProductDao 调用laodMore(count)的方法

将查询到的list集合 转成json字符串传递给客户端

在ajax发请求的地方得到数据 把数据显示到页面中

浏览量+1步骤


DetailServlet里面 通过id查询作品详情之前 先让作品的viewCount+1 , 调用dao里面的addViewCount(id) 方法

实现dao中的addViewCount即可

点赞功能步骤


1. 在detail.html页面中,通过jQuery给点赞按钮添加点击事件,在事件中发出ajax请求,  往LikeServlet发出请求,同时将当前页面作品的id传递过去


2. 创建LikeServlet 留下doGet方法  获取id,创建ProductDao 调用addLikeCount(id)方法,调用完之后再次调用findById(id)的方法获取文章信息,最后将文章信息中的点赞数量返回给客户端

3. 在detail.html页面中发出请求的地方,在success方法中得到服务器返回的点赞数量,通过jQuery代码将页面中的点赞数量修改掉


Filter过滤器


什么是过滤器:


Filter使用方式有点类似于Servlet,需要配置一个或多个url, 当访问指定的这个url的时候,Tomcat会先访问Filter,在Filter里面放行之后才能够访问对应的Servlet,可以将多个Servlet中重复的代码写到Filter过滤器里面,从而提高开发效率.


如何使用过滤器


创建Filter, 在filter类的doFilter方法中写之前写在Servlet中需要重复的代码, doFilter方法是用来控制是否允许继续访问Servlet的方法,执行代表允许不执行则被拦截


在web.xml文件中配置处理的url 如果是Servlet3.0需要在注解里面写拦截的url


//@WebFilter(urlPatterns = {"/ShowSendServlet","/DelServlet"})


url-pattern的几种设置方式


精确匹配: /ShowSendServlet, /DelServlet

后缀匹配: *.jpg *.png *.html 可以实现图片防盗链

路径匹配: /images/*

全部匹配: /*


目录
相关文章
|
7月前
|
缓存 Java 数据库
Servlet 处理请求的原理
Servlet 处理请求的原理
175 0
|
11月前
|
安全 Java 容器
你能证明Servlet线程不安全吗?
你能证明Servlet线程不安全吗?
|
前端开发 Java 应用服务中间件
带你着手「Servlet」
有了前边文章为我们奠定下的网络基础,我们就可以开始学习Servlet的知识了,在部署一个Java的Servlet程序时,必须要有的开发工具是Tomcat,需要自行完成Tomcat的配置,并掌握maven仓库的配置方法,下边我们也会进行演示,这些具体的流程该如何来进行。
141 0
带你着手「Servlet」
|
XML Java 数据格式
【JavaWeb】重新认识 Servlet 的初始化 [ 回顾 Servlet ]
了解【JavaWeb】重新认识 Servlet 的初始化 [ 回顾 Servlet ]。
105 0
【JavaWeb】重新认识 Servlet 的初始化 [ 回顾 Servlet ]
|
XML Java 应用服务中间件
【Servlet】这一文详细的讲述了Servlet的知识,呕心沥血,终于文成。
【Servlet】这一文详细的讲述了Servlet的知识,呕心沥血,终于文成。
【Servlet】这一文详细的讲述了Servlet的知识,呕心沥血,终于文成。
|
缓存 前端开发 JavaScript
为什么要放弃 JSP ?
以前的项目大多数都是Java程序猿又当爹又当妈,既搞前,又搞后端。 随着时代的发展,渐渐的许多大中小公司开始把前后端的界限分的越来越明确,前端工程师只负责前端的事情,后端工程师只管后端的事情。正所谓术业有专攻,一个人如果什么都会,那么每一样都很难达到精通。
|
SQL 容器
Servlet从了解到放弃(07)
Servlet从了解到放弃(07)
97 0
|
Oracle Java 关系型数据库
Servlet从了解到放弃(01)
Servlet从了解到放弃(01)
105 0
|
Java 应用服务中间件
Servlet从了解到放弃(04)
Servlet从了解到放弃(04)
109 0
|
Java 应用服务中间件 数据库
Servlet从了解到放弃(03)
Servlet从了解到放弃(03)
110 0