ssm框架整合

 

 

文章目录

 


前言

小白记录:
   ssm框架需要需要导入的jar包和xml文件需要的配置础内容。


 

一、ssm框架简介?

   ssm框架整合就是分别实现spring与springMVC、spring与mybatis的整合,而实现整合的主要工作就是把springMVC、mybatis中的对象配置到sprin个容器中,交给spring来管理,springMVC是spring为展现层提供的MVC框架,springMVC与spring可以无缝集成

二、使用步骤

1.引入jar包

 <dependencies>
<!--    日志-->
    <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <version>1.2.17</version>
    </dependency>
    <!--dbcp连接池 还有druid、C3P0-->
    <dependency>
      <groupId>org.apache.commons</groupId>
      <artifactId>commons-dbcp2</artifactId>
      <version>2.7.0</version>
    </dependency>
<!--      springMVC-->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <version>3.2.13.RELEASE</version>
    </dependency>
<!--      JdbcTemplate所需要的相关jar包,包含对Spring对JDBC数据访问进行封装的所有类-->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-jdbc</artifactId>
      <version>3.2.13.RELEASE</version>
    </dependency>
<!--      基于aop的依赖jar包,可以实现切面过滤拦截-->
    <dependency>
      <groupId>org.aspectj</groupId>
      <artifactId>aspectjweaver</artifactId>
      <version>1.9.4</version>
    </dependency>
<!--      整合包-->
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis-spring</artifactId>
      <version>1.2.2</version>
    </dependency>
    <dependency>
      <groupId>javax.annotation</groupId>
      <artifactId>jsr250-api</artifactId>
      <version>1.0</version>
    </dependency>
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis</artifactId>
      <version>3.2.3</version>
    </dependency>
<!--      apache提供了一个加密包commons-codec-->
    <dependency>
      <groupId>commons-codec</groupId>
      <artifactId>commons-codec</artifactId>
      <version>1.15</version>
    </dependency>
<!--      MySQL驱动包-->
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.10</version>
    </dependency>
<!--      标签库-->
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>jstl</artifactId>
      <version>1.2</version>
    </dependency>
<!--      文件上传-->
    <dependency>
      <groupId>commons-fileupload</groupId>
      <artifactId>commons-fileupload</artifactId>
      <version>1.4</version>
    </dependency>
<!--      Json是一种轻量级的数据交换格式,FastJSON是一个Java语言编写的高性能,功能完善-->
    <dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>fastjson</artifactId>
      <version>1.2.5</version>
    </dependency>
<!--      jsp自定义标签需要的jar包-->
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>3.1.0</version>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>javax.servlet.jsp</groupId>
      <artifactId>jsp-api</artifactId>
      <version>2.2</version>
      <scope>provided</scope>
    </dependency>
<!--      测试包-->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

2.配置spring核心文件

//表明cn.gacl.java包及其子包中,如果某个类的头上带有特定的注解

//@Component,@Repository,@Service,@Controller,就会将这个对象作为Bean注册进Spring容器。

    
<context:component-scan base-package="cn.smbms"/>
//加载静态资源,也可以配置全局的异常处理器
<mvc:resources mapping="/statics/**" location="/statics/"></mvc>
<!--    数据源   minIdle:闲置最少连接   maxIdle:闲置最多连接-->
    <bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource">
        <property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
        <property name="url" value="jdbc:mysql://localhost:3306/smbms"></property>
        <property name="username" value="root"></property>
        <property name="password" value="root"></property>
        <property name="minIdle" value="10"></property>
        <property name="maxIdle" value="50"></property>
    </bean>
<!--    sqlSessionFactory连接jdbc-->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="dataSource"></property>
        <property name="typeAliasesPackage" value="cn.smbms.pojo"></property>
        <property name="mapperLocations" value="classpath:Mapper/*.xml"></property>
    </bean>
<!--    MapperFactoryBean的出现为了代替手工使用SqlSessionDaoSupport或SqlSessionTemplate
        编写数据访问对象(DAO)的代码,使用动态代理实现。-->
    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="cn.smbms.dao"/>
    </bean>

<!--    spring提供的事务管理器DataSourceTransactionManager-->
    <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <property name="dataSource" ref="dataSource"/>
    </bean>
<!--    事务配置-->
    <tx:advice id="mytx" transaction-manager="transactionManager">
        <tx:attributes>
            <tx:method name="*add*"/>
            <tx:method name="*update*"/>
            <tx:method name="*del*"/>
            <tx:method name="*modify*"/>
        </tx:attributes>
    </tx:advice>
<!--    aop面向切面编程-->
    <aop:config>
        <aop:pointcut id="pc" expression="execution(* cn.smbms.service..*.*(..))"/>
        <aop:advisor advice-ref="mytx" pointcut-ref="pc"/>
    </aop:config>
<!--    自定义类型转换器-->
    <bean id="cs" class="org.springframework.context.support.ConversionServiceFactoryBean">
    <property name="converters">
        <set>
            <bean class="cn.smbms.tools.dateTimeByConverler"></bean>
        </set>
    </property>
</bean>
<!--    注解驱动-->
    <mvc:annotation-driven conversion-service="cs">
        <mvc:message-converters>
<!--   在RsponseBody注解下,配置StringHttpMessageConverter设置编译编码-->
            <bean class="org.springframework.http.converter.StringHttpMessageConverter">
                <property name="supportedMediaTypes">
                    <list>
                        <value>application/json;charset=UTF-8</value>
                        <value>application/xml;charset=UTF-8</value>
                        <value>text/html;charset=UTF-8</value>
                    </list>
                </property>
            </bean>
<!--在SpringMVC中,需要进行JSON转换时,通常会使用FastJson提供的FastJsonHttpMessageConverter来完成,
                 它的好处就是你不必将对象转化成JSON字符串,直接把获取的对象返回即可-->
            <bean class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
                <property name="features">
                    <array>
                        <value>WriteDateUseDateFormat</value>
                    </array>
                </property>
            </bean>
        </mvc:message-converters>
    </mvc:annotation-driven>
<!--    配置无法访问静态资源-->
    <mvc:resources mapping="/static/**" location="/static/"></mvc:resources>
<!--    视图解析器-->
   <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
       <property name="prefix" value="/WEB-INF/pages/"></property>
       <property name="suffix" value=".jsp"></property>
   </bean>
<!--    上传文件,maxUploadSize上传文件大小,defaultEncoding默认编码方式-->
    <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
        <property name="maxUploadSize" value="10000000"></property>
        <property name="defaultEncoding" value="utf-8"></property>
    </bean>
<!--    拦截器,这里用于没有登录不许访问-->
    <mvc:interceptors>
        <mvc:interceptor>
            <mvc:mapping path="/user/**"/>
            <mvc:mapping path="/provider/**"/>
            <mvc:mapping path="/bill/**"/>
            <mvc:mapping path="/frame/**"/>
            <bean class="cn.smbms.filter.SysInterCeptor"></bean>
        </mvc:interceptor>
    </mvc:interceptors>

总结

这里对文章进行总结:
新手学习ssm框有很多包要导入,还有很多bean对象,这些不需要记住,但是要知道jar包和xml文件中bean的用法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值