SpringBoot基本概念及快速入门(IOC/DI)


SpringBoot基本概念

    之前版本缺点:繁多的配置/低下的开发效率/复杂的部署流程以及第三方技术集成难度大.

    SpringBoot优点:

  1. 快速构建项目
  2. 对主流开发框架的无配置集成
  3. 项目可以独立运行(内嵌入Servlet容器)
  4. 提供运行时的应用监控
  5. 极大的提高了开发/部署效率
  6. 与云计算天然集成

快速入门

    1.创建maven项目

    2.导入依赖

    



org.springframework
spring-webmvc
4.3.7.RELEASE



com.jolbox
bonecp-spring
0.8.0.RELEASE



${project.artifactId}



org.apache.maven.plugins
maven-resources-plugin

UTF-8




org.apache.maven.plugins
maven-compiler-plugin

1.7
1.7
UTF-8







org.apache.tomcat.maven
tomcat7-maven-plugin
2.2



    3.创建User对象

public class User {


    private String username;


    private String password;


    private Integer age;


    public String getUsername() {
        return username;
    }


    public void setUsername(String username) {
        this.username = username;
    }


    public String getPassword() {
        return password;
    }


    public void setPassword(String password) {
        this.password = password;
    }


    public Integer getAge() {
        return age;
    }


    public void setAge(Integer age) {
        this.age = age;
    }


}

    4.编写UserDao用于模拟数据库交互

public class UserDAO {
    
    public List queryUserList(){
        List result = new ArrayList();
        // 模拟数据库的查询
        for (int i = 0; i < 10; i++) {
            User user = new User();
            user.setUsername("username_" + i);
            user.setPassword("password_" + i);
            user.setAge(i + 1);
            result.add(user);
        }
        return result;
    }


}
    5.编写UserService用于实现User数据操作

@Service
public class UserService {


    @Autowired // 注入Spring容器中的bean对象
    private UserDAO userDAO;


    public List queryUserList() {
        // 调用userDAO中的方法进行查询
        return this.userDAO.queryUserList();
    }


}

    6.编写SpringConfig用于实例化Spring容器

@Configuration //通过该注解来表明该类是一个Spring的配置,相当于一个xml文件
@ComponentScan(basePackages = "当前类的包路径") //配置扫描包
public class SpringConfig {
    
    @Bean // 通过该注解来表明是一个Bean对象,相当于xml中的
    public UserDAO getUserDAO(){
        return new UserDAO(); // 直接new对象做演示
    }
    
}

    7.编写测试方法,用于启动Spring容器

public class Main {
    
    public static void main(String[] args) {
        // 通过Java配置来实例化Spring容器
        AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(SpringConfig.class);
        
        // 在Spring容器中获取Bean对象
        UserService userService = context.getBean(UserService.class);
        
        // 调用对象中的方法
        List list = userService.queryUserList();
        for (User user : list) {
            System.out.println(user.getUsername() + ", " + user.getPassword() + ", " + user.getPassword());
        }
        
        // 销毁该容器
        context.destroy();
    }


}
    8.执行main方法....神奇的一幕出现了,请看控制台

SpringBoot基本概念及快速入门(IOC/DI)_第1张图片

注解说明:

Spring的Java配置方式是通过 @Configuration 和 @Bean 这两个注解实现的:
1、@Configuration 作用于类上,相当于一个xml配置文件;
2、@Bean 作用于方法上,相当于xml配置中的









你可能感兴趣的:(SprongBoot)