SpringBoot入门

SpringBoot入门,第1张

SpringBoot入门 SpringBoot 入门搭建

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

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

    
        
            org.springframework.boot
            spring-boot-starter-parent
            2.1.8.RELEASE
        
    
        
        
            
                org.springframework.boot
                spring-boot-starter-web
            
        
    

    定义Controller(和Spring形式相同)

    编写引导类

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

    启动测试(通过main方法启动)


极速搭建

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


SpringBoot配置

提供两种配置文件类型,properteis和yml/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配置(不同环境下动态切换配置)

配置方式:

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

    application-dev.properties/yml  开发环境
    application-test.properties/yml  测试环境
    

    yml多文档激活方式:在yml中使用---分隔不同配置

激活方式:

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

    虚拟机参数

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

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


SpringBoot整合Mybatis

新建springboot项目,勾选sql中的mysqldriver和mybatis 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 allBook();
}

测试,在测试类或Controller中注入Mapper

@SpringBootTest
class SpringbootMybatisApplicationTests {

    @Autowired
    private BookMapper bookMapper;

    @Test
    void testAllBook() {
        List 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、Spring和SpringMVC。学这些时我已不再深究什么原理,也没做笔记,知道有这东西会用即可。考完试进入现在这个寒假,简单学习了一下ssm整合和黑马的SpringBoot框架,我想差不多可以画上句号了。学习后端的过程,我还零零散散学到很多东西,一手挺溜的markdown,命令行 *** 作,关于编程的一些常识和思维等等,总之努力不算白费。后面我可能会学学AI相关的python编程,刷刷数据结构和算法的题,反正编程学习不能止步,博客跟新也不会停,respect!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5712341.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存