我以前是学asp.net的,我刚学用Struts的MVC2来做jsp网页,看了很多资料,有些东西很糊涂的,我对MVC2和asp.net中的三层结构的关系的理解如下几个问题,也不知道对不对?如果理解不对,请老大们指正一下!谢谢!
1.在jsp的MVC2(Model,View,Controller的缩写)中:Model层主要放JavaBean,Model层中主要放些连接数据库的字符串和操作数据库的代码(比如 添加信息 修改信息 更新信息 插入信息 删除信息等),Model层就相当于asp.net中的三层结构的数据访问层!对吗?如果理解不对,请老大们指正一下!谢谢!2.在jsp的MVC2(Model,View,Controller的缩写)中:View层主要放jsp页面(如index.jsp等页面文件),View层就相当于asp.net中的三层结构的表示层!对吗?如果理解不对,请老大们指正一下!谢谢!3.在jsp的MVC2(Model,View,Controller的缩写)中:Controller层主要放些配置文件Struts-Config.XML,这些配置文件中主要放一些和数据层打交道具体实现方法(如:使增、删、改这些方法的实现!)和数据是否唯一的验证和一些数据有效性的验证,Controller层就相当于asp.net中的三层结构的业务逻辑层!对吗?如果理解不对,请老大们指正一下!谢谢!

解决方案 »

  1.   

    Controller 不是业务层 
    不负责业务只是控制转发的一个action而已
    国内的struts把所有的业务写在Controller里了而已
    这样实际上是不好的
      

  2.   

    我好像在MVC2中找不到数据访问层了,请问是不是在MVC2中就不存在像asp.net中的三层结构的数据访问层了???{(也就是连接数据库的字符串和操作数据库的代码(比如 添加信息 修改信息 更新信息 插入信息 删除信息等)},对吗?请帮忙回一下!谢谢!
      

  3.   

    我好像在MVC2中找不到数据访问层了,请问是不是在MVC2中就不存在像asp.net中的三层结构的数据访问层了???{(也就是连接数据库的字符串和操作数据库的代码(比如 添加信息 修改信息 更新信息 插入信息 删除信息等)},对吗?请帮忙回一下!谢谢!
      

  4.   

    我好像在MVC2中找不到数据访问层了,请问是不是在MVC2中就不存在像asp.net中的三层结构的数据访问层了???{(也就是连接数据库的字符串和操作数据库的代码(比如 添加信息 修改信息 更新信息 插入信息 删除信息等)},对吗?请帮忙回一下!谢谢!知道的回一下啊!谢谢!
      

  5.   

    在ASP.NET 中,分为前台ASP.Net页面(*.ASPX),负责编写展示层面的代码,主要同HTML相结合,后台CS(vb)页面,负责编写相应的业务逻辑,前台的控件和后台业务相交换有两种途径:1.若是一般的HTML表单控件:直接从Request的Form值对中取值
    2.若是ASP.Net标准的服务器端控件,则系统会自动将客户端提交过来的页面数值做Mapping ,使之成为服务端Page对象的子成员对象(也就是在Page类中申明的一些私有控件变量)。而在Structs中,少了很多由框架自动完成的Mapping(或许在ASP.Net中只要拖动一个服务器端控件,就可以直接在后台逻辑代码中获取到相应的值)。Structs将相应的前台表示层对象
    封装到相应的FormBean中,FormBean完成前台数据同后台Action 的通信,也就是提交后,自动将前台的相应控件栏位封装到FormBean中供后台Action使用,后台处理完成后,设置FormBean中的值,然后FormBean自动回写到前台,展示。
    这里比较麻烦的是,ASP.Net借助强大的服务器端控件,可以简单的完成相对复杂的数据绑定,展示功能,这里Structs要实现复杂的展示,花的精力要多些(或许是这样的Tag太少)-------------------------
    待续~
      

  6.   

    asp.net中没有控制层
    .net的三层结构是 表示层(相当于MVC中的V)  逻辑层(相当于MVC中的M)  数据层(不属于MVC范围)MVC模式中 C 是asp.net中没有的
      

  7.   

    看到了楼上一些前辈们的回答,让我们这些菜鸟更糊涂了啊!我想请问一下:asp.net中的三层结构的数据库访问层到底属不属于jsp中MVC的范围啊?(也就是MVC中到底有没有数据库访问层啊?)希望高手们给个标准的答案啊!谢谢了!
      

  8.   

    楼主说的有些问题,我们做的时候 是分层的
    1,view: el+jstl  因为struts的很好是不能很好支持的,也许以后会用吧。
    2,Controll :struts-config.wml +action+actionServlet : 实现流程转发的,3,biz : 实现业务逻辑
    4,model :javabean
      

  9.   

    To: xyz930() 
    看到了楼上一些前辈们的回答,让我们这些菜鸟更糊涂了啊!我想请问一下:asp.net中的三层结构的数据库访问层到底属不属于jsp中MVC的范围啊?(也就是MVC中到底有没有数据库访问层啊?)希望高手们给个标准的答案啊!谢谢了!---------------------------------------------
    MVC中没有数据库访问层MVC只是一种WEB层框架(主要用在Web中,当然也可以在一般程序中使用),
    是将Web中显示给用户的界面和相应的数据对象分离出来,统一放在Model层处理,
    Model层面只是提供了怎么处理表示层数据的接口位置,不包含数据层和业务逻辑层
    一般的数据层或者业务逻辑层需要在Structs中嵌入Spring,Hibernate来实现。
      

  10.   

    就好像楼上的白鸽说的一句话。
    MVC只是一种web框架……汗,是一个软件开发者都应该知道MVC不仅仅是在web中使用的,他应该是一种软件设计框架,有广泛的应用空间
      

  11.   

    也就是说Structs提供了 jsp --> FormBean --> Action --> FormBean --> jsp 
    的功能,中间核心的处理在Action 中,但是Action 只是提供了一个Execute方法供用户
    使用,具体怎么去实现:1.你可以在这个方法中放置一打JDBC,XML,Mail等等的处理,将一个方法拉到很长
    (有点像Asp.Net中点击某个按钮时候,在相应的代理方法中写事件处理一样)
    2.从分层的思想来看,就要建立单独的业务处理单元(一些Class了,可以用Spring,Hiberante
    来实现,当然也可以用EJB等),然后在Action中调用这样的单元,这样层次也清楚了,维护也
    方便了。也就是MVC中没有数据库访问层的原因所在~
      

  12.   

    我自己看了一本电子书,我想大家可能都看过:Struts in Action 中文版49页有一段话如下:分层的web 应用使用一种比传统MVC 模式更加“扁平”的模式。控制器被夹在表现层(View) 和 应用逻辑 (Model)之间。
    395页有一段话如下:应用中的那些经常说 “这是我所有的,以及这是我想要的” 的部分通常称为是业务层,或者程为模型(Model) (MVC 中的M)。这也是你的应用所不同于其它应用的本质部分。
    这本电子书好像把业务逻辑层说成就是MVC的Model层啊!可我看别的MVC的文章又把数据库访问层说成是Model层啊!这让我们这些菜鸟更糊涂了啊!我想请问一下:asp.net中的三层结构的数据库访问层到底属不属于jsp中MVC的范围啊?(也就是MVC中到底有没有数据库访问层啊?)急想搞清楚这些重要的东西啊!希望高手们给个标准的答案啊!谢谢了!希望高手们给个标准的答案啊!谢谢了!希望高手们给个标准的答案啊!谢谢了!
      

  13.   

    我自己看了一本电子书,我想大家可能都看过:Struts in Action 中文版49页有一段话如下:分层的web 应用使用一种比传统MVC 模式更加“扁平”的模式。控制器被夹在表现层(View) 和 应用逻辑 (Model)之间。
    395页有一段话如下:应用中的那些经常说 “这是我所有的,以及这是我想要的” 的部分通常称为是业务层,或者程为模型(Model) (MVC 中的M)。这也是你的应用所不同于其它应用的本质部分。
    这本电子书好像把业务逻辑层说成就是MVC的Model层啊!可我看别的MVC的文章又把数据库访问层说成是Model层啊!这让我们这些菜鸟更糊涂了啊!我想请问一下:asp.net中的三层结构的数据库访问层到底属不属于jsp中MVC的范围啊?(也就是MVC中到底有没有数据库访问层啊?)急想搞清楚这些重要的东西啊!希望高手们给个标准的答案啊!谢谢了!希望高手们给个标准的答案啊!谢谢了!希望高手们给个标准的答案啊!谢谢了!
      

  14.   

    我自己看了一本电子书,我想大家可能都看过:Struts in Action 中文版49页有一段话如下:分层的web 应用使用一种比传统MVC 模式更加“扁平”的模式。控制器被夹在表现层(View) 和 应用逻辑 (Model)之间。
    395页有一段话如下:应用中的那些经常说 “这是我所有的,以及这是我想要的” 的部分通常称为是业务层,或者程为模型(Model) (MVC 中的M)。这也是你的应用所不同于其它应用的本质部分。
    这本电子书好像把业务逻辑层说成就是MVC的Model层啊!可我看别的MVC的文章又把数据库访问层说成是Model层啊!这让我们这些菜鸟更糊涂了啊!我想请问一下:asp.net中的三层结构的数据库访问层到底属不属于jsp中MVC的范围啊?(也就是MVC中到底有没有数据库访问层啊?)急想搞清楚这些重要的东西啊!希望高手们给个标准的答案啊!谢谢了!希望高手们给个标准的答案啊!谢谢了!希望高手们给个标准的答案啊!谢谢了!
      

  15.   

    我自己看了一本电子书,我想大家可能都看过:Struts in Action 中文版49页有一段话如下:分层的web 应用使用一种比传统MVC 模式更加“扁平”的模式。控制器被夹在表现层(View) 和 应用逻辑 (Model)之间。
    395页有一段话如下:应用中的那些经常说 “这是我所有的,以及这是我想要的” 的部分通常称为是业务层,或者程为模型(Model) (MVC 中的M)。这也是你的应用所不同于其它应用的本质部分。
    这本电子书好像把业务逻辑层说成就是MVC的Model层啊!可我看别的MVC的文章又把数据库访问层说成是Model层啊!这让我们这些菜鸟更糊涂了啊!我想请问一下:asp.net中的三层结构的数据库访问层到底属不属于jsp中MVC的范围啊?(也就是MVC中到底有没有数据库访问层啊?)急想搞清楚这些重要的东西啊!希望高手们给个标准的答案啊!谢谢了!希望高手们给个标准的答案啊!谢谢了!希望高手们给个标准的答案啊!谢谢了!
      

  16.   

    我自己看了一本电子书,我想大家可能都看过:Struts in Action 中文版49页有一段话如下:分层的web 应用使用一种比传统MVC 模式更加“扁平”的模式。控制器被夹在表现层(View) 和 应用逻辑 (Model)之间。
    395页有一段话如下:应用中的那些经常说 “这是我所有的,以及这是我想要的” 的部分通常称为是业务层,或者程为模型(Model) (MVC 中的M)。这也是你的应用所不同于其它应用的本质部分。
    这本电子书好像把业务逻辑层说成就是MVC的Model层啊!可我看别的MVC的文章又把数据库访问层说成是Model层啊!这让我们这些菜鸟更糊涂了啊!我想请问一下:asp.net中的三层结构的数据库访问层到底属不属于jsp中MVC的范围啊?(也就是MVC中到底有没有数据库访问层啊?)急想搞清楚这些重要的东西啊!希望高手们给个标准的答案啊!谢谢了!希望高手们给个标准的答案啊!谢谢了!希望高手们给个标准的答案啊!谢谢了!
      

  17.   

    本来就是两种体系的东西
        为什么非要联系在一起  我觉得这样并没有助于对 MVC 的理解 反而会越搞越糊涂