hibernate 在tomcat7.X 下配置mysql数据源「建议收藏」

hibernate 在tomcat7.X 下配置mysql数据源

大家好,又见面了,我是全栈君。

先说一点题外话,LZ近期学习java web。

今天刚看到hibernate,发如今hibernate配置数据源时网上的资料都太久远了,一般以tomcat 5 版本号下的配置居多。而tomcat 7下的配置略有变化,新手找资料困难,可能会略受打击,故整理资料与大家共享。也可作备忘之用。若有不当之处。还请指教!

1.加入数据库驱动包mysql-connector-java-5.1.13-bin.jar加入到tomcat文件夹下的lib包中。


注意:网上差点儿全部版本号都说须要加入commons-dbcp-1.4.jar,commons-pool-1.5.4.jar和commons-collections.jar。

可是tomcat 7 已经不用加入这些jar文件了。由于tomcat 7的lib包以下已经集成了这些库。

官方集成文档上有:These libraries are located in a single JAR at $CATALINA_HOME/lib/tomcat-dbcp.jar

大概意思就是:这些库文件都位于一个单独的JAR文件里,该文件的路径是/lib/tomcat-dbcp.jar。

2.改动Tomcat_Home/conf/server.xml,</host>标签之前增加:

   <Resource name=”jdbc/TestDB” auth=”Container” type=”javax.sql.DataSource”
               maxActive=”100″ maxIdle=”30″ maxWait=”10000″
               username=”javauser” password=”javadude” driverClassName=”com.mysql.jdbc.Driver”
               url=”jdbc:mysql://localhost:3306/javatest”/>

3.在context.xml中增加引用


<ResourceLink name=“jdbc/TestDB global=“jdbc/TestDB    
      type=“javax.sql.DataSource”/> 

4.在你的project项目的web.xml中增加<resource-ref>。

    <resource-ref>  
        <description>tomcat datasource test,one mysql datasource</description>  
        <res-ref-name>jdbc/TestDB</res-ref-name>  
        <res-type>javax.sql.DataSource</res-type>  
        <res-auth>Container</res-auth>  
    </resource-ref>

5.在hibernate.cfg.xml文件里配置数据库连接,这个有非常多教程,此处便不再详述。

另外,注意数据源仅仅有在web项目中才干够使用。

再次出来写个简单的servlet来输出hibernate 的session对象:

代码例如以下:

package com.amaker.servlet;

import java.io.IOException;

import java.io.PrintWriter;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import org.hibernate.Session;

import com.amaker.util.HibernateUtil;

@SuppressWarnings(“serial”)

public class testServletextends HttpServlet {

/**

* Constructor of the object.

*/

public testServlet() {

super();

}

/**

* Destruction of the servlet. <br>

*/

public void destroy() {

super.destroy();// Just puts “destroy” string in log

// Put your code here

}

/**

* The doGet method of the servlet.<br>

*

* This method is called when a form has its tag value method equals to get.

* @param request the request send by the client to the server

* @param response the response send by the server to the client

* @throws ServletException if an error occurred

* @throws IOException if an error occurred

*/

public void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

HibernateUtil util = new HibernateUtil();

//HibernateUtil 类用来返回一个Session

对象。非常easy,相信大家能够搞定。 Session session = util.getSession();

response.setContentType(“text/html”);

PrintWriter out = response.getWriter();

out.println(“<!DOCTYPE HTML PUBLIC \”-//W3C//DTD HTML 4.01 Transitional//EN\”>”);

out.println(“<HTML>”);

out.println(”  <HEAD><TITLE>A Servlet</TITLE></HEAD>”);

out.println(”  <BODY>”);

out.println(session);

out.println(”  </BODY>”);

out.println(“</HTML>”);

out.flush();

out.close();

}

public void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

doGet(request, response);

}

/**

* Initialization of the servlet.<br>

*

* @throws ServletException if an error occurs

*/

public void init()throws ServletException {

// Put your code here

}

}

訪问结果如图。返回一个session对象。

hibernate 在tomcat7.X 下配置mysql数据源「建议收藏」


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

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

(0)
上一篇 2022年1月21日 下午4:00
下一篇 2022年1月21日 下午5:00


相关推荐

  • SPU和SKU概念

    SPU和SKU概念SPU 介绍 SPU StandardProd 标准产品单位 概念 SPU 是商品信息聚合的最小单位 是一组可复用 易检索的标准化信息的集合 该集合描述了一个产品的特性 通俗点讲就是属性值 特性相同的货品就可以称为一个 SPU 举例 例如绿色的 IPhone12 就是一个 SPU 与商家 颜色 款式 套餐等都无关 SKU 介绍 SKU stockkeeping 库存量单位 概念 SKU 即库存进出计量的单位 可以是以件 盒 托盘等为单位 SKU 是物理上不可分割的最小

    2026年3月26日
    2
  • dosbox基础使用[通俗易懂]

    dosbox运行程序1、mountc:d:\masm64把d盘masm64的内容挂在到c盘中2、c:进入c盘3、masmname.asm编译name的asm文件,后面要敲回车masmname.asm;编译name的asm文件,后面不用敲回车4、linkname连接name的文件,后面要敲回车linkname;连接name的文件,后面不用敲回车5、name运行name的文件dubug程序1、挂载、进入c盘步骤和前面一样2、debugname.exe3、输入命令

    2022年4月15日
    144
  • 经典算法(5)杨辉三角

    经典算法(5)杨辉三角杨辉三角是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。

    2022年6月9日
    35
  • 朋友,你听说过数据版本控制产品Dolt吗?

    朋友,你听说过数据版本控制产品Dolt吗?全文共 1688 字 预计学习时长 8 分钟图源 unsplash 最近与同事的一段对话让我陷入思考 公司会议上同事问我 是否要使用某种数据版本控制 我以为他是在说代码版本控制 但 不是 是数据版本控制 我的同事坚持说 我未曾听过或想过数据版本控制 是否有提供数据版本控制的产品 推出这些产品是否有必要呢 我在谷歌上搜索到许多数据版本控制产品 但最吸引我眼

    2026年3月19日
    2
  • 神经网络学习笔记1——BP神经网络原理到编程实现(matlab,python)[通俗易懂]

    神经网络学习笔记1——BP神经网络原理到编程实现(matlab,python)[通俗易懂]神经网络学习笔记1——BP神经网络原理到编程实现(matlab,python)

    2022年7月20日
    21
  • JQuery安装与下载教程

    JQuery安装与下载教程jQuery安装与下载JQuery是一个javaScript库,是一个轻量级的”写的少,做的多”的JavaScript库。jQuery极大地简化javaScript编程–juery相比js优点:jquery的onload加载事件速度更快,并且多个加载并行 【jq绑定事件都是使用的事件函数,不需要加on】; js的onloa…

    2022年6月6日
    70

发表回复

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

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