hibernate无主键表查询及数据库连接回顾

今天面试做上机做一个题目,给定数据库让你做一个登录后台。
其实题目很简单。
如果数据库没有主键呢?
如果你想使用hibernate去查询的话,那你就是要花费一点时间了、
所以在这里推荐使用jdbc查询,或者是使用hibernate的createSQLQuery方法去查询。
一下是hibernate查询代码:
 1         Session session = HibernateSessionFactory.getSession();
 2         Transaction tran = session.beginTransaction();
 3         
 4         Query query = session.createSQLQuery("select * from test where a=? and b=?");
 5         query.setInteger(04);
 6         query.setInteger(14);
 7         tran.commit();
 8         List l = query.list();
 9         if(l.size() != 0 ){
10             System.out.println(l.size());
11             System.out.println("login suc");
12         }
13         else{
14             System.out.println("login fail");
15         }
16     }

其实说起来也就是用jdbc的方法,根本没什么hibernate的技术。
下面温习一下jdbc的链接及查询方法。
 1         try {
 2             Class.forName("com.mysql.jdbc.Driver");
 3             con = DriverManager.getConnection(url, name, pas);
 4             pstate = con.prepareStatement("select count(*) from test where a = ? and b = ?");
 5             pstate.setInt(11);
 6             pstate.setInt(21);
 7             rs = pstate.executeQuery();
 8             
 9             while(rs.next()){
10                 System.out.println(rs.getInt(1));
11             }
12             
13             
14         } catch (ClassNotFoundException e) {
15             e.printStackTrace();
16         } catch (SQLException e) {
17             e.printStackTrace();
18         }

posted on 2009-04-10 19:51 duduli 阅读(3322) 评论(3)  编辑  收藏 所属分类: 数据库

评论

# re: hibernate无主键表查询及数据库连接回顾 2009-04-10 23:00 altchen

单语句的查询启动事务似乎没有意义...  回复  更多评论   

# re: hibernate无主键表查询及数据库连接回顾 2009-04-13 13:02 bera

没主键的表不符合最基本的数据库设计规范  回复  更多评论   

# re: hibernate无主键表查询及数据库连接回顾[未登录] 2009-09-15 16:32 xxx

数据仓库里没有主键很正常啊
@bera
  回复  更多评论   


只有注册用户登录后才能发表评论。


网站导航:
 
<2009年4月>
2930311234
567891011
12131415161718
19202122232425
262728293012
3456789

导航

统计

公告

welcome to my place.

常用链接

留言簿(5)

我参与的团队

随笔分类

随笔档案

新闻分类

石头JAVA摆地摊儿

搜索

积分与排名

最新评论

阅读排行榜

评论排行榜

@duduli