仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 701|回复: 13
打印 上一主题 下一主题

[学习教程] JAVA网页设计用MVC模子引诱你的WEB计划思绪

[复制链接]
兰色精灵 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:13:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
轮性能微软曾做过一个例子,就是同一个项目用java和.net来作,结果开发周期,.net是java的一半,性能java是.net的十分之一,代码量java是.net的三倍。呵呵,这说明了什么,.net的全方位比java好。但是有的人说.net不能跨平台,这个问题我和我同学曾讨论过,都认为微软的.net很可能早都可以跨平台了,但是微软为了保护他们的操作系统,所以才没有推出跨平台的.net,只是推出了跨语言的.net,web|计划作者的blog:http://blog.csdn.net/oyiboy
习气于历程式的开辟,一向憧憬着面向对象。无法半路落发人,没有一点内力基本,看了一年夜堆面向对象的书也只是看得一头雾水。关于MVC的观点也是偶尔懂得到的,感到能和WEB开辟分离起来让项目面向对象化。以下是我一点点心得。
先先容一下MVC的观点:
MVC(Model-View-Controller),即把一个使用的输出、输入、处置流程依照Model、View、Controller的体例举行分别,如许一个使用被分红三个层――模子层、视图层、把持层。
 模子(Model):就是营业流程/形态的处置和营业划定规矩的制订。便是MVC的次要中心。
 视图(View):代表用户交互界面,也就是Web的HTML界面。
 把持(Controller):能够了解为从用户吸收哀求,将模子与视图婚配在一同,配合完成用户的哀求。
以下以一个复杂的留言板作为剖析例子。
1)从下面的观点来看,留言板能够切成三部分。
 模子(M):包括数据库链接、天生数据集、数据库更新操纵。
 视图(V):包括猎取模子的数据集,将数据集内添补到各类显现界面内,如(留言板列表,办理把持页面,增加修正删除界面等统统用户看失掉的页面。)
 把持(C):包括数据库更新的数据校验,将更新终了后的了局转交给视图举行出现。
2)三部分已出来,上面是更进一步的细化。
 模子(M)
  数据链接:数据链接参数、链接失利处置。
  数据操纵:天生流动格局的数据集、运转单行SQL、剖析流动格局的数据集更新数据库(内容包含有:留言纪录,办理员帐号,体系设定)。
  文件操纵:将文件外部格局封成数据集,并附带读取写进文件操纵。(内容包含有:留言板款式设定、版权设定、搜刮引擎关头字设定、留言板题目设定)
 视图(V)
数据显现:依据请求受权给把持器[C]向模子[M]哀求数据集,然后依据数据集显现出界面。
操纵了局显现:依据把持前往的数据材料决意显现的提醒材料
详细材料包含有:
  留言增加页:判别留言者是不是办理员、判别本次留言是复兴仍是新建留言。
  留言办理页:批量删除留言、查询留言、办理员帐号办理、体系设定等。
  留言显现页:判别留言是不是为办理员公用、判别本留言是不是为办理员公布、是不是同意复兴、是不是显现留言者的敏感材料、留言是不是必要考核后再显现。
 把持(C)
  数据/文件操纵:吸收操纵材料,校验数据是不是切合前提,援用模子的天生数据集类天生指定命据集,然后交给响应的模子操纵办法操纵,并猎取操纵了局以预定好的格局转交给视图处置
3)体系基础上细化终了,下一步就是将以上剖析出来的工具封装成Class
  模子(M):
    数据库链接和数据操纵能够封成一个Class。
    数据库数据集的布局,能够援用Dictionary控件与数组完成。其间操纵也能够封成一个Class详细能够仿制ASP.net中Dataset对象的部分机构。
    文件操纵部分封装成一个Class
    文件布局界说能够封成一个Class以便利把持间接援用,然后转交给文件操纵Class举行响应的操纵。
  视图(V):
    视图部可均是以文件形式呈现,也能够将部分代码封装后援用。也能够援用现有的模板类完成代码分别等。
  把持(C):
    数据校验:SQL注进进攻处置、日笔墨符交换处置、特定经常使用校验正则式,这个是把持器经常使用的函数,能够封成Class也能够以函数型式存在自力文件,利用时间接援用。
    数据/文件更新操纵:因为间接操纵,能够制止利用Class,而是以文件形式呈现,每一个文件处置模子(M)中的某个类。并完成把持(C)的事情。
    视图[V]模子[C]链接器:吸收视图[V]请求数据集的哀求,将哀求转换成模子[M]符合的SQL句,然后交给模子[M]数据集成生器天生数据集,然后前往给视图[V],这个处置对照贫苦,假如没需要作得太松散的话能够间接利用字段名,并在视图[V]以SQL尺度的前提句进向模子[M]哀求数据。
 疑:
  视图[V]模子[C]链接器,对这个的设定我仍是有点游移的。由于在MVC中,V对M的哀求中是不必要C的搀和的,可是,这个链接器的操纵的确很切合C的观点,以是这里我把它放在了把持器[C]里。也许他能够放至在视图[V]内。究竟这个是视图[V]的事。这个就看每一个人对MVC的了解了。
以上基础完成了留言板的布局剖析与类的笼统,有很多的中央对照烦琐,乃至是拢桓隽粞园迤涫凳敲槐匾庋还飧隼永镒鞒隼吹牟簧Class能够间接利用在别的更年夜的项目中往,好比把持器[C]中的数据集哀求转换器,校验部分、模子[M]中的数据库链接等,之以是遵守MVC模子举行编程不仅是为了让程序计划更天真,最主要一点是能够很快将项目拆开成一小块一小块,然后又将这些小块再折成更小的块,一向折到单个类的某个办法某个属性,等你完成这些小块代码后,那体系也就完成了。

j2EE和asp比较,其实也没什么比的,原因和我上面说那些比较差不了多少,也是稳定性,安全性,J2EE比asp高,速度上比不过asp,asp也是延续着它的拖拽控件的方法,提高速度。
若天明 该用户已被删除
沙发
发表于 2015-1-20 17:27:29 | 只看该作者
是一种语言,用以产生「小应用程序(Applet(s))
蒙在股里 该用户已被删除
板凳
发表于 2015-1-24 16:10:15 | 只看该作者
其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。
活着的死人 该用户已被删除
地板
发表于 2015-2-2 10:14:46 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
精灵巫婆 该用户已被删除
5#
发表于 2015-2-2 22:14:21 | 只看该作者
那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!
山那边是海 该用户已被删除
6#
发表于 2015-2-8 12:24:32 | 只看该作者
是一种使用者不需花费很多时间学习的语言
飘飘悠悠 该用户已被删除
7#
发表于 2015-2-25 11:18:29 | 只看该作者
接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。
莫相离 该用户已被删除
8#
发表于 2015-3-1 17:33:12 | 只看该作者
你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。
深爱那片海 该用户已被删除
9#
发表于 2015-3-2 00:28:48 | 只看该作者
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
分手快乐 该用户已被删除
10#
发表于 2015-3-5 01:05:21 | 只看该作者
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
愤怒的大鸟 该用户已被删除
11#
发表于 2015-3-6 07:53:54 | 只看该作者
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
透明 该用户已被删除
12#
发表于 2015-3-11 09:15:57 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
柔情似水 该用户已被删除
13#
发表于 2015-3-18 02:29:27 | 只看该作者
J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。
海妖 该用户已被删除
14#
发表于 2015-3-25 09:41:07 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 16:46

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表