重定向

Servlet(六)中文乱码问题

点点圈 提交于 2019-11-28 05:31:31
出现中文乱码的原因: 浏览器(请求) 与 服务器(默认编码是iso-8859-1,服务器处理和响应返回) 之间的编码格式不一致 (1)post request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf-8"); (2)get String username=new String(request.getParameter("username").getBytes("iso-8859-1"),"utf-8"); response.setContentType("text/html;charset=utf-8"); (3)sendRedirect(); 只是多了个重定向,数据传递 浏览器(请求) -----> 服务器(服务器重定向响应) ------> 浏览器 (重定向请求)------> 服务器 (响应返回) 只需对每次http请求响应都做get或post处理即可 特殊:1、ie6一下版本对奇数数据量可能仍然产生中文乱码 2、实现浏览器下载文件带中文文件名时也可能出现乱码 解决:此时需要使用urlencode对数据变量做url编码 来源: CSDN 作者: 华师混混 链接: https://blog.csdn.net/hunhunpanda/article/details

标准I/O与管道

半城伤御伤魂 提交于 2019-11-28 05:07:24
标准I/O与管道 标准输入和输出 读入数据:Input 输出数据:Output Linux给程序提供三种I/O设备 标准输入(STDIN)-0 默认接受来自键盘的输入 标准输出(STDOUT)-1 默认输出到终端窗口 标准错误(STDERR)-2 默认输出到终端窗口 I/O重定向:改变默认位置 把输出和错误重新定向到文件 STDOUT和STDERR可以被重定向到文件 命令 ~ 操作符号 ~ 文件名 支持的操作符号包括: 把STDOUT重定向到文件> 2> 把STDERR重定向到文件 &> 把所有输出重定向到文件 使用>文件内容会被覆盖 set -C 禁止将内容覆盖已有文件,但可追加 使用>| file 强制覆盖 set +C 允许覆盖 使用>>原有内容基础上,追加内容 把输出和错误重新定向到文件 2> 覆盖重定向错误输出数据流 2>> 追加重定向错误输出数据流 标准输出和错误输出各自定向至不同位置 COMMAND > /path/to/file.out 2> /path/to/error.out 合并标准输出和错误输出为同一个数据流进行重定向 &> 覆盖重定向 &>> 追加重定向 COMMAND > /path/to/file.out 2>&1 (顺序很重要) COMMAND >> /path/to/file.out 2>&1 ():合并多个程序的STDOUT ( cal 2007

管道符、重定向与环境变量

限于喜欢 提交于 2019-11-28 04:13:09
一、输入输出重定向 输入重定向是指把文件导入到命令中,而输出重定向则是指把原本要输出到屏幕的数据信息写入到指定文件中。 1、重定向分类 标准输入重定向(STDIN,文件描述符为0):默认从键盘输入,也可从其他文件或命令中输入。 标准输出重定向(STDOUT,文件描述符为1):默认输出到屏幕。 错误输出重定向(STDERR,文件描述符为2):默认输出到屏幕。 2、输入重定向中符号及其作用 符号 作用 命令 < 文件 将文件作为命令的标准输入 命令 << 分界符 从标准输入中读入,直到遇见分界符才停止 命令 < 文件1 > 文件2 将文件1作为命令的标准输入并将标准输出到文件2 3、输出重定向中符号及其作用 符号 作用 命令 > 文件 将标准输出重定向到一个文件中(清空原有文件的数据) 命令 2> 文件 将错误输出重定向到一个文件中(清空原有文件的数据) 命令 >> 文件 将标准输出重定向到一个文件中(追加到原有内容的后面) 命令 2>> 文件 将错误输出重定向到一个文件中(追加到原有内容的后面) 命令 >> 文件 2>&1 或 命令 &>> 文件 将标准输出与错误输出共同写入到文件中(追加到原有内容的后面) 二、| 管道符 作用:把前一个命令原本要输出到屏幕的标准正常数据当作是后一个命令的标准输入。 格式:命令1 | 命令2 | ….| 命令n 备注:在修改密码时:echo "密码"

linux bash 的基础语法

六眼飞鱼酱① 提交于 2019-11-28 03:14:45
示例均来自网络,附带有原始链接地址,自己练习整理发出,均测试可用 linux shell 基本语法 - 周学伟 - 博客园 https://www.cnblogs.com/zxouxuewei/p/6393092.html 变量声明和赋值 定义变量,等号 左右不要有空格 通过export 变成全局变量 #!/bin/bash #a.sh a=666 b=hello g_user=root export g_user#全局变量 echo $a echo $b echo $g_user #调用 bash a.sh 把命令结果赋值给变量 圆括号 current_date=$(date) echo current data is [$current_date] 用反引号,和键盘上的波浪符号一个键(仅参考,使用1即可) current_date=`date` echo current data is [$current_date] 花括号加反引号(仅参考,使用1即可) current_date={`date`} echo current data is [$current_date] if条件判断 #!/bin/bash #a.sh if [[ $1 == 1 ]]; then echo "first argument is 1" else echo "first argument is

SpringMVC-相应数据和结果视图

霸气de小男生 提交于 2019-11-28 02:46:36
SpringMVC-相应数据和结果视图 1.返回值分类   1.1 字符串  Controller方法返回字符串可以指定逻辑视图名,通过视图解析器解析为物理视图地址。 /** * String 返回值 * 指定逻辑视图名,经过视图解析器解析为jsp物理路径:/WEB-INF/pages/success.jsp * @param model * @return */ @RequestMapping("/testString") public String testString(Model model){ System.out.println("testString方法执行了..."); User user = new User(); user.setUsername("张三"); user.setAge(18); user.setSex("女"); // 存储 model.addAttribute("user", user); return "success"; }   1.2 void,没有返回值   Servlet原始API可以作为控制器中方法的参数。     (1) 使用request请求转发: /** * 没有返回值 * @param */ @RequestMapping("/testVoid") public void testVoid(HttpServletRequest

HTTP协议【详解】

二次信任 提交于 2019-11-28 02:32:33
http请求由三部分组成,分别是:请求行、消息报头、请求正文 HTTP(超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议,常基于TCP的连接方式,HTTP1.1版本中给出一种持续连接的机制,绝大多数的Web开发,都是构建在HTTP协议之上的Web应用。 1、常用的HTTP方法有哪些? GET: 用于请求访问已经被URI(统一资源标识符)识别的资源,可以通过URL传参给服务器。 POST: 用于传输信息给服务器,主要功能与GET方法类似,但一般推荐使用POST方式。 PUT: 传输文件,报文主体中包含文件内容,保存到对应URI位置。 HEAD: 获得报文首部,与GET方法类似,只是不返回报文主体,一般用于验证URI是否有效。 DELETE: 删除文件,与PUT方法相反,删除对应URI位置的文件。 OPTIONS: 查询相应URI支持的HTTP方法。 2、GET方法与POST方法的区别 区别一: get重点在从服务器上获取资源,post重点在向服务器发送数据; 区别二: get传输数据是通过URL请求,以field(字段)= value的形式,置于URL后,并用"?"连接,多个请求数据间用"&"连接,如http://127.0.0.1/Test/login.action?name=admin&password=admin,这个过程用户是可见的;

linux重定向

雨燕双飞 提交于 2019-11-27 23:46:28
常用FD有3个,为0( stdin ,标准输入)、1( stdout ,标准输出)、2( stderr ,标准错误输出),默认与keyboard、monitor有关; cmd > file 把 stdout 重定向到 file 文件中; cmd >> file 把 stdout 重定向到 file 文件中(追加); cmd 1> file 把 stdout 重定向到 file 文件中; cmd > file 2>&1 把 stdout 和 stderr 一起重定向到 file 文件中; cmd 2> file 把 stderr 重定向到 file 文件中; cmd 2>> file 把 stderr 重定向到 file 文件中(追加); cmd >> file 2>&1 把 stdout 和 stderr 一起重定向到 file 文件中(追加); cmd < file >file2 cmd 命令以 file 文件作为 stdin,以 file2 文件作为 stdout; cat <>file 以读写的方式打开 file; cmd < file cmd 命令以 file 文件作为 stdin; cmd << delimiter Here document,从 stdin 中读入,直至遇到 delimiter 分界符。 转载于:https://www.cnblogs.com/JAYIT

分布式与集群,以及负载均衡

萝らか妹 提交于 2019-11-27 22:57:57
新浪微博 分布式的集群服务 集群:集群就是一组部署有 相同应用 的服务器 集群是一组独立的计算机系统构成一个松耦合的多处理器系统,它们之间通过网络实现进程间的通信。 应用程序通过网络共享内存进行消息传送,实现分布式计算。 集群可分纵向集群(一台计算机部署多个应用)和横向集群(多台计算机部署多个应用)。 负载均衡:一种服务的提供访问策略。用来在多台计算机(计算机集群)、网络连接、CPU、磁盘驱动器或其他资源中分配负载的一种计算机网络技术。 负载均衡能把任务比较均衡地分布到集群环境下的计算和网络资源。 可以达到最大化资源使用、最大化吞吐率、最小化响应时间、同时避免过载的目的。 分布式是一个大型的互联网应用的架构设计的理念。多个集群,多个负载均衡策略组成的非常庞大的 分布式与集群区别: 一句话:分布式是并联工作的,集群是串联工作的。 1.分布式是指将不同的业务分布在不同的地方。 而集群指的是将几台服务器集中在一起,实现同一业务。 分布式中的每一个节点,都可以做集群。 而集群并不一定就是分布式的。 举例:就比如新浪网,访问的人多了,他可以做一个群集,前面放一个响应服务器,后面几台服务器完成同一业务,如果有业务访问的时候,响应服务器看哪台服务器的负载不是很重,就将给哪一台去完成。 而分布式,从窄意上理解,也跟集群差不多, 但是它的组织比较松散,不像集群,有一个组织性,一台服务器垮了

负载均衡(一)

时光总嘲笑我的痴心妄想 提交于 2019-11-27 22:38:36
常用负载均衡 HTTP 重定向 对于 HTTP 重定向,你一定不陌生,它可以将 HTTP 请求进行转移,在 Web 开发中我们经常会用它来完成自动跳转,比如用户登录成功后跳转到相应的管理页面。 这种重定向完全由 HTTP 定义,并且由 HTTP 代理和 Web 服务器共同实现。很简单,当 HTTP 代理(比如浏览器)向 Web 服务器请求某个 URL 后, Web 服务器可以通过 HTTP 响应头信息中的 Location 标记来返回一个新的 URL ,这意味着 HTTP 代理需要继续请求这个新的 URL ,这便完成了自动跳转。当然,如果你自己写了一个 HTTP 代理,也可以不支持重定向,也就是对于 Web 服务器返回的 Location 标记视而不见,虽然这可能不符合 HTTP 标准,但这完全取决于你的应用需要。 也正是因为 HTTP 重定向具备了请求转移和自动跳转的本领,所以除了满足应用程序需要的各种自动跳转之外,它还可以用于实现负载均衡,以达到 Web 扩展的目的。 DNS 负载均衡 我们知道, DNS 负责提供域名解析服务,当我们访问某个站点时,实际上首先需要通过该站点域名的 DNS 服务器来获取域名指向的 IP 地址,在这一过程中, DNS 服务器完成了域名到 IP 地址的映射,同样,这种映射也可以是一对多的,这时候, DNS 服务器便充当了负载均衡调度器(也称均衡器)

基础之javaSE知识

谁说胖子不能爱 提交于 2019-11-27 22:35:02
1.Servlet总结 在Java Web程序中, Servlet 主要负责接收用户请求 HttpServletRequest ,在 doGet() , doPost() 中做相应的处理,并将回应 HttpServletResponse 反馈给用户。 Servlet 可以设置初始化参数,供Servlet内部使用。一个Servlet类只会有一个实例,在它初始化时调用 init() 方法,销毁时调用 destroy() 方法 。 Servlet需要在web.xml中配置, 一个Servlet可以设置多个URL访问 。 Servlet不是线程安全 ,因此要谨慎使用类变量。 2.Servlet接口 Servlet接口定义了5个方法,其中 前三个方法与Servlet生命周期相关 : void init(ServletConfig config) throws ServletException void service(ServletRequest req, ServletResponse resp) throws ServletException, java.io.IOException void destory() java.lang.String getServletInfo() ServletConfig getServletConfig() 3.Servlet生命周期 生命周期: