gpt4 book ai didi

java - 如何在tomcat服务器上部署带有mysql数据库的java web应用程序

转载 作者:可可西里 更新时间:2023-11-01 08:06:35 26 4
gpt4 key购买 nike

我已经在 eclipse 中使用数据库 mysql 创建了 java web 应用程序。但现在我必须在 tomcat 服务器中部署该 web 应用程序。我知道如何在没有数据库的情况下部署 web 应用程序,但需要数据库方面的帮助。提前谢谢你。

最佳答案

在 Java Web 应用程序中获取 JDBC 连接的方法主要有两种。

  1. 从在容器内的 JNDI 目录服务中注册的数据源检索连接。
  2. 在您的应用程序代码中手动创建连接。

JNDI

使用 JNDI需要在tomcat中创建一个连接池。这可以在 tomcat 的 config 目录中的 context.xml 文件中完成。

示例 Context.xml 条目

  <Resource name="jdbc/EmployeeDB"
auth="Container"
type="javax.sql.DataSource"
username="dbusername"
password="dbpassword"
driverClassName="org.hsql.jdbcDriver"
url="jdbc:HypersonicSQL:database"
maxActive="8"
maxIdle="4"/>

然后将在您的代码中检索此连接,如下所示:

Context initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
DataSource ds = (DataSource)
envCtx.lookup("jdbc/EmployeeDB");

Connection conn = ds.getConnection();
... use this connection to access the database ...
conn.close();

手动创建

在您的代码中手动创建连接更简单,但建议使用 JNDI 以实现可移植性。

手动示例

public class MysqlConnect{
public static void main(String[] args) {

Connection conn = null;
String url = "jdbc:mysql://localhost:3306/";
String dbName = "jdbctutorial";
String driver = "com.mysql.jdbc.Driver";
String userName = "root";
String password = "root";

try {
Class.forName(driver).newInstance();
conn = DriverManager.getConnection(url+dbName,userName,password);
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}

在为这些场景中的任何一个进行部署时,在类路径中具有适当的 JDBC 驱动程序非常重要。

关于java - 如何在tomcat服务器上部署带有mysql数据库的java web应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13452977/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com