`

开篇难,异?(*^__^*) 嘻嘻…… -- 自己实现MVC框架FleaJAVA

阅读更多

在实现了一个小的动态加载类后,决定使用属性文件来做插件的加载部署机制.本来想使用Spring的IOC的,结果发现

会将自己转入额外的XML的复杂的配置文件中去,相当麻烦.对于前期的玩具版本,这个功能有个可以供测试使用的就

可以了,(*^__^*) 嘻嘻……

 

其实很希望最后的东西是这样的,简简单单的写上几行代码就可以完成框架的部署,使用者可以像PHP那样去快速进行

JSP网站开发.

 

package fleajava.test;

import fleajava.fw.FleaJAVA;
/**
 * 争取做到使用者只要简单的新建组合一个文件就可以实现一个系统的构建
 * @author vb2005xu
 *
 *
 * 使用这个类做单一入口的测试程序 -- 相当于 index.jsp
 */
public class Index {
 public static void main(String[] args) {
 
  //加载应用程序的设置 -- 全局设置
  FleaJAVA.loadAppInf(FleaJAVA.getSimpleConfig());
  FleaJAVA.init();
  FleaJAVA.runMVC();
 
//  FleaJAVA.getAjax().pr();
//  FleaJAVA.dumpContainer();
//
//  FleaJAVA.getDispatcher(false);
  FleaJAVA.dumpContainer();
 
  System.out.println(FleaJAVA.getAppInf(null));
 
 }
}


 

个人思考,对于一些核心组件使用单态类的话,似乎效率要高一些.所以在fleajava.fw.FleaJAVA这个类中

定义了一个哈希表作为容器来管理这些资源

个人疑问问: 传统的直来直去的调用比一层层的架构要慢么?我怎么感觉要快呢?知道词不达意

 

 

 

对于 这个玩具的配置文件[就是用来存放必须经常使用的也可以变更的一些全局级的变量],想过使用XML,

试过属性文件,对于XML来讲个人觉得有些复杂,因为要引入额外的包,这个项目对我个人来讲主要是对之前

JAVA知识的一个概结.在使用上也就不想插入其它东西了,否则又要自定义一个DTD,很多额外的工作对于现

在来讲似乎没有必要.

 

 配置文件 所以决定使用传统的JAVA类来组织,不管是XML,属性文件还是放到数据库中,用起来还是要变成

JAVA可知的数据结构的, 对于用到的配置的环境变量分为两个级别,一个是System级的,一个是User级的.

它们主要都存放在哈希表容器的FLEAJAVA_FW_CONF处,类似代码:

 

/**
  * 加载指定的配置文件路径 -- 缺省使用框架核心的设置
  * 参数要求是SimpleConfig 对象
  *
  * 框架自身的配置存放在 $instances["FLEAJAVA_FW_CONF"]
  * 这个方法仅仅能调用一次,如果要求动态改变环境变量的话
  * 请使用 setAppInf(key,value)方法
  * @param appInfObj
  */
 public static void loadAppInf(SimpleConfig appInfObj)
 {
  //如果类名为null或者不存在,将加载缺省的设置文件对象
  $instances.put("FLEAJAVA_FW_CONF",appInfObj) ;
 }

 

 

可以看出 SimpleConfig 类就是配置文件的类实现,

package fleajava.fw.core.conf;

/**
 * 项目中的配置文件类,在这个类里初定义了项目中所有用到的
 * 属性,及给他均付了初值,用户可以通过修改里面的属性来动态配置环境
 *
 * 框架自身的配置存放在 $instances["FLEAJAVA_FW_CONF"]
 *
 * fleajava.fw.core.conf
 * Author: vb2005xu [JAVA菜鸟]
 */
public final class SimpleConfig {
 
 public static String dbType = "MYSQL" ;
}

 

之所以将其声明为 final class  , 感觉也可以方便用户的使用,比如要修改dbType属性,只需

FleaJAVA.getSimpleConfig().dbType = "PGSQL" ;

对用户来讲他们并不需要知道SimpleConfig是什么,是怎样实现的.....

 

//这里有个问题在于更改hashtable的变量的静态属性后,它的值能否也改变,可以自动更新,我不知道

不过里面如果存放的是一个单态对象的话,我觉得应该可以吧

 

以后每天花2个小时来做这个玩具工具,希望在任务中国接活时可以提高点开发效率,现在每天还是花了

一个多小时来研究TOMCAT,小型应用个人还是很重要的.

 

现在的SOA很流行,但是我觉得那时有多年的不小的大公司才会用到的,对于刚起步的小公司,他们哪里来

的资源整合,他们无非就是推广自己的产品,做个宣传站点或者购物站点,世界上好多程序员,好多JAVA程序

员,但是大公司有多少呢?我们菜鸟也要吃饭的.

 

学习JAVA是很难的,虽然学校里都开了这些课程,但是不难发现,j2se,jsp/servelt,struts最多也就于此了,

等你出来了,找工作时,面试官说,你会'ssh'么?你精通么?你精通ORACLE,DB2么?可是在学习JAVA时不是

说JDBC的高度抽象么?屏蔽了数据库么? JSF , JAVAFX , EJB 哪个是好学的....

 

难道我们之前学习的JAVA都是垃圾,一文不值,那些学习ASP的,并非ASP.NET,他们也可以不错的生活啊,

不平衡啊,希望玩具给初学者带来一点点的帮助吧,起码可以让你们和我一起学会怎么使用MVC,怎么使用

MVC来思考


心酸絮语:

如果哪天 我不做PHP了 我一定去做.NET开发

因为太方便了 JAVA到此为止了 我又不再学习新东西了

上次考了 ASP.NET高级管理员的证书 应该也快下来了吧 娘娘的 花了将近1W元学习JAVA 竟然没有挣到多少钱,自己接的活还是类的快死了上学期间,工作期间,又是普元EOS,又是KOOF工作流 我都晕了

结果还是在地摊上花8元买了本PHP程序员词典[2001年版]的现在每个月 还就靠它 搞定生活了


做了将近 一年半的 J2EE 开发 才发现自己就是一JAVA
菜鸟 到那个公司 都是一套新的框架

 

现在社会上 学习JAVA的那些 傻鸟 自以为学会了
"ssh" 就可以找到好工作 其实狗屁 你说你不会绝对没有人要

你会了 公司其实都不用 用也不会用全 就拿做的那个工作流来说吧

Struts 只是用来做的 而且只是其中的V一部分

Spring 只是用到了 IOC ,我就怀疑那要Spring干嘛
自己写个不久好了

Hibernate 我先开始因为没有使用 结果最后读了3个月的源码 发现 其实是在 其之上疯了的DAO层的一套无聊的代码 浪费啊

不就是怕人才流失么?? 如果所有的公司都使用相同的框架就不拍人走啦

 

  • 描述: 代码结构图 PDT IDE
  • 大小: 32.3 KB
2
1
分享到:
评论

相关推荐

    ASP.NET MVC 5 框架揭秘试读样章_netmvc_.netmvc_MVC.net_ASP.NETMVC_

    本书以一个模拟 ASP.NET MVC 内部运行机制的“迷你版 MVC 框架”作为开篇,其目的在于将ASP.NET MVC 真实架构的“全景”勾勒出来。接下来本书以请求消息在 ASP.NET MVC 框架内部的流向为主线将相关的知识点串联起来...

    开篇词-为什么你要学习高并发系统设计?_For_group_share1

    在解答“为什么要学习并发系统设计”之前,我想让你思考个问题:这些问题是你在设计和实现并发系统时经常会遇到的痛点问题,都涉及如何在并发场景下做到性能和可,掌握这些

    《ASP.NET MVC 5框架揭秘》高清带书签

    《ASP.NET MVC 5 框架揭秘》以一个模拟ASP.NET MVC内部运行机制的“迷你版MVC框架”作为开篇,其目的在于将ASP.NET MVC真实架构的“全景”勾勒出来。接下来《ASP.NET MVC 5 框架揭秘》以请求消息在ASP.NET MVC框架...

    ASP.NET MVC 5 框架揭秘 [完整版] part3

    蒋金楠编*的《ASP.NET MVC5框架揭秘》以一个 模拟ASENET MVC内部运行机制的“迷你版MVC框架” 作为开篇,其目的在于将ASENET MVC真实架构的“全 景”勾勒出来。接下来本书以请求消息在ASENET MVC 框架内部的流向为...

    ASP.NET MVC 5 框架揭秘 108M

    蒋金楠编的《ASP.NET MVC5框架揭秘》以一个 模拟ASENET MVC内部运行机制的“迷你版MVC框架” 作为开篇,其目的在于将ASENET MVC真实架构的“全 景”勾勒出来。接下来本书以请求消息在ASENET MVC 框架内部的流向为...

    ASP.NET MVC 5 框架揭秘 [完整版] part2

    蒋金楠编*的《ASP.NET MVC5框架揭秘》以一个 模拟ASENET MVC内部运行机制的“迷你版MVC框架” 作为开篇,其目的在于将ASENET MVC真实架构的“全 景”勾勒出来。接下来本书以请求消息在ASENET MVC 框架内部的流向为...

    ASP.NET MVC 5框架揭秘完整版 (蒋金楠) 高清pdf附源代码

    《ASP.NET MVC 5 框架揭秘》以一个模拟ASP.NET MVC内部运行机制的“迷你版MVC框架”作为开篇,其目的在于将ASP.NET MVC真实架构的“全景”勾勒出来。接下来本书以请求消息在ASP.NET MVC框架内部的流向为主线将相关的...

    ASP.NET MVC5 框架揭秘+源码打包下载

    《ASP.NET MVC 5 框架揭秘》以一个模拟ASP.NET MVC内部运行机制的“迷你版MVC框架”作为开篇,其目的在于将ASP.NET MVC真实架构的“全景”勾勒出来。接下来本书以请求消息在ASP.NET MVC框架内部的流向为主线将相关的...

    ASP.NET MVC 5 框架揭秘

    《ASP.NET MVC 5 框架揭秘》以一个模拟ASP.NET MVC内部运行机制的“迷你版MVC框架”作为开篇,其目的在于将ASP.NET MVC真实架构的“全景”勾勒出来。接下来《ASP.NET MVC 5 框架揭秘》以请求消息在ASP.NET MVC框架...

    ASP.NET MVC5 框架揭秘

    《ASP.NET MVC 5 框架揭秘》以一个模拟ASP.NET MVC内部运行机制的“迷你版MVC框架”作为开篇,其目的在于将ASP.NET MVC真实架构的“全景”勾勒出来。接下来本书以请求消息在ASP.NET MVC框架内部的流向为主线将相关的...

    【免费】ASP.NET MVC5框架揭秘图书附带源码.rar

    蒋金楠编*的《ASP.NET MVC5框架揭秘》以一个 模拟ASENET MVC内部运行机制的“迷你版MVC框架” 作为开篇,其目的在于将ASENET MVC真实架构的“全 景”勾勒出来。接下来本书以请求消息在ASENET MVC 框架内部的流向为...

    ASP.NET MVC 5 框架揭秘 [完整版] part1

    蒋金楠编*的《ASP.NET MVC5框架揭秘》以一个 模拟ASENET MVC内部运行机制的“迷你版MVC框架” 作为开篇,其目的在于将ASENET MVC真实架构的“全 景”勾勒出来。接下来本书以请求消息在ASENET MVC 框架内部的流向为...

    ASP.NET MVC5框架揭秘PDF

    蒋金楠的《ASP.NET MVC5框架揭秘》以一个 模拟ASENET MVC内部运行机制的“迷你版MVC框架” 作为开篇,其目的在于将ASENET MVC真实架构的“全 景”勾勒出来

    ASP.NET MVC 4高级编程(第4版)清晰完整PDF版

    本书开篇简要介绍ASP.NET MVC框架,然后直奔主题,讨论使用ASP.NET和最新MicrosoftMVC来构建数据驱动的动态网站需要了解的所有重要知识点。书中提供了按部就班的详细指导和大量的代码示例,引导读者入门并逐渐掌握...

    ASP.NET MVC+EF框架+EasyUI实现权限管理系列(12)之前的代码

    (1)ASP.NET MVC+EF框架+EasyUI实现权限管理系列(12)-实现用户异步登录和T4模板:...(2)ASP.NET MVC+EF框架+EasyUI实现权限管理系列之开篇:http://www.cnblogs.com/hanyinglong/archive/2013/03/22/2976478.html

    ASP.NET MVC 4高级编程(包含源码)

    本书开篇简要介绍ASP.NET MVC框架,然后直奔主题,讨论使用ASP.NET和最新MicrosoftMVC来构建数据驱动的动态网站需要了解的所有重要知识点。书中提供了按部就班的详细指导和大量的代码示例,引导读者入门并逐渐掌握...

    [ASP.NET MVC 小牛之路] 文章系列

    asp.net mvc系列教程,转载于...十九、[ASP.NET MVC 大牛之路]01 - 开篇 二十[ASP.NET MVC 大牛之路]02 - C#高级知识点概要(1) - 委托和事件 二一、[ASP.NET MVC 大牛之路]03 - C#高级知识点概要(2) - 线程和并发

    ASP.NET MVC 4高级编程(第4版)

    本书开篇简要介绍ASP.NET MVC框架,然后直奔主题,讨论使用ASP.NET和最新MicrosoftMVC来构建数据驱动的动态网站需要了解的所有重要知识点。书中提供了按部就班的详细指导和大量的代码示例,引导读者入门并逐渐掌握...

    ASP.NET MVC 4高级编程(第4版)中文版 超清晰PDF及配套源码Part1

    开篇简要介绍ASP.NET MVC框架,然后直奔主题,讨论使用ASP.NET和最新MicrosoftMVC来构建数据驱动的动态网站需要了解的所有重要知识点。书中提供了详细指导和大量的代码示例,引导读者入门并逐渐掌握高级主题。  ...

Global site tag (gtag.js) - Google Analytics