圣诞节熬夜整理一套SSM模板,让你可以快速搭建环境(三)

简介: 三、Spring层1.spring-dao.xml2.spring-service.xml3.解决配置文件不在一块的情况4.业务类注入到Spring

三、Spring层


1.spring-dao.xml


Spring整合Mybatis的相关配置文件;整合dao层

<?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"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd">
    <!--1.关联数据库配置文件-->
    <context:property-placeholder location="classpath:database.properties"/>
    <!--2.连接池
        dbcp:半自动化操作,不能自动连接
        c3p0:自动化操作,可以自动化的加载配置文件,并且可以自动设置到对象中
        druid:
        hikari:
    -->
    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <property name="driverClass" value="${driver}"/>
        <property name="jdbcUrl" value="${url}"/>
        <property name="user" value="${user}"/>
        <property name="password" value="${password}"/>
        <!-- c3p0连接池的私有属性 -->
        <property name="maxPoolSize" value="30"/>
        <property name="minPoolSize" value="10"/>
        <!-- 关闭连接后不自动commit -->
        <property name="autoCommitOnClose" value="false"/>
        <!-- 获取连接超时时间 -->
        <property name="checkoutTimeout" value="10000"/>
        <!-- 当获取连接失败重试次数 -->
        <property name="acquireRetryAttempts" value="2"/>
    </bean>
    <!--3.sqlSessionFactory-->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="dataSource"/>
        <!--绑定Mybatis的配置文件-->
        <property name="configLocation" value="classpath:mybatis-config.xml"/>
    </bean>
    <!--4.配置dao接口扫描包,动态的实现了Dao接口可以注入到Spring容器中-->
    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <!--注入sqlSessionFactory-->
        <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
        <!--要扫描的dao包-->
        <property name="basePackage" value="com.hxl.dao"/>
    </bean>
</beans>


  • 连接池


  • dbcp:半自动化操作,不能自动连接


  • c3p0:自动化操作,可以自动化的加载配置文件,并且可以自动设置到对象中


  • druid: hikari:

微信图片_20211231144657.png


扫描上面的Factory,动态的扫描到beanName中


2.spring-service.xml

<?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"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd">
    <!--1.扫描service下的包-->
    <context:component-scan base-package="com.hxl.service"/>
    <!--2.将我们的所有业务类,注入到SpringIOC容器中,可以通过配置或者注解实现-->
    <bean id="BookServiceImpl" class="com.hxl.service.BookServiceImpl">
        <property name="bookMapper" ref="bookMapper"/>
    </bean>
    <!--3.声明式事务配置-->
    <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <!--注入数据源-->
        <property name="dataSource" ref="dataSource"/>
    </bean>
    <!--4.aop事务支持-->
</beans>


要用aop事务支持的话需要导入一个AOP的织入包aspectjweaver


3.解决配置文件不在一块的情况


这里要保证他们在一块,否则是整合不了的;


微信图片_20211231144802.png


圈中的地方汇报红,就证明没有整合到一块。


解决爆红的方式有两种


1.通过idea,让他们在同一个上下文中,module中使他们都在一个application下


微信图片_20211231144825.png


2.通过import引入进来


微信图片_20211231144906.png

<import resource="classpath:spring-service.xml"/>


3.可以在applicationContext中增加

<import resource="classpath:spring-dao.xml"/>
<import resource="classpath:spring-service.xml"/>


4.业务类注入到Spring


可以通过配置spring-service.xml

<bean id="BookServiceImpl" class="com.hxl.service.BookServiceImpl">
        <property name="bookMapper" ref="bookMapper"/>
    </bean>


注解实现


微信图片_20211231145005.png



相关文章
|
5月前
|
JavaScript Java 测试技术
基于ssm+vue.js+uniapp小程序的营商环境行动计划管理系统附带文章和源代码部署视频讲解等
基于ssm+vue.js+uniapp小程序的营商环境行动计划管理系统附带文章和源代码部署视频讲解等
37 4
|
5月前
|
JavaScript Java 测试技术
基于ssm+vue.js+uniapp小程序的环境保护生活App附带文章和源代码部署视频讲解等
基于ssm+vue.js+uniapp小程序的环境保护生活App附带文章和源代码部署视频讲解等
34 0
|
Java Spring
java202304java学习笔记第六十一天-ssm-spring配置文件-spring集成web环境
java202304java学习笔记第六十一天-ssm-spring配置文件-spring集成web环境
76 0
java202304java学习笔记第六十一天-ssm-spring配置文件-spring集成web环境
|
Java 数据库连接 Maven
用maven工程搭建SSM项目模板
用maven工程搭建SSM项目模板
Cannot build artifact ‘SSM模板+登录注册:war exploded‘ because it is included into a circular dependency (a
Cannot build artifact ‘SSM模板+登录注册:war exploded‘ because it is included into a circular dependency (a
121 0
|
XML 前端开发 架构师
圣诞节熬夜整理一套SSM模板,让你可以快速搭建环境(七)
九、修改删除书籍 添加日志功能 十、查询框
圣诞节熬夜整理一套SSM模板,让你可以快速搭建环境(七)
|
Java 应用服务中间件 Spring
【重温SSM框架系列】4 - Spring集成web环境(三层结构和配置监听器)
【重温SSM框架系列】4 - Spring集成web环境(三层结构和配置监听器)
190 0
【重温SSM框架系列】4 - Spring集成web环境(三层结构和配置监听器)
|
Java 数据库连接 测试技术
圣诞节熬夜整理一套SSM模板,让你可以快速搭建环境(五)
六、遇到的问题 1.项目无法部署 2.数据库连接错误c3p0 3.配置文件
圣诞节熬夜整理一套SSM模板,让你可以快速搭建环境(五)
|
前端开发 Java 应用服务中间件
圣诞节熬夜整理一套SSM模板,让你可以快速搭建环境(四)
四、SpringMVC 1.添加web支持 2.web.xml 3.spring-mvc.xml 4. Spring整合配置文件 5.xml中文件声明 五、配置tomcat
圣诞节熬夜整理一套SSM模板,让你可以快速搭建环境(四)