首先我们还没有学习ssh或者类似的框架
老师给我们介绍了一种做法 就是写一个通用的DAO类 Connection PreparedStatement参数 Sql语句都是由外部传入
这个DAO类只负责操作CRUD..
我现在就是不太明白 对于PreparedStatement参数和sql语句这些工作 应该由哪个模块来负责? 写到controller里面?
还是写一个中间层 完成controller到dao的传递....
将你的DAO类抽象出来,装成一个通用DAO类,免去DAO类重复写connection,preparestatement,resultset.和将preparestatement赋值.只用到OOP思想,将相同的抽象出来成为一个类,然后重复用
action-->service-->dao,sql写在dao中,至于参数是前面传过来的,这只是人家写代码的一种习惯,是别人一目了然,方便维护。
[quote]可是sql写在dao中的话 就不能实现一个dao实现不同表的crud了... 我还是挺迷茫的.. [/quote]
你是说框架吗?表名什么的你可以做成参数啊。你看hibernate里面不是HQL拼接的字符串么?比如拼一个"from tablename where...."