Spring基础

Spring

一、是什么

是一个轻量级的框架,框架是开发好的程序。在框架的基础上实现对应的功能,按照框架要求实现。

二、优势

1、方便解耦(耦合度:程序之间的依赖关系,耦合度越高程序修改越麻烦) 2、aop面向切面编程技术的支持
3、声明事务管理
4、降低JavaEE使用api的难度
5、方便测试
6、集合了多个优秀框架

三、分类

1、Spring data
2、Springboot
3、Springclound(分布式)

四、Spring使用

一)、项目的创建

1、导入jar包在这里插入图片描述 2、创建配置文件applictionContext.xml
3、配置文件添加需要的约束

二)、IOC使用

IOC就是把创建对象的权限交给了applictionContext.xml 文件,其中的每一个bean就是一个对象
IOC原理图
在这里插入图片描述

1、创建对象

<!--id:标准为和接口类名保持一致首字符小写    class:实现类全路径-->
<bean id="user" class="com.hp.pojo.User"></bean>

2、使用

@Test
    public void userDao(){
        //获取配置文件对象
        ClassPathXmlApplicationContext classPathXmlApplicationContext = new ClassPathXmlApplicationContext("appliconContext.xml");
        //1、通过getBean()方法获取类对象,强制转型
        UserDao userDao = (UserDao) classPathXmlApplicationContext.getBean("userDao");
        //1、通过getBean()方法获取类对象,写入父类名.class转型
        //User user = classPathXmlApplicationContext.getBean("user",User.class);
        //调用方法
        userDao.eat();
    }

二)、DI依赖注入

依赖注入就是给bean实例化对象的属性赋值

1)、构造方法注入

前提:创建实体类必须又无参构造方法

<!--set方法注入-->
<!-- class:实体类全路径  -->
    <bean id="user" class="com.hp.pojo.User">
<!--  name:实体类属性名   value:给name属性赋值   -->
        <property name="id" value="1"></property>
        <property name="name" value="zzc"></property>
<!--     ref:引入其他bean对象值   -->
        <property name="birthday" ref="birth"></property>
    </bean>
2)、set方法注入

前提:实体类必须有set方法赋值,get方法取值

<!--构造方法注入-->
    <bean id="user1" class="com.hp.pojo.User">
        <constructor-arg name="id" value="2"></constructor-arg>
        <constructor-arg name="name" value="gy"></constructor-arg>
        <constructor-arg name="birthday" ref="birth"></constructor-arg>
    </bean>
3)、p标签注入

前提:配置文件必须有p标签头部信息

<!--p标签表头信息-->
xmlns:p="http://www.springframework.org/schema/p"
<!--p标签注入-->
<!-- p:属性名="值"   -->
    <bean id="user2" class="com.hp.pojo.User" p:id="3" p:name="zc" />
3)、SPel表达式注入

前提:在创建一个实体类对象,改值类型与要赋值的属性类型相同

	private Date time;
    public Date getTime() {
        return new Date();
    }
<!--SPel属性注入-->
<!--获取值语法#{对象名.get属性名}-->
<!--    另一个实体类对象-->
    <bean id="userinfo" class="com.hp.pojo.Userinfo"></bean>
<!--    引入其他实体类对象属性值,前提必须改值类型与要赋值的属性类型相同-->
    <bean id="user3" class="com.hp.pojo.User">
        <property name="birthday" value="#{userinfo.time}"></property>
    </bean>
3)、集合注入

前提:在一个实体类创建多个对应集合类属性

	private String[] array;
    private List<String> list;
    private Set<String> set;
    private Map<String,String> map;
(1)、list集合注入
<!--  list  name="实体属性名"    -->
        <property name="list">
            <list>
<!--                赋值-->
                <value>1</value>
                <value>2</value>
                <value>3</value>
            </list>
        </property>
(2)、set集合注入
<!--    set    -->
        <property name="set">
            <set>
                <value>4</value>
                <value>5</value>
            </set>
        </property>
(3)、map集合注入
<!--map-->
        <property name="map">
            <map>
                <entry key="name" value="zzc"></entry>
            </map>
        </property>

五、XML开发和注解开发的优势

1、Xml开发维护起来方便,但是配置比较繁琐,代码量大。
2、注解开发维护困难,维护需要改源代码,工作量大。方面快速开发
3、Xml和注解混合开发。

数据中心机房是现代信息技术的核心设施,它承载着企业的重要数据和服务,因此,其基础设计与规划至关重要。在制定这样的方案时,需要考虑的因素繁多,包括但不限于以下几点: 1. **容量规划**:必须根据业务需求预测未来几年的数据处理和存储需求,合理规划机房的规模和设备容量。这涉及到服务器的数量、存储设备的容量以及网络带宽的需求等。 2. **电力供应**:数据中心是能源消耗大户,因此电力供应设计是关键。要考虑不间断电源(UPS)、备用发电机的容量,以及高效节能的电力分配系统,确保电力的稳定供应并降低能耗。 3. **冷却系统**:由于设备密集运行,散热问题不容忽视。合理的空调布局和冷却系统设计可以有效控制机房温度,避免设备过热引发故障。 4. **物理安全**:包括防火、防盗、防震、防潮等措施。需要设计防火分区、安装烟雾探测和自动灭火系统,设置访问控制系统,确保只有授权人员能进入。 5. **网络架构**:规划高速、稳定、冗余的网络架构,考虑使用光纤、以太网等技术,构建层次化网络,保证数据传输的高效性和安全性。 6. **运维管理**:设计易于管理和维护的IT基础设施,例如模块化设计便于扩展,集中监控系统可以实时查看设备状态,及时发现并解决问题。 7. **绿色数据中心**:随着环保意识的提升,绿色数据中心成为趋势。采用节能设备,利用自然冷源,以及优化能源管理策略,实现低能耗和低碳排放。 8. **灾难恢复**:考虑备份和恢复策略,建立异地灾备中心,确保在主数据中心发生故障时,业务能够快速恢复。 9. **法规遵从**:需遵循国家和地区的相关法律法规,如信息安全、数据保护和环境保护等,确保数据中心的合法运营。 10. **扩展性**:设计时应考虑到未来的业务发展和技术进步,保证机房有充足的扩展空间和升级能力。 技术创新在数据中心机房基础设计及规划方案中扮演了重要角色。例如,采用虚拟化技术可以提高硬件资源利用率,软件定义网络(SDN)提供更灵活的网络管理,人工智能和机器学习则有助于优化能源管理和故障预测。 总结来说,一个完整且高效的数据中心机房设计及规划方案,不仅需要满足当前的技术需求和业务目标,还需要具备前瞻性和可持续性,以适应快速变化的IT环境和未来可能的技术革新。同时,也要注重经济效益,平衡投资成本与长期运营成本,实现数据中心的高效、安全和绿色运行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值