仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 866|回复: 14
打印 上一主题 下一主题

[学习教程] JAVA编程:[进修条记]**编写 纯HTML jsp使用--学会...

[复制链接]
海妖 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:28:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
Java到底会发战成什么样,让我们拭目以待吧,我始终坚信着java会更好。以上都是俺个人看法,欢迎大家一起交流.js|条记刚入手下手用JSP做web使用的时分,象利用PHP,ASP一样用JSP,在HTML代码中同化着一年夜堆的scriptlet---即java代码段。因为自己的“排版”手艺还算能够,入手下手的时分以为挺好,编写“效力”高,调试又便利!

到了厥后才晓得---这是一种极为愚昧的做法儿----JSP出生的时分就已明白与ASP,PHP划清了界线,利用javaBean、Servlet能够无效的将HTML中同化的java代码段剥离,然后包装成一个可在多个页面复用的“逻辑处置组件”---这是JSP相对PHP,ASP的优胜的地方之一。

但偶然即便利用javabean+servlet,我们也不能不将“少少量”的java代码嵌进到HTML中----切实其实,偶然你必需如许:由于在javabean中,你没法利用JSP中的隐含对象,好比request,session,response等.

利用Servlet固然可使用JSP的对象,但却不克不及象javaBean天真地拔出到html中--
以是,Tag(标签)就呈现了(可使用一切的JSP隐含对象),它的呈现完全办理了这个成绩,可让你编写出“纯HTML”的JSP页码---由此带来的优点天然不问可知:更高的可保护性、更高的组件复用效力、更容易保护的HTML页面````

小弟鄙人,方才入手下手学JSTL,以为这个东东真的很不错!很想让更多的初学者晓得这个,并能使用到实践的web开辟中。
上面,就入手下手编写我们的第一个Tag!

**上面是利用了复杂Tag的JSP文件,运转了局是显现以后工夫:

<%@pagecontentType="text/html;charset=gb2312"%>
<html><body>
<%@tagliburi="/tags"prefix="visa"%>
如今工夫是:<visa:date/>
</body></html>

很分明,利用了tag的JSP页清新了很多---假如将数据库操纵等一些庞大功效也封装出来的话,tag的上风就更分明了!

**情况:win2000server+Tomcat5.019+j2sdk1.42+SQLServer2k
**开辟一个Tag,必要编写2个次要文件:
1-标签处置器(一个类servlet的java类)
2-标签形貌符(一个XML作风的tld文件)
完成这两个文件,就能够在WEB使用中部署、使用了。

好了,上面我们就入手下手做吧!

1-编写tag处置器:datetag.java

它的感化就象一个Servlet,承受来自客户真个哀求,但它却能够象javaBean一样在JSP中便利挪用。
packagetag;

importjava.util.Date;
importjavax.servlet.jsp.*;
importjavax.servlet.jsp.tagext.*;

publicclassdatetagextendsTagSupport{

publicintdoStartTag()throwsJspException{
Datedte=newDate();
try{
JspWriterout=pageContext.getOut();
out.print(dte);
}
catch(java.io.IOExceptione)
{thrownewJspTagException(e.getMessage());}
returnSKIP_BODY;
}
}
用javac编译以后,就失掉了datetag.class文件了,将其放在xxxWEB-INFclasses        ag目次下。

2-编写tag库形貌符:tags.tld
对照简单看出,<tag></tag>部分有点象servletmapping的设置--这里设置的是tag的名字与tag类之间的映照。

<?xmlversion="1.0"encoding="ISO-8859-1"?>
<taglib>
<tlib-version>1.0</tlib-version>
<jsp-version>1.2</jsp-version>

<tag>
<name>date</name>
<tag-class>tag.datetag</tag-class>
<body-content>empty</body-content>
</tag>
</taglib>
将tags.tld保留在xxxWEB-INF目次下。

3-设置你的web.xml:
设置web.xml,注册你的标签库:在web.xml的<web-app>与</web-app>之间增加:
在这里注册你的自界说标签符,在JSP中的援用名为:/tags
<taglib>

<taglib-uri>/tags</taglib-uri>
<taglib-location>/WEB-INF/tags.tld</taglib-location>

</taglib>

4-入手下手在JSP中利用!
由于已在web.xml中注册过,经由过程/tags援用你的标签库;
prefix的感化就象<jsp:useBean/>中的id,只是作为一个标记(可恣意界说)
<visa:date/>很分明,经由过程挪用date,就即是挪用了datetag.class:

<%@pagecontentType="text/html;charset=gb2312"%>
<html><body>
<%@tagliburi="/tags"prefix="visa"%>
如今工夫是:<visa:date/>
</body></html>


**信任到了这里,有人就有了疑问了:为了利用一个Tag,我就做了这么多的“过剩”事情(编写tld,修正web.xml,还要重启tomcat),值得吗?!

---谜底是:这是很值得的!
1、假如将对照庞大的逻辑功效封装进Tag,它就具有比Servlet,javaBean更高的天真性,更多的长处,更容易扩大,更容易保护---完全分别暗示层与逻辑层!

2、由于Tag的功效并不是只是这一些,另有更多初级功效---值得往进修!

****
这只是一个很复杂的使用,固然,你会有良多的“利诱点”,这是一般的---在TAG中有一些独占的特征,想完整学会TAG并非件复杂的事变。
--以是,在这里,我向人人保举一本好书:电子产业出书社的《jsp标记库编程指南》(英文名:《ProfessionalJSPTagLibraries》)


PS:利用JSTL共同javabean,servlet还能够无效回护你的源码哦----由于,你能够向你的客户托付不含有java源代码的web使用,由于,一切的java代码都已被编译成*.class了*^_^*

[注重]:针对Tomcat5.0x以下的版本----如:Tomcat4.0x:要编译标签处置器,必需将你的servlet.jar(在%TOMCAT_HOME%commonlib上面)放进情况变量CLASSPATH中---(假如是tomcat5.0x以上的版本,好象没这个请求)---不然,会提醒编译毛病。



在性能方面,在windows平台下,.net可能是占强项,要是把.net放在sun开发的操作系统上去运行呢?根本就运行不了,.net对其它操作系统的支持也很弱,性能也可能比不上java。
谁可相欹 该用户已被删除
沙发
发表于 2015-1-21 07:37:21 | 只看该作者
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
山那边是海 该用户已被删除
板凳
发表于 2015-1-22 07:13:43 | 只看该作者
如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。
变相怪杰 该用户已被删除
地板
发表于 2015-1-30 23:39:22 | 只看该作者
所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。
admin 该用户已被删除
5#
发表于 2015-2-4 13:40:52 | 只看该作者
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
分手快乐 该用户已被删除
6#
发表于 2015-2-6 15:07:21 | 只看该作者
是一种将安全性(Security)列为第一优先考虑的语言
深爱那片海 该用户已被删除
7#
发表于 2015-2-7 19:08:59 | 只看该作者
那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!
不帅 该用户已被删除
8#
发表于 2015-2-8 03:24:46 | 只看该作者
如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。
灵魂腐蚀 该用户已被删除
9#
发表于 2015-2-11 19:08:27 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
小魔女 该用户已被删除
10#
发表于 2015-3-2 16:46:05 | 只看该作者
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
透明 该用户已被删除
11#
发表于 2015-3-10 22:39:58 | 只看该作者
多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
精灵巫婆 该用户已被删除
12#
发表于 2015-3-13 02:07:55 | 只看该作者
Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。
13#
发表于 2015-3-13 09:08:25 | 只看该作者
至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。
海妖 该用户已被删除
14#
 楼主| 发表于 2015-3-20 17:38:15 | 只看该作者
是一种语言,用以产生「小应用程序(Applet(s))
老尸 该用户已被删除
15#
发表于 2015-4-27 00:49:58 | 只看该作者
一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-28 11:31

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表