• Spring


    目录

    一、Spring的介绍

    二、Spring中IoC的特点


    一、Spring的介绍

    1.1 什么是Spring?

     Spring是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。

    1.2 Spring能够做什么?

     Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情, 然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益

    目的:解决企业应用开发的复杂性
    功能:使用基本的JavaBean代替EJB,并提供了更多的企业应用功能
    范围:任何Java应用

    二、Spring中IoC的特点

    但在Pom.xml中,放入一下代码,目的:将当前项目所用的jar包依赖版本定义在外部,目的在于所有jar包版本进行统一管理

    1. <properties>
    2. <spring.version>5.0.1.RELEASEspring.version>
    3. <javax.servlet.version>4.0.0javax.servlet.version>
    4. <junit.version>4.12junit.version>
    5. properties>

     创建一个接口UserBiz

    一个接口必然有一个实现类,创建实现类
    UserBizImpl1:

    创建Web:
    OrderAction:

     

    UserAction:

     

     spring/pom.xml

    需要导入jar包依赖

    1. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    2. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    3. <modelVersion>4.0.0modelVersion>
    4. <groupId>com.javaxlgroupId>
    5. <artifactId>springartifactId>
    6. <packaging>warpackaging>
    7. <version>0.0.1-SNAPSHOTversion>
    8. <name>spring Maven Webappname>
    9. <url>http://maven.apache.orgurl>
    10. <properties>
    11. <spring.version>5.0.1.RELEASEspring.version>
    12. <javax.servlet.version>4.0.0javax.servlet.version>
    13. <junit.version>4.12junit.version>
    14. properties>
    15. <dependencies>
    16. <dependency>
    17. <groupId>junitgroupId>
    18. <artifactId>junitartifactId>
    19. <version>3.8.1version>
    20. <scope>testscope>
    21. dependency>
    22. <dependency>
    23. <groupId>org.springframeworkgroupId>
    24. <artifactId>spring-contextartifactId>
    25. <version>${spring.version}version>
    26. dependency>
    27. <dependency>
    28. <groupId>org.springframeworkgroupId>
    29. <artifactId>spring-aspectsartifactId>
    30. <version>${spring.version}version>
    31. dependency>
    32. <dependency>
    33. <groupId>junitgroupId>
    34. <artifactId>junitartifactId>
    35. <version>${junit.version}version>
    36. <scope>testscope>
    37. dependency>
    38. <dependency>
    39. <groupId>javax.servletgroupId>
    40. <artifactId>javax.servlet-apiartifactId>
    41. <version>${javax.servlet.version}version>
    42. <scope>providedscope>
    43. dependency>
    44. dependencies>
    45. <build>
    46. <finalName>springfinalName>
    47. <plugins>
    48. <plugin>
    49. <groupId>org.apache.maven.pluginsgroupId>
    50. <artifactId>maven-compiler-pluginartifactId>
    51. <version>3.7.0version>
    52. <configuration>
    53. <source>1.8source>
    54. <target>1.8target>
    55. <encoding>UTF-8encoding>
    56. configuration>
    57. plugin>
    58. plugins>
    59. build>
    60. project>

     spring-conctext.xml:

    1. <beans xmlns="http://www.springframework.org/schema/beans"
    2. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    3. xmlns:aop="http://www.springframework.org/schema/aop"
    4. xmlns:context="http://www.springframework.org/schema/context"
    5. xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
    6. http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.3.xsd
    7. http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd">
    8. <bean class="com.zxw.biz.UserBizImpl1" id="userBiz">bean>
    9. <bean class="com.zxw.web.UserAction" id="userAction">
    10. <property name="userBiz" ref="userBiz">property>
    11. bean>
    12. <bean class="com.zxw.web.OrderAction" id="orderAction">
    13. <property name="userBiz" ref="userBiz">property>
    14. bean>
    15. beans>

    新建一个demo

    demo:

    1. package com.zxw.ioc.demo;
    2. import org.springframework.context.support.ClassPathXmlApplicationContext;
    3. import com.zxw.web.OrderAction;
    4. import com.zxw.web.UserAction;
    5. /*
    6. * 1.对Spring框架的配置文件进行建模、建模之后, spring-context.xml所有的javabean信息都会加载spring 容器上下文中
    7. * 2.上下文中就包哈了 spring-context.xml 所有对象
    8. *
    9. * IOC的特点 - 什么叫做控制反转
    10. * 指的是将创建对象的权利反转spring容器来完成
    11. *
    12. */
    13. public class Demo1 {
    14. @SuppressWarnings("resource")
    15. public static void main(String[] args) {
    16. ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("/spring-context.xml");
    17. UserAction userAction = (UserAction) context.getBean("userAction");
    18. userAction.list();
    19. OrderAction orderAction = (OrderAction) context.getBean("orderAction");
    20. orderAction.list();
    21. }
    22. }

     

    效果:

     

     

  • 相关阅读:
    简述Vuex(重要)
    基于RT-Thread的智能家居助手
    虚拟化 vs. 裸金属:K8s 部署环境架构与特性对比
    小程序瀑布流实现
    Channel
    2024年软件测试面试题大全【答案+文档】
    Java 运算符
    【数据结构】单链表的基本操作(节点建立、插入删除)
    Dubbo入门使用
    Linux入门之使用 arp 管理ARP协议缓存
  • 原文地址:https://blog.csdn.net/m0_62327548/article/details/126180989