整体的概念:
1、HTML页面直接存放在文件服务器中。当客户端需要访问具体的HTML时,会直接调用,取到后显示与客户端,数据是以什么形式存放的不会有任何变化。
2、JSP页面不同,需要服务器的支持,具体来说是Serlvet服务器的支持,现在流行的Tomcat,另外可以使用Apache与Tomcat的结合,提供负载均衡。当客户端需要访问具体的JSP时,文件在首次使用时会经过Servlet的解析,然后转换为HTML的形式,转发给客户端显示,文件是经过处理的,不是原始的数据。
3、由此可见,直接的HTML存在明显的缺陷,不能够进行动态扩展。具体最重要的表现形式就是:当我们进行列表数据的访问时,尤其是要将和数据库结合时,HTML办不到。 进行一个Servlet流程的分析:
1、编写一个Servlet。
@SuppressWarnings("serial")
public class NewsService extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
List list = XmlParse.parse(Common.netAddr(this) + "/src/content/news.xml");
request.getSession().setAttribute("newsxmlinfo", list);
response .sendRedirect(request.getContextPath() + "/pages/news/news.jsp"); }
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response); }
}
注意问题:处理的逻辑随自己的业务而定,关键问题是最后的地址转向。有两种方式,下一节讨论。另外注意此类继承于HttpServlet,这是个很有用的信息,要是处理本地文件放置于服务器上时,会出现问题,要由此来解决。
2、进行servlet的配置。在web.xml中加入以下配置。
<servlet>
<servlet-name>news</servlet-name>
<servlet-class>
com.kfcgw.service.news.NewsService
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>news</servlet-name>
<url-pattern>/news</url-pattern>
</servlet-mapping>
说明:配置的servlet-name无关紧要,与映射mapping对应起来就可以了,起自己业务相关的名字。关键是servlet-class是自己刚才编写的那个servlet类,要全路径模式。最后一个关键点:url-pattern,它是一个过滤器的模式,当访问过程中出现此处种类型配置的时候,会被servlet拦截获取,使用配置的servlet来进行处理(这样的结果就是改变了就是JSP页面跳转的模式,当然我们知道页面之间的链接可以简单的以A标签来进行,一个页面直接连接与另外一个页面,直接表示成JSP页面,会直接转发,而要是能够被自己定义的Servlet拦截到,则可以进行相应的业务处理,然后再经过转发到自己需要的页面。与直接JSP转发区别就是自己的业务实现)。
3、拦截匹配问题。在JSP页面中,通过标签的进行servlet的拦截。匹配的url为刚才的配置。参见第二点的说明。
<a href="news">哈哈哈</a>
至此,一个简单的servlet就完成了。
分享到:
相关推荐
servlet练习项目pdf与代码 servlet练习项目pdf与代码 servlet练习项目pdf与代码
NULL 博文链接:https://1601844782.iteye.com/blog/2274208
项目名称:Cookie版人员管理系统。 使用技术:servlet+jsp+mysql+Cookie技术
servlet入门练习,后台简单web框架练习,逻辑练习,其他杂项练习,总之就是练练手,可能有点乱。
NULL 博文链接:https://1601844782.iteye.com/blog/2274217
学习javaweb写的一个小项目(学生信息管理系统),用到知识点:Servlet+jsp+MySQL
servlet练习项目pdf与代码精简版 servlet练习项目pdf与代码精简版
JAVAWEB-08:Servlet基础&java web之request/respone
Servlet必须运行于某个特定的环境中,这种运行环境称之为Servlet容器(servlet container)。Tomcat作为Servlet容器,其基本的功能如下图所示: Servlet API的主要类和接口 (1) javax.servlet.Servlet接口 (2) ...
NULL 博文链接:https://360772372.iteye.com/blog/603811
javax.servlet-api-3.1.0.jar,处理找不到servlet JAR的问题
服务器搭建:servlet+dao+javabean+jsp实现简单的用户登录
implementation("javax.servlet:javax.servlet-api:***") ``` # 含有的 Java package(包): ``` javax.servlet javax.servlet.annotation javax.servlet.descriptor javax.servlet.http ``` # 含有的 Java ...
语言程序设计资料:Servlet基础.ppt
servlet基础小项目,包含数据库,效果视频,导入可直接运行。
servlet 的例子程序,很好的练习模板,试试就知道
Jetty 是一个开源的servlet容器,它为基于Java的web容器,例如JSP和servlet提供运行环境。Jetty是使用Java语言编写的,它的API以一组JAR包的形式发布。开发人员可以将Jetty容器实例化成一个对象,可以迅速为一些独立...
对应博主的一些servlet文章的代码,都是简单的小例子,适合入门练手
implementation("javax.servlet:javax.servlet-api:***") ``` # 含有的 Java package(包): ``` javax.servlet javax.servlet.annotation javax.servlet.descriptor javax.servlet.http ``` # 含有的 Java ...