How to Configure JNDI DataSource in Java Configuration File Instead of Following Code Snippet in "web.xml" Servlet Context:
DB Connection
jdbc/DatabaseName
javax.sql.DataSource
Container
解决方案
Note: Don't Forget to Copy the "mysql-connector-java-5.1.36.jar" Into Tomcat's "lib" Subfolder in Main Installation Folder.
First: Add following Dependency in Your "pom.xml" File:
mysql
mysql-connector-java
5.1.36
Second: Create META-INF Folder and "context.xml" File in "webapp" Root Folder Like the Following Picture:
Third: Add the Following Code Snippet in "context.xml" File:
maxActive="50" maxIdle="30" maxWait="10000"
username="DatabaseUsername" password="DatabasePasssword"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/DatabaseName"/>
Fourth: Create the Following Bean in Spring Context Configuration File:
@Bean
public DataSource dataSource() {
JndiDataSourceLookup dataSource = new JndiDataSourceLookup();
dataSource.setResourceRef(true);
return dataSource.getDataSource("jdbc/DatabaseName");
}
Note: "jdbc/DatabaseName" is "name" Attribute that We Added Already in "context.xml" File.