spring入门案例 idea创建spring项目

Spring介绍

Spring概述

Spring是一个开源框架,Spring是2003年兴起的轻量级java开发框架,由Rod Johnson 在其著作 Expert One-On-One J2EE Development and Design 中阐述的部分理念和原形衍生而来。它是为了解决企业级开发的复杂性而创建的。Spring使用基本的javaBaen来完成以前只可能由EJB完成的事情,然而Spring的用途不仅限于服务器端的开发,从简单性、可测试性、低耦合的角度而言任何java应用都可以在spring中受益。

简单的来说Spring就是轻量级的控制反转(IOC)和面向切面(AOP)的容器框架。

Spring的好处

方便解耦,简化开发

Spring就是一个大工厂,专门负责生成Bean,可将所有对象,和依赖关系维护由Spring管理。

AOP编程的支持

Spring提供面向切面编程,可以方便的实现对程序进行拦截、运行监控等功能。

声明事务的支持

只需要通过配置就可以对事务进行管理,而无需手动编程。

方便程序的测试

Spring对junit支持,可以通过注解方便的测试Spring程序。

方便集成各种优秀框架

Spring不排斥各种优秀的框架,其内部提供了对各种优秀框架的支持,比如Struts2、Hibernate、MyBatis等。

降低javaEE API的使用难度

对java EE 开发中一些难用的API(JDBC、JavaMail)等都提供了封装 ,使这些API应用难度大大降低。

Spring体系结构

Spring框架是一个分层架构,它包含一系列的功能要素,并被分为大约20个模块,这些模块分为:

Core Container、Data Access/intergration、Web、AOP(Aspect Oriented Programming)、Instrumentation和测试部分,如下图所示:

在项目中的架构

Web层:Struts2、SpringMVC

dao层:Hibernate、Mybatis

Spring入门案例

编写流程

  创建项目

导入jar

然后点击Next

然后点击Finish

下面是创建好的项目结构,我创建了bean包,测试类、和配置文件

idea可以自动生成是Spring的配置文件  步骤是在需要生成配置文件的目录上鼠标右键--》New--》XML Configuration File--》Spring Config--》然后起文件名点击Finish

下面是写好的测试 Person类

package com.spring.bean;

/**
* @Author: 007
* @Date: 2019/1/27/0027 10:20
* @Version 1.0
* @Description: 创建测试用的bean
*/
public class Person {
private String name; //姓名
private int age; //年龄 public Person() {
} public Person(String name, int age) {
this.name = name;
this.age = age;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public int getAge() {
return age;
} public void setAge(int age) {
this.age = age;
} @Override
public String toString() {
return "Person{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}

配置Spring的核心xml文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<!--配置bean
id:给配置的类起个后续在容器中获取用的id
class:类所在的路径
--> <bean id="Person" class="com.spring.bean.Person"/>
</beans>

在程序中读取Spring的配置文件来获取Bean(Bean其实就是一个new好的对象)

package com.spring.test;

import com.spring.bean.Person;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext; /**
* @Author: 007
* @Date: 2019/1/27/0027 10:21
* @Version 1.0
* @Description:
*/
public class Test {
public static void main(String[] args) {
//查询类路径 加载配置文件
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("beans.xml");
//根据id获取bean
//Spring就是一个大工厂(容器)专门生成bean bean就是对象
Person person = (Person) applicationContext.getBean("Person");
//输出获取到的对象
System.out.println("person = " + person);
}
}

下面是测试完成后的截图

至此入门案例编写完成

-------------------- end --------------------

Spring入门案例 idea创建Spring项目的更多相关文章

  1. Spring入门(一):创建Spring项目

    本篇博客作为Spring入门系列的第一篇博客,不会讲解什么是Spring以及Spring的发展史这些太理论的东西,主要讲解下如何使用IntelliJ IDEA创建第一个Spring项目以及通过一个示例 ...

  2. spring入门--spring入门案例

    spring是一个框架,这个框架可以干很多很多的事情.感觉特别吊.但是,对于初学者来说,很难理解spring到底是干什么的.我刚开始的时候也不懂,后来就跟着敲,在后来虽然懂了,但是依然说不明白它到底是 ...

  3. Spring(二)--Spring入门案例

    Spring入门案例 1.需要的实体类 2.需要的接口和实现类 3.需要的service和实现类 /** * service层的作用 * 在不改变dao层代码的前提下,增加业务逻辑操作 */ publ ...

  4. 使用Spring Boot和Gradle创建AngularJS项目

    Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的 ...

  5. Spring入门(10)-Spring JDBC

    Spring入门(10)-Spring JDBC 0. 目录 JdbcTemplate介绍 JdbcTemplate常见方法 代码示例 参考资料 1. JdbcTemplate介绍 JdbcTempl ...

  6. Spring入门(3)-Spring命名空间与Bean作用域

    Spring入门(3)-Spring命名空间与Bean作用域 这篇文章主要介绍Spring的命名空间和Bean作用域 0. 目录 Spring命名空间 Bean作用域 1. Spring命名空间 在前 ...

  7. Spring入门(十四):Spring MVC控制器的2种测试方法

    作为一名研发人员,不管你愿不愿意对自己的代码进行测试,都得承认测试对于研发质量保证的重要性,这也就是为什么每个公司的技术部都需要质量控制部的原因,因为越早的发现代码的bug,成本越低,比如说,Dev环 ...

  8. 【SSRS】入门篇(一) -- 创建SSRS项目

    原文:[SSRS]入门篇(一) -- 创建SSRS项目 在本篇中,您将学习如何在 SQL Server Data Tools (SSDT) 中创建报表服务器项目. 报表服务器项目用于创建在报表服务器中 ...

  9. spring-cloud-Zuul学习(一)【基础篇】--入门案例【重新定义spring cloud实践】

                                                                                                    -- 2 ...

随机推荐

  1. [Swift实际操作]九、完整实例-(4)在项目中使用CocoaPod管理类库和插件

    本文将为你演示,如何使用CocoaPod第三方类库管理工具,在项目中安装未来需要使用的类库.首先创建一份文本文件.可以使用一个脚本创建文件,你可以采用自己的方式是创建一份文本文件,接着在文件名称上点击 ...

  2. selenium+PhantomJS简单爬虫

    #!/usr/bin/env python # -*- coding: utf-8 -*- ''' Created on 2017年10月19日 @author: zzy ''' import tim ...

  3. controller运行springboot项目

    搭建完springboot项目后,新建HelloController.java文件,编写main方法,启动HelloController.java,具体代码如图: 在浏览器访问127.0.0.1:80 ...

  4. c语言数据结构学习心得——查找

    顺序查找(线性查找) 主要用于在线性表中的查找 int Search1(int a[],int n,int key){ ;i<=n;i++){ //注意从1开始 if(a[i]==key)ret ...

  5. 《Andrew Ng深度学习》笔记3

    浅层神经网络 初步了解了神经网络是如何构成的,输入+隐藏层+输出层.一般从输入层计算为层0,在真正计算神经网络的层数时不算输入层.隐藏层实际就是一些算法封装成的黑盒子.在对神经网络训练的时候,就是对神 ...

  6. TFS 30177 错误

    不知道什么原因,创建团队项目失败.   参考 下面链接成功解决,表示感谢.   http://www.cnblogs.com/Wendy_Yu/archive/2012/07/26/TFS2010_T ...

  7. anaconda 换源

    2019.4.24更新: 清华源停止维护了(见:https://mirrors.tuna.tsinghua.edu.cn/news/close-anaconda-service/).以下方法不再适用. ...

  8. POJ_2431 Expedition 【数据结构】

    一.题面 POJ2431 二.分析 主要说几个坑 1.给出的点需要根据下标排序. 2.根据不同的方式要把起始点或者终点加进去.我没有转换距离,而是直接从起始点到终点根据距离不断相减判断的,那么起点就是 ...

  9. AtCoder Beginner Contest 113 B

    B - Palace Time limit : 2sec / Memory limit : 1024MB Score: 200 points Problem Statement A country d ...

  10. log4j详解与实战

    [转自] http://www.iteye.com/topic/378077 log4j是一个非常强大的log记录软件,下面我们就来看看在项目中如何使log4j. 首先当然是得到log4j的jar档, ...