Spring 配置jndi
我的代码如下,首先tomcat配置jndi
1、tomcat lib包下引入连接mysql数据库驱动
2、在tomcat config 下的content.xml下配置全局数据库信息
<Resource name="jdbc/mysql" auth="Container" type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver" maxWait="5000" username="root" password="1234" testOnBorrow="true" url="jdbc:mysql://172.20.8.90:3306/test" />3、项目web.xml 配置引入数据源信息
<resource-ref> <res-ref-name>jdbc/mysql</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref>4、在spring applicationContent.xml中配置dataSource
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName"> <value>java:comp/env/jdbc/mysql</value> </property> </bean>
5、在项目的METE-INF下面创建content.xml,信息如下
<?xml version='1.0' encoding='utf-8'?> <Context> <Resource name="jdbc/mysql" auth="Container" type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver" maxWait="5000" username="root" password="1234" testOnBorrow="true" url="jdbc:mysql://172.20.8.90:3306/test" /> </Context>
<p>
<br>
</p>
<p>
<br>
</p>
项目启动 不报错,但是我请求http://localhost:8080/hello-mybatis/hello/test.do
报错: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'] with root cause
代码如下
@Controller @RequestMapping("/hello") public class HelloWorldController { @Autowired private UserMapper userMapper; @RequestMapping("/test.do") public String test() { User user = this.userMapper.selectByPrimaryKey(1); System.out.println(user.getName()); return "test"; } }
我可以确认我的配置信息是正确的,url、user、password、driver都正确
jndi的配置貌似不需要在web.xml中引入,从错误上看,貌似URL错了,或者引入的dirver有问题,
完整详细的配置可参考:http://git.oschina.net/wangkang/llsfw中对于datasource的配置.
希望能对你有帮助.
回复 @薄暮凉年:好了就行!回复 @王康:好的,我配置好了,我只需要在content.xml中配置数据源,在web中引用,然后在applicationContent引入dataSource就可以了。回复 @薄暮凉年:tomcat解压到本地后,无需修改里面任何的配置文件,所有的修改均在eclipse中完成.回复 @王康:直接就是newserver呀完后选择tomcat的安装路径,然后修改eclipse里面tomcat为自己安装的。然后修改本地tomcat的配置信息,在修改eclipse中server项目里面的配置信息。回复 @薄暮凉年:你tomcat怎么引用到eclipse里的哦.应该引用进来后,都有一份独立的server.xml和context.xml的http://kingxss.iteye.com/blog/1481872
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。