Spring.net的初次使用(1)--关于Dao类
大家注意修改 其中的日志操作的代码 可以将其注释
我将其中一写代码贴出来 UserDao.cs
using System;
using System.Collections.Generic;
using System.Text;
using System.Collections;
using Ivan.Spring.Model;
using Spring.Data.NHibernate;
namespace Ivan.Spring.Dao
{
IUserDao接口
![]()
public class UserDao : DaoBase, IUserDao
{
public UserDao()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
public override Type GetEntityType()
{
return typeof(User);
}
public IList GetAllUsers()
{
try
{
string query = String.Format("FROM User user ");
return HibernateTemplate.Find(query);
//return this.HibernateTemplate.FindByNamedQueryAndNamedParam("GetAllAdvicesList",null,null);
}
catch (Exception ex)
{
PrintErrLog("GetAllUsers Error!", ex);
return null;
![]()
![]()
}
//return null;
}
}
}
IDao.cs
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;
using Ivan.Spring.Model;
using Spring.Data.NHibernate;
![]()
namespace Ivan.Spring.Dao
{
/// <summary>
/// 实体对象数据访问接口
/// </summary>
public interface IDao
{
![]()
// Methods
bool DeleteObject(Entity entity);
IList GetAllObjectsList();
Type GetEntityType();
//string GetTableHead();
Entity Load(object ID);
Entity SaveObject(Entity entity);
bool UpdateObject(Entity entity);
![]()
![]()
}
}
DaoBase.cs
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;
using Spring.Data.NHibernate;
using Spring.Data.NHibernate.Support;
using Ivan.Spring.Model;
using Ivan.Spring.Config;
namespace Ivan.Spring.Dao
{
/// <summary>
/// 实体对象数据访问类基类
/// </summary>
public abstract class DaoBase : HibernateDaoSupport, IDao
{
// Fields
//private NamingStrategyCore m_NamingStrategy;
![]()
// Methods
public bool DeleteObject(Entity entity)
{
try
{
base.HibernateTemplate.Delete(entity);
return true;
}
catch (Exception ex)
{
this.PrintErrLog("", ex);
}
return false;
}
![]()
public IList GetAllObjectsList()
{
try
{
return base.HibernateTemplate.LoadAll(this.GetEntityType());
}
catch (Exception ex)
{
this.PrintErrLog("", ex);
}
return new ArrayList();
}
![]()
public abstract Type GetEntityType();
//public string GetTableHead()
//{
// return this.m_NamingStrategy.TableHead;
//}
![]()
public Entity Load(object ID)
{
try
{
return (base.HibernateTemplate.Load(this.GetEntityType(), ID) as Entity);
}
catch (Exception ex)
{
this.PrintErrLog("", ex);
}
return null;
}
![]()
public void PrintErrLog(object message)
{
MainConfig.Config.Log.PrintErrLine(message);
}
![]()
public void PrintErrLog(string message)
{
MainConfig.Config.Log.PrintErrLine(message);
}
![]()
public void PrintErrLog(object message, Exception ex)
{
MainConfig.Config.Log.PrintErrLine(message, ex);
}
![]()
public void PrintErrLog(string message, Exception ex)
{
MainConfig.Config.Log.PrintErrLine(message, ex);
}
![]()
public void PrintLog(object message)
{
MainConfig.Config.Log.PrintLine(message);
}
![]()
public void PrintLog(string message)
{
MainConfig.Config.Log.PrintLine(message);
}
![]()
public Entity SaveObject(Entity entity)
{
try
{
return (base.HibernateTemplate.Save(entity) as Entity);
}
catch (Exception ex)
{
this.PrintErrLog("", ex);
}
return null;
}
![]()
public bool UpdateObject(Entity entity)
{
try
{
base.HibernateTemplate.SaveOrUpdate(entity);
return true;
}
catch (Exception ex)
{
this.PrintErrLog("", ex);
}
return false;
}
![]()
![]()
}
}
我将其中一写代码贴出来 UserDao.cs
using System;
using System.Collections.Generic;
using System.Text;
using System.Collections;
using Ivan.Spring.Model;
using Spring.Data.NHibernate;
namespace Ivan.Spring.Dao
{
IUserDao接口
public class UserDao : DaoBase, IUserDao
{
public UserDao()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
public override Type GetEntityType()
{
return typeof(User);
}
public IList GetAllUsers()
{
try
{
string query = String.Format("FROM User user ");
return HibernateTemplate.Find(query);
//return this.HibernateTemplate.FindByNamedQueryAndNamedParam("GetAllAdvicesList",null,null);
}
catch (Exception ex)
{
PrintErrLog("GetAllUsers Error!", ex);
return null;

}
//return null;
}
}
}
IDao.cs
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;
using Ivan.Spring.Model;
using Spring.Data.NHibernate;
namespace Ivan.Spring.Dao
{
/// <summary>
/// 实体对象数据访问接口
/// </summary>
public interface IDao
{
// Methods
bool DeleteObject(Entity entity);
IList GetAllObjectsList();
Type GetEntityType();
//string GetTableHead();
Entity Load(object ID);
Entity SaveObject(Entity entity);
bool UpdateObject(Entity entity);

}
}
DaoBase.cs
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;
using Spring.Data.NHibernate;
using Spring.Data.NHibernate.Support;
using Ivan.Spring.Model;
using Ivan.Spring.Config;
namespace Ivan.Spring.Dao
{
/// <summary>
/// 实体对象数据访问类基类
/// </summary>
public abstract class DaoBase : HibernateDaoSupport, IDao
{
// Fields
//private NamingStrategyCore m_NamingStrategy;
// Methods
public bool DeleteObject(Entity entity)
{
try
{
base.HibernateTemplate.Delete(entity);
return true;
}
catch (Exception ex)
{
this.PrintErrLog("", ex);
}
return false;
}
public IList GetAllObjectsList()
{
try
{
return base.HibernateTemplate.LoadAll(this.GetEntityType());
}
catch (Exception ex)
{
this.PrintErrLog("", ex);
}
return new ArrayList();
}
public abstract Type GetEntityType();
//public string GetTableHead()
//{
// return this.m_NamingStrategy.TableHead;
//}
public Entity Load(object ID)
{
try
{
return (base.HibernateTemplate.Load(this.GetEntityType(), ID) as Entity);
}
catch (Exception ex)
{
this.PrintErrLog("", ex);
}
return null;
}
public void PrintErrLog(object message)
{
MainConfig.Config.Log.PrintErrLine(message);
}
public void PrintErrLog(string message)
{
MainConfig.Config.Log.PrintErrLine(message);
}
public void PrintErrLog(object message, Exception ex)
{
MainConfig.Config.Log.PrintErrLine(message, ex);
}
public void PrintErrLog(string message, Exception ex)
{
MainConfig.Config.Log.PrintErrLine(message, ex);
}
public void PrintLog(object message)
{
MainConfig.Config.Log.PrintLine(message);
}
public void PrintLog(string message)
{
MainConfig.Config.Log.PrintLine(message);
}
public Entity SaveObject(Entity entity)
{
try
{
return (base.HibernateTemplate.Save(entity) as Entity);
}
catch (Exception ex)
{
this.PrintErrLog("", ex);
}
return null;
}
public bool UpdateObject(Entity entity)
{
try
{
base.HibernateTemplate.SaveOrUpdate(entity);
return true;
}
catch (Exception ex)
{
this.PrintErrLog("", ex);
}
return false;
}

}
}



浙公网安备 33010602011771号