SpringBoot

springboot

简介:

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。

入门:

1:maven的环境修改:
a:在settings和other setting中修改maven的配置,修改为我们自己的;
b:在maven的setting的配置文件中:修改默认的jdk版本,当然镜像根据自己的修改

2:hello:

  • 2.1:创建一个parent工程
  • 2.2:创建hello的子模块:
    在parent的pom做springboot的版本的限制:
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>2.0.5.RELEASE</version>
            <!--type scope -->
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>
  • 2.3:创建一个controller:
    以前怎么写就怎么写,只是把controller换成–》RestController
  • 2.4:创建一个App的类:
    @SpringBootApplication// 把这个项目标识为springboot的项目
public class App {
    /**
     * 这里是springboot项目的入口:启动类
     * @param args
     */
    public static void main(String[] args) {
        //SpringApplication.run(App.class,args);
        SpringApplication.run(App.class);

    }
}
  • 2.5:运行这个main方法,浏览器访问:默认端口是8080

3:springboot:
是什么:就是一大堆的maven的集合;
为什么用他:简化spring环境的配置,搭建和开发和部署和监控。
springboot很适合微服务。。

4:热部署:
在当前模块pom:

   <!--热部署依赖-->
<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-devtools</artifactId>
  <optional>true</optional>
  <scope>true</scope>
</dependency>
<build>
      <plugins>
          <plugin>
              <groupId>org.springframework.boot</groupId>
              <artifactId>spring-boot-maven-plugin</artifactId>
              <configuration>
                  <!--fork :  如果没有该项配置,可能devtools不会起作用,即应用不会restart -->
                  <fork>true</fork>
              </configuration>
          </plugin>
      </plugins>
  </build>
当需要重新启动的时候:ctrl+F9

5:返回json:
以前怎么写就怎么写;
但是可以把以前的controller+ResponseBody换成RestController:
区别:
RestController–>加在类上的注解
‘*’ ===》相当于在类上加了Controller和这个类所有的方法上都加了ResponseBody

6:返回jsp的试图:

  • 6.1:创建一个maven的web工程
  • 6.2:导入依赖:
    <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
   </dependency>

   <!--热部署依赖-->
   <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-devtools</artifactId>
       <optional>true</optional>
       <scope>true</scope>
   </dependency>

   <!--tomcat支持-->
   <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-tomcat</artifactId>
   </dependency>
   <dependency>
       <groupId>org.apache.tomcat.embed</groupId>
       <artifactId>tomcat-embed-jasper</artifactId>
   </dependency>
   <dependency>
       <groupId>javax.servlet</groupId>
       <artifactId>jstl</artifactId>
   </dependency>
6.3:插件:
<plugin>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-maven-plugin</artifactId>
       <version>2.0.5.RELEASE</version>
       <configuration>
           <!--fork :  如果没有该项配置,可能devtools不会起作用,即应用不会restart -->
           <fork>true</fork>
       </configuration>
</plugin>
  • 6.4:controller:
    和以前一样
  • 6.5:配置文件:
    在工程的classpath下,创建一个application.properties:
    # 前缀
    spring.mvc.view.prefix= /WEB-INF/views/
    # 后缀
    spring.mvc.view.suffix= .jsp
  • 6.6:启动的时候:
    先创建启动类:
    不能直接运行main方法,需要使用插件启动

7:项目的运行方式:

  • 7.1非web项目:
    以jar的方式运行:
    首先得打包成jar:
    mvn clean ==>删除target下的内容;
    mvn package ==>打包jar war,打包到target下
    mvn install ==》安装:把jar安装到你本地的仓库

    要打springboot的jar包的时候,要在pom中安装一个插件:
    
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration>
                <!--fork :  如果没有该项配置,可能devtools不会起作用,即应用不会restart -->
                <fork>true</fork>
            </configuration>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
    </build>
  • 7.2:web项目:
    也要在pom中配置插件;
    app的启动类要修改:
@SpringBootApplication
public class App extends SpringBootServletInitializer {
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(App.class);
    }

    public static void main(String[] args) {
        SpringApplication.run(App.class);
    }
}

在jsp页面:<%@ page isELIgnored=“false” %>
在web.xml:

<!DOCTYPE web-app PUBLIC
        "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
        "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee"
         xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
         id="WebApp_ID" version="2.5">
  <display-name>Archetype Created Web Application</display-name>

  <jsp-config>
    <jsp-property-group>
      <url-pattern>
      </url-pattern>
      <el-ignored>false</el-ignored>
    </jsp-property-group>
  </jsp-config>
</web-app>

8:springboot 的测试:

  • 8.1:要导入test依赖:
<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-test</artifactId>
</dependency>

  • 8.2:java代码该怎么写就怎么写;app启动类要写;
  • 8.3:再写测试代码:
   @RunWith(SpringRunner.class)
   @SpringBootTest(classes = App.class)// 就是你springboot的启动类
   public class IUserServiceTest {
   }

9:三层架构:
jdbcTemplate和jpa使用方式和以前一样;

mybatis:

pom文件的依赖导入;
ssm和以前写代码一样:

app启动类:扫描mapper接口和映射:

 @SpringBootApplication
 @MapperScan("cn.itsource.springboot.mapper") //同时扫mapper接口和mapperxml映射
 public class App {
     public static void main(String[] args) {
         SpringApplication.run(App.class);
     }
 }
  • application.yml:
    spring:
      datasource:
        url: jdbc:mysql://localhost:3306/sb
        username: root
        password: 123456
        driver-class-name: com.mysql.jdbc.Driver
    #mybatis的别名的配置
    mybatis:
      type-aliases-package: cn.itsource.springboot.domain
    server:
      port: 91
  • 分页插件:
    使用注解方式配合一个bean:
       package cn.itsource.springboot.config;

       import com.github.pagehelper.PageHelper;
       import org.springframework.context.annotation.Bean;
       import org.springframework.context.annotation.Configuration;

       import java.util.Properties;

       /**
        * <bean id="" class="">
        *      <property name="offsetAsPageNum" value="true"></property>
        * </bean>
        */
       @Configuration
       public class MyBatisConfiguration {

       	@Bean
           public PageHelper pageHelper() {
       		System.out.println("MyBatisConfiguration.pageHelper()");
               PageHelper pageHelper = new PageHelper();
               Properties p = new Properties();
               p.setProperty("offsetAsPageNum", "true");
               p.setProperty("rowBoundsWithCount", "true");
               p.setProperty("reasonable", "true");
               pageHelper.setProperties(p);
               return pageHelper;
           }
       }

分页插件的使用:
和以前一样,在service使用:
PageHelper.startPage(1,1);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值