J2EE初步知识 MVC概念
来源:互联网 发布:ptc画图软件 编辑:程序博客网 时间:2024/05/16 14:56
J2EE 是神马概念?
标准:J2EE 是一种利用Java 2平台来简化企业解决方案、部署和管理相关的复杂问题的体系结构。
个人理解:Java 企业级应用,以J2SE为核心,即标准jdk为核心,同时,融合了EJB、Servlet、JSP 以及 XML技术的全面支持。
MVC
使用 JSP 存在的问题:经常要被大量的<% %>分割到七零八落(深有体会啊~~)。大量的业务逻辑和代码直接暴露于页面只上。比如各种跳转可以看到的一清二楚。
第一次修正:<jsp: useBean> 等动作来将这些类引入到页面并加以调用,从而极大减少页面上动态语言的出现。
Model 1 华丽诞生!! JSP + JAVABEAN 最佳拍档~ (本人所在阶段,nice~)
Model 1 存在的问题:对于业务逻辑的控制,仍然放在页面中进行,对于软件的维护和修改,改动最频繁的就是业务的逻辑!
MCV目的,就是将页面显示、业务逻辑和基础的业务操作三者有效区分开。(好理想化的东东。。。/(^o^)/~)
--------------------- 传说中的Model 2 -------------------------
视图由JSP承担,控制器由Servlet承担,模型部分由JavaBean承担。
例如实现一个拥有加、减、乘、除的计算器:
显示(V)Jsp页面 ----index.jsp result.jsp
JavaBean类(M)----Calculator.java
Servlet类(C) ----computeServlet.java
貌似已经很完美了。页面表现在jsp中,逻辑处理在javabean中,流程控制在servlet中。
假如需要增加的运算越来越多,要如何做?
doPost方法会越来越大,不可避免成为一个巨型的方法。要对处罚增加判断除数是否为0,为0跳转到错误页面。是不是Servlet要跟着改?
------------------------ 虚幻的 OCP 原则 ?-----------------------------------
Open Close Principle!
对扩展开放、对修改关闭。可以对软件进行功能扩展,在引进这些扩展的同时,不需要改变原来的程序进行修改!
这个其实基本不可能完全做到!虚无幻境而已么??
我们能做的是找出系统中哪些部分进行扩展、哪些部分要保持相对稳定的封闭。
找出扩展点,进行工厂化!
最新的类设计如下:
jsp ------- index.jsp result.jsp error.jsp
javabean ------ class: CalFactory
servlet -------- class: computeServlet.java, DivAction.java, AddAction.java, SubAction, MulAction interface: Action
Action中定义 execute 方法。
public String execute(HttpServletRequest request, HttpServletResponse response);
子类中进行了model逻辑运算,同时又完成了servlet的流程控制。
只能说太强大了!
- J2EE初步知识 MVC概念
- J2EE等基础概念知识
- J2EE初步
- J2EE学习笔记三:EJB基础概念和知识
- J2EE学习笔记三:EJB基础概念和知识 收藏
- 对J2EE的概念和MVC架构的理解
- J2EE概念
- j2ee 概念
- J2EE知识
- J2EE & MVC
- j2EE,MVC
- ASP.NET MVC 5.0——概念知识
- 初步了解的J2EE
- MVC概念
- MVC概念
- 概念:MVC
- MVC概念
- MVC概念
- libxml2:Debug模式可以编译,Distribution下不可以?
- 委托与事件的区别
- web访问数据库缓存技术 memcached
- 我要把自己装成是高手!!!
- Windows Socket 网络编程(五) —— 获取本地主机信息
- J2EE初步知识 MVC概念
- C语言中的文件中止标志EOF如何输入
- 数组附加
- KD Tree - Searching in N-dimensions
- 如何加入Apple Developer计划
- java集合框架学习—HashSet的实现原理
- 《当程序员的那些狗日日子》(十四)酒入愁肠
- Linux静态/动态链接库的创建和使用
- Error:/etc/fstab:Read-only file system