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年最新 包括源码原理分析) + ...
随机推荐
- zkw线段树——简单易懂好写好调的线段树
0.简介 zkw线段树是一种非递归线段树,与普通线段树不同的是,它是棵标准的满二叉树,所以遍历过程可全程使用位运算,常数一般比线段树小得多. 1.结构/建树 前面说了,zkw线段树是满二叉树,可是原数 ...
- manim
from manim import * #导入manim命名空间 #这是一个最基本的manim结构,类名叫做BaseFrame,传入一个场景Scene,并且包含一个construct方法,传入self ...
- rh358 005 dhcp dhcp6 打印机 ansible配置dhcp和打印机
部署dhcp服务器 主机发送Discover报文 目标为广播地址 同一网段的dhcp收到报文后,dhcp响应一个offer报文 offer报文:dhcp自己的ip地址.和客户端ip以及使用周期,和客户 ...
- MAC Golang环境搭建
1. 下载golang 下载地址:https://golang.google.cn/dl/ 根据MAC左上角苹果图标->关于本机,即可查看芯片类型 2. 安装golang 在 下载 中双击 下载 ...
- .NET 6 EFCore WebApi 使用 JMeter 进行吞吐量测试
.NET 6 EFCore WebApi 使用 JMeter 进行吞吐量测试 开发环境 VS2022 .NET 6 测试环境 测试工具 接口压力测试工具:JMeter 数据库 MySQL 5.7 数据 ...
- Elasticsearch 主从同步之跨集群复制
文章转载自:https://mp.weixin.qq.com/s/alHHxXont6XFm_m9PfsGfw 1.什么是跨集群复制? 跨集群复制(Cross-cluster replication, ...
- 还不会Traefik?看这篇文章就够了!
文章转载自:https://mp.weixin.qq.com/s/ImZG0XANFOYsk9InOjQPVA 提到Traefik,有些人可能并不熟悉,但是提到Nginx,应该都耳熟能详. 暂且我们把 ...
- 天翼云上新增IP备案具体操作步骤
0.点击右上角的备案,进入到备案中心 1.已备案信息管理 点击左侧的已备案信息管理,右侧出现的页面中找到已备案网站信息,网站负责人后面的操作里有5个图标,点击第三个(变更接入),提交订单,进入到下一步 ...
- 第六章:Django 综合篇 - 1:配置 Django
Django项目的设置文件位于项目同名目录下,名叫settings.py.这个模块,集合了整个项目方方面面的设置属性,是项目启动和提供服务的根本保证. 一.简述 settings.py文件本质上是一个 ...
- Elastic:Sense chrome - 在 chrome 浏览器中操作 Elasticsearch 的插件
文章转载自:https://elasticstack.blog.csdn.net/article/details/114533904 Sense 是我们现在所说的 Kibana 控制台 UI 的第一个 ...