Spring.xml

本文介绍了一个使用Spring MVC框架与MyBatis ORM框架集成的示例配置。该配置详细展示了如何设置数据源、SQL会话工厂、Mapper扫描器及Spring MVC的文件上传处理器等关键组件。
<?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:context="http://www.springframework.org/schema/context"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xmlns:beans="http://www.springframework.org/schema/beans"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xsi:schemaLocation="
        http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/aop
        http://www.springframework.org/schema/aop/spring-aop.xsd
        http://www.springframework.org/schema/mvc
        http://www.springframework.org/schema/mvc/spring-mvc.xsd
        http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">

<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<!-- 自动扫描mapping.xml文件 -->
<property name="mapperLocations" value="classpath:mapper/*.xml"></property>
</bean>

<bean id="dataSource" class="org.apache.ibatis.datasource.pooled.PooledDataSource">
<property name="driver" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/tces?useUnicode=true&amp;characterEncoding=utf-8" />
<property name="username" value="root" />
<property name="password" value="" />
<!-- 事务是否自动提交 -->
<property name="defaultAutoCommit" value="true"></property>
</bean>

<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="mapper"/>
</bean>

<!--扫描通过注解配置的bean-->
    <context:component-scan base-package="service"/>
    
<!-- SpringMVC上传文件时,需要配置MultipartResolver处理器 -->
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="defaultEncoding" value="UTF-8" />
<!-- 指定所上传文件的总大小,单位字节。注意maxUploadSize属性的限制不是针对单个文件,而是所有文件的容量之和 -->
<property name="maxUploadSize" value="10240000" />
</bean>
</beans>
### Logback-Spring.XML 和 Logback.XML 的区别 在 Spring Boot 中,`logback-spring.xml` 和 `logback.xml` 是两种不同的日志配置文件,它们的主要差异在于如何处理环境变量以及与 Spring 应用程序上下文的集成。 #### 文件位置和优先级 当应用程序启动时,Spring Boot 会自动查找名为 `logback-spring.xml` 或者 `logback.xml` 的资源文件来初始化日志记录器。如果两者都存在,则前者会被加载而不是后者[^1]。这意味着如果有更具体的 spring 版本化配置需求,应该首选使用带有 `-spring` 后缀的那个文件名。 #### 对 Spring 属性的支持 `logback-spring.xml` 可以访问由 Spring Environment 提供的所有属性,并且能够利用这些属性来进行动态的日志设置调整。例如,可以通过 `${}` 占位符语法引用来自 application.properties 或其他地方定义好的键值对数据[^2]: ```xml <configuration> <!-- 使用 Spring 环境中的属性 --> <property name="LOG_PATH" value="${app.log.path:/var/log/myapp}"/> <appender name="FILE" class="ch.qos.logback.core.FileAppender"> <file>${LOG_PATH}/application.log</file> ... </appender> </configuration> ``` 相比之下,普通的 `logback.xml` 并不具备直接读取外部源所提供的参数的能力;它仅限于解析内部已知的一些固定占位符(比如 JVM 参数)。 #### 自动条件配置 另一个重要特性是,在 `logback-spring.xml` 中可以应用一些特殊的标签如 `<springProfile>` 来根据当前激活的 profile 实现有条件的日志逻辑切换[^3]: ```xml <configuration> <springProfile name="dev"> <logger name="com.example.myapp" level="DEBUG"/> </springProfile> <springProfile name="prod"> <logger name="com.example.myapp" level="INFO"/> </springProfile> </configuration> ``` 上述例子展示了根据不同运行模式改变特定包下输出级别的方式。而标准版则无法识别此类指令。 综上所述,虽然两个文件都能完成基本功能,但是为了充分利用 Spring Boot 所带来的灵活性及便利性,建议采用 `logback-spring.xml` 进行更为精细复杂的场景定制。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值