选择显示字体大小

jsp内幕

作者:ybwen

现在的企业应用已从2-tier朝3-tier结构转移,开发者有许多不同的方法分发应用与数据到用户。jsp api是j2ee的一部分,给webjava开发者创建各种应用提供了一个简单但强有力的机制。

jsp给开发者提供了两个重要的能力:一,它提供了访问远程数据的机制如ejb,rmi,jdbc。二,它让开发者从表现中封装和分离程序逻辑而达到最大程度的代码重用和灵活性。逻辑与表现的分离是它超越其它web应用结构的一个主要优势。

在这篇文章中,我会对jsp技术进行一个总体的描述,当然会有一些例子来示范jsp的优点。

首先,jsp是如何被执行的
要支持jspweb服务器必须要有相应的配置。jsp支持的流行web服务器有:websphere,jwebserver,jswdk,jrun,tomcat等等。

web服务器接收到一个后缀为".jsp"页的请求,它触发jsp引擎。jsp引擎首先检查jsp文件是新的或修改过的,对这两种情况,会对文件进行翻译和编译。翻译是jsp如何工作的核心:jsp引擎取jsp文件把它转换成java servlet。然后使用标准的jva编译器编译servlet,使用标准的api执行java servlet。这个翻译步骤也是jsp为什么慢的一个原因。

写一个jsp

一个jsp的例子如下:


<p>sending to:
<input type=text name="recipient"></p>
<p>your comments:</p>
<p><textarea name="body" rows=5 cols=40></textarea></p>
<input type=submit name="submit" value="submit">
</form>
</body>
</html>

mailbean.java源码如下:

// mailbean.java

package ybwen;
import java.io.*;
import sun.net.smtp.*;
public class mailbean {
string sender;
string recipient;
string body;
public void setsender(string s) {
sender = s;
}
public void setrecipient(string s) {
recipient= s;
}
public void setbody(string s) {
body = s;
}
/**
* @returns true if the message was sent, false otherwise
**/
public boolean sendmessage() {
try {
// replace "smtp" with your own smtp server's name
smtpclient client = new smtpclient("smtp");

// use the smptclient instance to construct the message
client.from(sender);
client.to(recipient);
printstream msg = client.startmessage();
msg.println("subject: web feedback");
msg.println();
msg.println(body);
msg.println("--");
msg.println("send using mailbean!");
client.closeserver();
}
catch(ioexception e) {
return false;
}
return true;
}

}

 

数据库连接
如下源码显示了使用jdbc从数据库中获得数据的一个jsp文件。当然,在jsp中直接嵌入jdbc调用是获得数据最简单的方法,但更好的方法是封装jdbc调用在javabean中,类似前一个例子。还有比这好的方法,在jsp1.1中的标签库机制描述如何定制数据库查询标签,如下:

<sql:connection id="conn01" url="jdbc:odbc:enterprisedb" />
<sql:query id="customers" connection="conn01">
select * from customers
</sql:query>
<ul>
<sql:foreach iterate="row" in="customers">
<li><%= row.getcolumn(1) %>
</sql:foreach>
</ul>


jspservlets
自从jsp页能自动翻译为servlets,在jspservlets中就没有什么显著的区别。

jspservlets的主要优势是jsp在显示和服务端逻辑允许更合乎逻辑的分离。

 

jspasp
jspasp是非常相似的,都是在html中用定制标签创建动态web页。且都支持在页面直接包含代码,也都使用封装组件:在asp中是com,在jsp中是javabean。

它们最大的不同是平台兼容性。asp只能在windows上,jsp就不用说了。另一个不同就是jsp是一次编译一直运行,而asp是每次请求就每次解释。

 

结束语评:用mvc模式开发多层应用酷毙。文哥题。
  


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons