-
get /girls 获取女生列表
post /girls 创建一个女生
get /girls/id 通过id查询一个女生
put /girls/id 通过id更新一个女生
delete /girls/id 通过id删除一个女生
首先要创建一个girlRepository 继承 JpaRepository 需要填写泛型<对应表的pojo,表主键类型 >,
@Autowired
private GirlRepository girlRepository; 他是系统自动生成的对象,
findAll() 方法可以查询表内全部数据。
findOne() 可以根据id查询一条对象
findByAge() 可以自定义查询函数命名必须是驼峰式。
save() 可以插入一条新数据,如果存入的对象主键是存在的那么就变成更新相应主键的对象了
delete() 可以删除某个主键的数据
postman测试put方法时参数不能用form-data,要使用x-www-form-urlencoded
查看全部 -
Spring-Data-Jpa
JPA 是 JAVA持久层API 是一系列对象持久化的标准,实现了的产品有hibernate,toplink
要使用数据库需要加入 spring-boot-starter-data-jpa 和 mysql-connector-java 这两个依赖,一个是jpa的支持,一个是mysql的驱动,然后需要在application.yml中加入对数据库和jpa的支持
关于pojp类:
@Entity写在pojo类的上面,表示他对应的数据库中的一个表
@Id 写在主键上面
@GeneratedValue 表示自增长
且必须带一个无参数的构造函数,否则报错
关于jpa的配置
show-sql: true 显示sql语句
ddl-auto: create 每次启动时都会重新建表,如果原来存在就删掉再建
ddl-auto: update 每次启动时都会重新新建表,如果原来有就不执行
ddl-auto: create-drop 每次停止应用时都会把表删除
ddl-auto: validate 验证类里面的属性和表结构是否一致,不一致的话会报错
ddl-auto: none 什么都不做
查看全部 -
@Controller 这个注解主要用于处理http请求,加载class上面,一般用这个注解需要使用到网页模板引擎。可以使用spring官方的模板引擎thymeleaf,这个模板引擎的模板文件位于resources/templates,当需要返回时,返回模板的名字。
@RestController 是在spring4 后加入的注解,相当于@Controller加上@ResponseBody 一起使用。
@RequestMapping 是用于url映射,可以映射url到class url到方法
@RequestMapping("/hello") 加在class 上面时,表示该类下面的方法的访问路径都位于该映射路径之下。
@RequestMapping(value={"/hello","/hi"}, method = RequestMethod.GET) 映射的value可以是单一的字符串,也就意味着只能通过这个单一的字符串访问,也可以是一个字符串的集合,这样可以通过多个字符串访问。
@RequestMapping(value={"/hello","/hi"}, method = RequestMethod.GET) 可以不写method 这样post get都能访问到,但是不推荐这样
@PathVariable 获取URL中的数据
@RequestParam 获取请求参数的值
@GetMapping 组合注解 就是请求方式为get的注解,同样的有postmapping,putmapping
@PathVariable可获取url中的参数类似 http://localhost:8080/hello/url_param/666 它可以获取 后面的666,并不需要问号
@RequestParam("id") 这个括号里面带的字符串要与url中的一致,这个方法能获取get 和 post两种方法中的参数,与servlet中的getParameter类似,但这个自带了类型转换。还可以@RequestParam(value="id",required = false,defaultValue = "122") value是要接受参数的名字,required是参数是否必须带(默认是必须带),defaultvalue是默认值(字符串形式)
查看全部 -
@RequestMapping(value="请求路径",method="请求方式") 这个注解可以给方法绑定请求
application.properties 中存放着项目的配置
server.port 指定访问端口哦
server.context-path指定当前项目在哪个目录
也可使用application.yml 文件来配置。(yml更加方便)
yml配置时注意冒号后面带一个空格
content: "cupSize: ${cupSize}, age: ${age}}"
参数的值中可以带参数
@Value("${变量名}") 可以获取到application配置文件中配置的变量并且赋值给下面的变量,可以自动类型转换
@ConfigrationProperties(prefix="girl") 可以将类和配置文件绑定。指定prefix(前缀),类中需要提供getter setter。前缀必须写对, 属性名必须一样。
@AutoWrite 可以自动写入属性,但是此时必须给相应的类加上 @Component注解 这个注解实际上是在定义spring的bean
application-dev 是开发环境用的配置文件,application-prod 是生产环境用的配置文件。在 application中可以通过spring.profile.active(dev|profile) 来配置
在编译之后也可以通过 java -jar xxxx.jar --spring.prpfile.active=xxx来指定配置
查看全部 -
启动方式:
idea自动启动
mvn spring-boot:run
mvn install 编译出jar包然后再运行
查看全部 -
springboot简化配置,让配置变得更简单。
springboot是下一代框架
springboot是为springcloud打基础
课程包括 controller的使用
spring-data-jpa
事务管理
注意事项:
前置知识:Maven构建项目、spring注解、RESTfulAPI
不需要学习springMVC
Java、Maven 等版本保持一致
查看全部 -
不同的环境使用不同的配置,从而可以让1个项目启动多次,供不同的数据调用,如探针
查看全部 -
java -jar target/girl-0.0.1-SNAPSHOT.jar --spring.profiles.active=prod
使用之前,必须要用mvn install重新编译,否则target里面都是历史数据。
查看全部 -
第三种启动方式:
也是在girl路径下
编译。mvn install
cd target进入到target目录下
java -jar 文件名girl-0.0.1-SNAPSHOT
查看全部 -
第二种启动方式
进入到项目目录下,即girl目录
mvn spring-boot:run
查看全部 -
对于注入 @RequestMapping(value = "xxx", method = xxx) 的方式,可以使用简化注解,如图中GET方式的映射,可以使用 @GetMapping(value = xxx),其他的同理如 PostMapping
查看全部 -
@RequestParam 注解则是传统的获取请求参数,其中注解的 value 值对应请求中的参数名(而非方法中的参数名),如图中 "id" 对应的是url请求参数中的属性名为id的值,然后将该值注入给方法参数 myId 中去;你也可以利用该注解的 defaultValue 设置默认值,当传递的请求参数为空时将取默认值;还可以使用 required 表示参数是否必传
查看全部 -
@PathVariable 用来获取url中的参数,如图中 url 匹配为 /say/{id},则在Controller的参数中可以使用 @PathVariable 获取该 {id} 值,这种方式可以用在RESTful风格API中。
查看全部 -
@RequestMapping 可以设置value为集合,符合集合中的url都将访问到该方法,如截图中的 /hello 和 /hi 都回访问到 say() 方法
查看全部 -
下一门课程介绍
查看全部
举报