Hibernate

 

Hibernate(一)<源码>

 

链接:http://pan.baidu.com/s/1eS7b1To 密码:7pvd

 

 

 

今天学习完Hibernate查询,排序等功能把项目贴上来做一个总结。

1.贴表   对应关系:商品信息Commodity.db(多对一)商家信息持久化类Seller.db

          订单信息持久化类Order.db(一对多)订单明细信息持久化类OrderItem.db

商品信息持久化类Commodity.db

商家信息持久化类Seller.db

 

 客户信息持久化类Customer.db

 

订单信息持久化类Order.db

 

订单明细信息持久化类OrderItem.db

 

2.项目思路:  1.首先创建各个持久化类 -------> 2.创建对应关系------->3.创建配置信息Hibernate.hbm.xml注意要指定持久化类的位置----->4.建立工厂的文件(一般直接拷贝)

                 5.进行Junit4测试如下:

  就拿商品信息持久化类Commodity来测试吧

public  class   CommodityTest{

            private Session session=null;//创建session

       

@Test
public void testOrderby() {
String hql = " from Commodity order by seller.id asc,price desc,name asc ";
Query query = session.createQuery(hql);
List<Commodity> commodities = query.list();

for (Commodity c : commodities) {
System.out.println("name:" + c.getName());
System.out.println("price:" + c.getPrice());
}
}

@Test
public void testWhere4() {
String hql = " from Commodity c where c.price*5>3000 ";
Query query = session.createQuery(hql);
List<Commodity> commodities = query.list();

for (Commodity c : commodities) {
System.out.println("name:" + c.getName());
System.out.println("price:" + c.getPrice() * 5);
}
}

@Test
public void testWhere3() {
String hql = " from Commodity c where c.price<200 or c.price>3000 ";
Query query = session.createQuery(hql);
List<Commodity> commodities = query.list();

for (Commodity c : commodities) {
System.out.println("name:" + c.getName());
System.out.println("price:" + c.getPrice());
}
}

@Test
public void testWhere2() {
String hql = " from Commodity c where c.price between 1000 and 5000 and c.category like '%电脑%' or name like '%电脑%' ";
Query query = session.createQuery(hql);
List<Commodity> commodities = query.list();

for (Commodity c : commodities) {
System.out.println("name:" + c.getName());
System.out.println("category:" + c.getCategory());
System.out.println("price:" + c.getPrice());
}
}

@Test
public void testWhere1() {
String hql = " from Commodity c where c.price<=200 ";
Query query = session.createQuery(hql);
List<Commodity> commodities = query.list();

for (Commodity c : commodities) {
System.out.println("name:" + c.getName());
System.out.println("price:" + c.getPrice());
}
}

@Test
public void testFromClause() {
String hql = " from Commodity ";

Query query = session.createQuery(hql);
List<Commodity> commodities = query.list();

for (Commodity c : commodities) {
System.out.println("name:" + c.getName());

System.out.println("seller's name :" + c.getSeller().getName());
}
}

@Test
public void Mohu() {
String hql = "from Commodity c where c.name like '中_'";
Query query = session.createQuery(hql);
List<Commodity> list = query.list();
for (Commodity o : list) {
System.out.println(o.getName());
}
}

@Before
public void setUp() throws Exception {
session = HibernateSessionFactory.getCurrentSession();
}

@After
public void tearDown() throws Exception {
session.close();
}
}

转载于:https://www.cnblogs.com/5scxy/articles/5793259.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值