spring.net + Nhibernate 这个让我搞的头大的东西
雪狐狼 2008-12-12 01:42:03 spring.net + Nhibernate 做开发。大多数人会使用到HibernateTemplate。
我在看过spring.net 自带的例子,然后通过他的配置和方法,在访问数据调用的时候,HibernateTemplate 为null.
说明注入失败吗?
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<!-- Spring -->
<sectionGroup name="spring">
<section name="context" type="Spring.Context.Support.WebContextHandler, Spring.Web"/>
<section name="objects" type="Spring.Context.Support.DefaultSectionHandler,
Spring.Core"/>
<section name="parsers" type="Spring.Context.Support.NamespaceParsersSectionHandler,
Spring.Core"/>
</sectionGroup>
</configSections>
<!-- Spring -->
<spring>
<parsers>
<parser type="Spring.Data.Config.DatabaseNamespaceParser, Spring.Data"/>
</parsers>
<context>
<resource uri="config://spring/objects"/>
</context>
<objects xmlns="http://www.springframework.net" xmlns:db="http://www.springframework.net/database">
<db:provider id="DbProvider"
provider="SqlServer-2.0"
connectionString="Data Source=.\SQLEXPRESS;Database=Test;Integrated Security=true;User Instance=false; uid=sa;pwd=321"/>
<object type="Spring.Objects.Factory.Config.PropertyPlaceholderConfigurer,Spring.Core">
<property name="ConfigSections" value="databaseSettings"/>
</object>
<object id="SessionFactory" type="Spring.Data.NHibernate.LocalSessionFactoryObject,Spring.Data.NHibernate12">
<property name="DbProvider" ref="DbProvider"/>
<property name="MappingAssemblies">
<list>
<value>SpringHibernate.Net.Model</value>
<value>SpringHibernate.Net.BaseClass</value>
</list>
</property>
<property name="HibernateProperties">
<dictionary>
<entry key="hibernate.connection.provider"
value="NHibernate.Connection.DriverConnectionProvider"/>
<entry key="dialect"
value="NHibernate.Dialect.MsSql2005Dialect"/>
<entry key="hibernate.connection.driver_class"
value="NHibernate.Driver.SqlClientDriver"/>
</dictionary>
</property>
</object>
<object name="MyMathObj" type="SpringHibernate.Net.BaseClass.DMath,SpringHibernate.Net.BaseClass" />
<object id="PersonDAO" type="SpringHibernate.Net.BaseClass.PersonDAO, SpringHibernate.Net.BaseClass">
<property name="SessionFactory" ref="SessionFactory"/>
</object>
<!-- Pages -->
<object type="Default.aspx">
<property name="Message" value="Hello from Web.Config"/>
<property name="DMath" ref="MyMathObj"/>
<property name="PersonDAO" ref="PersonDAO"/>
</object>
</objects>
</spring>
</configuration>
配置有错误吗?
public partial class _Default : System.Web.UI.Page
{
IPersonDAO personDAO;
public IPersonDAO PersonDAO
{
get { return personDAO; }
set { personDAO = value; }
}
protected void Page_Load(object sender, EventArgs e)
{
//Response.Write(message);
Response.Write(DMath.add(30, 50));
Person p = new Person();
p.Name = "Maruf";
personDAO.Save(p);
Person p1 = personDAO.LoadByID(1);
}
}
刚接触,所以有很多的不懂,望高手指点!