Hibernate是一个免费的开源Java包,它使得与关系数据库打交道变得十分轻松,就像您的数据库中包含每天使用的普通Java对象一样,同时不必考虑如何把它们从神秘的数据库表中取出(或放回到数据库表中)。它解放了您,使您可以专注于应用程序的对象和功能,而不必担心如何保存它们或稍后如何找到它们。
这个具体到JavaBean的jsp程序中有什么具体的作用呢??
以前作的一个jsp论坛,写了一个论坛板块的Java程序,如下:
package bbs;
import java.sql.*;
import javax.sql.*;
import javax.naming.*;
public class boards{
public boards(){
}
public ResultSet boardList(){
Connection conn=null;
Statement stat=null;
ResultSet rs=null;
try{
InitialContext ict=new InitialContext();
DataSource ds=(DataSource)ict.lookup("java:comp/env/jdbc/mysql");
conn=ds.getConnection();
stat=conn.createStatement();
rs=stat.executeQuery("select boards.id,boards.name,description,users.name from "
+" users,boards where users.level=boards.id");
}
catch(Exception ex){
ex.printStackTrace();
}
/* finally{
if(rs!=null){
try{
rs.close();
}
catch(Exception ex){
ex.printStackTrace();
}
}
if(stat!=null){
try{
stat.close();
}
catch(Exception ex){
ex.printStackTrace();
}
}
if(stat!=null){
try{
stat.close();
}
catch(Exception ex){
ex.printStackTrace();
}
}
}*/
return rs;
}
}
起先,我试图关闭rs,stst,conn,但关闭之后就不能返回了,所以把关闭的部分注解掉了。
在这里,我返回的是ResultSet类型的!rs,stat,conn都不能关!总是感觉这样写法不是很合理!听同学说,用Hibernate思想比较简单,刚才看了一会Hibernate,没明白是什么个意思。。。
请问在这个题目中如何运用Hibernate?谢谢了!
----------------解决方案--------------------------------------------------------
你随便上网搜索一下,有很多入门教程的。
----------------解决方案--------------------------------------------------------
我看了半天,没明白什么个意思!
我想知道的是在此具体项目中有什么应用!!
----------------解决方案--------------------------------------------------------
是用来简化数据库操作,提高性能和开发效率的。他相当于把对数据库的操作封装了,方便你使用。当然他的功能不是我说的这么简单。
----------------解决方案--------------------------------------------------------
只知道是操作数据库的.不过没有用过.
----------------解决方案--------------------------------------------------------
Struts实现了MVC就是所谓的三层架构!
显示层 业务层 数据层
很明显在MVC中我们的数据访问放在业务层中,那么...就出现了数据访问跟业务逻辑相耦合的状况!
我们一方面得注意业务逻辑的处理另外一方面也得注意数据访问(增加 删除 修改 查询)的处理!
而Hibernate的出现就简化了我们对于数据库的操作!他专门解决数据访问细节问题!是开发人员能更加专著与业务逻辑的处理!那么很显然以Struts+Hibernate开发一个项目的,那么整个软件架构就由原来的三曾变为现在的四层架构即:
显示层 业务层 持久层 数据层
我们的Hibernate就成为了持久化层,从原来的(Struts)中的业务层分离出来单独为一层!软件结构更加清晰,维护更加方便!
----------------解决方案--------------------------------------------------------