一、SSM框架搭建
参考资料:
二、数据源配置
2.1 jndi只供应用本身使用
项目地址:https://gitee.com/gbc_sxy/springmvc.git,分支:ssm-jndi
- spring配置加上如下片段
<jee:jndi-lookup id="dataSource" jndi-name="java:comp/env/jdbc/mysql"/>
<!--或者-->
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="java:comp/env/jdbc/mysql"></property>
</bean>
- 在项目的META-INFO 目录下添加context.xml文件,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Resource name="jdbc/mysql" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000" username="root" password="root"
driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/dbname" />
</Context>
- 在项目web.xml加入如下片段(非必须):
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/mysql</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
2.2 tomcat级别的全局的jndi配置
项目地址:https://gitee.com/gbc_sxy/springmvc.git,branch:ssm-tomcat-jndi
- spring配置不变
<jee:jndi-lookup id="dataSource" jndi-name="java:comp/env/jdbc/mysql"/>
<!--或者-->
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="java:comp/env/jdbc/mysql"></property>
</bean>
-
在tomcat conf目录下,修改server.xml和context.xml
- server.xml文件配置
<GlobalNamingResources> <!-- Editable user database that can also be used by UserDatabaseRealm to authenticate users --> <Resource name="UserDatabase" auth="Container" type="org.apache.catalina.UserDatabase" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory" pathname="conf/tomcat-users.xml" /> <Resource name="jdbc/mysql" auth="Container" type="javax.sql.DataSource" username="root" password="123456" url="jdbc:mysql://localhost:3306/mytest" driverClassName="com.mysql.jdbc.Driver" initialSize="5" maxWait="5000" maxActive="120" maxIdle="5" validationQuery="select 1" poolPreparedStatements="true"/> </GlobalNamingResources>
如果项目需要指定请求前缀 “/ssm”,添加如下配置
<!-- docBase:项目发布地址 path:指定请求上下文 --> <Context docBase="E:\PATS\Tools\Apache\Tomcat\tomcat_7.0\webapps\ssm-tomcat-jndi" path="ssm" reloadable="true" crossContext="true" />
- context.xml文件配置
<ResourceLink global="jdbc/mysql" name="jdbc/mysql" type="javax.sql.DataSource" />
-
Tomcat添加MySQL连接工具依赖
-
项目打包发布
-
项目打包:
-
项目发布:
将war包复制到Tomcat的webapps下,启动Tomcat
启动Tomcat
启动日志
如果项目启动日志乱码,请修改Tomcat日志编码为:GBK
-
-
验证测试
-
项目解压:
-
正常访问
-
自定义上下文访问
-
以上,请参考!