SpringBoot是SpringMVC的升级版,SpringBoot的特点:

application.properties文件配置:

server.port = 8080端口配置
server.context-path = /girl URL前缀 application.yml文件配置:
server:
port: 8081
context-path: /girl 建议使用yml文件来配置 属性配置: @Value:单属性配置 @Value("${cupSize}")
private String cupSize;//通过一个注解,把配置文件里的属性注入进来 配置文件里是这样的:
server:
port: 8080
girl:
cupSize: B
age: 18
类里面是这样的:
@Component
@ConfigurationProperties(prefix = "girl")//可以把配置文件里相应前缀下的属性全部注入进来
public class GirlProperties{ private String cupSize;
private Integer age; getset方法略....
} 实体类初始化属性注入时,需要添加两个注解 @Component//把普通pojo实例化到spring容器中,相当于配置文件中的<bean id="" class=""/>
Controller层的注解使用:
匹配多个路径:
@RequestMapping(value={“hello”,“hi”} ,method=RequestMethod.GET) RestController = Controller + ResponseBody @PathVariable("id")获取路url中的数据
@RequestMapping(value="hello/{id}" ,method=RequestMethod.GET)
使用方法:public String say(@PathVariable("id")Integer id){} @RequestParam("id")获取请求的参数值
@RequestMapping(value="hello" ,method=RequestMethod.GET)
使用方法:public String say(@RequestParam("id")Integer id){}
value:请求的属性
required:是否必须如传参 defaultValue:默认值
@RequestMapping(value="hello" ,method=RequestMethod.GET)
使用方法:public String say(@RequestParam(value="id",required=false,defaultValue="0")Integer id){} @GetMapping 组合注解 使用方法:
@GetMapping(value="/say")意思就是get方式的请求映射 还有@PostMapping(value="/say")

数据库操作:

实体类设计:(注意要生成一个无参构造器,听说不这样的话就会报错)

数据库配置:
ddl-auto: create 每次都会创建表 如果表存在就会先drop再create
ddl-auto: update 表不存在就create 表存在就update
ddl-auto: validate 验证表结构
ddl-auto: create-drop 程序结束后会把表drop掉

查询所有和新增:
  private GirlRepository girlRepository;

 //查询所有女生
@GetMapping(value="/girls")
public List<Girl> girlList(){ return girlRepository.findAll();
} //添加一个女生
@PostMapping("/girls")
public girl girlAdd(@RequestParam("cupSize")String cupSize,
@RequestParam("age") Integer age){
Girl girl=new Girl();
girl.setCupSize(cupSize);
girl.setAge(age);
return girlRepository.save(girl);
} //查询一个女生
@GetMapping("/girls/{id}")
public girl girlFindOne(@PathVariable("id")Integer id) {
return girlRepository.findOne(id);
} //更新
//添加一个女生
@PutMapping("/girls/{id}")
public girl girlAdd (@PathVariable("id") Integer id,
@RequestParam("cupSize")String cupSize,
@RequestParam("age") Integer age){
Girl girl=new Girl();
girl.setId(id);
girl.setCupSize(cupSize);
girl.setAge(age);
return girlRepository.save(girl);
} //删除
@DeleteMapping(value="/girls/{id}")
public void girlDelete(@PathVariable("id") Integer id){
girlRespository.delete(id);
}
数据库操作Jpa实现增删改查,接口方法名有讲究

实务操作 只需要加上注解@Transactiona

SpringBoot入门学习笔记的更多相关文章

  1. 【原创】SpringBoot & SpringCloud 快速入门学习笔记(完整示例)

    [原创]SpringBoot & SpringCloud 快速入门学习笔记(完整示例) 1月前在系统的学习SpringBoot和SpringCloud,同时整理了快速入门示例,方便能针对每个知 ...

  2. dubbo入门学习笔记之入门demo(基于普通maven项目)

    注:本笔记接dubbo入门学习笔记之环境准备继续记录; (四)开发服务提供者和消费者并让他们在启动时分别向注册中心注册和订阅服务 需求:订单服务中初始化订单功能需要调用用户服务的获取用户信息的接口(订 ...

  3. Hadoop入门学习笔记---part4

    紧接着<Hadoop入门学习笔记---part3>中的继续了解如何用java在程序中操作HDFS. 众所周知,对文件的操作无非是创建,查看,下载,删除.下面我们就开始应用java程序进行操 ...

  4. Hadoop入门学习笔记---part3

    2015年元旦,好好学习,天天向上.良好的开端是成功的一半,任何学习都不能中断,只有坚持才会出结果.继续学习Hadoop.冰冻三尺,非一日之寒! 经过Hadoop的伪分布集群环境的搭建,基本对Hado ...

  5. PyQt4入门学习笔记(三)

    # PyQt4入门学习笔记(三) PyQt4内的布局 布局方式是我们控制我们的GUI页面内各个控件的排放位置的.我们可以通过两种基本方式来控制: 1.绝对位置 2.layout类 绝对位置 这种方式要 ...

  6. PyQt4入门学习笔记(一)

    PyQt4入门学习笔记(一) 一直没有找到什么好的pyqt4的教程,偶然在google上搜到一篇不错的入门文档,翻译过来,留以后再复习. 原始链接如下: http://zetcode.com/gui/ ...

  7. Hadoop入门学习笔记---part2

    在<Hadoop入门学习笔记---part1>中感觉自己虽然总结的比较详细,但是始终感觉有点凌乱.不够系统化,不够简洁.经过自己的推敲和总结,现在在此处概括性的总结一下,认为在准备搭建ha ...

  8. Hadoop入门学习笔记---part1

    随着毕业设计的进行,大学四年正式进入尾声.任你玩四年的大学的最后一次作业最后在激烈的选题中尘埃落定.无论选择了怎样的选题,无论最后的结果是怎样的,对于大学里面的这最后一份作业,也希望自己能够尽心尽力, ...

  9. Scala入门学习笔记三--数组使用

    前言 本篇主要讲Scala的Array.BufferArray.List,更多教程请参考:Scala教程 本篇知识点概括 若长度固定则使用Array,若长度可能有 变化则使用ArrayBuffer 提 ...

随机推荐

  1. HTTP、TCP、IP、协议

    HTTP(HyperText Transfer Protocol) 即超文本传输协议,现在基本上所有web项目都遵从HTTP协议(协议就是一种人为的规范). 目前绝大部分使用的都是HTTP/1.1版本 ...

  2. Englis(二)

    turn a year older  年长一岁 the birthday person 过生日的人 in honor of 为庆祝,为纪念 to observe/celebrate birthday  ...

  3. 一种简单的ELF加固方法

    介绍一种ELF文件函数粒度的加固方法,可以有效防止对程序的静态分析.这是一种有源码加固方式,需要被加固程序中代码配合.加固流程如下: 1)读取ELF文件头,获取e_phoff和e_phnum2)通过E ...

  4. python调用caffe实现预测

    对于已经训练完成的caffemodel,对于单个的图片预测,用python接口来调用是一件非常方便的事情,下面就来讲述如何用python调用已经训练完成的caffemodel,以及prototxt,网 ...

  5. urllib模块通过post请求获取数据

    功能: 输入你要查找的单词,会返回相对应的结果 import urllib.request import urllib.parse import json class youdaoSpider: de ...

  6. [LeetCode&Python] Problem 401. Binary Watch

    A binary watch has 4 LEDs on the top which represent the hours (0-11), and the 6 LEDs on the bottom ...

  7. linux rpm yum 安装 软件

    rpm 安装: 1.rpm包的了解:  rpm  安装  升级  删除 rpm -ivh  ****.rpm   安装 rpm -Uvh  ****.rpm  升级 rpm -e name    删除 ...

  8. eclipse + python + pydev

    工具:eclipse-nion.jdk8.python3.6.pydev eclipse -> help -> eclipse marketplace -> 输入 python,in ...

  9. js中数组的去重

    第一种方式: var ss=['小红','小花','小兰','小花'] var uu=[] for(var i=0;i<ss.length;i++){ if(uu.indexOf(ss[i])= ...

  10. hdu3374 String Problem KMP+最大最小表示法

    Give you a string with length N, you can generate N strings by left shifts. For example let consider ...