创建Maven项目(默认项目,无需添加web支持)
导入SpringBoot起步依赖(版本别太高)
org.springframework.boot spring-boot-starter-parent2.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") ListallBook(); }
测试,在测试类或Controller中注入Mapper
@SpringBootTest class SpringbootMybatisApplicationTests { @Autowired private BookMapper bookMapper; @Test void testAllBook() { Listlist = 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!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)