`
181054867
  • 浏览: 148900 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

根据select sql中的字段名生成一个JavaBean,bean中包含所有字段的Get方法

阅读更多

例如我有一个这样的sql:

select username, password from users

 我想在select结束后,通过ResultSet中的字段名生成一个JavaBean,其代码大概如下:

public class Record{
   //生成这个方法,get后返回sql中结果集的username字段值
   public String getUsername(){}
   //生成这个方法,get后返回sql中结果集的password字段值
   public String getPassword(){}
}

关键在于:这个JaveBean是动态的,Get方法因应sql字段不同而不同

曾经记得在Hibernate中广泛使用这种生成字节码,动态化Class的应用,敢问各位高手,是否知道如何实现,请赐教!!

 

补充一下应用场景:

select 后,生成的这个Record,我是用在Jsp的 el 表达式中:

<h1>UserName:${record.Username}<h1>
<h1>Password:${record.Password}<h1>

 这样就避免每个数据库表都写一个JavaBean了,不知我这样的想法是否可行,如有什么性能问题或其他担心,敬请指正!

感谢!!

分享到:
评论
3 楼 hypercube1024 2010-04-01  
hibernate 支持 select new
select new map( max(bodyWeight) as max, min(bodyWeight) as min, count(*) as n )
from Cat cat

或者

select new Family(mother, mate, offspr)
from DomesticCat as mother
    join mother.mate as mate
    left join mother.kittens as offspr

或者

select new list(mother, offspr, mate.name)
from DomesticCat as mother
    inner join mother.mate as mate
    left outer join mother.kittens as offspr

2 楼 wgx19830922 2010-04-01  
可以通过查询封装为List<Map<String,Object>> 形式的数据。前面的页面也支持
${map.name}的形式的。
1 楼 181054867 2010-04-01  
用Hibernate的朋友帮忙看看

相关推荐

    JSP+JAVABEAN连接数据,超简单哦

    例如,创建一个名为`JDBCBean`的类,它会包含加载数据库驱动、建立连接、创建Statement对象、执行SQL更新操作以及关闭资源的方法。 - 在示例代码中,`JDBCBean`类定义了驱动程序字符串、数据库连接字符串、密码和...

    使用jsp标签显示新闻列表1终版.pdf

    在处理新闻列表时,通常会有一个包含多个新闻项的JavaBean集合,例如一个`List&lt;News&gt;`。你可以遍历这个集合,并使用上述标签分别设置和获取每个新闻项的属性,如标题、内容、作者等。 JavaBean的生命周期包括四个...

    ApachDbUtils常见方法.docx

    假设我们有一个名为`User`的JavaBean类,其中包含了`id`, `name`, `email`等属性,我们可以使用DbUtils来查询所有用户的信息: ```java public List&lt;User&gt; findAllUsers() { Connection conn = null; try { // ...

    servlet+jsp+service+Oracle实现简单的数据库交互

    - **ZhuceDao**: 这个类包含了一个方法`zhuce`,用于向数据库中插入一条新的用户记录。 ```java package com.orcl.dao; import java.sql.SQLException; import java.util.ArrayList; import javax.swing....

    使用jsp标签显示新闻列表1参考.pdf

    例如,如果在JSP中写入`&lt;jsp:useBean id="newsBean" class="com.example.NewsBean" scope="session"&gt;&lt;/jsp:useBean&gt;`,这将创建一个名为`newsBean`的JavaBean实例,类名为`com.example.NewsBean`,并在session范围内...

    jsp的各种问题

    - **问题**: 从user表的name字段中找出名字包含“大山”的人,下面哪条select语句正确? - **答案**: Select * from user where name like '%大山%'; - **解释**: 使用 `like` 关键字配合通配符 `%` 可以实现模糊...

    jsp+servlet实例数据库

    在这个实例中,我们假设有一个名为`restrant`的数据库,可能包含餐馆的相关信息,如`id`、`name`、`address`、`cuisine`等字段。你可以创建一个表,如: ```sql CREATE TABLE restaurants ( id INT AUTO_...

    j2ee 面试 框架

    在这个示例中,你需要替换`url`, `username`, `password`, `your_table`和`column_name`为实际的数据库连接信息和表/字段名。 了解并掌握这些J2EE面试框架的知识点,将有助于在面试中展示出强大的企业级应用开发...

    JSP的复习总结

    - **静态引用**: 将一个JSP页面的输出静态地包含到另一个JSP页面中。 #### 二十一、页面之间的值传递 - **通过请求参数**: 通过URL或表单提交。 - **通过session**: 在用户会话中存储值。 #### 二十二、获取...

Global site tag (gtag.js) - Google Analytics