从今天开始本人陆续在博客上发表,学习java web框架的过程,诚邀大家发表看法。


本文主要介绍 java web框架模型,需要学习的java技术范围,及开发环境搭建。


二、JavaWeb简介


2.1、JavaWeb架构模型

2.1.1、一层模型

最简单实现方式就是所有的功能都是通过JSP来实现,使用JSP页面来用请求,响应结果也是JSP页面。

java 网站的框架设计 javaweb界面框架_javaweb

模型描述:所有技术使用JSP来实现的,页面展示及业务逻辑处理使用jsp+JDBC。

涉及技术:JSP、JDBC

一层缺点:代码耦合性高,不适合实际的应用,其代码可读性及可维护性差。

一层用途:实际中不会使用这种模型,应用在JSP学习。比较适合初学者,逻辑简单,容易理解,开发快。

 

参考源码:JSP.Zip

2.1.2、二层模型

将业务处理逻辑代码,从JSP抽出来交由JavaBean完成。用户的请求和响应还是通过JSP页面来交互。

java 网站的框架设计 javaweb界面框架_java web技术范围_02

模型描述:业务逻辑通过JavaBean来实现动作的触发,页面展示还是通过JSP来实现的。比一层模块好处在实现页面和数据层处理的分离。

涉及技术:JSP、JavaBean、JDBC

二层缺点:代码耦合性还是高,功能模块还未独立出来,不能功能调用。

二层用途:比较适合初学者,逻辑简单,容易理解,开发快。也可以作一些功能简单的系统,比如留言板。

 

参考源码: JSP_JavaBean.Zip

 

2.1.3、三层模型

将用户请求交由控制器,然后由控制选择要处理的业务逻辑,及响应要展示的JSP页面。

java 网站的框架设计 javaweb界面框架_java web框架模型_03

模型描述:简单模型的缺陷,实现MVC的结构。将控制层及数据处理逻辑及页面展示独立出来,已经实现极大的解耦;框架可灵活变化。

涉及技术: servlet、JSP、JavaBean、JDBC

三层缺点: 使用基本技术上搭建的,费力,开发代码周期比较长,可以引入其他框架来实现比如struts。

三层用途:引进可以搭建中小型网站开发。

 

参考源码: Servlet_JavaBean_JSP.Zip

 

2.1.4、四层模型

按三层架构模型已经很经典了,但是在实际项目中会对三层架构扩展,做成四层架构,增加对象持久层使对数据的操作变成对对象的操作。

java 网站的框架设计 javaweb界面框架_java web技术范围_04

模型描述:控制层底层技术使用servlet,展示层使用jsp,逻辑处理层使用javabean+加上数据持久化来实现。非常完整的技术框架。

涉及技术:

控制层:struts、spring、webwork、JSF等

显示层:struts、 Tiler、JSTL等

数据持久层: Hibernate等

四层缺点:

四层用途:引进可以搭建大、中、小型网站开发。

 

 

参考源码: struct+hibernate.Zip 等等

 

2.2、涉及到Java-web技术

2.2.1、JSP

JSP技术是在servlet之后产生的

JSP基本语法:

两个注释、三个脚本元素、三个指令元素及八个指令动作。

JSP九大内置对象:

request对象

response对象

pageContext页面上下文对象、

Session对象、

Application对象、

out输出对象、

config配置对象、

page页面对象、

exception对象。

 

2.2.2、JavaBean

JavaBean封装业务逻辑,以便JSP或其他类调用。JavaBean是由一些属性和操作这些属性的方法。

2.2.3、Servlet

Servlet是基于线程的,而传统的CGI和Apache都是基于进程,每个servlet的请求都会产生一个线程。这对系统的利用率来说是一场革命。

Servlet可用于MVC开发技术中控制器,用系统的初始化,服务拦截、过滤等等。

2.2.4、Struts1.x 和Struts2.x

Struts是一个基于J2EE平台的MVC框架,是开发Web应用程序的开发的开源框架。

Struts把servlet、jsp、自定义标签和信息资源(information resource)整合到一个框架中。

 

Struts1.x目前版本有: struts1.0、struts1.1、struts1.2、struts1.3

目前稳定版struts1.2

Struts2.x 目前已经发布Struts2.0,它其实就是WebWork2.2

Struts1.x和Struts2.x完成没有关系。

两个版本都在更新

2.2.5、Hibernate

Hibernate是一个开放源代码的对象关系映射(ORM)框架,它对JDBC进行了非常轻量级的对象封装。是我们非常方便的操作对象来操作数据库。因此只要JDBC连接,我们都可以是Hibernate来操作对象。

Hibernate版本有:4.*、3.3、3.2、3.1、3.0、2.x、1.x

这里选用稳定4.3.9版本

2.2.6、Spring

Spring是一个轻型容器(light-weight container),其核心是Bean工厂,用以构造我们所有需要的model。

目前最新的版本Spring4.1.6

2.3、集成环境搭建

2.3.1、安装目录

文件目录管理如下:

 

java 网站的框架设计 javaweb界面框架_java开发环境搭建_05

2_javaIde: 存放是javaIde 工具,比如eclipse, netbeans等等

java 网站的框架设计 javaweb界面框架_java web框架模型_06

3_ArcheTool:存放是用于java项目建构的工具,比如ant,grace,maven

java 网站的框架设计 javaweb界面框架_java web技术范围_07

4_workspace:存放是eclipse的工作空间

java 网站的框架设计 javaweb界面框架_java开发环境搭建_08

这个按照开发工具及版本或项目来制定的。

5_javaJar:存放是java的jar包

 

java 网站的框架设计 javaweb界面框架_java开发环境搭建_09

6_webcontainer:c存放web容器,比如tomcat及oc4j和webservice

java 网站的框架设计 javaweb界面框架_javaweb_10

7_javaStudy:存放java学习资料

 

java 网站的框架设计 javaweb界面框架_javaweb_11

2.3.2、开发工具及安装目录

JDK1.7/JDK1.8

Tomcat 7.0/8.0+

Mysql5.6 +

Eclipse(Version: Luna Release (4.4.0))

 

 

1、JDK


1、下载安装


安装路径:C:\ProgramFiles\Java\jdk1.8.0_45

安装路径:C:\ProgramFiles\Java\jdk1.7


2、配置


配置环境变量

java主目录

JAVA_HOME=C:\ProgramFiles\Java\jdk1.7.0_05;

PATH变量设定

PATH= C:\ProgramFiles\Java\jdk1.7.0_05\bin;

 

验证查看版本

Java –version

java 网站的框架设计 javaweb界面框架_javaweb_12

Javac –help

java 网站的框架设计 javaweb界面框架_java web技术范围_13

表明JDK配置成功。

 

2、MySQL

以后启动这个bat就可以。


1、安装


下载:MySQL_5.6.22_win32_XiaZaiBa.zip

安装指定路径:C:\Program Files\MySQL


2、启动服务


Bin目录下其他服务

启动服务

Cmd –> 输入mysqld –console

停止服务

关闭cmd窗口就可以

可以下一个批处理bat脚本来启动

java 网站的框架设计 javaweb界面框架_java web框架模型_14

bat文件名 amysql_startup.bat

内容:mysqld–console

以后启动这个bat就可以。


3、配置


使用默认配置就可以

数据库工具-NavicatPremium11.0

建立数据库链接

java 网站的框架设计 javaweb界面框架_java web框架模型_15


创建数据库 – demo

新增用户表 – user

java 网站的框架设计 javaweb界面框架_java 网站的框架设计_16

 

3、Tomcat


1、安装


下载: apache-tomcat-7.0.61-windows-x86.zip

apache-tomcat-8.0.21-windows-x86.zip

 

解压到:

E:\6_Java\6_webcontainer\apache-tomcat\apache-tomcat-8.0.21

E:\6_Java\6_webcontainer\apache-tomcat\apache-tomcat-7.0.61

C:\ProgramFiles\apache-tomcat-6.0.41


2、配置


配置环境变量

Tomcat主目录

TOMCAT_HOME= C:\ProgramFiles\apache-tomcat-6.0.41

配置监听端口

打开文件C:\ProgramFiles\apache-tomcat-6.0.41\conf\server.xml

java 网站的框架设计 javaweb界面框架_java开发环境搭建_17

这里还可以设置最大线程数,及空闲最小线程数和空闲最大线程数。

 

点击“startup.bat”启动服务

java 网站的框架设计 javaweb界面框架_javaweb_18

表明启动成功。

 

配置一个站点

java 网站的框架设计 javaweb界面框架_javaweb_19

新增Context节点

<Contextpath="/myapp" reloadable="true"

docBase="E:\myAppWeb"workDir="E:\myAppWeb\work" />

 

HelloWorld.jsp代码

java 网站的框架设计 javaweb界面框架_java开发环境搭建_20


访问网站:

java 网站的框架设计 javaweb界面框架_java web技术范围_21

访问成功

 

 

 

 

 

4、Eclipse


1、下载


使用版本:Version:Luna Release (4.4.0)

官网下载:eclipse-jee-luna-R-win32.zip

 


2、安装


解压到:E:\6_Java\2_JavaIde\Eclipse\Luna44


3、配置


主要配置JDK和Tomcat

打开【Window->Preference】

集成JDK

 

java 网站的框架设计 javaweb界面框架_javaweb_22

集成Tomcat

java 网站的框架设计 javaweb界面框架_java web技术范围_23

配置更多的版本

 

java 网站的框架设计 javaweb界面框架_java web技术范围_24


4、验证


 

 

 

2.3.3、验证集成开发环境

1、新建一个项目

新建一个项目web project

java 网站的框架设计 javaweb界面框架_java开发环境搭建_25

使用Tomcat运行服务

2、运行项目

右击项目test选择Run As

java 网站的框架设计 javaweb界面框架_java web技术范围_26

自动生成一个Server

java 网站的框架设计 javaweb界面框架_javaweb_27

并且多了个Server目录

 

java 网站的框架设计 javaweb界面框架_java 网站的框架设计_28

新建一个Jsp文件

java 网站的框架设计 javaweb界面框架_java 网站的框架设计_29

就说明成功。

 

实例代码:test.war

2.5、开发目标

使用不同架构模型开发各种Demo(X)程序,也作为以后系统开发原型。

项目路径:E:\6_Java\4_workspace\wp_eclipseluna44\demo

源代码后续会上传上来。

1、JSP

2、JSP_JavaBean

3、JSP_JavaBean_Servlet

4、Struts

5、Struts_Hibernate

6、Spring

7、Spring_Hibernate

8、Struts_Spring

9、Struts_Spring_Hibernate

10、Struts2_Spring_Hibernate

11、Struts_Spring_Hibernate_ForOA

12、Struts2_Spring_Hibernate_ForOA


接下来,我们将通过使用一个实例来讲解,不同模型的技术实现。(请看下回的博文)