Java web应用程序供用户通过浏览器发送请求,程序通过执行产生web页面,并将页面传递给客户机器上的浏览器,将得到的web页面呈现给用户。

  一个完整的Java web应用程序通常由许多组件构成的,一般由表示层组件、控制层组件、业务逻辑层组件以及数据访问层(或持久层)组件构成。

  ●表示层组件一般由HTML和JSP页面组成。

  ●控制层组件一般由servlet组成。

  ●业务逻辑层一般是JavaBean或EJB。

  ●持久层组件一般是JDBC、hibernate。

  ●此外,Java web应用的各个组件需要在XML格式的配置文件中进行声明,然后打包,部署到Java web服务器(如Tomcat)中运行。

  

  1.HTML

  (Hypertext Markup Language)超文本标记语言,用来设计静态网页。

  2.JavaScript

  是一种简单的脚本语言,在浏览器中直接运行,无需服务器端的支持。这种脚本语言可以直接嵌套在HTML代码中,它相应一系列的事件。当一个JavaScript函数响应的动作发生时,浏览器就会执行对应的JavaScript代码,从而在浏览器端实现与客户的交互。

  JavaScript增加了HTML网页的互动性,它可以在浏览器端实现一系列的动态的功能,仅仅依靠浏览器就可以完成一些与用户的互动。

  3.CSS

  (Cascading Style Sheets)即层叠样式表,简称“样式表”,是一种美化网页的技术,主要完成字体、颜色、布局等方面的各种设置。

  在HTML基础上,使用CSS不仅能够统一、高效地组织页面上的元素,还可以是页面具有多样的外观。

  4.JSP

  JSP页面由HTML代码和嵌入其中的Java代码组成。在页面被客户端请求后,web服务器对Java代码进行处理,然后将生成的HTML页面返回客户端的浏览器。JSP页面一般包含JSP指令、JSP脚本元素、JSP标准动作以及JSP内置对象。

  5.Servlet

  servlet(Java服务器小程序)使用Java编写的服务器端程序,是由服务器端调用和执行的。它可以处理客户端传来的HTTP请求,并返回一个响应。它是按照servlet自身规范设计的一个Java类,具有可移植性、功能强大、安全、继承、模块化和可扩展性好等特点。

  6.JavaBean

  JavaBean是由JAVA语言编写的并遵循一定规范的类,该类的一个实例称为JavaBean。可以被JSP引用也可以被servlet引用。

  7.JDBC

  JDBC(Java Database Connectivity,数据库访问接口)是Java web应用程序开发中最主要的API之一,他使数据库开发人员能够用标准的Java API 编写数据库应用程序。

  8.XML

  XML(eXtensible Markup Language,可扩展的标记语言),在Java web应用程序中,XML主要用于描述配置信息。servlet、struts2以及Hibernate框架都需要配置文件,它们的配置文件都是XML格式的。

  9.Struts2

  Struts2框架,提供了一种基于MVC体系结构的web程序的开发方法,具有组件模块化、灵活性和重用性等优点,使基于MVC模式的程序结构跟家清晰,同时简化web应用程序的开发。

  10.Hibernate

  Hibernate是一个面向Java环境的对象/关系数据库映射工具,即ORM(Object-Relation Mapping对象---关系映射)工具。对JDBC API进行了封装,负责Java对象的持久化,在分层的软件构架中位于下持久化层,封装了所有数据访问细节,使业务逻辑层可以专注于实现业务逻辑。

  另外,还有Ajax、EL、JSTL、过滤器、监听器等技术。

Java web应用开发技术的更多相关文章

  1. 第一章 Java Web应用开发技术

    Java Web应用开发是基于JavaEE(JavaEnterprise Edition)框架的,而JavaEE是建立在Java平台上的企业级应用解决方案.JavaEES框架提供的Web开发技术主要支 ...

  2. Java Web之JSP技术

    JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术.JSP这门技术的最大的特点在于,写jsp就像在写html,但它相比htm ...

  3. Java Web之会话技术

    客户端与服务器通信过程中,会产生一些数据.比如,A和B分别登陆了某宝购物网站,A买了一个Android手机,B买了一个iPhone手机,当结账时,web服务器需要分别对用户A和B的信息分别保存.根据J ...

  4. Java Web之Servlet技术

    1.Servlet基础 针对Servlet技术开发,Sun公司提供了一些列接口和类,其中最重要的是javax.servlet.Servlet接口,两个重要的包是javax.servlet和javax. ...

  5. Java Web高性能开发(三)

    今日要闻: Clarifai:可识别视频中物体 最近几年,得益于深度学习技术的发展,谷歌和Facebook等企业的研究人员在图形识别软件领域取得了重大突破.现在,一家名为Clarifai的创业公司则提 ...

  6. Java Web高性能开发(二)

    今日要闻: 性价比是个骗局: 对某个产品学上三五天个把月,然后就要花最少的钱买最多最好的东西占最大的便宜. 感谢万能的互联网,他顺利得手,顺便享受了智商上的无上满足以及居高临下的优越感--你们一千块买 ...

  7. 使用MyEclipse搭建java Web项目开发

    转自:http://blog.csdn.net/jiuqiyuliang/article/details/36875217 首先,在开始搭建MyEclipse的开发环境之前,还有三步工具的安装需要完成 ...

  8. java web面试技巧,数据库面试,java web轻量级开发面试教程

    我最近看到一本比较好的讲java web方面面试的书,java web轻量级开发面试教程. 其中不仅用案例和视频讲述了Spring MVC,Hibernate, ORM等方面的技巧,而且还实际讲到了面 ...

  9. java web方面的面试问题,Spring MVC方面的面试问题,摘自java web轻量级开发面试教程

    本文摘自java web轻量级开发面试教程: https://baike.baidu.com/item/Java%20Web%E8%BD%BB%E9%87%8F%E7%BA%A7%E5%BC%80%E ...

随机推荐

  1. 我的第一个Python小程序

    猜年龄,如果大了提示小点,如果小了,提示大点 涉及的知识点: 1.变量 2.注释 3.接收交互式的输入 4.类型转换 5.while循环 6.if..elif..else多条件分支语句 # Autho ...

  2. 解决问题知识点--mysql数据库

    一: 连接 多表的字段中含null的  多表查询 ----左右连接查询! 例: 一张  emp(emano,ename,sal,deptno) 雇员表, 一张 dept(deptno,dname) 部 ...

  3. 剑指offer 面试55题

    面试55题: 题目:二叉树的深度 题:输入一棵二叉树,求该树的深度.从根结点到叶结点依次经过的结点(含根.叶结点)形成树的一条路径,最长路径的长度为树的深度. 解题思路: ①如果一棵树只有一个节点,它 ...

  4. Java FAQ -- "Exception in thread 'main' java.lang.UnsupportedClassVersionError:"

    OS:Ubuntu 最近重新学习Java,写了一段很小的程序,如下: public class Hello{ public static void main(String args[]){ Syste ...

  5. asp.net 利用Response.Filter 获取输出内容, 变更输出内容

    重写 Response.Filter 就可以获取或更新输出到浏览器的内容       资料: https://weblog.west-wind.com/posts/2009/Nov/13/Captur ...

  6. substring splice

    返回start到end之前 不包括end stringObject.substring(start,end) (不接受负数) stringObject.slice(start,end) start起始 ...

  7. iOS 9 的新功能 universal links

    什么是 universal links: (通用链接) 一种能够方便的通过传统 HTTP 链接来启动 APP, 使用相同的网址打开web page和 APP的方式. 第一点,链接打开网址 顾名思义 第 ...

  8. 静态库引入引起的错误解决方案,ld: warning: ignoring file ”…/XXX.a”, file was built for archive which is not the architecture being linked (armv7): “…/XXX.a” Undefined symbols for architecture armv7: "_OBJC_CLASS_$

    想目中不免会引入一些静态库,可是有时加入'.a'文件后编译便会报以下错误 ld: warning: ignoring file ”…/XXX.a”, file was built for archiv ...

  9. sudoers文件设置sudo命令无密码(root密码)登录

    参考博客:http://xvshell.iteye.com/blog/1838093 1. 当用户执行sudo时,Linux系统会去寻找/etc/sudoers文件,并且这是主动的,判断用户是否有执行 ...

  10. 【leetcode刷题笔记】Regular Expression Matching

    Implement regular expression matching with support for '.' and '*'. '.' Matches any single character ...