数据库名bookshop 驱动已复制到tomcat的lib中
context.xml<Resource name="jdbc/bookshop" auth="Container" type="javax.sql.DataSource"
      maxActive="100" maxIdle="30"  maxWait="10000" username="root" password="wbmysql"  driverClassName="com.mysql.jdbc.Driver"
 url="jdbc:mysql://localhost:3306/bookshop" />web.xml
<resource-ref>
        <description>BookShop DataSource</description>
        <res-ref-name>jdbc/bookshop</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
 </resource-ref>hibernate.cfg.xml<property name="show_sql">true</property>
<property name="connection.datasource">
java:comp/env/jdbc/bookshop
</property>
<property name="dialect">
org.hibernate.dialect.MySQLDialect
</property>
错误提示:

%%%% Error Creating SessionFactory %%%%
org.hibernate.HibernateException: Could not find datasource
at org.hibernate.connection.DatasourceConnectionProvider.configure(DatasourceConnectionProvider.java:79)
at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:137)
at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:79)
at org.hibernate.cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:425)
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:89)
at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2119)
at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2115)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1339)
at com.hibtest.HibernateSessionFactory.<clinit>(HibernateSessionFactory.java:31)
at com.hibtest.TestCriteria.testDetachedCriteria(TestCriteria.java:135)
at com.hibtest.TestCriteria.main(TestCriteria.java:28)
Caused by: javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file:  java.naming.factory.initial
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:645)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
at javax.naming.InitialContext.getURLOrDefaultInitCtx(InitialContext.java:325)
at javax.naming.InitialContext.lookup(InitialContext.java:392)
at org.hibernate.connection.DatasourceConnectionProvider.configure(DatasourceConnectionProvider.java:75)
... 10 more
%%%% Error Creating SessionFactory %%%%
org.hibernate.InvalidMappingException: Could not parse mapping document from resource com/hibtest/entity/Users.hbm.xml
at org.hibernate.cfg.Configuration.addResource(Configuration.java:616)
at org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1635)
at org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1603)
at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1582)
at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1556)
at org.hibernate.cfg.Configuration.configure(Configuration.java:1476)
at com.hibtest.HibernateSessionFactory.rebuildSessionFactory(HibernateSessionFactory.java:69)
at com.hibtest.HibernateSessionFactory.getSession(HibernateSessionFactory.java:53)
at com.hibtest.TestCriteria.testDetachedCriteria(TestCriteria.java:135)
at com.hibtest.TestCriteria.main(TestCriteria.java:28)
Caused by: org.hibernate.DuplicateMappingException: Duplicate class/entity mapping com.hibtest.entity.Users
at org.hibernate.cfg.Mappings.addClass(Mappings.java:141)
at org.hibernate.cfg.HbmBinder.bindRoot(HbmBinder.java:167)
at org.hibernate.cfg.Configuration.add(Configuration.java:716)
at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:551)
at org.hibernate.cfg.Configuration.addResource(Configuration.java:613)
... 9 more
Exception in thread "main" java.lang.NullPointerException
at org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:306)
at com.hibtest.TestCriteria.testDetachedCriteria(TestCriteria.java:137)
at com.hibtest.TestCriteria.main(TestCriteria.java:28)
HibernateTomcatJava