SpringBoot和SpringDataJPA
来源:互联网 发布:linux xhost没反应 编辑:程序博客网 时间:2024/06/05 05:58
慕课网的廖师兄说,如果你是一个程序员,使用了SpringBoot这个技术之后,女朋友都会夸你,因为它带来了很多简便的好处:
* 编码将变得简单
* 配置将变得简单
* 部署将变的简单
* 监控将变得简单
不用多久你就能升职加薪,迎娶白富美,走向人生的巅峰,哈哈哈哈哈哈
一、简介
1.简介
SpringBoot是一个全新的框架,由Pivotal团队提供,设计目的:用来简化心Spring应用的初始搭建以及开发过程。框架使用了特定的方式来进行配置,从而是开发人员不再需要去定义样板化的配置。
个人认为SpringBoot最大的功效就是简化了搭建环境的很多配置,第二就是在Controller的使用上,引进了新的注解内容,是开发更加方便简洁高效。
2 .特点
SpringBoot是Springmvc的升级版,没有必然的联系
特点:
(1)配置简单;(2)微服务框架;(3)是下一代框架
3.项目的属性配置
3.1.创建项目之后,先配置maven,
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency>
3.2.main函数存在的启动类上,需用@SpringBootApplication注解,
3.3.application.yml文件和application.property文件的区别
很简单:就是前者将后者中的共有信息提取出来,不重复写,以树状结构的形式出现
(冒号后的空格必须有!):
server: prot: 8081 context-path: /girl
3.4.开发环境和生产环境不同的问题:
Spring: profiles: active:dev(或者active:prod,两者选其一)
4.controller中注解的使用简介:
@Controller: 使浏览器能够访问到,处理http请求
@RestController: Spring4之后的新家注解,是@ResponseBody和@Controller的组合注解
@Requestmapping:配置url映射,希望用户能通过URL访问到我们服务器写的方法。
@PathVariable: 获取url中的数据进行参数绑定
@RequestParam:获取请求参数的值(value=”“,required=true)
@GetMapping:是@RequestMapping的组合注解。
二.数据处理—-SpringDataJPA
1.先来认识一下什么是SpringDataJPA:
(1)JPA:java persistence API 定义了一系列的对象持久化标准
2.为什么要使用SpringDataJPA?
它极大的简化了数据库访问层的代码,只需要三步,就能轻松搞定一切~
* 编写Entity实体类,依照JPA的规范,定义实体
* 编写Repository接口,依靠SpringData规范,定义数据访问接口(不要任何实现)
* 在maven中添加jar包依赖
* 在.yml文件中配置mysql驱动和数据库以及SpringDataJPA。
3.如何配置项目属性
(1)maven中添加包的依赖 (见文章 3.1)
(2).yml文件设置:
jpa: hibernate: ddl-auto: update naming: strategy: org.hibernate.cfg.ImprovedNamingStrategy show-sql: true
ddl-auto:create 表示在运行时候自动创建
ddl-auto:update 表示在第一次运行时创建表,而后期的运行则只会更新表的内容而不删除表原有的属性和数据
ddl-auto:create-drop 当应用停止的时候就删除表
ddl-auto:none 在运行时什么都不做
ddl-auto:validate 会验证类中的属性和表结构是否一致,不一致就会报错
show-sql: true 在控制台输出sql语句,方便调试
4.是如何利用SpringDataJPA在运行时创建表的?
(1)被@Entity注册的实体类
(2)在实体类中被@Id @GeneratedValue注解的 自增的主键id
(3)实体类中的set和get方法
(4).yml文件中的 ddl-auto:create 运行时创建
还有其他关于数据库的正常配置,满足这些条件,在项目启动的时候,会自动创建对应的数据表。
三.事务处理
@Transactional 是操作具有事务特性
遵循事务的三大原则:同一性,原子性,一致性,持久性
下一篇 将详细介绍一下 SpringDataJPA的相关知识
- SpringBoot和SpringDataJPA
- springboot+springdatajpa 数据库命名
- SpringBoot+SpringDataJpa后台常用注解
- springboot--SpringDataJPA生成表 crud数据
- springboot下springdatajpa配置多数据源
- springdataJPA
- springDataJpa
- IDEA+Gradle+SpringBoot+SpringDataJPA+lambok(lombok有点问题)(一)
- 代码生成器CodeGenerator(目前只支持SpringBoot/SpringDataJpa)
- springdatajpa nativeSQL的分页用法和注意事项以及解决防范
- SpringDataJpa使用说明
- SpringdataJpa JpaRepository
- 结合SpringDataJPA中的PagingAndSortingRepository和 JpaSpecificationExecutor接口实现大数据量的数据分页查询
- 一步一步学SpringDataJpa——初识SpringDataJpa
- 【SpringDataJPA】——SpringDataJPA入门实例
- SpringBoot学习(四)SpringBoot和WebSocket
- SpringBoot系列(5)---SpringBoot-Web和SpringBoot基础
- SpringBoot和Mybatis整合
- Ardupilot -- APM源码笔记(重制)~序言
- matlab中meshgrid的使用
- C++虚函数
- ArcGIS中生成蜂窝多边形算法解析
- (3)can总线技术规范
- SpringBoot和SpringDataJPA
- 常用数据结构-数组实现静态链表
- linux下gdb调试常用命令汇总
- over partition by与group by 的区别
- Spring Tools Suite安装遇见的问题
- 【ionic】卡片制作
- Docker 官方镜像加速 registry.docker-cn.com
- sprintf 补足小数点后两位
- qt-vs 常量中有换行符