coursedaoimpl.java

来自「java 框架核心技术编程」· Java 代码 · 共 77 行

JAVA
77
字号
package org.lxh.impl;

import java.util.List;

import org.hibernate.Query;
import org.hibernate.Session;
import org.lxh.dao.CourseDAO;
import org.lxh.factory.DefaultSessionFactory;
import org.lxh.vo.Course;

public class CourseDAOImpl implements CourseDAO {
	private Session session = null;

	public CourseDAOImpl() {
		this.session = DefaultSessionFactory.getSession();
	}

	public void delete(int cid) throws Exception {
		String hql = "DELETE FROM Course WHERE cid=?";
		Query q = this.session.createQuery(hql);
		q.setInteger(0, cid);
		q.executeUpdate();
		this.session.beginTransaction().commit();
		this.session.close();
	}

	public void insert(Course course) throws Exception {
		this.session.save(course);
		this.session.beginTransaction().commit();
		this.session.close();
	}

	public List queryAll() throws Exception {
		List all = null;
		String hql = "FROM Course AS c";
		Query q = this.session.createQuery(hql);
		all = q.list();
		this.session.close();
		return all;
	}

	public Course queryByCId(int cid) throws Exception {
		Course c = null;
		String hql = "FROM Course AS c WHERE c.cid=?";
		Query q = this.session.createQuery(hql);
		q.setInteger(0, cid);
		List all = q.list();
		if (all.size() > 0) {
			c = (Course) all.get(0);
			// System.out.println("** "+c.getName());
			c.getStudents().size() ;
			c.getSids().size() ;
		}
		this.session.close();
		
		return c;
	}

	public List queryByLike(String cond) throws Exception {
		List all = null;
		String hql = "FROM Course AS c WHERE c.name LIKE ? OR c.teacher LIKE ?";
		Query q = this.session.createQuery(hql);
		q.setString(0, "%" + cond + "%");
		q.setString(1, "%" + cond + "%");
		all = q.list();
		this.session.close();
		return all;
	}

	public void update(Course course) throws Exception {
		this.session.update(course);
		this.session.beginTransaction().commit();
		this.session.close();
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?