日期:2014-05-16 浏览次数:20468 次
1.必须继承自HttpServlet 2.必须实现doGet()或者doPost() 3.必须在web.xml中配置Servlet <servlet> <servlet-name></servlet-name> <servlet-class></servlet-class> </servlet> <servlet-mapping> <servlet-name></servlet-name> <url-pattern></url-pattern> </servelt-mapping> HttpServeltRrequest:请求对象 getParameter():获得表单元素的值 getAttribute():获得request范围中的属性值 setAttribute():设置reqeust范围中的属性值 setCharacterEncoding():设置字符编码 HttpSerletResponse:相应对象 sendRedirect():外部跳转 getWriter():获得输出流对象 setContentType("text/html; charset=utf-8"):设置相应内容格式和编码
1.Session HttpSession session = request.getSession(); session.setAttribute("name", "zhangsan"); session.setAttribute("pwd", "aaa"); String name = (String) session.getAttribute("name"); 2.cookie: //创建Cookie Cookie cookie = new Cookie("name", "zhangsan"); //设置Cookie的超时时间 cookie.setMaxAge(24 * 60 * 60 *60); //把Cookie发送到客户端 response.addCookie(cookie); //得到客户端发送的Cookie Cookie [] cookies = request.getCookies(); for(int i=0; i<cookies.length; i++) { Cookie temp = cookies[i]; String key = temp.getName(); String value = temp.getValue(); } 3.隐藏表单域 <input type="hidden" name="name" value="zhangsan" /> request.getParameter("name"); 4.Url重写 问号传参 LoginServlet?username=zhangsan&pwd=123 String name = request.getParameter("username"); String pwd =request.getPareameter("pwd");
内部跳转: LoginServlet request.getRequestDispatcher("index.jsp").forward(request, resposne); 外部跳转: response.sendRedirect("index.jsp"); 内部跳转是一次请求和一次响应 外部跳转是两次请求和两次响应
ServletContext:Servlet上下文对象 它是一个公共区域,可以被所有的客户端共享 setAttribute():向公共区域里放入数据 getAttribute():从公共区域里取数据 三个标准范围:request, session, ServletContext 共同点:都有setAttribute(), getAttribute() 区别:范围不同,request < session < servletContext 服务器上的五大对象 request, response, servlet, session, servletContext
1.静态内容:html 2.指令:page, include, taglib: <%@ 指令名 属性1="属性值1" 属性2="属性值2" %> 3.表达式:<%=表达式 %> 4.Scriptlet<% Java代码 %> 5.声明:<%! %>:变量和方法 6.动作:<jsp:动作名 属性="属性值"></jsp:动作名> 7.注释: 客户端看不到的:<%-- --%> 客户端可以看到的:<!-- -->
1.转译:Jsp--->Servlet 2.编译:Servlet---->.class 3.执行:.class 第一次访问jsp的时候响应速度较慢,后面请求时响应速度快
表达式:<%= %> Scriptlet:<% %> 声明:<%! %>
page:language, import, errorPage, isErrorpage include:file taglib:uri:指定标签库描述符的路径 prefix:指定标签的前缀
分类: 1.输入和输出对象:request(HttpServletRequest), response(HttpServletResponse), out(JspWriter), servlet中的out是PrintWriter 2.作用域通信对象:pageContext, request, session(HttpSession), application(ServletContext) 3.Servlet对象:page(this), config 4.错误对象:exception
一个标准的JavaBean有三个条件 1.共有的类 2.具有不带参数的公共的构造方法 3.具有set()和get()方法 4.私有属性
1.useBean:创建JavaBean的一个实例 <jsp:useBean id="stu" class="com.westaccp.test.Student" scope="page/session/application/request" /> 2.setProperty:给JavaBean的属性赋值 <jsp:setProperty name="stu" property="stuName" value="zhangsan" /> <jsp:setProperty name="stu" property="stuName" param="txtName" /> value和param不能同时使用 偷懒的方法:<jsp:setProperty name="stu" property="*" /> 这个时候需要注意的是,表单元素的名字必须和JavaBean的属性值 一模一