response解决中文乱码问题:
//更改response的码表,通知服务器用UTF-8码表去取response中的数据,然后写给客户机
response.setCharacterEncoding("UTF-8");
//通知浏览器以UTF-8码表打开回送的数据
//response.setHeader("content-type", "text/html;charset=UTF-8");
response.setContentType("text/html;charset=UTF-8");
String data = "中国";
PrintWriter writer = response.getWriter();
writer.write(data);
实现中文文件下载(重点)
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//1.获取需要下载的文件
String path = this.getServletContext().getRealPath("/download/日本妞.jpg");
String filename = path.substring(path.lastIndexOf("\\")+1);
//2.通知浏览器以下载方式打开 (下载的中文文件名必须要给过URL编码)
response.setHeader("content-disposition", "attachment;filename="+URLEncoder.encode(filename, "UTF-8"));
//3.向浏览器写出数据
//传输数据的模板代码
FileInputStream in = null;
try{
OutputStream out = response.getOutputStream();
in = new FileInputStream(path);
byte buffer[] = new byte[1024];
int len = 0;
while((len=in.read(buffer))>0){
out.write(buffer,0,len);
}
}finally{
if(in!=null){
in.close();
}
}
}
分享到:
相关推荐
7. **转发与重定向**:在Servlet中,可以通过`RequestDispatcher`的`forward()`方法将请求转发到其他资源,或者使用`Response.sendRedirect()`方法进行重定向,两者在处理请求流程上有所不同。 8. **会话管理**:...
### 3. AJAX - **$.ajax()**: 这是jQuery的核心AJAX方法,可以发送异步HTTP请求。例如: ```javascript $.ajax({ url: 'script.php', type: 'POST', data: {key: 'value'}, success: function(response) { // ...
5. **转发与重定向**:在Servlet中,`RequestDispatcher`接口的`forward()`方法用于在服务器内部将请求转发到另一个资源,而`response.sendRedirect()`则发送一个HTTP响应,指示客户端发起新的请求。 6. **MVC模式*...
本自学文档主要介绍了Spring MVC的基本概念和核心组件,适合初学者掌握其基本工作原理。 1. DispatcherServlet(前端控制器) DispatcherServlet是Spring MVC的入口点,它充当着整个框架的前端控制器角色。在web....
这篇笔记自学资料主要涉及了Java Web开发中的核心概念,包括字符编码处理、JSP指令、JSP动作标签以及Servlet相关知识。让我们详细解析一下这些知识点。 1. 字符编码处理: 在Java Web开发中,处理字符编码是非常...
总的来说,Java自学过程中,JSP实例的学习可以帮助你更好地理解动态网站开发,并结合Servlet和MVC模式构建复杂的Web应用程序。通过实践和不断的练习,你可以熟练地运用JSP来创建交互式的、功能丰富的网页。
3. **JSP内置对象**:包括request、response、session、application、pageContext、out、exception等,它们提供了对HTTP请求、响应、会话和应用程序范围内的数据访问。 4. **JSP动作标签**:如、、等,用于在页面间...
6. **Servlet与JSP结合**:学习如何与Servlet协同工作,利用servlet处理业务逻辑,JSP则负责显示。 7. **错误与异常处理**:理解如何在JSP中捕获和处理运行时错误,提供友好的错误提示页面。 8. **MVC模式应用**:...
6. **Servlet & JSP**:了解Tomcat服务器的使用,学习Servlet的基础知识,包括web.xml配置,web应用的目录结构,Servlet生命周期。掌握Request、Response对象的方法,ServletContext类,HTTP协议基础,Cookie和...
3. **关系**:实际上,JSP在背后被编译成Servlet的形式,因此它们之间存在密切的联系。当一个JSP页面被请求时,服务器会将该JSP页面转换为一个Servlet类,然后对该Servlet进行编译并执行,最终返回动态生成的HTML...
3. 初始化阶段:Servlet实例化,执行`init()`方法。 4. 服务阶段:每次请求时,调用`service()`方法处理请求。 5. 销毁阶段:当Servlet不再使用时,执行`destroy()`方法。 三、JSP内置对象 1. request:封装HTTP...
JSP提供了一系列内置对象,包括`request`, `response`, `session`, `application`, `pageContext`, `out`, `exception`, `config`等,这些对象简化了Web开发,无需手动创建。 **4. JSP生命周期** JSP的生命周期包括...
3. **内置对象**:JSP提供了九个内置对象,如request、response、session、application等,它们是Java Servlet API的一部分,简化了与HTTP协议交互的工作。 二、进销存系统概述 进销存系统是企业管理日常运营的...
2. 过滤:每当匹配的请求到达时,`doFilter(ServletRequest request, ServletResponse response, FilterChain chain)`方法会被调用。在这个方法里,我们实现过滤逻辑,并通常通过调用`chain.doFilter(request, ...
3. **内置对象**:JSP提供了九个内置对象,如request(请求对象)、response(响应对象)、session(会话对象)、application(应用程序对象)等,用于处理HTTP请求和响应。 4. **指令**:JSP指令用于配置页面属性...
3. **JSP内置对象**:JSP提供了一系列内置对象,如`request`、`response`、`session`、`application`等,方便开发者处理请求、响应、会话和应用级数据。 ### 二、JSP脚本元素 1. **脚本声明**(! %>):用于定义...
`HttpServletResponse`是Java Web开发中的一个重要接口,它继承自`ServletResponse`接口,并提供了与HTTP协议相关的多种方法。这些方法主要用于设置HTTP响应的状态码、响应头和响应体等内容。通过掌握`...
**JSP自学课件(前三章)概述** 本课件主要针对已有Java基础的学习者,旨在深入理解并掌握JavaServer Pages(JSP)技术。JSP是Java平台上的动态网页开发技术,它允许开发者在HTML或者XML文档中嵌入Java代码,实现...
Java自学之路涵盖了许多核心知识点,从基础到高级,构建了一个完整的知识体系。以下是对这些知识点的详细解析: 1. **J2SE**:Java Standard Edition是Java的基础,它包括面向对象编程的核心概念,如封装、继承和...
### 3. JSP动作标签 - **JSTL(JavaServer Pages Standard Tag Library)**:一套标准的标签库,提供如循环、条件判断、国际化、XML处理等功能,提高代码的可读性和可维护性。 ### 4. JavaBean - **JavaBean**:...