离弦之Ray

  BlogJava :: 首页 :: 联系 :: 聚合  :: 管理
  55 Posts :: 0 Stories :: 33 Comments :: 0 Trackbacks
 

servlet 基本结构

public class ServletClass extends HttpServlet {

public void doGet(HttpServletRequest request, HttpSevletResponse response)

throws ServletException,IOException{

//Use “request” to read incoming HTTP headers


//Use “response” to specify the HTTP response status


//use “out” to send content to browser

PrintWriter out = response.getWriter();

}

}

如果希望servletGETPOST请求采用同样的行动,只需要让doGet调用doPost,反之亦然。
值得注意的是doGetdoPost都要接收以上两种类型的参数。


servlet 处理表单数据

表单数据

1)使用FORM来创建HTML表单

<FORM ACTION="..."> 其中 "..."指的就是处理表单的servlet 或者JSP

2)使用输入元素收集用户数据

<INPUT TYPE="TEXT" NAME="...">

3)在接近表单的尾部放置提交按钮

<INPUT TYPE="SUBMIT">

读取表单数据

有三种情况:①request.getParameter②request.getParameterValues

request.getParameterNames

getParameter对应于单个值的读取,如果有这个参数但没值,那就返回空的String;如果没有这个参数,则返回null

getParameterValues对应于同一个参数的多个值,返回的是一个数组,是这个参数值的集合。如果不存在这个参数名,那就返回一个null;如果这个参数只有一个值,那就返回一个只有一个元素的数组。

getParameterValues返回的是所有参数的一个Enumeration,如果没有参数,那返回的就是一个空的Enumeration而不是null。同时这个Enumeration中的次序是乱序的。

要对参数为null或者为空String的情况作出相应的处理

if((param==null)||(param.trim().equals(""))){...}


RequestDispatcher

下面的代码:

RequestDispatcher dispatcher = request.getRequestDispathcer s(address);

dispatcher.forward (request,response);



JSP

JSP直接插入表达式

<%= Java Expression%> 比如:<%= new java.util.Date() %>

其实,JSP在后台都被转化成servlet,所以servlet JSP没有本质的区别。


scriptlet

说白了,就是直接在JSP页面中插入java代码,我不是很喜欢,太乱了。举个例子:

<% if(Math.random()<0.5) {%>

<H1>Have a <I>nice</I> day!</H1>

<% } else {%>

<H1>Have a <I>lousy</I>day!</H1>

<% } %>

JSP page指令

import 属性

<%@ import = "package.class"%>

<%@ import = "package.class1,package.class2...package.classN"%>

contentTypepageEncoding属性

<%@ page contentType = "someMimeType; charset = someCharacterSet"%>

比如<%@ page contentType = "application/vnd.ms-excel"%>

pageEncoding指的是字符集

比如设置成日语:<%@ page pageEncoding="Shift_JIS"%>


session属性

控制页面是否参加HTTP会话

<%@ page session = "true"%>


isELIgnored属性

是否忽略JSP2.0表达式语言

<%@ page isELIgnored = "ture"%>


此外还有bufferautoFlusherrorPageisErrorPageisThreadSafeextendslanguage属性


JSP中使用JavaBean

基本要掌握三个语句

<jsp: useBean id="beanName" class="package.class"/>

<jsp:getProperty name = "beanName" property="propertyName"/>

<jsp:setProperty name ="beanName" property="propertyName" value="propertyValue"/>






posted on 2007-10-14 22:57 离弦之ray的技术天空 阅读(600) 评论(0)  编辑  收藏 所属分类: J2EE

只有注册用户登录后才能发表评论。


网站导航: