eclipse 的一些快捷键:
ctrl+1 快捷修复
ctrl+d 快捷删除行
shift+enter 换行
ctrl+f11 快速运行项目
alt+↑/↓ 快速移动行
ctrl+m 放大工作区
ctrl+shift+r:打开资源
ctrl+o:快速outline 查看类
ctrl+e:快速转换编辑器
alt+shift+r:重命名
shift+enter
alt+
ctrl+m
ctrl+ 及ctrl+1 将光标移动至当前文件中的下一个报错处或警告处。这组快捷键我一般与ctrl+1一并使用,即修改建议的快捷键
ctrl+shift+o 引入及管理imports语句
ctrl+shift+f4 关闭所在打开的窗口
ctrl+o open declaration
ctrl+e 切换窗口
ctrl+/ 注释本行
alt+shift+l 抽取本地变量
alt+shift+m 抽取方法
f3 open declaration
ctrl+d 删除本行
ctrl+shift+f 自动整形
ctrl+alt+↑:复制本行
alt+shift+s:引入方法
Cookie:
添加Cookie
AddCookie
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class AddCookieServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out=response.getWriter();
Cookie c1=new Cookie("uname", "Kitty");
Cookie c2=new Cookie("city", "beijing");
response.addCookie(c1);
response.addCookie(c2);
out.close();
}
}
Web
<servlet>
<servlet-name>AddCookieServlet</servlet-name>
<servlet-class>web.AddCookieServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AddCookieServlet</servlet-name>
<url-pattern>/addCookie</url-pattern>
</servlet-mapping>
查找Cookie
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class FindCookieServlet extends HttpServlet {
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out=response.getWriter();
Cookie[] cookies=request.getCookies();
if (cookies!=null) {
for (Cookie c:cookies) {
String name=c.getName();
String value=c.getValue();
out.println("<h3>Name:"+name+"Value:"+value+"</h3>");
}
}else {
out.println("没有Cookie信息");
}
out.close();
}
}
修改Cookie
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class UpdateCookieServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out=response.getWriter();
Cookie[] cookies=request.getCookies();
if (cookies!=null) {
for (Cookie c:cookies) {
String name=c.getName();
if (name.equals("city")) {
c.setValue("ShangHai");
response.addCookie(c);
}
}
}
out.close();
}
}
表单出现乱码解决方法:
表单出现乱码:错误提示(data too long)
一般不是太长,是编码的问题
通过中文乱码监听器处理(UTF-8)
代码:import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class CharacterEncodingFilter implements Filter {
private String encoding;
//private Object filterConfig;
public void destroy() {
this.encoding = null;
//this.filterConfig = null;
}
public void doFilter(ServletRequest request, ServletResponse response,FilterChain chain) throws IOException, ServletException {
request.setCharacterEncoding(this.encoding);
chain.doFilter(request, response);
}
public void init(FilterConfig filterConfig) throws ServletException {
this.encoding = filterConfig.getInitParameter("encoding");
}
}
Web修改:
加入过滤器
<!-- 编码过滤器,以UTF8编码 -->
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
这种方法一般有效。
全局统一的方法:
在jsp文件上右键选择属性。
Windows下,选择属性:
修改server.xml中的encoding