首页 数据库 mysql教程 hibernate在tomcat7.X下配置mysql数据源

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

Jun 07, 2016 pm 03:56 PM
hibernate mysql 数字 配置

先说一点题外话,LZ最近学习java web。今天刚看到hibernate,发现在hibernate配置数据源时网上的资料都太久远了,一般以tomcat 5 版本下的配置居多。而tomcat 7下的配置略有变化,新手找资料困难,可能会略受打击,故整理资料与大家共享,也可作备忘之用!若

先说一点题外话,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,标签之前加入:

maxActive="100" maxIdle="30" maxWait="10000"
username="javauser" password="javadude" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/javatest"/>

3.在context.xml中加入引用

name="jdbc/TestDB" global="jdbc/TestDB"
type="javax.sql.DataSource"/>

4.在你的工程项目的web.xml中加入


tomcat datasource test,one mysql datasource
jdbc/TestDB
javax.sql.DataSource
Container

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.

*/

public void destroy() {

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

// Put your code here

}

/**

* The doGet method of the servlet.

*

* 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

对象,很简单,相信大家可以搞定。 Session session = util.getSession();

response.setContentType("text/html");

PrintWriter out = response.getWriter();

out.println(""-//W3C//DTD HTML 4.01 Transitional//EN\">");

out.println("");

out.println("

A Servlet");

out.println("

");

out.println(session);

out.println(" ");

out.println("");

out.flush();

out.close();

}

public void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

doGet(request, response);

}

/**

* Initialization of the servlet.

*

* @throws ServletException if an error occurs

*/

public void init()throws ServletException {

// Put your code here

}

}

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

\

 

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

如何优化 PHP 中的 MySQL 查询性能? 如何优化 PHP 中的 MySQL 查询性能? Jun 03, 2024 pm 08:11 PM

如何优化 PHP 中的 MySQL 查询性能?

如何在 PHP 中使用 MySQL 备份和还原? 如何在 PHP 中使用 MySQL 备份和还原? Jun 03, 2024 pm 12:19 PM

如何在 PHP 中使用 MySQL 备份和还原?

如何使用 PHP 插入数据到 MySQL 表中? 如何使用 PHP 插入数据到 MySQL 表中? Jun 02, 2024 pm 02:26 PM

如何使用 PHP 插入数据到 MySQL 表中?

如何修复 MySQL 8.4 上的 mysql_native_password 未加载错误 如何修复 MySQL 8.4 上的 mysql_native_password 未加载错误 Dec 09, 2024 am 11:42 AM

如何修复 MySQL 8.4 上的 mysql_native_password 未加载错误

如何在 PHP 中使用 MySQL 存储过程? 如何在 PHP 中使用 MySQL 存储过程? Jun 02, 2024 pm 02:13 PM

如何在 PHP 中使用 MySQL 存储过程?

如何使用 PHP 创建 MySQL 表? 如何使用 PHP 创建 MySQL 表? Jun 04, 2024 pm 01:57 PM

如何使用 PHP 创建 MySQL 表?

oracle数据库和mysql的区别 oracle数据库和mysql的区别 May 10, 2024 am 01:54 AM

oracle数据库和mysql的区别

全球数字虚拟币交易平台排行榜前十(2025权威排名) 全球数字虚拟币交易平台排行榜前十(2025权威排名) Mar 06, 2025 pm 04:36 PM

全球数字虚拟币交易平台排行榜前十(2025权威排名)

See all articles