廖雪峰历时3个月打磨出价值1980的数据分析教程,终终终于免费啦!

文章目录
  1. 1. Sping入门
    1. 1.0.1. 一些资源
    2. 1.0.2. Spring是什么
    3. 1.0.3. Spring作用
    4. 1.0.4. 适应范围
      1. 1.0.4.1. ioc是反转控制;
    5. 1.0.5. 第一个Spring程序
      1. 1.0.5.1. 关于bean的配置
      2. 1.0.5.2. 装配方式
      3. 1.0.5.3. 装配的内容
      4. 1.0.5.4. 自动装配的方式(四种)
  2. 1.1. Annotation的配置方法
    1. 1.1.0.1. annotation的配置步骤
  3. 1.1.1. 用于创建bean的注解
  4. 1.1.2. 用于控制bean的作用域注解,可将单例变成非单例
  5. 1.1.3. 用于装配的注解,为类中的其他类属性实例化

Sping入门

一些资源

  • sping.io
  • projects.spring.io/spring-framework
  • 其他

    Spring是什么

  • Spring是一个开源框架,为了解决企业应用开发的复杂性而创建的,但是现在已经不止于应用于企业应用
  • 是一个轻量级的控制反转(IoC)和面向切面的容器框架
  • 在Spring上开发应用更简单、方便、快捷,Spring带来了复杂的javaee开发的春天

Spring作用

  • 容器
  • 提供了多种技术支持(JMS MQ支持 UnitTest)
  • AOP(事务管理、日志等)
  • 提供了众多方便应用的辅助类(JDBC Template等)
  • 对主流应用框架(Hibernate等)提供了良好的支持
  • spring是一个一站式的框架;
  • spring主要有两个思想:IOC和AOP;
  • spring的主要的功能是整合其它框架;

    适应范围

  • 构建企业应用(SpringMVC+Spring+Hibernate/mybatis)
  • 单独使用Bean容器(Bean管理)
  • 单独使用AOP进行切面处理
  • 其他的Spring功能,如:对消息的支持等
  • 在互联网中应用
  • 抽象类代表一个概念(例如:飞机),接口代表一种能力(会飞的)

    ioc是反转控制;

  • 指的就是组件和组件之间的关系并不是由任意一端来进行维护的,而有由第三方来维护的;

    第一个Spring程序

  • 创建工程,增加spring支持
  • 在applicationContext.xml文件中定义bean
  • 创建工厂
    创建一个Spring工厂
    BeanFactory factory=new ClassPathXmlApplicationContext("aplicationContxt.xml");
    在工厂重获对象,默认bean是单例模式
    factory.getBean("name");
    

关于bean的配置

  • 默认bean是单例的(scope=”singleton”),但可以通过 scope属性修改成prototype;
  • spring工厂赋值在init方法之前

    装配方式

  1. 属性装配
  2. 构造方法装配

    装配的内容

  • bean
  • null
  • 集合
  • map
  • ref
  • value

    自动装配的方式(四种)

  • 案例代码下载
    default-autowire = byName
             byType
             constructor
             autoDetect
    

Annotation的配置方法

  • 案例代码下载
  • 控制层    业务层      持久层
  • action     service      dao

    annotation的配置步骤

  • 在配置文件中增加一个schema ,名子是context;
  • 使用标记来扫描包;

    #这个配置可以自动扫描com.dao,service,com.action三个包中的类,并且实例化
    <context:component-scan base-package="com.dao,service,com.action"></context:component-scan>
    

    用于创建bean的注解

    @Component    三层都可以  
    @Repository   写dao  (持久层)
    
    eg:
    @Repository("DeptDao")(如果只是@Repository,
    则factory.getBean("deptDaoImpl");中的"deptDaoImpl"和源类名不一样,第一个字母是小写)
    public class DeptDaoImpl implements DeptDao {
        ......
    }
    这样就可以在主函数里获得DeptDaoImpl类的实例:
    DeptDao dao =  (DeptDao) factory.getBean("DeptDao");
    
    @Service      写service (业务层 ) 
    @Controller   写action(控制层)
    

    用于控制bean的作用域注解,可将单例变成非单例

    @Scope("prototype")
    eg:
    @Controller
    @Scope("prototype")
    public class DeptAction {...}
    

    用于装配的注解,为类中的其他类属性实例化

    @Autowired  :建议使用
    @Resource
    @Inject
    
    eg:
    @Autowired   //实例化类DeptServise
    DeptServise deptService;
    

科学上网(翻墙)教程!

更多精彩内容,请扫描二维码关注公众号:轮子工厂,公众号内回复:

1.回复【图书】:获取15本新手自学编程,零基础入门经典学习教材;
2.回复【我要造轮子】:获取100多本计算机类经典书籍;
3.回复【开发工具】:获取几大主流编程语言的开发工具~
4.回复【内推】:可帮你内推到大厂工作。
文章目录
  1. 1. Sping入门
    1. 1.0.1. 一些资源
    2. 1.0.2. Spring是什么
    3. 1.0.3. Spring作用
    4. 1.0.4. 适应范围
      1. 1.0.4.1. ioc是反转控制;
    5. 1.0.5. 第一个Spring程序
      1. 1.0.5.1. 关于bean的配置
      2. 1.0.5.2. 装配方式
      3. 1.0.5.3. 装配的内容
      4. 1.0.5.4. 自动装配的方式(四种)
  2. 1.1. Annotation的配置方法
    1. 1.1.0.1. annotation的配置步骤
  3. 1.1.1. 用于创建bean的注解
  4. 1.1.2. 用于控制bean的作用域注解,可将单例变成非单例
  5. 1.1.3. 用于装配的注解,为类中的其他类属性实例化