Java EE整理(一)--文件结构

文件结构

一、前言

        Java SE、Java EE和Java ME是Java编程语言应用领域的三大板块。

        Java SE是学习Java的基石,Java SE应用于电脑端应用,主要服务于C/S结构,一般不建议直接开始Java SE或者Java ME学习。Java EE就是这一集合主要想记录的内容,应用于服务器开发,主要服务B/S结构,是Java的重要板块,他还有自己专门的称呼,叫Java Web。Java ME就是Android应用开发的主力军,在Java语言的规则基础上,有新的一套Jar包用于实现功能,很多基本功能都进行了重新的封装,但是使用上还是非常的相近。

二、总体结构

        Java Web的结构主要分为三块:前端,后台和数据库。

        前端和服务器容易混为一谈,因为两者开发时确实是要将文件放在同一个项目中,而数据库确实是单独拎出的系统,甚至服务器。当然,随着用户访问的加大,很多时候单台服务器无法承载系统的运行,就需要将后台和数据库分到不同服务器,甚至是多个服务器安装后台,多个服务器处理数据库,以达到承载高并发访问的需求。

三、文件结构

        在开发中,数据库往往单独开发,就不细说。前端和后台在项目开发中,却是有着近似的编程感觉,往往是合并开发的。这是就需要给集成的文件系统分出结构。主要为三个方面:界面、执行文件和配置文件。

        界面就是使用基于html的多种结构语言了,这个仁者见仁智者见智。不过,既然是Java Web开发,自然极力推荐使用jsp。他基于html,可以使用html的各种标签,同时又增加了特定的功能,主要是可以在jsp中使用Java语言。这就是Java拥有了类似php的功能,不过作为一个项目,并不推荐在jsp中使用java运行指令,往往在jsp中只是使用javabean相关的el表达式,将后台数据展示出来。

        执行文件自然就是熟悉的java语言编写的后台程序。这里要负责:处理前端发布的命令、运行相应的业务和关联数据库操作。在MVC基本模型中,这里放着多个servlet用于处理各种数据。而事实上jsp与servlet很相似,他们都有着很多相同的对象,甚至可以说,jsp就是一种特殊的servlet。

        配置文件的范围很广,有至关重要的web.xml,也有在框架中applicationContext.xml、springmvc.xml和mybatis-config.xml等等。当然也有一种声音使用注解的方式代替配置文件,但是想要在一个大工程中(小项目其实可以完全不用配置文件)彻底消灭配置文件,怕是还有很长的路要走。尤其是web.xml文件,他是java ee项目中的指路人般的存在。当然还有一些仅仅是存放数据的配置文件,像是db.properties等。都是在越走越远的路上慢慢接触的。

四、开发模型的意义

        学习Java Web,必然是要走上学习框架的道路的。当然,如果只是自己闲着没事写写小网站,自然就不用踏上这条路了。不过那样我就推荐还是用PHP的好,PHP没有那么多的结构,那么多的弯弯绕绕,直接在页面上编辑,语法简单,范围广阔不过,学习Java Web自然有其不可替代的作用。

        作为一个工程性语言的,复杂的分工,多类型的合作,都是为了是Java Web能够更加健全的、稳定的发展。复杂的分工虽然降低了开发效率,但是便于合作的基础却让其更受大型项目的青睐。Java Web的开发,不是一个人的战斗。

五、开发模型的发展

        Model1:Java Web最开始的开发模式,完全使用jsp开发,包括后台运行,数据库连接等等。

        Model2:MVC模型的起始,在这里开始了结构分层,界面和运行分离。大致上分成了三个层:View层、Controll层和Model层。View用于发布命令,往往是页面部分,通过出发事件,向后台发布命令。Controll层则负责业务处理,在这里处理接收到的命令,并进行对应的调度处理。Model层负责数据库连接调度和使用,也可以称为持久层。

        框架的兴起:苦恼于java语言和数据库语言的根本思想的不同,分层见解的差异、以及单纯的java开发耦合性太强,一旦出现后期维护,成本太大,框架就应运而生了。目前比较熟悉的自然就是spring、springmvc、Struts、mybatis和hibernate等。当然还有很多,但是主流的就是这几种,其中SSH(Spring+Struts+Hibernate)是一种较早期的高自动化的框架模式,但也正因为其自动话过高,而不能满足一些较高的要求,效率也受到了一定损失。SSM(Spring+SpringMVC+Mybatis)在这种情况下,就出现了。

六、MVC分层的见解

        自MVC出现以来,一直作为Java Web的核心思想,哪怕后来的框架兴起,也都是基于MVC的思想实现的,可见其思想的持久。

        相信很多人学习MVC是会感到头疼,因为不同的书中对MVC的讲解并不相同,甚至有很大的差异,这也是后来框架兴起的一个很重要的原因。那为什么他们会不同呢?因为MVC只是一种思想,他简单的对分层提出了大致的想法,他并没有严格要求细节。所以就导致了每个人的不同见解。就像JavaBean,他还有很多其他类似的称呼,比如POJO。

        我的分层原则是:

               View层:仅用于发布命令,即是说只有jsp和命令发布的测试类。

               Controll层:这里可以分为两块,Controller层和Service层,Controller主要用于分配路径,毕竟大项目中各种功能需求不一而足,全部写到一起显然并不现实。这时就可以使用Controller层将路径分化到不同的Service层中,使用不同的业务处理类处理。

               Model层:这里连接和编写相应的数据库操作,我还习惯将Javabean放在这里。

        在此之外呢,当然还可以增加其他的层次,比如一些公共使用的工具类。也可以将上面三层进行调整,比如讲JavaBean放在View层中。总之,具体如何分层其实并不重要,也没有绝对的对错,重在把握分层的思想。所以看到不同的书中介绍不通时,要能够灵活的使用并区分开来。




以上谨代表个人观点,如有纰漏,欢迎指正。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值