MVC没有差变,但是MVC的实现有很大区别。


model传给View数据,这是很正常的啊。可以去看看MVC的图。


1000万条记录的网站,就我现在理解而言,还没有很好的办法去解决。如果用sql语句来选取得话,我估计也快不到那去!

为什么快不到哪里去??
难道在程序里面进行1000万次的循环?

为什么不用controller来控制view 呢,包括数据。

如果用存储过程实现,效率高出很多倍!

如果用存储过程实现,效率高出很多倍!

这句话我再同意不过了!这是非常明显的事。但是考虑到可移植性,我不会选择存储过程!考虑到通用型,我同样不会选择存储过程!再考虑到数据库支持(MySql便宜好用),我更不会选择存储过程!

当然你非要用,我也不反对。

Control的确控制view,但是Control绝对不控制数据!数据的取得是直接从model取得的!

传递和保存大对象是不是很耗内存,我觉得这种方式不是很好。
到是觉得Pet Store中的方式还可以。

但是我现在使用中又出现了中文问题,真是该死的中文。
请看看http://www.jdon.com:81/jive/thread.jsp?forum=16&thread=1111。

对!没有错啊,数据是从model来的啊,但是我不同意在view中直接调用model,我一般使用controller来向model取数据,然后给view.

mysql我也用啊,的确很好啊。
如果不使用储存过程,那么可以使用标准的 sql 语句来实现返回特定的记录段,这个还是能实现的,一条sql搞定,不用返回所有的记录!

看看图http://www.huihoo.com/patterns/i/mvc.gif

看看定义

View
A View renders the contents of a model. It accesses data from the model and
specifies how that data should be presented. When the model changes, it is the
view’s responsibility to maintain consistency in its presentation. The view forwards
user gestures to the controller.

个人感觉数据是由Model直接传的。

哪你能不能把sql语句给大家看看啊,我们也学习学习。

jsp是view。这样的话,是不是说在jsp中直接调用model来显示,你是这个意思吗?
我的意思:view给controller发送消息,controller来进行数据的读取,然后在返回给jsp ,jsp显示数据。
这只是web application。

sql语句实现分页可以参考:
http://www.javaresearch.org/article/showarticle.jsp?column=108&thread=2028

我们意见不同意的地方在“controller来进行数据的读取”这句话,你再详细说一下。

Iterator it=controller.getDatas();
session or request 保存session.setAttribute("datas",it);
redirect to jsp view。jsp显示结果。
大概就是这个思路。

你的it是不是分了页后的对象啊,如果取下一页的话,从大List中分段取,不直接从数据库查询后取,是吗?

看来不能统一了,我是这样:

在jsp页面中
Iterator it=Model.getDatas();

一个Iterator it=Model.getDatas();一个Iterator it=controller.getDatas();
是不是我上面说的哪种分段原理啊。