日期:2014-05-17  浏览次数:20587 次

新手问数据库连接
数据库连接什么时候执行,在一组查询之前?在一个JSP网页加载之初?还是在tomcat启动之后?哪种可以使效率最高?
还有我想把数据库操作封装起来供JSP页面中使用,用javaBean吗?听说有个DAO,这DAO是一个现有的类库还是我去自己实现?


------解决方案--------------------
1、 如果是有配置连接池的话,那么在连接池初始化的就会时候执行了。没有配置连接池的话,那么是在你去申请连接的时候连接,比如:getConnection() 或者 getSession() 之类的

2、 可以统称JavaBean,但其实都是你自己去实现。当然如果你用了Hibernate或MyBatis之类的数据访问组件的话,可以简化很多工作量。

------解决方案--------------------
数据库连接在你需要查询的时候执行。
千万不要把数据库连接写在JSP页面中。
记住要分层开发。新手的话用MVC模式。
数据层用DAO和DO或者说POJO。
逻辑层用Servlet或者Action。
表现层用JSP或者HTML。

数据库连接和数据操作封装在DAO里面。
比如说UserDO就封装User的属性和get,set方法。
UserDAO就封装针对UserDO的属性进行的数据库操作。
------解决方案--------------------
你先别管什么DAO不DAO的事情,google上百度一下,就会找到很多java通过JDBC连接数据库实例,它就是DAO,用它从数据库取得数据放入JavaBean中,再传到页面上就可以显示了。
------解决方案--------------------
DAO DataAccessObject

说白了就是你写一组类,负责将数据库的操作形成完整闭包,那么外部的调用者就可以完全不知道这个数据库的存在。

比如Select可以定义类似这样的函数:
public List<Map> query(Map parameter)

当然,用Map不算是个好习惯,最好是根据数据库表结构来定义VO值对象。