我试图在wildfly12中创建一个简单的数据源,以便将mysql数据库连接到javaweb应用程序。
我尝试了两种选择:
修改standalone-full.xml以添加如下数据源:
<datasource jndi-name="java:jboss/datasources/MyDS" pool-name="MyDS" enabled="true" use-java-context="true">
<connection-url>jdbc:mysql://localhost:3306/MyDatabaseName</connection-url>
<driver>mysql</driver>
<pool>
<min-pool-size>2</min-pool-size>
<max-pool-size>5</max-pool-size>
</pool>
<security>
<user-name>myuser</user-name>
<password>mypassword</password>
</security>
</datasource>
<drivers>
<driver name="mysql" module="com.mysql">
<driver-class>com.mysql.jdbc.Driver</driver-class>
</driver>
</drivers>
使用管理控制台添加数据源
我正在使用数据源毫无问题地创建连接:
Context initCtx = new InitialContext(), envCtx = (Context) initCtx.lookup("java:comp/env");
DataSource ds = (DataSource) envCtx.lookup("jdbc/MyDS");
this.connection = ds.getConnection();
java连接可以正常工作,但当我创建一个servlet来查询数据库时,出现了如下异常:
找不到“表”user;sql语句:select*from user where username='myusername'”
我已经运行了一些测试,我可以注意到java连接到了数据库,但没有连接到特定的模式,我运行了一个类似“selectdatabase()fromdubal”的查询,结果是“test”。所以我猜url连接中的数据库名称param工作不正常。
我怎样才能解决这个问题?我在数据源中找不到任何其他参数来指定数据库名称。
谢谢你的时间。
1条答案
按热度按时间uttx8gqw1#
在尝试了一些修改之后,我意识到我必须将下一个代码放在web.xml文件中:
这就解决了问题。