什么?想成为Java软件工程师?是时候掌握Spring Boot了!

141 阅读2分钟

20160711090616433.jpg

简述

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。简而言之就是使得开发人员在配置方面可以方便许多,不需要XML配置等。(在软工实践的过程中最大的体会就是,maven中不需要添加很多依赖,添加和导入包部分简单了许多)

Spring-boot的优点

  • 创建独立的spring应用。
  • 嵌入Tomcat, Jetty Undertow 而且不需要部署他们。
  • 提供的“starters” poms来简化Maven配置
  • 尽可能自动配置spring应用。
  • 提供生产指标,健壮检查和外部化配置
  • 绝对没有代码生成和XML配置要求

例如导入测试库依赖:我们通常使用Spring Test,JUnit,Hamcrest和Mockito库。在Spring项目中,我们应该将所有这些库添加为依赖项。但是在Spring Boot中,我们只需要添加spring-boot-starter-test依赖项来自动包含这些库。【获取资料】

MVC配置

spring中

Spring需要定义调度程序servlet,映射和其他支持配置。我们可以使用 web.xml 文件或Initializer类来完成此操作,还需要将@EnableWebMvc注释添加到@Configuration类,并定义一个视图解析器来解析从控制器返回的视图:

public class MyWebAppInitializer implements WebApplicationInitializer { 

    @Override 
    public void onStartup(ServletContext container) { 
        AnnotationConfigWebApplicationContext context = new 			         AnnotationConfigWebApplicationContext(); 
        context.setConfigLocation("com.pingfangushi"); 
        container.addListener(new ContextLoaderListener(context)); 
        ServletRegistration.Dynamic dispatcher = container 
          .addServlet("dispatcher", new DispatcherServlet(context)); 
        dispatcher.setLoadOnStartup(1); 
        dispatcher.addMapping("/"); 
    } 加入Java开发交流君样:484138291一起吹水聊天

} 

@EnableWebMvc 
@Configuration 
public class ClientWebConfig implements WebMvcConfigurer {  
   @Bean 
   public ViewResolver viewResolver() { 
      InternalResourceViewResolver bean 
        = new InternalResourceViewResolver(); 
      bean.setViewClass(JstlView.class); 
      bean.setPrefix("/WEB-INF/view/"); 
      bean.setSuffix(".jsp"); 
      return bean; 
   } 
}

和上述操作一比,一旦我们添加了Web启动程序,Spring Boot只需要在application配置文件中配置几个属性来完成如上操作:

spring.mvc.view.prefix=/WEB-INF/jsp/ 
spring.mvc.view.suffix=.jsp 

Spring-boot中sql语句

Spring中使用sql语句需要定义很多的XML文件,XMLsql语句的编写和对查询到属性装配也显得十分臃肿和繁琐,会让人很难受。

spring-boot中使用sql语句

只需要定义一个接口并且使用注解将sql语句填入即可

public interface UserMapper {
    @Select("SELECT * FROM users WHERE id = #{id}")
    @Results({
        @Result(property = "userName",  column = "username"),
        @Result(property = "nickName", column = "nick_name")
    })加入Java开发交流君样:484138291一起吹水聊天

    UserEntity getOne(Long id);

    @Insert("INSERT INTO users(userName,passWord,user_sex) VALUES(#{userName}, #{passWord}, #{userSex})")
    void insert(UserEntity user);

    @Update("UPDATE users SET userName=#{userName},nick_name=#{nickName} WHERE id =#{id}")
    void update(UserEntity user);

    @Delete("DELETE FROM users WHERE id =#{id}")
    void delete(Long id);

}

结论心得

简而言之,我们可以说Spring BootSpring本身的扩展,使开发,测试和部署更加方便。

分类: Spring Boot 最新2021整理收集的很多干货,包含mysql,netty,spring,线程,spring cloud、jvm、源码、算法等详细讲解等。【获取资料】 在这里插入图片描述