论坛首页 Java企业应用论坛

用struts来实现MVC及,迭代开发,struts1源代码,代码规范.

浏览 2406 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (17) :: 隐藏帖 (0)
作者 正文
   发表时间:2010-07-15  
思想:忘记错误的人,会重蹈覆辙.


l         代码规范


1.         如果要用到接口里的常量,不要用实现,直接用接口/类名.常量名,


<也就是组合优先大于继承与实现,所谓的组合是直接引用.>


2.         如果在一个类里,这个变量及方法,被多次使用,就把它抽取到父类里.


3.         QueryRunner不要做全局声明.


4.         如果有很多的DAO的增,删,查,改,就建一个BaseDAO抽象类,它里面


写出增,删,查,改的抽象方法,这样不管是学生的,老师的增,删,查,改.你只要继承这个


类.,然后重写就行了,这样就更统一管理.代码规范:


5.         动词是对象的动作,应用在对象里.


6.         一个类字段抽不抽,要看这个类是否有很多地方调用.


7.         域名:全局唯一,为了防止类名是一样的.


8.         过期的方法不要用


9.         如果参与业务逻辑的类字段,最好用外包类型,如id设为Long.


10.     for循环不要用String stringBuffer+= ....,而是用stringBuffer.apeng(""),这样就不会导致内存.


11.     看这个方法有没有被其它的类用到,快捷键是ctrl+shif+g.


12.     在过滤器里,不能加入其它的业务逻辑.


13.     用DAO修饰作类名时,是加后缀不是加在前面,正确的:StudentDAO,错误的:DAOStudent.


14.     :在javabean类里,要加入equals和hashCode方法.


l         MVC


m:<model>模型.


v:<view>视图.


c:<controller>控制.


MVC模式的特征: 


1.         1.MVC模式将数据模型和视图的表现实现了代码分离,改变其中一个并不会影响其它两个。各层之间相互独立,便于团队开发,分工明确,提高效率。    


2.         MVC模式编写的工程具有良好的可扩展性和灵活性,降低了维护成本和难度,提高了代码的复用。


3.         控制器可以连接不同的模型与视图,从而使同一个程序可以使用不同的表现形式(一个模式多个视图)控制器是相互独立工作,互不干涩。  


4.         它的核心是通过接口编程:


5.         最主要的是通过接口来控制他们的流程.这样有了更好的灵活性,和扩展性.


6.         多层之间相互独立,这样提高了效率.


l         用struts来实现MVC


1.         在MVC的框架上,用struts1技术来实现基本功能.


2.         通过配置struts-config.xml.


3.         用Action来实现业务逻辑.


4.         jsp业面的信息用struts标签来实现.






l         迭代式开发


1.         做题的思想:不要重复发明轮子, Don’t Reinvent the Wheel


2.         ○example→ ○rename→ ○add,reduce→ ○→new   迭代开发<增量开发> ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄


u       整个流程告诉我们,一定要学会站在巨人的肩膀上开发.


u       1>:不管你做什么技术,一定要先找一个成功的实例<blank>


u       <如:你想在某一方面取得成功,先请教在这方面成功过的人>


u       2>:再成功的基础上,把它rename;


u       3>:再成功的基础上,修改它的基本功能.


u       4>:再成功的基础上,加入新的功能.


u       4>:经过不断的重构把它变得更经典.


u       5>:为了保障每一步重构的成功,这样引申出了单元测试,这是重构的保障.


u       6>:而我们重构的最终目标就是:设计模式.


l         Struts1的源代码


1.         struts1 = jsp+Servlet+Tag: 


struts1 = jsp     +    Servlet + Tag


                \  Action / \ActionServlet→struts-config.xml


                                             /       \


                                            fromAction   Forward  


2.         看了struts的源代码,从中学到了一些东西,比如说最实用的就是命名一个常量类:Gobals.


3.         chiain的粗略流程:


Action → ActionForm → Vailve → execute →I18N → Forward → JSP


 ↓                                        ↓


html Form                                     ×:这个×的意思是代表,这几个环节是互不干扰的.这个流程可在任意               位置停止.


4.         看了struts的源代码,从中学到了一些东西,比如说最实用的就是命名一个常量类:Gobals.再比如:Digester解析xml技术的,这个是个很重要的东西.功能很强大.


5.         看源代码,最主要的是看了它的初始化init函数,还有jsp的提交经过的步骤.及struts的标签.


初始化:


u       initInternal();


u        initOther();


u        initServlet();


u        initChain();


jsp的提交经过的步骤


l         它提交是进入ActionServlet类的doget(),doPost方法,因为它继承HttpServlet类.


Struts标签的源代码:


l         这个类是继承TagSupport类的,所以它用到的方法是doStartTag.


收获:学到了MVC,用struts来实现MVC及,迭代开发,struts1源代码,代码规范.


思想:忘记错误的人,会重蹈覆辙.
   发表时间:2010-07-23  
你们现在还在用struts1在开发项目吗??
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics