如何将一个数据库中的表,转化为一个javabean对象

如何将一个数据库中的表,转化为一个javabean对象,第1张

在Java中写一个类,类的属性对应相应的字段,使用jdbc查询一条记录后,通过set方法将对应字段的值设置到对应属性中,一条记录就变成一个对象。 Hibernate 的ORM实现原理大概也是这样子实现的。

你如何用实体框架,象HIBERNATE这样的ORM的时候,

首先考虑的肯定是BEAN实体类,也就是面向对象编程,面向对象 *** 作数据库了.

但是考虑到关联关系的时候,情况就复杂些了.

比如一对多的情况:

拿博客系统来说吧

一篇文章BLOG,肯定有一个BLOGID,这个BLOGID肯定是唯一的

BLOG(BLOGID,USERID,TITLE,CONTENT,MSGS)(博客ID,用户ID,标题,内容,评论)

现在有人对这个BLOG进行评论

评论MSG(MSGID,USERID,BLOG,MESSAGE)(评论ID,用户ID,博客,评论内容)

这有两个实体类,BLOG和MSG是一对多双向关联关系.

也就是说,根据这个BLOG可以知道这个BLOG下面所有的评论.

而某个MSG,肯定是对某一个BLOG进行评论的.

BLOG里面保存着评论的信息MSGS,MSGS肯定是个集合.

其中MSG里面保存着BLOG的信息.

实体类大概是上面那样.

下面就要建立关联关系的映射了.

一对多的关联关系的映射,主要体现在多的这一端,而多的这一端在数据库中体现就是外键.

也就是说,BLOG类中的MSGS是帖MSG来决定的,而数据库中,BLOG表肯定是没有MSG的任何字段信息.

但是MSG中肯定有BLOG实体类BLOGID.

有时候多个表也可以设计成一个BEAN.看情况设计喽.

建立楼主去研究下HIBERNATE里面的关联关系及其映射,

看实体类和数据库中表的详细情况.

关于JSP中调用JavaBean实现数据库连接和 *** 作!

首先是JavaBean的原程序

//——————————————————————

package

mywebconn

import

java.sql.*

public

class

JDBCrs

{

//

static

final

String

sDBDriver="sun.jdbc.odbc.JdbcOdbcDriver"

static

final

String

sConnStr="jdbc:odbc:Driver={MicroSoft

Access

Driver

(*.mdb)}DBQ=D:/myWeb01/WebModule1/test.mdb"

Connection

conn=null

ResultSet

rs=null

public

JDBCrs()

{

try

{

Class.forName(sDBDriver)

}

catch(java.lang.ClassNotFoundException

e)

{

System.err.println(e.getMessage())

}

}

//

the

public

public

ResultSet

executeQuery(String

sql)

{

rs=null

try

{

conn=DriverManager.getConnection(sConnStr)

Statement

stmt=conn.createStatement()

rs=stmt.executeQuery(sql)

}

catch(SQLException

ex){

System.err.println("aq.executeQuery

"+ex.getMessage())

}

return

rs

}

public

void

executeUpdate(String

sql)

{

try

{

conn

=

DriverManager.getConnection(sConnStr)

Statement

stmt

=

conn.createStatement()

stmt.executeUpdate(sql)

conn.close()

}

catch(SQLException

ex)

{

System.err.println("aq.executeUpdate

"+ex.getMessage())

}

}

public

void

close()

{

try

{

if

(!conn.isClosed())

{

conn.close()

}

}

catch

(SQLException

ex)

{

System.err.println("conn.close

"+ex.getMessage())

}

}

}

//——————————————————————

这个JavaBean叫JDBCrs(自己命名)

这个JavaBean是属于mywebconn这个包的(自己定义)

其中有一个叫executeQuery(String

sql)的返回ResultSet对象的方法!

当调用这个方法后,最好要调用close()这个方法关闭连接!

还有一个叫executeUpdate(String

sql)的方法,该方法不返回对象,只执行SQL语句,当执行完后会自动

关闭数据库连接!

String

sDBDriver和String

sConnStr字符串变量要根据实际情况做更改!!

在页面被调用时:

//保证可以使用ResultSet对象

//id

属性是被实例化后的名称


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9599816.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存