前言
1.1 什么是Tomcat
Tomcat是一个开放源代码的Web应用服务器,在Java Servlet 和JavaServer Pages (JSP)技术中充当HTTP服务器的角色,与Apache HTTP Server集成,实现对动态Web内容的处理。
1.2 什么是MSSQL
Microsoft SQL Server (MSSQL) 是一种关系数据库管理系统,由Microsoft在Windows操作系统上开发和维护。MSSQL是 Microsoft SQL Server 数据库软件的核心组件,用于管理和访问信息、数据组织、还原、数据挖掘、分析和报告等。
本文将介绍如何在Tomcat中使用JDBC连接MSSQL数据库的方法,步骤包括Tomcat配置及代码示例。
Tomcat配置
2.1 下载驱动包
在使用JDBC连接MSSQL数据库之前,必须先下载MSSQL JDBC驱动程序,下载地址为:https://docs.microsoft.com/zh-cn/sql/connect/jdbc/download-microsoft-jdbc-driver-for-sql-server?view=sql-server-ver15。
下载驱动包后,将其拷贝到Tomcat安装目录下的lib文件夹中。
2.2 配置数据源
打开Tomcat安装目录下的conf/server.xml配置文件,在该文件的<GlobalNamingResources>标签下添加如下配置:
<Resource name="jdbc/test" auth="Container" type="javax.sql.DataSource"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://localhost:1433;databaseName=test"
username="sa" password="password"/>
其中:
name:数据源的名称,在代码中将用来引用数据源。
auth:身份验证方式,默认为Container。
type:连接池类型,javax.sql.DataSource表示是JDBC连接池。
driverClassName:JDBC驱动程序的完整类名。
url:JDBC连接字符串。
username:数据库用户名。
password:数据库密码。
2.3 引用数据源
在代码中引用数据源的方式有两种:
通过jndi查找数据源
通过Java代码创建数据源
以下将介绍这两种方式的具体实现方法。
通过jndi查找数据源
3.1 编写Java代码
在Java Web应用中,可以通过JNDI查找Tomcat服务器上创建的DataSource数据源,以下示例代码展示了如何通过JNDI查找上一步创建的数据库连接池:
Context initContext = new InitialContext();
Context envContext = (Context) initContext.lookup("java:/comp/env");
DataSource ds = (DataSource) envContext.lookup("jdbc/test");
Connection conn = ds.getConnection();
其中:
Context initContext = new InitialContext():初始化上下文,需要导入javax.naming.InitialContext类。
Context envContext = (Context) initContext.lookup("java:/comp/env"):查找上下文环境,需要导入javax.naming.Context类。
DataSource ds = (DataSource) envContext.lookup("jdbc/test"):查找数据源。
Connection conn = ds.getConnection():获取数据库连接。
通过Java代码创建数据源
4.1 编写Java代码
在Java Web应用中,也可以通过Java代码创建DataSource数据源,以下示例代码展示了如何创建一个数据库连接池:
BasicDataSource ds = new BasicDataSource();
ds.setDriverClassName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
ds.setUrl("jdbc:sqlserver://localhost:1433;databaseName=test");
ds.setUsername("sa");
ds.setPassword("password");
Connection conn = ds.getConnection();
其中:
BasicDataSource ds = new BasicDataSource():创建数据源,需要导入org.apache.commons.dbcp2.BasicDataSource类。
setDriverClassName(String driverClassName):设置JDBC驱动程序的完整类名。
setUrl(String url):设置JDBC连接字符串。
setUsername(String username):设置数据库用户名。
setPassword(String password):设置数据库密码。
Connection conn = ds.getConnection():获取数据库连接。
总结
通过以上方式,就可以在Tomcat中使用JDBC连接MSSQL数据库,从而实现对数据库的访问和数据操作。