-
/**
- * 添加
- */
- public void save(Stu stu){
- try {
- tran=this.GetSession().beginTransaction();
- this.GetSession().save(stu);
- tran.commit();
- } catch (HibernateException e) {
- throw e;
- }finally{
- this.CloseSession();
- }
- }
- /**
- * 使用HQL全查询
- */
- public List getallbyHQL(){
- List arr=null;
- try {
- String hql="from Stu";
- Query query=this.GetSession().createQuery(hql);
- arr=query.list();
- } catch (HibernateException e) {
- throw e;
- }finally{
- this.CloseSession();
- }
- return arr;
- }
- /**
- * 根据主键查询
- */
- public Stu getbyID(int id){
- Stu stu=null;
- try {
- stu=(Stu) this.GetSession().get(Stu.class, id);
- } catch (HibernateException e) {
- throw e;
- }finally{
- this.CloseSession();
- }
- return stu;
- }
- /**
- * 根据对象属性查询(使用Query)
- */
- public List getbyPropertyQuery(String name){
- List arr=null;
- try {
- //这里不能像SQL语一样select * from Stu where SName=:name,这是不对的。
- // Query query=this.GetSession().createQuery("from Stu where SName=:name");
- // query.setString("name", name);
- //或者
- Query query=this.GetSession().createQuery("from Stu where SName=?");
- query.setString(0, name);
- arr=query.list();
- } catch (HibernateException e) {
- throw e;
- }finally{
- this.CloseSession();
- }
- return arr;
- }
- /**
- * 根据对象属性查询(使用Criteria)
- */
- public List getbyPropertyCriteria(String name){
- List arr=null;
- try {
- Criteria cri=this.GetSession().createCriteria(Stu.class);
- Criterion c1=Expression.eq("SName", name);
- cri.add(c1);
- arr=cri.list();
- } catch (HibernateException e) {
- throw e;
- }finally{
- this.CloseSession();
- }
- return arr;
- }
- /**
- * 查询部分属性
- */
- public List getProperty(){
- List arr=new ArrayList();
- try {
- String hql="select s.SName,s.SSex from Stu as s";
- Query query=this.GetSession().createQuery(hql);
- List list=query.list();
- Iterator iter=list.iterator();
- while(iter.hasNext()){
- Object[] obj=(Object[]) iter.next();
- Stu s=new Stu();
- s.setSName(obj[0].toString());
- s.setSSex(obj[1].toString());
- arr.add(s);
- }
- } catch (HibernateException e) {
- this.CloseSession();
- }
- return arr;
- }
- /**
- * 查询一个属性
- */
- public List getoneProperty(){
- List arr=new ArrayList();
- try {
- String hql="select s.SName from Stu as s";
- Query query=this.GetSession().createQuery(hql);
- Iterator iter=query.iterate();
- while(iter.hasNext()){
- Object obj=(Object) iter.next();
- Stu s=new Stu();
- s.setSName(obj.toString());
- arr.add(s);
- }
- } catch (HibernateException e) {
- this.CloseSession();
- }
- return arr;
- }
- /**
- *查询一个对象一个属性值
- */
- public Object getonlyProprotyValue(int s_id){
- Object obj=null;
- try {
- String hql="select s.SName from Stu as s where s.SId=?";
- Query query=this.GetSession().createQuery(hql);
- query.setInteger(0, s_id);
- obj=query.uniqueResult();
- } catch (HibernateException e) {
- throw e;
- }finally{
- this.CloseSession();
- }
- return obj;
- }
- /**
- * SQL查询
- */
- public List getallBYSQL(){
- List arr=null;
- try {
- String sql="select {c.*} from stu as c";
- SQLQuery sqlquery=this.GetSession().createSQLQuery(sql);
- sqlquery.addEntity("c",Stu.class);
- arr=sqlquery.list();
- } catch (HibernateException e) {
- throw e;
- }finally{
- this.CloseSession();
- }
- return arr;
- }
- /**
- * 根据对象查询
- */
- public List getallByObject(Stu s){
- List arr=null;
- try {
- String hql="from Stu as s where s=:stuentity";
- //或者
- //String hql="from Stu as s where s.SId=:stuentity";
- Query query=this.GetSession().createQuery(hql);
- query.setEntity("stuentity", s);
- arr=query.list();
- } catch (HibernateException e) {
- throw e;
- }finally{
- this.CloseSession();
- }
- return arr;
- }
- /**
- * 模糊查询
- */
- public List getallQueryLike(String name){
- List arr=null;
- try {
- String hql="from Stu as s where s.SName like :name";
- Query query=this.GetSession().createQuery(hql);
- query.setString("name", "%"+name+"%");
- //不能
- //query.setString("name", "'%"+name+"%'");
- arr=query.list();
- } catch (HibernateException e) {
- throw e;
- }finally{
- this.CloseSession();
- }
- return arr;
- }
- /**
- * 统计函数
- */
- public int CountStu(){
- int count=0;
- try {
- String hql="select count(*) from Stu";
- Query query=this.GetSession().createQuery(hql);
- count=(Integer) query.uniqueResult();
- } catch (HibernateException e) {
- throw e;
- }finally{
- this.CloseSession();
- }
- return count;
- }
- /**
- * 条件统计
- */
- public int CountByWhere(String sex){
- int count=0;
- try {
- Query query=this.GetSession().createQuery("select count(*) from Stu where SSex=:sex");
- query.setString("sex", sex);
- count=(Integer)query.uniqueResult();
- } catch (HibernateException e) {
- throw e;
- }finally{
- this.CloseSession();
- }
- return count;
- }
- /**
- * 统计平均值
- */
- public float VagAge(){
- float vag=0;
- try {
- Query query=this.GetSession().createQuery("select avg(SAge) from Stu");
- vag=(Float)query.uniqueResult();
- } catch (HibernateException e) {
- throw e;
- }finally{
- this.CloseSession();
- }
- return vag;
- }
- /**
- * 求和函数
- */
- public int sumage(){
- int sum=0;
- try {
- Query query=this.GetSession().createQuery("select sum(SAge) from Stu");
- sum=(Integer)query.uniqueResult();
- } catch (HibernateException e) {
- throw e;
- }finally{
- this.CloseSession();
- }
- return sum;
- }
HIbernate的一些基本用法
最新推荐文章于 2023-04-29 15:59:59 发布