Spring详细相关配置,及概念

Spring详细相关配置,及概念

Spring 快速入门

  • 1.导入Spring开发基本包坐标
    • 导入坐标
  • 2.编写Dao接口和实现类
    • 创建Bean
  • 3.创建Spring核心配置文件
    • 创建applicationContext.xml
  • 4.在Spring核心配置文件中配置UserDaoImpl
    • 在配置文件中进行配置Bean
     <bean id="userDao" class="com.xunmeng.impl.UserDaoImpl" scope="singleton" init-method="init" destroy-method="distory"></bean>
    
  • 5.使用Spring的API获得Bean实例
    • 创建ApplicationContext对象getBean

Spring Bean实例化三种方式

  • 1.无参构造方法实例化
<bean id="UserDao" class="com.xunmeng.day_02.dao.Impl.UserDaoImpl"></bean>
  • 2.工厂静态方法实例化
    <bean id="UserDao_gcj" class="com.xunmeng.day_02.dao.Impl.UserDaoImpl" factory-method="getUserDao"></bean>
  • 3.工厂实例方法实例化

Spring 注入数据的三种数据类型

  • 1.普通数据类型
  • 2.引用数据类型
  • 3.集合数据类型

Spring 引入其它配置文件

<import resource="applicationContext-xxx.xml"/>

Spring 配置数据源

  • 1.1数据源的开发步骤
    • 导入Spring框架
    • ①导入数据源的坐标和数据库驱动坐标
    • ②创建数据源对象
    • ③设置数据源的基本链接数据
    • 使用数据源获取链接资源和归还连接资源

Spring 注解

  • 1.在Springxml配置注解扫描
  • 2.在bean中添加注解
  • 3.Spring注解
    • @Configuration:用于指定当前类是一个Spring配置类
    • @ComponentScan:用于制定Spring的xml在初始化容器时要扫描的包
    • @Bean:使用在方法上,标注将该方法的返回值储存到Spring容器中
    • @PropetySource:用于加载.properties文件的配置
    • @Import:用于导入其他配置类

Spring 集成Junit

  • 让SpringJunit负责创建Spring容器,但是需要将配置文件的名称告诉它
  • 将需要进行测试Bean直接在测试类中进行注入
  • Spring集成Junit步骤
    • ①导入Spring集成Junit的坐标
    • ②使用@Runwith注解替换原来的运行器
    • ③使用@ContextConfiguration指定配置文件或配置类
    • ④使用@Autowired注入需要测试的对象
    • ⑤创建测试方法进行测试

Spring 集成web环境

  • Spring集成web环境步骤
    • ①配置ContextLoaderListener监听器
    • ②使用WebApplicationContextUtils获得应用上下文

SpringMVC 文件上传

  • 1.文件上传三要素
    • 1.表单项type=”file“
    • 2.表单的提交方式是post
    • 3.表单的entype属性是多部分表单形式,以及enctype=“multipart/form-data”
  • 2.单文件上传步骤
    • 导入fileupload和io坐标
        <dependency>
            <groupId>commons-fileupload</groupId>
            <artifactId>commons-fileupload</artifactId>
            <version>1.3.1</version>
        </dependency>
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.3</version>
        </dependency>
    
    • 配置文件上传解析器
        <bean id="commonsMultipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
        <property name="defaultEncoding" value="UTF-8"></property>
        <property name="maxUploadSize" value="500000"></property>
    </bean>
    
    • 编写文件上传代码

Spring SpringMVC拦截器-HandlerInterceport

  • 自定义拦截器要点
    • ①创建拦截器实现HandlerIntereceport接口
    • ②在spring-mvc配置文件中配置拦截器
    <mvc:interceptors>
        <mvc:interceptor>
            <mvc:mapping path="/**"/>
            <bean class="com.xunmeng.Interceport.MyhandleInterceport"></bean>
        </mvc:interceptor>
    </mvc:interceptors>
    
    • ③测试拦截器的拦截效果

SpringMVC 异常处理器

  • 处理方式
    • 配置简单异常处理器SimpleMappingExceptionResolver
      –只需要再spring-mvc中配bean就可以了
    • 自定义异常处理器
  • 自定义异常处理步骤:
    • ①创建异常处理器实现HandleExceptionResolver
    • ②配置异常处理器,直接配bean
    • ③编写异常页面
    • ④测试异常跳转
    <bean class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
        <property name="defaultErrorView" value="/error.jsp"/>
        <property name="exceptionMappings">
            <map>
                <entry key="ClassCastException" value="/error.jsp"></entry>
            </map>
        </property>
    </bean>
    

Spring AOP

  • 使用注解方式配置步骤
    • 1.先导对应的包aspectjweaver
    • 2.创建对应的目标类和目标类实现的接口
    • 3.创建切面类
    • 4.注解配置:
      • 1.先在目标类上加上@Component,放入Spring容器中
      • 2.再在切面类上加上@Component和@Aspect放入Spring容器中,并表明他是一个切点
      • 3.再把切点和通知织入一起,通知函数上加上@Before等通知注解标识。
      1. 测试

Spring 基于XML方式的声明控制

<!--    配置连接池-->
    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"/>
<!--配置平台事务管理器-->
    <bean id="dataSourceTransactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<!--        配置参数-->
        <property name="dataSource" ref="dataSource"/>
    </bean>

<!--    通知 事务的增强-->
    <tx:advice id="txAdvice" transaction-manager="dataSourceTransactionManager">
        <tx:attributes>
            <tx:method name="*"/>
        </tx:attributes>
    </tx:advice>

<!--    配置事务的织入-->
    <aop:config>
        <aop:advisor advice-ref="txAdvice" pointcut="execution(* com.xunmeng.service.*.*(..))"></aop:advisor>
    </aop:config>

Spring 基于注解方式的声明控制

  • 1.配置步骤
    • 1.将service层类加上@Component注解将其加入到Spring容器中,当然如果service要调用dao层,则dao层类也要加上@Component注解,将其加入到Spring容器中,以便于被注入导service中。
    • 2.在spring.xml中配置相关平台事务管理器驱动,以便程序知道是那个给驱动。
    <!--配置平台事务管理器-->
    <bean id="dataSourceTransactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <!--配置参数-->
        <property name="dataSource" ref="dataSource"/>
    </bean>
    
    • 使用@transactional在需要进行事务控制的类上或是方法上修饰,注解可用的属性与xml配置方式一致,例如隔离级别、传播行为等。
  • 2.注意点:
    • 注解使用在类上,那么该类下的所有方法都使用同一套注解参数配置。
    • 使用在方法上,不同的方法可以采用不同的事务参数配置。
    • xml配置文件中要开启事务的注解驱动
    <tx:annotation-driven transation-manager="{平台事务管理器id}"/>
    
  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值