springBoot

springBoot

  1. 运行soringBoot程序通过application程序来运行

    @SpringBootApplication
    public class SpringBoot0101QuickstartApplication {
    ​
        public static void main(String[] args) {
            SpringApplication.run(SpringBoot0101QuickstartApplication.class, args);
        }
    ​
    }
  2. springBoot要联网才能创建,如果你idea无法创建boot项目 可以点击https://start.spring.io/这个网址 在里面填写, 最后会给你生成一个压缩包,这个压缩包导入idea就是一个新的boot项目

    如果上面网址不行了, 可以用 http://start.aliyun.com

  3. 如果你没有网络,也可以创建boot项目

  4. 开发SpringBoot程序要继承spring-boot-parent

  5. spring-boot-parent 中定义了若干个依赖管理 ,继承parent模块可以避免使用相同技术时出现依赖版本冲突,继承parent的形式也可以采用引入依赖的形式实现效果

  6. springboot导入坐标的时候,只需要导入gv, 如果报错了,证明parent里面没有包含到你需要导入的坐标的版本号,那么只能自己导入版本

  7. application。properties参考文档 Common Application Properties

  8. application。proerties 文件 里面的格式

    #配置端口将8080改为80 这样就不用写8080
    server.port=80
  9. 以后的application文件 都采用 application。yml格式

    #yml格式
    server:
      port: 81
  10. properties 和 yml yaml 三个文件共存是, properties文件优先级最高, 当三个文件里面写的一样的属性时,只会保留properties 的 , 三个不一样时,三个都要留下来,按照优先级排序加入 (p》ym》yam)(数据前面的属性要用:加空格隔开)

    server:
      port: 81
    ​
    ​
    Country: china
    ​
    City: chongqing
    ​
    User:
      - name: zhangshan
        age: 18
      - name: lisi
        age: 16
    ​
    # 还可以写成
    #User1: [{name:zhangsan,age:18},{name:lisi,age:18}]
    ​
    likes:
      - swim
      - bp
      - bascatball
      - football
      - yumaoqiu
    ​
    #还可以写成
    #likes: [swim,bp,bascatball,football,yumaoqiu]
    ​
  11. 读取上面在文件里配置的值(采用@Value注解)

         //读取application。yml定义的属性
    @Value("${Country}")  //这里括号里面的名字必须和文件里面配置的名字一样
         private String country;
         @Value("${User.name}")  //采用。的方式来获取他的名字
    private String username;
         @Value("${Users[1].name}")
         private String UsersName;
    ​
          @RequestMapping("/ss")
        public String get(){
            System.out.println("springBoot-begin");
              System.out.println(country);
              System.out.println(username);
              System.out.println(UsersName);

    注意数组的读取有【】 读取某个对象的属性用。

  12. 配置文件中应用别的 值

    #配置文件中的引用
    BaseDir: D:window/
    ​
    temDir: ${BaseDir}/tuser
    ​
    #转义字符用“”包起来
    #"/t" 表示一个空格 上面引用 用“”包起来就是 
    temDir2: “${BaseDir}/tuser”  #结果是 D:window/ user
    ​

    /t在“”表示一个空格

  13. 可以采用一个代码将配置文件里面所有的配置信息都注入其中

    @Autowired   //自动装配 通过这个来获取文件里面所有的配置,不用一个一个写了
     //这里还可以写Resource 注解
    private Environment env;

    打印获得的数据用

             System.out.println(env.getProperty("User.name"));
  14. 注意! 我们在文件配置了一些东西如下

    #自动封装
    mydatasource:
      driver: http://lostlocall:8080/dataSource
      url: myUrl
      username: root
      password: root

    我们想让一个类来得到这些数据,及自动封装, 千万注意 这里的mydataSource 一定要是小写的

    然后我们创建一个类

    //要让spring容器读取到这个类才能自动封装采用Component注解
    @Component
    //我们只想读取到下面这几个属性,所以要采用ConfigurationProperties注解
    @ConfigurationProperties(prefix = "mydatasource") //这里的名字要和文件的对应起来
    public class MyDataSource {
        //这里的属性名字要与文件的名字相对应,不然无法自动封装
        private  String driver;
        private String url;
        private String username;
        private String password;

    我们只想得到 mydatasource 的数据所以用@ConfigurationProperties(prefix = "mydatasource") 注解 让spring容器扫描到我们这个理用Component注解

SpringBoot整合mybatis

  1. 第一步先创建一个模块 注意 需要什么技术 我们就点什么技术,我们就点sql中的mybatis 和mysql Driver

    • 第二 我们在application。yml文件中写入我们的mysql需要的数据

    spring:
      datasource:
        driver-class-name: com.mysql.cj.jdbc.Driver
        #    driver-class-name: com.mysql.jdbc.Driver    两种都可以
        url: jdbc:mysql://localhost:3306/test
        username: root
        password: xjj168
    • 第三:创建接口和实体类, 执行sql语句

      @Mapper
      public interface BookDao {
      ​
          @Select("select * from ssm_boot where id=#{id}")
          public Book getBookById(int id);
      ​
      }
    • 第四:测试(在文件自带的测试类测试)

      @SpringBootTest
      class SpringBootMybatisApplicationTests {
      ​
          @Autowired
          private BookDao bookDao;
      ​
          @Test
          void contextLoads() {
      ​
              System.out.println(bookDao.getBookById(1));
          }
      ​
      }

springBoot整合mybatis-plus

  1. 第一步先创建模块,但是目前idea并没有mybatis-plus技术的直接导入,所以我们只选择mysql Driver

    • 第二步:去https://mvnrepository.com 网址搜索mybatis plus 坐标 然后我们手动导入即可

    • 第三步:还是创建pojo 和mapper 但是这里的mapper 只需要继承BaseMapper《你要执行sql的实体类》 这个父方法以及帮我们将增删改查的语句写好了

      @Mapper
      public interface BookDao extends BaseMapper<Book> {
      ​
      }
    • 第三步:还是配置数据文件 但是注意! 我们的sql语句都是系统给我们写好的,他执行的表是根据我们的实体类来给出的,所以我们要指明表(如果我们的表是ssm_book那么系统会报错,以为他找不到book表) 所以我们加一个前缀ssm_

      spring:
        datasource:
          driver-class-name: com.mysql.cj.jdbc.Driver
          #    driver-class-name: com.mysql.jdbc.Driver
          url: jdbc:mysql://localhost:3306/test
          username: root
          password: xjj168
      #mybatis-plus不用写sql语句 但是你要指明你的表的名字,不然可能会报错
      mybatis-plus:
        global-config:
          db-config:
            table-prefix: ssm_
    • 第四步:测试 还是老样子

SpringBoot 整合druid

  1. 第一步创建模块 druid坐标直接导入

    • 第二步:创建实体类和接口,

    • 第三步配置:

      # 整合druid
      #方式一
      #spring:
      #  datasource:
      #    driver-class-name: com.mysql.cj.jdbc.Driver
      #    #    driver-class-name: com.mysql.jdbc.Driver
      #    url: jdbc:mysql://localhost:3306/test
      #    username: root
      #    password: xjj168
      #    type: com.alibaba.druid.pool.DruidDataSource
      ​
      #方式二 e
      spring:
        datasource:
          druid:
            driver-class-name: com.mysql.cj.jdbc.Driver
            url: jdbc:mysql://localhost:3306/test
            username: root
            password: xjj168
            type: com.alibaba.druid.pool.DruidDataSource
    • 第四步:测试

总结 整合!

  1. 整合的步骤!

    • 第一步: 创建模块,需要什么技术就加入什么技术, 没有的去网上找坐标

    • 第二步: 在配置文件配置 (有些需要,有些不需要)

    • 第三步: 测试即可

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值