SpringBoot入门

SpringBoot

入门搭建

  1. 创建Maven项目(默认项目,无需添加web支持)

  2. 导入SpringBoot起步依赖(版本别太高)

    <!--父工程-->
        <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>2.1.8.RELEASE</version>
        </parent>
    
        <!--web开发起步依赖-->
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
        </dependencies>
    
  3. 定义Controller(和Spring形式相同)

  4. 编写引导类

    @SpringBootApplication
    public class HelloApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(HelloApplication.class,args);
        }   //这里不是SpringBootApplication,不然找不到run方法!!!
    }
    
  5. 启动测试(通过main方法启动)


极速搭建

  • file中新建一个model,点击Spring Initializr并选择java版本,填写项目信息,勾选Spring Web支持即可生成项目,自带依赖和引导类,根据需求加入ontroller类即可。(该过程可能需要连手机热点加外网)

SpringBoot配置

  • 提供两种配置文件类型,properteisyml/yaml,默认配置文件名称为application.properties,优先级最高,一般自己定义application.yml。可以更改一些自动配置的属性或者添加自定义的属性,如修改端口号。

    server.port = 8080			#properties格式
    servre.address = 127.0.0.1
    
    server:						#yml格式,缩进表示层级关系,数据前加空格
    	port: 8080
    	address: 127.0.0.1
    	
    person:						#对象
    	name: zhangsan
    	
    address:					#数组
    	- beijing
    	- shanghai
    	
    msg1: 'hello \n world'		#常量,单引忽略转义字符
    msg2: "hello \n world"
    
    name: ${name1}				#参数引用
    
  • 数据获取(自定义配置在Controller中获取)

    • @value注解读取(适合单个属性注入)

      @value("${person.name}")
      private string name;  #属性名可以自取,注解名和配置键名对应即可
          
      @value("${address[0]}")
      private string address;  #数组注入,输出beijing
      
    • Environment对象注入(便于批量注入)

      @Autowired
      private Environment env;
      env.getProperty("person.name");
      
    • @ConfigurationProperties(便于对象操作)

      @Component
      @ConfigurationProperties(prefix = "person")  #前缀表示层级关系
      public class Person{
          private String name;
          private int age;
      }
      //定义好对象后直接往配置文件里添加属性值即可,添加依赖会有对应提示
      
  • profile配置(不同环境下动态切换配置)

    配置方式:

    1. profile文件方式:多个配置文件,每个对应一种环境,命名规范:

      application-dev.properties/yml  开发环境
      application-test.properties/yml  测试环境
      
    2. yml多文档激活方式:在yml中使用---分隔不同配置

    激活方式:

    1. application.properties中配置:spring.profiles.active=dev,即可激活开发环境

    2. 虚拟机参数

    3. 命令行参数:部署项目时配置,java -jar .\jar包运行,内置tomcat

  • 内外部配置文件有多种存放方式,会有不同优先级的加载顺序,官网查询,可利用其互补优势。


SpringBoot整合Mybatis

  • 新建springboot项目,勾选sql中的mysqldrivermybatis framework

  • 对应数据库创建实体类

  • 数据库配置信息

    #dataSource
    spring:
      datasource:
        url: jdbc:mysql///ssmbuild    #///省略用户名,ip和端口,因为连接本地mysql
        username: root
        password: 123456
        driver-class-name: com.mysql.cj.jdbc.Driver
    
  • mybatis配置信息(注解开发不用写)

  • 书写Mapper接口,方法及注解sql语句

    @Mapper
    public interface BookMapper {
    
        @Select("select * from books")
        List<Books> allBook();
    }
    
  • 测试,在测试类或Controller中注入Mapper

    @SpringBootTest
    class SpringbootMybatisApplicationTests {
    
        @Autowired
        private BookMapper bookMapper;
    
        @Test
        void testAllBook() {
            List<Books> list = bookMapper.allBook();
            System.out.println(list);
        }
    }
    

    注意:自动注入失败时,应先确保Application类,在mapper、pojo类的上级。


Java小结

  • 大一选了门android开发的通识选修课,是我第一次接触Java,当然,被虐的很惨。到大二寒假的时候,想精通一门编程语言,听说用Java的人最多还比c++简单,于是找了B站网课从头看起。狂神说Java,我不敢说他讲的多好,但确实吸引了最初想学编程的我,一遍看完不牢固,我又找到另一个资源很多的Up,看他发的Java学习视频,就这样过完了Java基础。那是我最认真的时候,CSDN发过不少博客。
  • 按道理就学编程而言到此已经可以适可而止了,但是不知什么时候起,我好像对我的专业自动化带有了偏见。不清楚自动化毕业后做什么还不如自学Java后端开发,本科毕业进互联网大厂,高薪还不用考研多香。于是乎,尽管大二下课程挺重,我还是挤时间学了mysql、javaweb等,可能是因为精力有限,我觉得自己关于一些web原理理解的不透彻。并且因为一直用的idea社区版,对web功能支持不太友好,导致我经常花费时间做无用功,偶尔会有厌倦情绪。总之,看着写好的网页蹦出来,还是会有发自内心的喜悦和成就感,但碰见404和500就瞬间裂开哈哈。
  • 从期末考试一直到暑假,就没怎么碰过Java了。比赛结束后我自学了数据结构与算法,还搭了一个hexo小网站用来写博客,证明一下自己学过后端哈哈。由于课程减少和没了学生会的事务,我觉得大三上的生活还是挺休闲的。这期间我为自己的以后焦虑过,真的就当一个程序猿么,勤恳搬砖到35岁再放飞,也不怕卷不过计算机科班生,但好像对后端开发并没那么感兴趣。学习了许多自动化专业知识,感觉不算坏,况且人生的道路很长,不甘心一眼把以后望穿,于是我决定考研。做事讲究有始有终,空闲时间也不少,我又捡起Java,走走停停的看完了Mybatis、SpringSpringMVC。学这些时我已不再深究什么原理,也没做笔记,知道有这东西会用即可。考完试进入现在这个寒假,简单学习了一下ssm整合和黑马SpringBoot框架,我想差不多可以画上句号了。
  • 学习后端的过程,我还零零散散学到很多东西,一手挺溜的markdown,命令行操作,关于编程的一些常识和思维等等,总之努力不算白费。后面我可能会学学AI相关的python编程,刷刷数据结构和算法的题,反正编程学习不能止步,博客跟新也不会停,respect!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值