mvc新思考(jsp中是否应该出现sql语句)

赵占涛 发布于 2014/06/26 12:15
阅读 762
收藏 0

问题:jsp中是否应该出现sql语句。(项目规模:大项目)

jsp中是“想当然”的不应该出现sql语句吗? 

大项目,分工明确,前端后端不同人员开发,如果我想在一个页面里面显示一个文章标题,又显示文章内容,需要action那边,把对应的值设置到request里。这就造成了前后端的耦合

这是指的同一家公司的不同员工,还可以协商解决。如果是不同公司呢?或者说,cms系统,就是做网站的那个,整个系统由一家公司做的,然后前台支持开发者自定义模板。

比如我想在文章的显示页(就是显示标题和内容的那个页)右侧,显示一个相关文章列表,action类里,根本就不知道这个jsp会需要这个玩意儿啊。


也许你是一个牛x至极的程序员,你在action端,提供了好多好多好多的接口供jsp调用,甚至这套机制是你自己实现的,或者说你换了一套机制写的。action提供的功能多到了几乎无穷。使jsp开发人员,可以随心所欲地实现任何功能。可是我想问,你为毛不直接给jsp提供执行sql语句的接口呢,那样jsp的功能不就无穷了吗?
加载中
1
迷路的游侠
迷路的游侠
起码也要考虑复用呀
0
实迷途其未远觉今是而昨非
实迷途其未远觉今是而昨非
action和JSP肯定一个人写啊
0
Beyond-Bit
Beyond-Bit
根据项目架构而定,不能一概而论。从后期维护角度和项目升级考虑还是最好分离。因为jsp作为视图层,最好不要去在里面做业务处理。
0
阿杜他爹
阿杜他爹
楼主可以参考wordpress,其实很多东西后台都有放到request中,模板制作者可以用也可以不用,说白了,模板只能在后台支持的基础上开发,如果想加入新功能,更新后台系统即可
0
th小米粥
th小米粥

大项目,分工明确,前端后端不同人员开发,如果我想在一个页面里面显示一个文章标题,又显示文章内容,需要action那边,把对应的值设置到request里。这就造成了前后端的耦合

这个不叫耦合 视图层本来就是要靠后端提供数据显示的。

JSP尽量不要可以自定义SQL。原因:既然是MVC那么V层只负责显示。查询什么的写在business就好了。然后则action返回数据。

也许你是一个牛x至极的程序员,你在action端,提供了好多好多好多的接口供jsp调用,甚至这套机制是你自己实现的,或者说你换了一套机制写的。action提供的功能多到了几乎无穷。使jsp开发人员,可以随心所欲地实现任何功能。可是我想问,你为毛不直接给jsp提供执行sql语句的接口呢,那样jsp的功能不就无穷了吗?
接口越多证明越不安全。在合适的地方提供合适的接口。jsp本来就是做显示的。又不是做逻辑处理的。要这么多接口有什么用?

0
红桃K
红桃K
写action的和写jsp的不是一个人,有这么奇葩的分工吗?
0
ewangshi
ewangshi
sql出现在jsp你怎么防止sql注入的问题
0
白起
白起
你在这里空谈,也没有多大的意义,你如果觉得你的想法对,那就尝试着在项目中去实践,等你真实的做过了,才会体会到好处与坏处。
0
王涛
王涛

UserAction.java

public void service(HttpServletRequest request,HttpServletResponse response) throws IOException {
    // TODO:select * from user;
}
UserAction.jsp

<%
// TODO:select * from user;
%>



0
老李99
老李99

使用svc的思想就是吧前端和后台分开;做前端的专门做前端,写后台的专门写后;每个人做自己熟练的,提高开发效率;

jsp本来就可以执行java代码啊,可以写数据库连接;查询或者执行某些sql操作;然后返回来的结果集你再操作;那这样还有前台后台之分么;

返回顶部
顶部