第一章 JAVA的网络功能与编程

1-1 JAVA语言简介

Java是一种简单易用、完全面向对象、具有平台无关性且安全可靠的主要面向Internet的开发工具。自从1995年正式问世以来,Java的快速发展已经让整个Web世界发生了翻天覆地的变化。在早期,Java比较多的用在浏览器上,插入到网页中(即是Java Applet程序),成为最灵活、最强大的网页多媒体的载体,但由于Java虚拟机相对于个人电脑而言,有占用资源大,安全性相对较差等缺点,Applet逐渐的被后起之秀Flash所替代,但随着Java Servlet的推出,Java在电子商务方面开始崭露头角,最新的JSP(Java Server Page)技术的推出,更是让Java成为基于Web的应用程序的首选开发工具,目前的Java技术已成为所有大型电子商务项目的必然选择。

1-2 JAVA语言在网络上的应用

Java程序可以获取网络上结点的图象、声音、HTML文档及文本等资源,并可以对获得的资源进行处理。例如Java程序可以每隔一定时间读取某结点提供的最新数据,并以图表的形式显示出

来。在编程处理上,一般先生成一个URL类型的对象,然后用 Java中相应的方法(method)获取该对象所代表的资源。下面列举一个Java从网络上获取图象的的方法以说明。

Java Applet可以直接从网络上结点获取图象并显示出来,Java提供了如下方法可以创建对应于其他结点的图象:

getImage(new URL(字符串))

其使用格式可有两种:

String url = “结点URL”;

Image image;

try {

image = getImage(new URL(url));

}

catch(Exception e){

System.out.println(“Can’t open the URL “);

}

URL imgur=null;

Image image;

try {

imgur=new URL(“结点URL “);

}

catch (MalformedURLException e) {

System.out.println(“Can’t open the URL “);

}

image=getImage(imgur);

前一种格式用“new URL(url)”生成 URL 对象, 并直接作为getImage的参数,后一种格式先用“new URL(url)”生成一个 URL对象,再传给getImage,两种格式本质上是一样的,下面是一个完整的实例(img.java):

import java.applet.*;

import java.net.*;

import java.awt.*;

public class img extends Applet{

Image image;

public void init() {

String url = “http://images.sohu.com/logo1.gif”;

try {

image = getImage(new URL(url));

}catch(Exception e){}

}

public void paint(Graphics g) {

g.drawImage(image, 0, 0,this);

}

}

将上程序以img.java存盘, 执行javac img.java,将得到编译后生成的img.class,最后创建调用这两个Java Applet的HTML文档,并放在与img.class相同的目录,对应的HTML文档可如下(img.html):

以上仅是Java在客户端应用的一些方面,目前,Java更广泛的应用是在服务器端,这是本文研究的主要话题,下文提及的Servlet、JSP等技术都是Java在服务器端应用的具体形式。

1-3 JSP的基础——Servlet 技术

Java Servlet是JSP技术的基础,JSP本身就是预先被编译成Servlet,然后再运行的,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成,Servlet这个名称大概源于Applet,现在国内的翻译方式很多,本文为了避免误会,本文直接采用Servlet这个名称而不做任何翻译,读者如果愿意,可以称之为“小服务程序”。Servlet其实和传统的CGI程序和ISAPI、NSAPI等Web程序开发工具的作用是相同的,在使用Java Servlet以后,用户不必再使用效率低下的CGI方式,也不必使用只能在某个固定Web服务器平台运行的API方式来动态生成Web页面。许多Web服务器都支持Servlet,即使不直接支持Servlet的Web服务器也可以通过附加的应用服务器和模块来支持Servlet。得益于Java的跨平台的特性,Servlet也是平台无关的,实际上,只要符合Java Servlet规范,Servlet是完全平台无关且是Web服务器无关的。由于Java Servlet内部是以线程方式提供服务,不必对于每个请求都启动一个进程,并且利用多线程机制可以同时为多个请求服务,因此Java Servlet效率非常高。但Java Servlet也不是没有缺点,和传统的CGI、ISAPI、NSAPI方式相同,Java Servlet是利用输出HTML语句来实现动态网页的,如果用Java Servlet来开发整个网站,动态部分和静态页面的整合过程简直就是一场噩梦。这就是为什么SUN还要推出Java Server Pages的原因。

1-4 JavaBeans技术

什么是JavaBeans?JavaBeans就是Java的可重用组件技术。ASP通过COM来扩充复杂的功能,如文件上载、发送email以及将业务处理或复杂计算分离出来成为独立可重复利用的模块。JSP通过JavaBeans实现了同样的功能扩充。JSP对于在Web应用中集成JavaBeans组件提供了完善的支持。这种支持不仅能缩短开发时间(可以直接利用经测试和可信任的已有组件,避免了重复开发),也为JSP应用带来了更多的可伸缩性。JavaBeans组件可以用来执行复杂的计算任务,或负责与数据库的交互以及数据提取等。在实际的JSP开发过程中,读者将会发现,和传统的ASP或PHP页面相比,JSP页面将会是非常简洁的,由于JavaBeans开发起来简单,又可以利用Java语言的强大功能,许多动态页面处理过程实际上被封装到了JavaBeans中。

java网上书店系统_基于JAVA/JSP的网上书店系统相关推荐

  1. java项目----教务管理系统_基于Java的教务管理系统

    java项目----教务管理系统_基于Java的教务管理系统 2022-04-22 18:18·java基础 最近为客户开发了一套学校用教务管理系统,主要实现学生.课程.老师.选课等相关的信息化管理功 ...

  2. java网上书店管理系统_基于JAVA的网上书店管理系统的开发.doc

    基于JAVA的网上书店管理系统的开发 基于 JAVA 的网上书店系统的设计与开发 摘 要 电子商务是一种在互联网上进行商务活动的形式,近年来随着互联网技术的 发展得以迅速普及.如何利用最新互联网编程技 ...

  3. java网页作业提交_基于JAVA网上作业提交批改系统的设计(SQL)(含录像)

    基于JAVA网上作业提交批改系统的设计(SQL)(含录像)(毕业论文15000字,程序代码,SQLserver数据库) 摘  要 随着社会的进步,网络技术的发展为教育界提供了一片崭新的空间,传统的教学 ...

  4. java 网上医院预约系统_基于java web的医院网上预约挂号系统 代码+数据库文件 齐全...

    [实例简介] 基于java web的医院网上预约挂号系统 代码+数据库文件 齐全 :直接导入myeclipse就ok了,好使.献给做这个项目的同学 [实例截图] [核心代码] guahao └── g ...

  5. 基于jsp的失物招领系统_基于Java web的校园失物招领系统

    源码编号:B-E00021 点击查看分类规则 项目类型:Java EE项目(java web项目) 项目名称:基于java web的校园失物招领系统(LostGoods) 当前版本:V1.0.0版本 ...

  6. java 网上商城系统_基于Java_web开发的网上商城系统(含源文件).doc

    PAGE PAGE 1 届 别 学 号 (学校名称) 毕业设计(论文) 基于JAVA WEB的网上商城设计与开 发 姓 名[ 系 别 .专 业 导师姓名.职称[ 完 成 时 间[ PAGE II- 网 ...

  7. 基于java的网上花店销售系统_基于JAVA的鲜花销售系统(含全套CAD图纸).doc

    基于JAVA的鲜花销售系统(含全套CAD图纸) 编号 太湖学院 毕业设计(论文) 题目: 信机 系 专业 学 号: 学生姓名: 指导教师: 201年5月2日太湖学院本科毕业设计(论文) 诚 信 承 诺 ...

  8. java招聘系统_基于java的网上招聘系统的设计与实现.doc

    基于java的网上招聘系统的设计与实现 基于java的网上招聘系统的设计与实现 摘 要 随着网络信息技术的发展,网络在人们生活中的应用越来越广泛,网上招聘已成为一项重要的招聘方式.为了给招聘双方提供一 ...

  9. java 试卷自动生成_基于JAVA的试题自动生成系统 - WEB源码|JSP源码/Java|源代码 - 源码中国...

    压缩包 : 试卷自动生成系统.rar 列表 试卷自动生成系统/.classpath 试卷自动生成系统/.project 试卷自动生成系统/bin/Db/Sql.class 试卷自动生成系统/bin/f ...

最新文章

  1. LED液晶与OLED:电视显示技术比较
  2. java异常——捕获异常+再次抛出异常与异常链
  3. 认真看看, 以后写 SQL 就爽多了:MyBatis 动态 SQL:
  4. MODIS(TerraAqua)陆地标准产品
  5. Centos7 ocsp功能验证
  6. 运维的基本知识点及分类工作
  7. Python中is和==有什么区别?
  8. 大学班里80%都去培训班,为什么我没去
  9. php crypt mysql password_使用PHP 5.5的password_hash和password_verify函数
  10. 继承(父类,子类的继承方式,成员变量、静态变量的引用方法)
  11. 【预训练模型】预训练语言模型的前世今生之风起云涌
  12. 【剑指offer】扑克牌的顺子
  13. ITU-R BT.656 , 帧 , 场 === 模拟视频信号采集的处理,以及奇偶场
  14. 易筋SpringBoot 2.1 | 第十四篇:SpringBoot的HikariCP
  15. 使用Ffmpeg获取视频编码格式
  16. 【Unreal】关于实时编码(live coding)退出UE编辑器C++ Class消失的问题
  17. 静默安装oracle11,Oracle11g静默安装
  18. java cropper 上传_基于cropper.js的图片上传和裁剪
  19. 连虚拟机mysql_实体机连虚拟机MYSQL联接不上
  20. Hello MySQL(四)——MySQL数据库创建实例

热门文章

  1. Janis ST-500 系列探针台
  2. 目标检测算法模型YOLOV3原理及其实战 课程简介
  3. ConcurrentHashMap 的理解
  4. asp.net网站服务器,vs2010制作简单的asp.net网站
  5. CMOS 和CCD的区别
  6. torch.nn.Linear详解
  7. 麦克斯韦方程组的组成由来、媒介的电磁性质和边界条件
  8. 四-python爬虫学习--下载电视剧
  9. C. Carrying Conundrum
  10. SEO优化之生成静态网页