Name PortalOnlyWriteDataSource is not bound in this Context! 图片说明 谢谢
1条回答 默认 最新
你知我知皆知 2024-08-05 19:31关注以下回答参考 皆我百晓生、券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。
在Eclipse中设置Tomcat数据源时可能会遇到错误"Name PortalOnlyWriteDataSource is not bound in this Context!"。这个错误通常发生在使用Spring MVC框架时,因为Spring MVC默认使用JDBC方式来处理数据库操作。
解决方法如下:
- 确保你的项目已经添加了必要的依赖项。如果使用的是Maven,请确保在pom.xml文件中添加以下依赖:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>- 如果你正在使用Spring Boot,确保在application.properties或application.yml文件中设置了正确的数据源信息:
spring.datasource.url=jdbc:mysql://localhost:3306/mydatabase?useSSL=false&serverTimezone=UTC spring.datasource.username=myusername spring.datasource.password=mypassword- 如果你是在运行Tomcat服务器,并且希望使用自定义的数据库连接,可以修改web.xml中的connection属性。例如,如果你想要一个名为PortalOnlyWriteDataSource的数据源,你可以将它放在dataSource标签内并设置其name为PortalOnlyWriteDataSource。然后,在web.xml中设置它的初始化参数如下:
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <!-- 设置自定义数据源 --> <bean id="portalOnlyWriteDataSource" class="org.apache.tomcat.jdbc.pool.DataSource"> <property name="driverClassName" value="${jdbc.driver-class-name}" /> <property name="url" value="${jdbc.url}" /> <property name="username" value="${jdbc.username}" /> <property name="password" value="${jdbc.password}" /> <property name="initialPoolSize" value="${jdbc.initial-pool-size}" /> <property name="minPoolSize" value="${jdbc.min-pool-size}" /> <property name="maxPoolSize" value="${jdbc.max-pool-size}" /> <property name="validationQuery" value="SELECT 1 FROM DUAL" /> <property name="testWhileIdle" value="true" /> <property name="timeBetweenEvictionRunsMillis" value="30000" /> <property name="minEvictableIdleTimeMillis" value="1800000" /> <property name="poolPreparedStatements" value="false" /> <property name="poolPreparedStatementsMax" value="500" /> </bean> <!-- 创建数据源实例 --> <bean id="dataSource" class="org.apache.tomcat.jdbc.pool.DataSource"> <constructor-arg ref="portalOnlyWriteDataSource" /> </bean> <!-- 设置Servlet容器连接池 --> <context-param> <param-name>javax.sql.DataSource</param-name> <param-value>${datasource}</param-value> </context-param> </beans>- 最后,你需要启动Tomcat服务以应用这些更改。
这样,你就应该能够在Eclipse中正确配置Tomcat数据源了。
解决 无用评论 打赏 举报