java web应用中,怎样压缩响应的html文件&n

java web应用中,怎样压缩响应的html文件&n,第1张

Java Web总结(一)

一、Servlet在应用中的作用

① Servlet是Java Web中MVC模式中的C部分,即控制部分,下面展示一下其所处的位置和整个客户端(浏览器)和服务器端的交互过程。(如图1)

Web总结(一)" title="Java Web总结(一)" />

图1

② 由图1可以看到浏览器通过请求将其数据提交到Servlet中,然后则薯Servlet进行控制,即Servlet充当调度员的角色,其作用主滚空要集中在三个方面:接收数据、调用业务逻辑、对客户端做出简单的响应。

③ 然后Servlet将要继续处理的数据提交给JavaBean,然后JavaBean进行验证,然后如果涉及到数据库的 *** 作,就会继续用到DAO(数据访问模型),然后调用数据库中间件JDBC进行数据库的相关 *** 作,然后到数据库中访问数据。

二、实现整个过程

① 为了实现整个过程,首先编写一个html(JSP)前台页面,如图2:

Web总结(一)" title="Java Web总结(一)" />

图2

代码如下:

<html>

<head>

<title>系统登陆</title>

</head>

<body>

<p></p>

<p></p>

<p></p>

<div align="center">

<br>

<br>

<div style="margin:0 autowidth:230pxmargin-top:70px">

<form id="login" action="/JavaWeb/loginServlet" method="post">

<fieldset>

<legend>用户登陆</legend><br/>

<div>用户:

<input name="username" id="username"/>

</div>

<br/>

<div>密码:

<input name="password" id="pwd"/>

</div>

<br/>

</fieldset>

<div style="text-align: centermargin: 20px">

<input type="submit" value="提交"/>

<input type="reset" value="重置"/>

</div>

</form>

</div>

</div>

</body>

</html>

② 由上面的代码可以看到将<form>中的内容提交到/JavaWeb/loginServlet这个Servlet,这里涉及到了配置web.xml配置文件,只需要在配置文件中加入如下的部分:

<servlet>

<servlet-name>loginServlet</servlet-name>

<servlet-class>cn.edu.nwsuaf.cie.group4.servlet.LoginServlet</servlet-class>

<load-on-startup>0</load-on-startup>//在开启服务时,就调用init方法

</servlet>

<servlet-mapping>

<servlet-name>loginServlet</servlet-name>

<url-pattern>/loginServlet</url-pattern>

</servlet-mapping>

③ Servlet中的代码孙备者如下所示

package cn.edu.nwsuaf.cie.group4.servlet

import java.io.IOException

import javax.servlet.ServletException

import javax.servlet.http.HttpServlet

import javax.servlet.http.HttpServletRequest

import javax.servlet.http.HttpServletResponse

import cn.edu.nwsuaf.cie.group4.service.LoginService

public class LoginServlet extends HttpServlet{

private String userName

private String password

@Override

public void init() throws ServletException {

// TODO Auto-generated method stub

System.out.println("init....")

}

@Override

protected void service(HttpServletRequest req, HttpServletResponse resp)

throws ServletException, IOException {

// TODO Auto-generated method stub

userName = req.getParameter("username")

password = req.getParameter("password")

LoginService loginService = new LoginService()

boolean flag = loginService.validate(userName,password)

if (flag){

req.getRequestDispatcher("index.jsp").forward(req, resp)

}else{

req.getRequestDispatcher("login.jsp").forward(req, resp)

}

}

@Override

public void destroy() {

// TODO Auto-generated method stub

System.out.println("destroy...")

}

}

然后对上面的代码中的一部分进行解释。这个类继承了HttpServlet,然后并对其中的init()、destroy()、service()方法进行重写,其中Servlet是单例的(设计模式中的singleton model),因为所有的客户端自服务器开启并对servlet进行初始化以后,所有的客户端都是调用这里边的同一个对象,直到调用destroy方法销毁之。

html页面和图片流本来就是各自独立的http请求铅戚返回得到的,因此使用多线程氏宏单独处理,可以实现。

如果楼主的目的是: 只通过一次http请求,就把html文本内容以及jpg2进制流内容都返回,那需要处理的是客户端(通常的浏览器是不可能支持的,除非自己写的客户端)如何解析展现服槐核陵务器端返回的流问题, 而不是服务端如何返回的问题。

接液山弯收的完整例唯吵子

http://www.tutorialspoint.com/jsp/jsp_file_uploading.htm

读写闹闷 XML

http://zhidao.baidu.com/q?ct=17&tn=ikaslist&lm=0&rn=10&pn=0&fr=search&word=java+xml&f=sug&rsp=java+xml


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12220258.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存