NHibernate提示表is not mapped

NHibernate提示表is not mapped一定要将 hbm xml 映射文件设置成嵌入的资源 下面是 mysql 的映射文件 lt xmlversion 1 0 encoding utf 8 gt lt hibernate mappingxmlns urn nhibernate mapping 2 2 gt lt classname wh db test model Test wh db test mo

一定要将hbm.xml映射文件设置成嵌入的资源。

下面是mysql的映射文件:

<?xml version="1.0" encoding="utf-8" ?> <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"> <class name=" wh.db.test.model.Test, wh.db.test.model" table="test"> <!--主键--> <id name="id" column="id" type="string" unsaved-value="0"> <!--非自增主键应该配置为assigned属性,自增主键应该配置成native--> <generator class="assigned" /> </id> <property name="name" column="name" type="string"/> <property name="sex" column="sex" type="int"/> <property name="address" column="address" type="string"/> <property name="work" column="work" type="string"/> </class> </hibernate-mapping> 

下面是oracle的映射文件:

<?xml version="1.0" encoding="utf-8" ?> <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"> <class name="EPAP.SZ.Models.B_R_Szmjobcar, EPAP.SZ.Models" table="B_R_SZMJOBCAR"> <id name="Jobcarid" column="JOBCARID" type="int"> <generator class="sequence"> <param name="sequence">B_R_SZMJOBCAR_SEQ</param> </generator> </id> <!--系统标识--> <property name="Epapid" column="EPAPID" type="string" /> <!--作业分工单ID--> <property name="Jdlistid" column="JDLISTID" type="int" /> <!--汽车管理ID--> <property name="Carinfoid" column="CARINFOID" type="int" /> <!--车号--> <property name="Carno" column="CARNO" type="string" /> <!--汽车司机--> <property name="Driver" column="DRIVER" type="string" /> <!--汽车司机ID--> <property name="Driverid" column="DRIVERID" type="string" /> <!--汽车司机电话--> <property name="Drivertel" column="DRIVERTEL" type="string" /> <!--乘客--> <property name="Passengers" column="PASSENGERS" type="string" /> <!--乘客ID--> <property name="Passengersid" column="PASSENGERSID" type="string" /> <!--编号--> <property name="Serialnumber" column="SERIALNUMBER" type="int" /> <!--作业前送地点--> <property name="Sendaddress" column="SENDADDRESS" type="string" /> <!--作业后接地点--> <property name="Receiveaddress" column="RECEIVEADDRESS" type="string" /> <!--出车时间--> <property name="Dispatchtime" column="DISPATCHTIME" type="DateTime" /> <!--司机携带工具id--> <property name="DriverCarryToolId" column="DRIVERCARRYTOOLID" type="int" /> </class> </hibernate-mapping>

mysql的web.config配置参考:

<?xml version="1.0" encoding="utf-8"?> <configuration> <configSections> <section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" /> <!--用Log4Net记录NHibernate中执行的SQL语句及执行时间--> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" /> </configSections> <!--NHibernate配置--> <hibernate-configuration xmlns="urn:nhibernate-configuration-2.2"> <session-factory> <property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property> <property name="dialect">NHibernate.Dialect.MySQL5Dialect</property> <!-- 版本改为 5--> <property name="connection.driver_class">NHibernate.Driver.MySqlDataDriver</property> <!--使用什么数据库--> <property name="connection.connection_string">Server=127.0.0.1;Database=whtest;User ID=root;Password=</property> <!-- Data Source=FirstSample.sdf 改为Server= localhost;Database=mygamedb;user ID=root;Password=root --> <property name="show_sql">true</property> <!--不配置hbm2ddl会报列“ReservedWord”不属于表 ReservedWords的错误--> <property name="hbm2ddl.keywords">none</property> <!--加载映射--> <mapping assembly="wh.db.test.model"/> </session-factory> </hibernate-configuration> <!--log4net配置--> <log4net debug="true"> <appender name="ErrorLog" type="log4net.Appender.RollingFileAppender"> <param name="File" value="D:\\Services\\Logs\\Error\\" /> <param name="AppendToFile" value="true" /> <param name="RollingStyle" value="Date" /> <param name="DatePattern" value="yyyyMM\\yyyy-MM-dd".log"" /> <param name="StaticLogFileName" value="false" /> <layout type="log4net.Layout.PatternLayout"> <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" /> </layout> <filter type="log4net.Filter.LevelRangeFilter"> <!--只接受最小等级与最大等级之间的日志输出,其他的被过滤,这里接受WARN(警告),ERROR(错误),FATAL(致命)级别的输出--> <param name="LevelMin" value="WARN" /> <param name="LevelMax" value="FATAL" /> </filter> </appender> <root> <level value="ALL" /> <appender-ref ref="ErrorLog" /> </root> </log4net> <system.web> <compilation debug="true" targetFramework="4.0" /> <!--需要配置该节点,不然HttpContext.current是为空的--> <httpModules> <add name="NHSessionFactory" type="wh.db.test.dao.DataBase.NHSessionFactory" /> </httpModules> </system.web> <system.serviceModel> <behaviors> <serviceBehaviors> <behavior> <!-- 为避免泄漏元数据信息,请在部署前将以下值设置为 false 并删除上面的元数据终结点 --> <serviceMetadata httpGetEnabled="true"/> <!-- 要接收故障异常详细信息以进行调试,请将以下值设置为 true。在部署前设置为 false 以避免泄漏异常信息 --> <serviceDebug includeExceptionDetailInFaults="false"/> </behavior> </serviceBehaviors> </behaviors> <!--必须配置aspNetCompatibilityEnabled为true否则HttpContext.current为空--> <serviceHostingEnvironment multipleSiteBindingsEnabled="true" aspNetCompatibilityEnabled="true"/> </system.serviceModel> <system.webServer> <modules runAllManagedModulesForAllRequests="true"/> </system.webServer> </configuration>

oracle的web.config参考:

<?xml version="1.0" encoding="utf-8"?> <configuration> <configSections> <section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" /> <!--用Log4Net记录NHibernate中执行的SQL语句及执行时间--> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" /> </configSections> <appSettings file="Config/EPAPConfig.config"> <add key="Epapid" value="025" /> <add key ="WebUrl" value="http://192.168.1.161:1125"/> </appSettings> <!--nhibernate配置--> <hibernate-configuration xmlns="urn:nhibernate-configuration-2.2"> <session-factory name="ora10gFactory"> <property name="dialect">NHibernate.Dialect.Oracle10gDialect</property> <property name="connection.provider">NHibernate.Connection.DriverConnectionProvider, NHibernate</property> <property name="connection.driver_class">NHibernate.Driver.OracleClientDriver</property> <!--<property name="connection.driver_class">NHibernate.Driver.OracleManagedDataClientDriver</property>--> <property name="connection.connection_string"> <!--User Id=epapsz;Password=epapsz;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=TMIS)))--> </property> <property name="adonet.batch_size">10</property> <property name="show_sql">false</property> <property name="command_timeout">60</property> <!--加载hibernate自动更新数据库结构,update为更新,none为不更新--> <property name="hbm2ddl.auto">none</property> <property name="query.substitutions">true 1, false 0, yes 'Y', no 'N'</property> <property name="proxyfactory.factory_class">NHibernate.Bytecode.DefaultProxyFactoryFactory,NHibernate</property> <property name="hbm2ddl.keywords">none</property> <property name="cache.provider_class">NHibernate.Cache.HashtableCacheProvider</property> <property name="cache.use_second_level_cache">false</property> <property name="cache.use_query_cache">false</property> <!--加载映射--> <mapping assembly="EPAP.SZ.Models" /> <mapping assembly="EPAP.SZ.ViewModels" /> </session-factory> </hibernate-configuration> <!--log4net配置--> <log4net debug="true"> <appender name="ErrorLog" type="log4net.Appender.RollingFileAppender"> <param name="File" value="D:\\Services\\Logs\\Error\\" /> <param name="AppendToFile" value="true" /> <param name="RollingStyle" value="Date" /> <param name="DatePattern" value="yyyyMM\\yyyy-MM-dd".log"" /> <param name="StaticLogFileName" value="false" /> <layout type="log4net.Layout.PatternLayout"> <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" /> </layout> <filter type="log4net.Filter.LevelRangeFilter"> <!--只接受最小等级与最大等级之间的日志输出,其他的被过滤,这里接受WARN(警告),ERROR(错误),FATAL(致命)级别的输出--> <param name="LevelMin" value="WARN" /> <param name="LevelMax" value="FATAL" /> </filter> </appender> <root> <level value="ALL" /> <appender-ref ref="ErrorLog" /> </root> </log4net> <system.web> <compilation debug="true" targetFramework="4.0" /> <httpModules> <add name="NHSessionFactory" type="EPAP.SZ.DAL.DataBase.NHSessionFactory" /> </httpModules> </system.web> <system.serviceModel> <behaviors> <serviceBehaviors> <behavior> <!-- 为避免泄漏元数据信息,请在部署前将以下值设置为 false 并删除上面的元数据终结点 --> <serviceMetadata httpGetEnabled="true" /> <!-- 要接收故障异常详细信息以进行调试,请将以下值设置为 true。在部署前设置为 false 以避免泄漏异常信息 --> <serviceDebug includeExceptionDetailInFaults="true" /> </behavior> </serviceBehaviors> </behaviors> <!--管理会话状态--> <serviceHostingEnvironment multipleSiteBindingsEnabled="true" aspNetCompatibilityEnabled="true"/> <!--考勤一体机服务--> <bindings> <basicHttpBinding> <!--其实要修改所有的服务,不管是服务端还是客户端,Binding那边增加一个没有设置名字的默认配置就OK了 maxBufferSize=""--> <binding closeTimeout="00:10:00" receiveTimeout="00:10:00" sendTimeout="00:10:00" maxReceivedMessageSize="" maxBufferSize=""> </binding > </basicHttpBinding> </bindings> <!--考勤一体机服务end--> </system.serviceModel> <system.webServer> <modules runAllManagedModulesForAllRequests="true" /> <validation validateIntegratedModeConfiguration="false" /> </system.webServer> </configuration> 


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/232400.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • phpstrom激活码2021最新破解方法「建议收藏」

    phpstrom激活码2021最新破解方法,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月14日
    43
  • PHP filemtime() 函数

    PHP filemtime() 函数

    2021年11月7日
    50
  • 详解布隆过滤器的原理和实现「建议收藏」

    详解布隆过滤器的原理和实现「建议收藏」为什么需要布隆过滤器想象一下遇到下面的场景你会如何处理: 手机号是否重复注册 用户是否参与过某秒杀活动 伪造请求大量id查询不存在的记录,此时缓存未命中,如何避免缓存穿透 针对以上问题常规做法是:查询数据库,数据库硬扛,如果压力并不大可以使用此方法,保持简单即可。改进做法:用list/set/tree维护一个元素集合,判断元素是否在集合内,时间复杂度或空间复杂度会比较高。如果是微服务的话可以用redis中的list/set数据结构,数据规模非常大此方案

    2022年10月6日
    2
  • spring中@EventListener 的详解和使用

    spring中@EventListener 的详解和使用转载:面了个35的程序员,让我莫名的慌了。。。(欢迎关注原文作者公众号:Java充电社)面了个35的程序员,让我莫名的慌了。。。原创路人甲Java路人甲Java2020-05-10收录于话题#Spring高手系列55个内容月底免费送书活动,这两天是最后的机会,大家尽快参与!面试官:看你是85年的我:嗯,35了面试官:那应该经验很丰富了,那我们来聊聊spring吧我:好,这块我用了10几年了,你随便问吧面试官:Spring中的事件用过么?我:用过…

    2025年8月12日
    3
  • Python运维常用的脚本,提高工作效率就靠它了

    Python运维常用的脚本,提高工作效率就靠它了前言用Python做运维的小伙伴肯定会进行重复的工作,这个时候脚本的重要性就体现出来了一个好的脚本工具可以帮你省去很多重复的工作,创造更大的价值下面小编就带你们看看Python运维最常用的脚本吧清除指定redis缓存#!/usr/bin/envpython3#-*-coding:utf-8-*-#@Time:2018-12-2015:19…

    2022年7月12日
    21
  • vim配置总结[通俗易懂]

    vim配置总结[通俗易懂]本篇博客主要包含我使用的vim配置和相关插件。也作一个常用vim快捷键的记录

    2022年5月20日
    44

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号