e股脑电脑教程网
  • 首 页
  • 操作系统
  • 应用软件
  • 下载工具
  • 影音视频
  • 办公软件
  • 媒体制作
  • 网站建设
  • 平面设计
  • 数据库
  • 程序开发
  • 视频教程
编辑推荐: | 文章搜索:
您现在的位置: e股脑 >> 程序开发 >> JSP教程 >> Servlet设计 >> 教程正文
 
教程搜索
 
 
相关教程
  • JSP分页技术实现
  • 使用XML封装数据库操作语句的实现(完
  • 结合”XML封装数据库操作语句的实现”
  • 如何使用XML实现多渠道接入网站的构架
  • 深入浅出taglib
  • 在JSP中编写你的第一个Tag
  • 用Java实现Web服务器
  • 如何利用xml,javascript绕开apple
  • 缓存JSP显示的内容
  • 关于JAVA的分页查询操作技术
  • 漫步j2ee之jsp技术(1)
  • 漫步j2ee之jsp技术(2)
  • Portlet应用开发(Portlet Specs v1.0)
  • 如何用jsp输出存在于oracle数据库Blob
  • Servlet设计
  • 用servlet显示图片
 
 

图文教程


  • Windows抢了谁的饭碗 非主流操作系统To

  • 地球还是火星 平常心看“非主流”

  • 综合运用Office 2007批量制作奖状

  • 没有系统盘如何才能修复受损系统?

  • 巧妙运用Excel中边界的附加功能!
 
 
赞 助 商
 
 
Servlet设计
  • 来源:e股脑
  • 点击次数:
  • 更新时间:2007-8-9

这篇文章介绍几个Servlet的方法,这几个方法都是功能比较强大的。相信对于WEB设计来说有一定的帮助。不要一个一个方法的试验,等看完所有的内容,然后一起运用这些方法并结合以前的workshop来做个小程序。

(1) parseTextMessage()方法

在这个例子里:定义了一个数据接受类。parseTextMessage()方法接受了一组从表单传送过来的对象以及他们的值。我们在做一些产品开发的时候,比如自定义表单,往往不知道传送过来有多少对象,对于这样的问题,程序是无法知道的,用了这个方法后,就可以报所有的对象一下子都拿到了。下面看一下这个例子:

private void parseTextMessage(HttpServletRequest request){

Enumeration names; // 列举client传送过来的所有的对象

String name; /

String[] value; //

// 接受所有的对象

names = request.getParameterNames();

while (names.hasMoreElements()) {

//得到对象名称

name = (String)names.nextElement();

//根据对象名称重新找到对象的值

value = request.getParameterValues(name);

// 把对象名称和值放到一个类中,这个类的代码在前面的练习中有

put(name, value);

}

// 获取一个page的ID,为什么要设置page id,在java规则中有

pageID = getPostPageID();

// 获取事务id,如果有事务的话

trxID = getPostTrxID();

}

(2) getJSPBeanInSession()方法

这是一个I/O管理类。这个方法根据page的id来从session中返回jsp的数据,如果用getSession(true).getAttribute(pageID) 也是对的。

private JPC_JSPBean getJSPBeanInSession(String pageID) {

// 根据页的id来从session中返回jsp的数据

return (JPC_JSPBean)request.getSession().getAttribute(pageID);

}

(3) dispatchTransaction()方法

这个方法得到一组类的实例,然后开始事务处理。

public void dispatchTransaction() {

JPC_Transaction trx = null;

String classList[] = getTrxClassList(getTrxID());

try {

for (int i = 0; i < classList.length; i++) {


trx = (JPC_Transaction)Class.forName(classList[i]).newInstance();

if (trx != null) {

trx.setIOManager(this);

trx.start();

}

}

} catch (ClassNotFoundException e) {

e.printStackTrace();

} catch (InstantiationException e) {

e.printStackTrace();

} catch (IllegalAccessException e) {

e.printStackTrace();

}

}

(4) putJSPBeanInSession()方法

把jsp的数据类和一个jsp页面的ID放到 session中。

private void putJSPBeanInSession(String pageID, JPC_JSPBean jspBean) {

//把jsp的数据类和一个jsp页面的ID放到 session中。

request.getSession().setAttribute(pageID, jspBean);

}

(5) sendPage()方法

private void sendPage(String pageID, JPC_JSPBean outJSPBean) {

// 把页面id和数据存储到 session 中

if (outJSPBean != null) {

putJSPBeanInSession(pageID, outJSPBean);

}

// 根据文件id来取得文件数据

String jspFileName = getJSPFileName(pageID);

//根据jsp文件名来得到一个RequestDispatcher

RequestDispatcher rd = context.getRequestDispatcher(jspFileName);

if (rd != null) {

try {

//调用jsp

rd.forward(request, response);

} catch (ServletException e) {

} catch (IOException e) {

}

}

}


  • 上一篇教程: 用servlet显示图片
  • 下一篇教程: 如何用jsp输出存在于oracle数据库Blob字段中的jpg图片
  •  

    关于本站 | 广告联系 | 版权声明 | 使用帮助

    Copyright © 2004-2008 www.egunao.com All rights reserved.