仓酷云

标题: JAVA编程:JSP理论要点 [打印本页]

作者: 精灵巫婆    时间: 2015-1-18 11:29
标题: JAVA编程:JSP理论要点
从一个编程语言的普及程度来将,一个好的IDE是至关中要的,而现在的java的IDE虽然已经很好了,但是和.net比起来还是稍微差一些的,这是个客观事实。java要想普及的更好。DE是必须加以改进的。js在Internet浩瀚网站中,基于Web数据库的静态网站使用相称普遍。基于Web收集数据库的静态网站由一个Web扫瞄器作为客户端界面,一个数据库服务器用做信息存储和一个毗连二者的Web使用服务器构成。原有开辟静态网站的CGI手艺,跟着Web使用程序的客户端手艺不休地开展,渐渐被JavaApplet、ActiveX控件、DHTML和JavaScript所代替。这些手艺极年夜地改良了用户界面,但当它们实验做一些深切的事情时,入手下手碰到客户端扫瞄器不兼容、服务器包袱太重、会见速率下落和平安性等成绩。JSP手艺就是办理这些成绩的一把金钥匙,本文次要会商在利用JSP手艺构建静态网站的过程当中的一些手艺成绩。

JSP手艺

JSP是基于JavaServlet和全部Java系统的Web开辟手艺,使用这一手艺能够创建先辈、平安、疾速和跨平台的静态网站。在传统的网页HTML文件中到场Java程序片断和JSP标志,就组成了JSP网页。Web服务器吸收到会见JSP网页的哀求时,起首实行个中的程序片断,然后将实行了局以HTML格局前往给客户。程序片断能够操纵数据库、从头定向网页和发送E-mail等等,这就是创建静态网站所必要的功效。一切程序操纵都在服务器端实行,收集上传送给客户真个仅是失掉的了局,对客户扫瞄器的请求很低。如所示,在用户毗连JSP网站时,用户哀求网页,JSP页面单独呼应哀求,将用户对网页的哀求转化为对数据的哀求,经由过程JavaBean处置哀求并将前往的数据封装成HTML页面前往给用户。

JSP有很多上风:

1.程序写一次,各处能够运转。JSP在计划时,充实思索到使用平台的有关性。依附于Java的可移植性,JSP失掉今朝很多盛行操纵平台的撑持,可在Apache、NetScape、IIS等服务器上实行。

2.实行速率快。JSP页面只需编译一次转化为Java字节代码,厥后一向驻留于服务器内存中,加速了对JSP页面的呼应速率。若不思索JSP页面第一次编译所花的工夫,则JSP的呼应速率要比ASP快很多。

3.Java的上风。JSP手艺是用Java言语作为剧本言语的。跨平台、成熟、强健、易扩大的Java手艺使得开辟职员的事情在其他方面也变得简单和复杂。在Windows体系被嫌疑大概会溃散时,Java能无效地避免体系溃散。Java言语经由过程供应避免内存泄露的办法,在内存办理方面大显神通。加上,JSP为使用程序供应了更加强健的不测事务处置机制,充实发扬了Java的上风。

JSP手艺难点

1.毗连数据库

数据库毗连对静态网站来讲是最为主要的部分,在与后端数据库毗连时能够接纳ODBC或JDBC手艺。固然ODBC作为传统的毗连数据库的手腕是一种选择,可是ODBC有以下致命缺点,从而使它没法胜任JSP的哀求:

(1)ODBC是C言语完成的API,从Java程序挪用当地的C程序会带来一系列相似平安性、完全性、强健性方面的成绩。

(2)其次,完整准确地完成从C代码ODBC到JavaAPI翻译的ODBC不会使人中意,由于在Java中没有指针,而ODBC中大批地利用了指针,包含极易堕落的空指针“void*”。

(3)思索到平台移植性,在开辟JSP程序中利用ODBC会带来负面影响,使得代码不合适于移植。

为了使程序在具有平安性、完全性、强健性的同时,能够便利地移植,接纳JDBC毗连数据库更符合一些。JDBC是一种可用于实行SQL语句的JavaAPI,它由一些Java言语写的类、界面构成,使开辟职员能够用纯Java言语编写完全的数据库使用程序。经由过程利用JDBC,能够很便利地将SQL语句传送到几近任何一种数据库。也就是说,能够不用写一个程序会见Sybase,写另外一个程序会见Oracle,再写一个程序会见Microsoft的SQLServer。用JDBC写的程序可以主动地将SQL语句传送给响应的数据库办理体系。

在当地数据库程序利用Microsoft的Access等数据库时,可使用Sun公司开辟的JDBC-ODBC桥,借用此手艺JSP程序就能够会见带有ODBC驱动程序的数据库。如许既保存JDBC的长处,又可使用Microsoft供应的ODBC数据源与Access毗连。不论对方是何种数据库,只需有ODBC接口就能够间接利用JDBC-ODBC桥与数据库毗连,而无需由于后端数据库的改动而修改响应的程序代码,完成了使用层与数据库层的完善分别。假如必要变后端数据库为MySQL,只需在ODBC数据源中安装MySQL的驱动程序以后,就能够间接利用MySQL数据库了。

2.内建的组件

在完成网站的时分,因为客不雅必要,为了便利辨别当地局域网用户与远端连下去的用户,并供应响应的权限,能够接纳内建的组件Request来捕捉每个连到服务器上的用户的IP地点,经由过程对照以后给出响应的权限。如许做到本局域网内用户可使用网站内一切公然的和不合错误外公然的资本。还能够将现有的办法加以改善,将各类IP地点输出到数据库中而且付与分歧的IP地点分歧的权限,以完全地把持用户利用网站资本。

会话形态保持是Web使用开辟者必需面临的成绩。为了懂得用户是不是还在线,利用内建的Session组件,经由过程给每一个登任命户一个Session变量,能够在用户非一般分开网站以后,封闭该用户利用的资本,到达节俭内存,进步服务器功能的目标。

在JSP中还供应了Cookie类,其机关器有两个参数,分离代表Cookie的称号和值。Cookie类中供应了各类办法设置Cookie的属性,如经由过程setMaxAge办法能够设置Cookie的保存工夫。若保存工夫为负值,代表扫瞄器封闭Cookie,即消散;保存工夫为0,代表删除Cookie;保存工夫为负数,代表Cookie存在几秒。能够用Cookie一时保留用户的账号和口令,JSP可随时读取,考证用户的正当性。能够将用户的扫瞄形态保留在Cookie中,下次用户再会见网页时,由JSP向扫瞄器显现本性化页面。

3.转换Unicode编码

在很多JSP页面的调试过程当中都碰着过因为汉字编码与Unicode编码转换引发的成绩,如在扫瞄器中看到的JSP页面中的汉字都是乱码、JSP页面没法一般显现汉字、JSP不克不及吸收表单提交的汉字、JSP数据库读写没法取得准确的内容等等,这是由于如今年夜部分具有国际化特性的软件中心字符处置都是以Unicode为基本的,在软件运转时依据事先“Locale/Lang/Codepage”设置断定响应的当地字符编码设置,并依此处置当地字符,以是应当在处置过程当中完成Unicode和当地字符集的互相转换,乃至以Unicode为中介的两个分歧当地字符集的互相转换。这类体例在收集情况下被进一步延长,任何收集两头的字符信息也必要依据字符集的设置转换成可承受的内容。

因为IE默许字符集为GB2312,但是Windows默许为GBK,Java则默许为Unicode,以是假如欠亨过必定的转换,间接在GB2312字符集上显现从GBK或Unicode失掉的页面将是一片乱码。Java言语接纳Unicode处置字符,但从另外一个角度来讲,在Java程序中也能够接纳非Unicode,主要的是包管程序出口和出口的汉字信息不掉真。如完整接纳ISO-8859-1来处置汉字也能到达准确的了局,经由转换以后并将网页字符集强迫设为GB2312字符集显现,就可以够一般显现汉字了。


你对java乐观有点盲目。java的关键就是在服务器上表现优异,而且它提供了整个开发所需要的工具。应该是说,看哪天。net有没有机会赶上java。
作者: 再现理想    时间: 2015-1-19 21:53
至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。
作者: 柔情似水    时间: 2015-1-24 22:13
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
作者: 因胸联盟    时间: 2015-1-26 21:55
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
作者: 仓酷云    时间: 2015-2-2 22:02
你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。
作者: 金色的骷髅    时间: 2015-2-4 08:52
一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从
作者: 活着的死人    时间: 2015-2-4 22:36
多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
作者: 精灵巫婆    时间: 2015-2-7 10:34
J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。
作者: 愤怒的大鸟    时间: 2015-2-8 08:25
《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。
作者: 灵魂腐蚀    时间: 2015-2-9 10:22
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
作者: 爱飞    时间: 2015-3-6 23:23
一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。
作者: 第二个灵魂    时间: 2015-3-7 22:31
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
作者: 乐观    时间: 2015-3-8 02:41
应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展
作者: 海妖    时间: 2015-3-15 20:08
你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。
作者: admin    时间: 2015-3-22 03:27
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2