java学习之springboot
0x00前言
呀呀呀时隔好久我又来做笔记了,上个月去大型保密活动了,这里在网上看了一些教程如果说不是去做java开发我就不做ssm的手动整合了采用springboot去一并开发。
Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。 该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。 通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者
0x01快速入门
学习了前面繁琐的spring的开发方式我只能说springbootyyds,不需要你装配任何环境上手既用的操作真很好,入门创建一个springboot的项目文件

发现springboot已经给你创建好了源文件和资源文件目录
0x1引导类文件
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
springboot项目的依赖是继承于一个jar包,项目的启动工作要依靠这个引导类没有就需要自己手动创建
0s2编写Controller
springboot帮你解决了各种依赖环境也不需要你去配置xml文件你只需要写你要干什么的控制器
@RestController
@RequestMapping("/books")
public class BookContraller {
@GetMapping("/{id}")
public String getbyid(@PathVariable Integer id){
System.out.println("id ==>"+id);
return "Hellow spring boot";
}
}
直接启动访问就完成

0x3起步依赖

这些带为starter的依赖用来简化配置的当你需要更改配置的时候只需要改启动依赖就可以了
0x02配置文件
你可能需要配置一下数据库和一些服务器的端口号springboot都已经提供好了。
0x1修改端口
在springboot的框架里面有准备一个配置文件application.properties,里面有springboot给我们准备好的格式
#配置服务器端口
server.port=81
#配置当前应用名称
server.servlet.context-path=/demo1x
0x2yaml配置文件
YML文件格式是YAML (YAML Aint Markup Language)编写的文件格式,
YAML是一种直观的能够被电脑识别的的数据数据序列化格式,并且容易被人类阅读,容易和脚本语言交互的,可以被支持YAML库的不同的编程语言程序导入,比如: C/C++, Ruby, Python, Java, Perl, C#, PHP等。YML文件是以数据为核心的,比传统的xml方式更加简洁。
YML文件的扩展名可以使用.yml或者.yaml。
配置对象的属性
age: 18
name: lihua
number: 1001
有个坑点注意冒号后面要加空格
配置list属性
list1:
- hvv
- kfc
- v
- me
- 50
0x3获取各种数据的方式
用注解@Value获取。
写出配置文件
person:
name: xiaohua
age: 18
id: 01101
server:
port: 81
list:
- hvv
- kfc
- v
- me
- 50
注解获取
@RestController
@RequestMapping("/books")
public class BookContraller {
@Value("${person.name}")
private String name;
@GetMapping("/{id}")
public String getbyid(@PathVariable Integer id){
System.out.println("id ==>"+id);
return "Hellow spring boot"+name;
}
}
0x03整合Mybatis
还是需要先生成一个实体类
package com.example;
public class person {
private int id;
private String name;
private String password;
private String gender;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
@Override
public String toString() {
return "person{" +
"id=" + id +
", name='" + name + '\'' +
", password='" + password + '\'' +
", gender='" + gender + '\'' +
'}';
}
}
构造一个操作接口类:
@Mapper
public interface Persondao {
@Select("select * from user where id =#{id}")
public person getbyid(int id);
}
写一下配置文件用yml写确定一下连接的数据库
spring:
datasource:
username: root
password: zhonglin
url: jdbc:mysql//localhost:3306/tese
driver-class-name: com.mysql.cj.jdbc.Driver
尝试连接
@SpringBootTest
class ApplicationTests {
private Persondao Person;
@Test
void testbyid(){
person person1=Person.getbyid(2);
System.out.println(person1);
}
}
到此mybatis就整合完了
0x04后言
后面的ssm三个框架学的比较潦草,只要是这些东西都是一些配置文件和一些文件的固定写法这些东西只有在老一点的软件会用,现在大多数的都是用的springboot的写的在后面的代码审计里面再去慢慢研究这些框架,这样无实战的敲框架代码意义不大,框架学的潦草因为我是学安全的不是学开发的就算以后开发以是用springboot,至此我的java语言写的部分已经基本结束了后续会补充一下其他的知识点,现在开始进入代码审计的模块了。
java学习之springboot的更多相关文章
- Java学习之SpringBoot整合SSM Demo
背景:在Java Web中Spring家族有着很重要的地位,之前JAVA开发需要做很多的配置,一堆的配置文件和部署调试一直是JavaWeb开发中的一大诟病,但现在Spring推出了SpringBoot ...
- Java学习之Dubbo+ZooKeeper分布式服务Demo
背景:在之前的一个<Java学习之SpringBoot整合SSM Demo>分享中说到搭建ZooKeeper和Dubbo分布式框架中遇到了一些技术问题没能成功,只分享了其中的一个中间产物, ...
- 从.Net到Java学习第十一篇——SpringBoot登录实现
从.Net到Java学习系列目录 通过前面10篇文章的学习,相信我们对SpringBoot已经有了一些了解,那么如何来验证我们的学习成果呢?当然是通过做项目来证明啦!所以从这一篇开始我将会对之前自己做 ...
- 从.Net到Java学习第八篇——SpringBoot实现session共享和国际化
从.Net到Java学习系列目录 SpringBoot Session共享 修改pom.xml添加依赖 <!--spring session--> <dependency> & ...
- 从.Net到Java学习第九篇——SpringBoot下Thymeleaf
从.Net到Java学习系列目录 Thymeleaf概述 Thymeleaf 是一个流行的模板引擎,该模板引擎采用java语言开发.模板引擎是一个技术名称,是跨领域平台的概念,在java语言体系下有模 ...
- 从.Net到Java学习第十二篇——SpringBoot+JPA提供跨域接口
从.Net到Java学习系列目录 最近又撸了半个月的前端代码,做app离线存储,然后又花了一周去将过去的wcf项目转webapi,java又被落下了,总感觉我特么像斗地主中的癞子牌,变来变去..... ...
- 从.Net到Java学习第七篇——SpringBoot Redis 缓存穿透
从.Net到Java学习系列目录 场景描述:我们在项目中使用缓存通常都是先检查缓存中是否存在,如果存在直接返回缓存内容,如果不存在就直接查询数据库然后再缓存查询结果返回.这个时候如果我们查询的某一个数 ...
- Java 学习文章汇总
目前JAVA可以说是产业界和学术界最热门的语言,许多人都很急切想把JAVA学好. 但学习是需要步骤的,除非像电影中演的那样,能够把需要的专业技巧下载到脑海:主角只花了几秒下载资料,就马上具备飞行员的技 ...
- JAVA学习资源分享
JAVA学习资源分享 最高端的JAVA架构师资源(来自龙果学院 价值¥1399元).JAVA互联网分布式架构(龙果学院 价值¥899元).Spring Boot(2017年最新 包括源码原理分析) + ...
随机推荐
- C# winfrom ListView控件实现自由设置每一行字体及背景色等
背景:公司经常会需要将日志信息,输出到一个对话框中显示出来.之前一直采用的listbox控件,操作简单,使用方便,但是遗憾的是,不能自由控制每一行的状态. 于是想了如下几个方案: (1)重绘listb ...
- grub2配置文件丢失如何修复
实验操作准备 此步骤因实验需要所做,系统开机属grub界面无需此步! lsblk命令为了查看根分区挂载在什么位置 rm -rf /boot/grub2/grub.cfg命令为删除grub2配置文件到达 ...
- 国产CPLD(AGM1280)试用记录——做个SPI接口的任意波形DDS [原创www.cnblogs.com/helesheng]
我之前用过的CPLD有Altera公司的MAX和MAX-II系列,主要有两个优点:1.程序存储在片上Flash,上电即行,保密性高.2.CPLD器件规模小,成本和功耗低,时序不收敛情况也不容易出现.缺 ...
- 通过 Docker 部署 Mysql 8.0 主从模式
文章转载自:http://www.mydlq.club/article/106/ 系统环境: Mysql 版本:8.0.23 Docker 版本:19.03.13 一.为什么需要 Mysql 主从复制 ...
- Elasticsearch:正确使用regexp搜索
- shell分割字符串并赋值给变量
假如变量var的值为:num=12,也即var="num=12",现在想把 12赋值给变量id awk 的-F 后跟上要分割字符串时的指定分隔符 awk中$0是要分割的字符串,$1 ...
- Kibana插件
附加的功能在 Kibana 中是以插件的形式提供的.您可以利用 bin/kibana-plugin 命令来管理这些模块.您也可以手动安装这些插件,只需要将这些插件包放到 plugins 目录并解压到新 ...
- Elasticsearch的ETL利器——Ingest节点
文章转载自: https://mp.weixin.qq.com/s?__biz=MzI2NDY1MTA3OQ==&mid=2247484473&idx=1&sn=1b3b07b ...
- 前端ES6 面试过关宝典
ES6 部分 Typescript 部分 前端工程面经(节流防抖.https.前端攻击.性能优化...) https://juejin.cn/post/6844903734464495623 ES6面 ...
- WSL 2 上启用微软官方支持的 systemd
以前折腾了很久的 genie 和 distrod 来实现 wsl2 上的 systemd.现在微软和Canonical联合声明发布了官方支持的systemd,之前的折腾貌似有点浪费时间了.如果微软不发 ...