ssm项目配置

本文介绍了一个基于Spring MVC框架和MyBatis ORM框架的集成应用案例,详细配置了数据源、事务管理器等,并展示了如何通过配置实现对数据库的操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


applicationContext

<?xml version="1.0" encoding="UTF-8"?>
<beans 
 xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="
http://www.springframework.org/schema/beans 
http://www.springframework.org/schema/beans/spring-beans.xsd 
http://www.springframework.org/schema/tx 
http://www.springframework.org/schema/tx/spring-tx.xsd 
http://www.springframework.org/schema/context 
http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd">
 
<!-- 扫描mapper -->
<context:component-scan base-package="com.lanou.mapper"/>
<!-- 扫描service -->
<context:component-scan base-package="com.lanou.service"/>
 
<!-- 读取jdbc.properties  -->
<context:property-placeholder location="classpath*:*.properties"/>
 
<!-- 数据源 druid -->
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
<property name="url" value="${jdbc.url}"></property>
<property name="username" value="${jdbc.loginName}"></property>
<property name="password" value="${jdbc.loginPwd}"></property>
<property name="driverClassName" value="${jdbc.driverClass}"></property>
</bean>
<!-- sqlsession 会话工厂创建 -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource"><ref bean="dataSource" /></property> 
    <!-- <property name="mapperLocations" value="classpath:com/lanou/mapper/*.xml"/> -->
    <property name="configLocation" value="classpath:mybatis.xml"></property>
</bean>
 
<!-- 事务管理器 -->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" /> 
</bean> 
     <!-- 自动扫描 将Mapper接口生成代理注入到Spring -->
     <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
      <property name="basePackage" value="com.lanou.mapper" />
     </bean>
     
     <!-- 扫描事务注解 -->
<tx:advice id="txAdvice" transaction-manager="transactionManager"/>
 

</beans>

jdbc.properties

#driver url root pwd
jdbc.driverClass=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/shop
jdbc.loginName=root

jdbc.loginPwd=root

spring-mvc.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc" 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-3.2.xsd
http://www.springframework.org/schema/context 
http://www.springframework.org/schema/context/spring-context-3.2.xsd
http://www.springframework.org/schema/mvc 
http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd">


<!-- 防止拦截静态资源 -->


<mvc:resources location="/WEB-INF/images/" mapping="/images/**"/>
    <mvc:resources location="/WEB-INF/calendar/" mapping="/calendar/**"/>
    <mvc:resources location="/WEB-INF/css/" mapping="/css/**"/>
    <mvc:resources location="/WEB-INF/js/" mapping="/js/**"/>
<!-- 扫描注解 -->
<context:component-scan base-package="com.lanou.controller" />


<!-- 映射器 -->
<!-- 适配器 -->
<!-- 视图解析器 -->
<bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/" />
<property name="suffix" value=".jsp" />
</bean>

<!-- 扫描mvc的注解 -->
<mvc:annotation-driven>
<mvc:message-converters>
<bean class="org.springframework.http.converter.StringHttpMessageConverter"
id="stringHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<!-- 这里顺序不能反,一定先写text/html,不然ie下出现下载提示 -->
<value>text/html;charset=UTF-8</value>
<value>application/json;charset=UTF-8</value>
</list>
</property>
</bean>
<!-- 如果不使用jackson可使用fastjson版本JSON转换器 -->
<bean
class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"
id="mappingJacksonHttpMessageConverter">
<property name="objectMapper">
<!-- <bean class="com.threeStepTech.ObjectMapper.CustomObjectMapper"/> -->
<bean class="com.fasterxml.jackson.databind.ObjectMapper">
<property name="dateFormat">
<bean class="java.text.SimpleDateFormat">
<constructor-arg value="yyyy-MM-dd HH:mm:ss"
type="java.lang.String" />
</bean>
</property>
<property name="serializationInclusion">
<!-- 注入枚举类型,过滤不输出null -->
<value type="com.fasterxml.jackson.annotation.JsonInclude.Include">NON_NULL</value>
</property>
</bean>
</property>
<property name="supportedMediaTypes">
<list>
<!-- 这里顺序不能反,一定先写text/html,不然ie下出现下载提示 -->
<value>text/html;charset=UTF-8</value>
<value>application/json;charset=UTF-8</value>
</list>
</property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>

</beans>

Mybatis.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>


<settings>
<setting name="cacheEnabled" value="true" />
<setting name="lazyLoadingEnabled" value="true" />
<setting name="multipleResultSetsEnabled" value="true" />
<setting name="useColumnLabel" value="true" />
<setting name="useGeneratedKeys" value="false" />
<setting name="autoMappingBehavior" value="PARTIAL" />
<setting name="autoMappingUnknownColumnBehavior" value="WARNING" />
<setting name="defaultExecutorType" value="SIMPLE" />
<setting name="defaultStatementTimeout" value="25" />
<setting name="defaultFetchSize" value="100" />
<setting name="safeRowBoundsEnabled" value="false" />
<setting name="mapUnderscoreToCamelCase" value="false" />
<setting name="localCacheScope" value="SESSION" />
<setting name="jdbcTypeForNull" value="OTHER" />
<setting name="lazyLoadTriggerMethods" value="equals,clone,hashCode,toString" />
</settings>


<!-- 导入mapper文件 -->
<!-- <mappers> <mapper resource="com/lanou/mapper/RoleMapper.xml" /> </mappers> -->


<!-- 设置别名 -->
<!-- <typeAliases>
<typeAlias alias="Role" type="com.lanou.entity.SmbmsUser" />
</typeAliases> -->


<mappers>
<package name="com.lanou.mapper" />
</mappers>
</configuration>

ehcache.xml

<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    xsi:noNamespaceSchemaLocation="../config/ehcache.xsd">  
    
    <diskStore path="d:/tmp/ehcache/mybatis" />  
    <defaultCache
 maxElementsInMemory="12"
 eternal="false"
 timeToIdleSeconds="1200"
 timeToLiveSeconds="1200"
 overflowToDisk="true"
 maxElementsOnDisk="10000000"
 diskPersistent="false"
 diskExpiryThreadIntervalSeconds="120"
 memoryStoreEvictionPolicy="LRU"
 />
 
</ehcache>

log4j.properties

log4j.rootLogger=debug,stdout


### \u628A\u65E5\u5FD7\u4FE1\u606F\u8F93\u51FA\u5230\u63A7\u5236\u53F0 ### 
log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.Target=System.out 
log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout 


### \u628A\u65E5\u5FD7\u4FE1\u606F\u8F93\u51FA\u5230\u6587\u4EF6\uFF1Ajbit.log ### 
log4j.appender.logfile=org.apache.log4j.FileAppender 
log4j.appender.logfile.File=jbit.log 
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout 
log4j.appender.logfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %F %p %m%n   
     
log4j.logger.com.mybatis=DEBUG
log4j.logger.com.mybatis.common.jdbc.SimpleDataSource=DEBUG 
log4j.logger.com.mybatis.common.jdbc.ScriptRunner=DEBUG 
log4j.logger.com.mybatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG 
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG

log4j.logger.java.sql.ResultSet=DEBUG

generatorConfig.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
<!-- 制定驱动包位置 绝对位置 -->
<classPathEntry location="D:\Repositories\Maven\mysql\mysql-connector-java\5.1.39\mysql-connector-java-5.1.39.jar"/>
  <context id="context1">
  <!-- 数据库连接信息 -->
    <jdbcConnection connectionURL="jdbc:mysql://127.0.0.1:3306/test" driverClass="com.mysql.jdbc.Driver" password="root" userId="root" />
    <!-- 生成实体类 -->
    <javaModelGenerator targetPackage="com.lanou.entity" targetProject="rest/src/main/java" />
    <!-- mapper.xml -->
    <sqlMapGenerator targetPackage="com.lanou.mapper" targetProject="rest/src/main/java" />
    <!-- mapper接口 -->
    <javaClientGenerator targetPackage="com.lanou.mapper" targetProject="rest/src/main/java" type="XMLMAPPER" />
    <!-- 需要生成的表 -->
    <table selectByExampleQueryId="false" enableSelectByExample="false" enableDeleteByExample="false" enableUpdateByExample="false" enableCountByExample="false" domainObjectName="Dept" tableName="dept">
    <!-- 设置生成驼峰的设置 -->
    <property name="useActualColumnNames" value="true"/>
    </table>
  </context>
  
</generatorConfiguration>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值