Tomcat5 及 Tomcat6 下CP配置。
主要是根據(jù)MLDN的一個實例進行配置的。實例中用的是Tomcat5.5,所以他的CP配置如下:
第一:將jdbc驅(qū)動的jar包,如:MySQL、Oracle的jdbc驅(qū)動,拷貝到tomcat中l(wèi)ib下。
注意:必須是tomcat中l(wèi)ib下,如:D:\Tomcat 6.0\lib,但不能是項目中的WEB-INF/lib下,因為這時tomcat解析不到此類目錄。
第二:在Tomcat的安裝目錄下conf下找到server.xml,在<host></host>之間加上如下代碼:
第三:在Spring的配置文件applicationContext.xml中加上如下代碼:
而我用的Tomcat是6.0.18,在根據(jù)這個配置后就會出現(xiàn)javax.naming.NameNotFoundException: Name jdbc is not bound in this Context的錯誤。原因是,Tomcat5和Tomcat6的配置有所區(qū)別:
第一:將jdbc驅(qū)動的jar包,拷貝到Tomcat的lib下
第二:在tomcat中conf下的context.xml文件中<context>與</context>之間加入以下部分:
第三:在Spring的配置文件applicationContext.xml中加上如下代碼:
這樣,Tomcat6下的CP才能正常的運行起來。
主要是根據(jù)MLDN的一個實例進行配置的。實例中用的是Tomcat5.5,所以他的CP配置如下:
第一:將jdbc驅(qū)動的jar包,如:MySQL、Oracle的jdbc驅(qū)動,拷貝到tomcat中l(wèi)ib下。
注意:必須是tomcat中l(wèi)ib下,如:D:\Tomcat 6.0\lib,但不能是項目中的WEB-INF/lib下,因為這時tomcat解析不到此類目錄。
第二:在Tomcat的安裝目錄下conf下找到server.xml,在<host></host>之間加上如下代碼:
1
<Context path="/zhinangtuan" docBase="F:\Eclipse\MyZNTProject\MyZhiNangTuanDemo\WebRoot"
2
debug="5" reloadable="true" crossContext="true">
3
4
<Logger className="org.apache.catalina.logger.FileLogger"
5
prefix="localhost_MysqlTest_log." suffix=".txt"
6
timestamp="true"/>
7
8
<Resource name="jdbc/mldn" auth="Container" type="javax.sql.DataSource"/>
9
10
<ResourceParams name="jdbc/mldn">
11
<parameter>
12
<name>factory</name>
13
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
14
</parameter>
15
<parameter>
16
<name>maxActive</name>
17
<value>100</value>
18
</parameter>
19
<parameter>
20
<name>maxIdle</name>
21
<value>30</value>
22
</parameter>
23
<parameter>
24
<name>maxWait</name>
25
<value>5000</value>
26
</parameter>
27
<parameter>
28
<name>username</name>
29
<value>root</value>
30
</parameter>
31
<parameter>
32
<name>password</name>
33
<value>mysqladmin</value>
34
</parameter>
35
<parameter>
36
<name>driverClassName</name>
37
<value>org.gjt.mm.mysql.Driver</value>
38
</parameter>
39
<parameter>
40
<name>url</name>
41
<value>jdbc:mysql://localhost:3306/mldn</value>
42
</parameter>
43
</ResourceParams>
44
</Context>
第一部分為項目的發(fā)布路徑。其他的就是數(shù)據(jù)庫的配置了。
2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

第三:在Spring的配置文件applicationContext.xml中加上如下代碼:
1
<bean id="dataSource"
2
class="org.springframework.jndi.JndiObjectFactoryBean"
3
destroy-method="close">
4
<property name="jndiName">
5
<value>java:comp/env/jdbc/mldn</value>
6
</property>
7
</bean>

2

3

4

5

6

7

而我用的Tomcat是6.0.18,在根據(jù)這個配置后就會出現(xiàn)javax.naming.NameNotFoundException: Name jdbc is not bound in this Context的錯誤。原因是,Tomcat5和Tomcat6的配置有所區(qū)別:
第一:將jdbc驅(qū)動的jar包,拷貝到Tomcat的lib下
第二:在tomcat中conf下的context.xml文件中<context>與</context>之間加入以下部分:
1
<Resource name="jdbc/mldn"
2
auth="Container"
3
type="javax.sql.DataSource"
4
factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
5
driverClassName="com.mysql.jdbc.Driver"
6
url="jdbc:mysql://localhost:3306/mldn?useUnicode=true&characterEncoding=utf-8"
7
username="root"
8
password="123"
9
maxActive="100"
10
maxIdle="30"
11
maxWait="10000" />
同時在項目的web.xml中加入如下代碼(網(wǎng)上說可以加也可以不加)
2

3

4

5

6

7

8

9

10

11

1
<resource-ref>
2
<description>DB Connection</description>
3
<res-ref-name>jdbc/mldn</res-ref-name>
4
<res-type>javax.sql.DataSource</res-type>
5
<res-auth>Container</res-auth>
6
</resource-ref>

2

3

4

5

6

第三:在Spring的配置文件applicationContext.xml中加上如下代碼:
1
<bean id="dataSource"
2
class="org.springframework.jndi.JndiObjectFactoryBean"
3
destroy-method="close">
4
<property name="jndiName">
5
<value>java:comp/env/jdbc/mldn</value>
6
</property>
7
</bean>

2

3

4

5

6

7

這樣,Tomcat6下的CP才能正常的運行起來。