首页 Java java教程 Struts用户和开发指南(前言之一)

Struts用户和开发指南(前言之一)

Dec 17, 2016 am 10:54 AM


  0.1概述
  本用户指南为那些热衷于Web开发的人们和想用java开发Web应用程序的人们而写。在开始阅读之前,你应该对以下这些核心技术的基础知识有所了解:
  .HTTP,Html和User Agent;
  .HTTP请求响应周期;
  .Java语言和应用程序框架;
  .JavaBeans;
  .属性文件和资源绑定;
  .Java Servlet;
  .jsp和JSP标签库;
  .xml语言;
  本章只对这些核心技术做扼要的介绍而不做详尽的描述。为了大家的方便,我们提供给大家一些可以进一步了解它们的有用链接。
  假如你已熟悉Java语言本身,而不了解这些技术,我们建议你应好好看看这本指南The Java Web Services Tutorial。 这里可以下载到它的PDF版本。
  假如你已经有开发其它平台的Web应用程序的经验,在这里你也可以找到你需要的资料。因为Struts用到的技术在其他的Java Web产品也可能要用到,这些背景知识对任何一个Java项目都是有用的。
  假如你对Java语言还是不太了解,那么我们建议你看看另一本指南The Java Tutorial。The Java Tutorial和The Java Web Services Tutarial内容可能有重叠的部分,最好结合起来看。
  假如你想了解如何开发一般的Java应用程序,那么你可以去这里看看http://developer.java.sun.com/developer/onlineTraining/new2java/divelog/part1/toc.jsp' TARGET=_blank>New to Java ,可能会给你很大帮助。
  
  0.2 HTTP,HTML和User Agents
  众所周知,互联网是建立在HTTP协议和HTML语言基础之上的。User Agent就像Web浏览器一样使用HTTP协议请求HTML文档,然后浏览器负责把其格式化并显示给用户。传输使用的HTTP协议,而HTML是Web和Web应用程序使用的通用语言。
  在进行Web应用程序开发时,一些Java程序员可能自己编写HTML语言,而有的则会交给专门的页面设计人员来编写。
  关于HTTP,HTML和User Agents更多知识可参考以下资源:
  .Getting started with HTMLDave Raggett著;
  .在Java Web Services Tutorial中的HTTP Overview ;
  .HTTP/1.1规范;
  .HTTP Basic and Digest Authentication 规范;
  .State Management Mechanism规范(Cookies);
  0.3 HTTP请求响应周期
  对于Web开发人员来说,对HTTP的最关心的就是HTTP的请求响应周期,使用HTTP提交一个请求,然后HTTP服务器(如Web服务器)返回一个响应。当我们进行Web开发设计时,我们设计成一个HTTP请求对应返回一个HTTP响应。Struts框架就是对这一周期进行抽象,而对我们来说更重要的是应该知道这一幕后发生的事情。
  假如你对HTTP请求响应周期并不熟悉,那么我们强烈推荐你去读一读Java Web Services Tutorial中的HTTP Overviewhttp://java.sun.com/webservices/docs/1.0/tutorial/doc/HTTP.html#63796
  
  0.4 Java语言和应用程序框架
  Struts框架是用时下最流行的万能编程语言(译者注:这么形容Java语言我觉得一点也
  不为过)Java写成的。Java是面向对象的编程语言,Struts正是利用了它的面向对象这一技术。另外还有,Java自身对线程的良好支持,可以在同一时刻执行多项任务。很好的理解Java语言,面向对象编程和线程,对我们把握Struts和使用本用户指南大有裨益。
  学习Java语言和线程可以参考以下资料:
  .The Java Tutorial之 Learning the Java Language ;
  .The Java Language Tutorial之Learning the Threads之Doing Two or More Tasks At Once ;
  即使你已经使用过Java和面向对象的编程,创建和使用应用程序框架对你编程也是大有帮助的。有关应用程序框架的更多知识,可以参考下面两本白皮书:
  . Designing Reusable Classes Ralph E. Johnson 和Brian Foote著;
  .Object-Oriented application Frameworks Mohamed Fayad和Douglas C. Schmidt著;假如你正在找一个服务器端框架那么这两页可能对你有些帮助:1和2
  
  0.5 JavaBeans
  正像许多Java应用程序一样,大多Struts对象也被设计为JavaBean。使用JavaBean设计模式使Struts类更易被Java开发人员和Java部署工具使用。
  JavaBan最初只是为可视化元素编程而创建的,现在这种对象设计模式已经被广泛地应用到更多可重用组件的基础设计中,如Struts框架。
  关于JavaBean更多知识,可参考:
  .java.sun.com中的The JavaBeans Component Architecture document.tion和JavaBeans 1.01 Specification;
  .The Java Tutorial中的 The JavaBean Trail ;
  .The Java Web Services Tutorial中的JavaBeans Components in JSP Pages ;
  0.5.1 反射和内省机制
  
  反射就是确定对象的哪个成员变量或方法是可用的一种处理机制。内省是JavaBean API使用的一种非凡形式的反射。使用内省我们可以知道JavaBean的哪些方法是可以被其他对象访问的。
  Struts框架使用内省机制把HTTP参数转换为JavaBean属性和使用JavaBean属性组装HTML表单域。这项技术使在JavaBean和HTML表单域之间进行“双向访问”属性更加简单。
  关于反射和内省更多,请参考:
  . The Reflection Trail ;
  .Chapter 8 of the JavaBeans API Specification ;
  0.5.2 映射(Maps)
  
  JavaBean通过使用属性来存储数据而在其他方法中操作这些数据。JavaBean是一个便捷而有强大的对象,但它不是编程人员用来存储数据的对象唯一选择。另外一个流行的对象就是映射(Map)[java.util.map]。一个映射就是一个简单的名称值对集合。映射常在“幕后”作为存储动态数据的一种便捷方法。
  
  0.5.3 动态Bean(DynaBeans)
  
  动态Bean集JavaBean的可扩展性和Map的灵活性于一身。我们知道即使要定义一个简单的JavaBean,也要新建一个类,定义一个属性变量,还有编写每个属性对应的两个访问方法(setXXX和getXXX)。而动态Bean则可以通过XML配置文件来定义属性,动态Bean的虚拟属性并不能像普通的Java方法一样来调用,而是要通过组件使用反射(Reflection)和内省(introspection)机制来进行访问。
  在Struts框架中,你可以使用动态Bean来描述一个HTML表单。这一个策略避免了我们要为一些简单的表单域创建正式JavaBean子类。 

 以上就是Struts用户和开发指南(前言之一)的内容,更多相关文章请关注PHP中文网(www.php.cn)!


本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
威尔R.E.P.O.有交叉游戏吗?
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

PHP商城商品管理系统的设计与开发指南 PHP商城商品管理系统的设计与开发指南 Sep 12, 2023 am 11:18 AM

PHP商城商品管理系统的设计与开发指南摘要:本文将介绍如何使用PHP开发一个功能强大的商城商品管理系统。系统包括商品的添加、编辑、删除、搜索,以及商品分类管理、库存管理和订单管理等功能。通过本文的指南,读者将能够掌握PHP开发商城商品管理系统的基本流程和技巧。引言随着电子商务的快速发展,越来越多的企业选择在网上开设商城。而商品管理系统作为商城的核心功能之一,

PHP中的CMS系统开发指南 PHP中的CMS系统开发指南 May 21, 2023 pm 02:51 PM

随着互联网的发展,网站已经成为人们获取信息和交流的重要方式。而为了更好地管理和维护网站内容,CMS(ContentManagementSystem)系统应运而生。作为一种常用的建站工具,CMS系统提供了一种简单、快捷、高效的方式来建立和管理网站。而PHP作为一种强大的后端语言,在CMS系统开发中应用广泛。本文将为大家讲解PHP中的CM

PHP开发指南:如何实现网站访问权限控制 PHP开发指南:如何实现网站访问权限控制 Aug 18, 2023 pm 10:46 PM

PHP开发指南:如何实现网站访问权限控制在开发一个网站时,保护用户数据和确保敏感信息的安全性至关重要。一个常用且有效的方法是通过网站访问权限控制来限制不同用户对不同页面的访问权限。本文将介绍如何使用PHP实现网站访问权限控制,并提供一些代码示例来帮助您快速上手。步骤一:创建数据库表首先,我们需要创建一个数据库表来存储用户信息和权限。下面是一个示例的MySQL

PHP Exchange邮箱开发指南:一步步实现主要功能 PHP Exchange邮箱开发指南:一步步实现主要功能 Sep 11, 2023 pm 01:00 PM

PHPExchange邮箱开发指南:一步步实现主要功能随着互联网的快速发展,电子邮件已经成为人们日常生活和工作中不可或缺的一部分。Exchange邮箱作为一种常用的企业级邮件解决方案,提供了更加强大和安全的邮件功能。本文将为读者们提供一份PHPExchange邮箱开发指南,通过一步步实现主要功能,帮助读者们构建自己的Exchange邮箱系统。第一步:搭建

PHP WebSocket开发入门指南:一起探索实现各种功能的方法 PHP WebSocket开发入门指南:一起探索实现各种功能的方法 Sep 11, 2023 am 08:12 AM

PHPWebSocket开发入门指南:一起探索实现各种功能的方法引言:随着互联网的发展,实时通信变得越来越重要。传统的HTTP协议在实时性方面表现较为疲软,而WebSocket协议则能够提供更加高效的实时通信解决方案。PHP作为一种常见的服务器端语言,也能够通过WebSocket来实现实时通信功能。本文将介绍PHPWebSocket开发的入门知识和一些常

PHP与微信公众号开发指南 PHP与微信公众号开发指南 Jun 11, 2023 pm 03:31 PM

随着微信公众号在社交网络中的逐渐普及,越来越多的开发者开始涉足微信公众号开发领域。在这其中,PHP作为一种常见的后端编程语言,也开始被广泛应用于微信公众号的开发中。本文将介绍PHP在微信公众号开发中的基础知识和常用技巧。一、PHP与微信公众号开发基础微信公众号开发微信公众号是指一种基于微信平台的互联网应用程序,可以为用户提供不同类型的服务和内容,如信息推送

PHP开发指南:实现简单的友情链接功能 PHP开发指南:实现简单的友情链接功能 Jul 03, 2023 pm 05:33 PM

PHP开发指南:实现简单的友情链接功能友情链接是网站常见的一种功能,通过友情链接可以与其他网站建立互相推荐和互友关系,增加网站的流量和用户转化率。在本篇文章中,我们将介绍如何使用PHP开发一个简单的友情链接功能。创建数据库表首先,我们需要在数据库中创建一个用于存储友情链接信息的表。可以使用以下SQL语句创建表结构:CREATETABLE`links`(

PHP中的HR管理系统开发指南 PHP中的HR管理系统开发指南 May 21, 2023 am 09:12 AM

HR(HumanResources)管理系统是现代企业中非常重要的一款软件,可以协助企业管理人力资源,包括员工档案管理、薪资福利管理、考勤管理、绩效考核管理、培训管理等多个方面。在企业日常经营中,HR管理系统的好坏直接影响企业的效率和运营质量。本篇文章将针对PHP开发的HR管理系统,详细讲解开发指南。系统需求分析在开发HR管理系统前,首先需要进行系统需求分

See all articles