1,添加相应的依赖包:
1,1:在pom.xml添加mysql,spring-data-jpa的依赖包:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
2,添加applicationContext.xml的配置文件
2.1:创建一个源文件夹
2,2,创建一个application.properties的文件
2.3:放入相关的配置:
Msql的配置:
########################################################
###datasource
########################################################
spring.datasource.url= jdbc:mysql://localhost:3306/test
spring.datasource.username= root
spring.datasource.password= root
spring.datasource.driverClassName= com.mysql.jdbc.Driver
spring.datasource.max-active=20
spring.datasource.max-idle=8
spring.datasource.min-idle=8
spring.datasource.initial-size=10
JPA的配置
########################################################
### JavaPersistence Api
########################################################
# Specifythe DBMS
spring.jpa.database= MYSQL
# Show ornot log for each sql query
spring.jpa.show-sql= true
#Hibernate ddl auto (create, create-drop, update)
spring.jpa.hibernate.ddl-auto= update
# Namingstrategy
#[org.hibernate.cfg.ImprovedNamingStrategy #org.hibernate.cfg.DefaultNamingStrategy]
#命名测试 当我们创建实体类时 在相应的数据库中创建表结构
spring.jpa.hibernate.naming-strategy= org.hibernate.cfg.ImprovedNamingStrategy
#stripped before adding them to the entity manager)
spring.jpa.properties.hibernate.dialect= org.hibernate.dialect.MySQL5Dialect
1,创建实体类;
packagecom.springboot.maven.demo.bean;
importjavax.persistence.Entity;
importjavax.persistence.GeneratedValue;
importjavax.persistence.GenerationType;
importjavax.persistence.Id;
/**
* 创建了一个实体类
* @author Administrator
* 1,使用@Entity实体类化进行持久化操作,当JPA检测到我们的实体类当中有@Entity
* 注解时,会在数据库中生成对应的表结构信息
*
*
*/
@Entity
publicclass Cat {
/**
* 使用@id生成主键
* 使用代码@GenerateValue(strategy=GenerationType.Auto)
* 指定主键生成.mysql默认的是自增
*/
@Id @GeneratedValue(strategy=GenerationType.AUTO)
private int id;
private String catName;//在数据库里面根据大写做成分割
private int catAge;
public int getId() {
return id;
}
public void setId(intid) {
this.id = id;
}
public String getCatName() {
return catName;
}
public voidsetCatName(String catName) {
this.catName = catName;
}
public int getCatAge() {
return catAge;
}
public void setCatAge(intcatAge) {
this.catAge = catAge;
}
}
2,创建dao层(继承接口)
packagecom.springboot.maven.demo.repository;
importorg.springframework.data.repository.CrudRepository;
importcom.springboot.maven.demo.bean.Cat;
publicinterface CatRepository extends CrudRepository<Cat, Integer> {
}
3,写service层:
packagecom.springboot.maven.demo.service;
importjavax.annotation.Resource;
importjavax.transaction.Transactional;
importorg.springframework.stereotype.Service;
importcom.springboot.maven.demo.bean.Cat;
importcom.springboot.maven.demo.repository.CatRepository;
@Service
publicclass CatService {
@Resource
private CatRepository catRepository;
/**
* 使用@Transactional进行事物的绑定
*@param cat
*/
@Transactional
public void save(Cat cat) {
catRepository.save(cat);
}
@Transactional
public void delete(int id) {
catRepository.delete(id);
}
@Transactional
public Iterable<Cat> getAll(){
return catRepository.findAll();
}
}
4,写Controller层;
packagecom.springboot.maven.demo.controller;
importjavax.annotation.Resource;
importorg.springframework.web.bind.annotation.RequestMapping;
importorg.springframework.web.bind.annotation.RestController;
importcom.springboot.maven.demo.bean.Cat;
importcom.springboot.maven.demo.service.CatService;
@RestController
@RequestMapping("/cat")
publicclass CatController {
@Resource
private CatService catService;
@RequestMapping("/save")
public String save() {
Cat cat =new Cat();
cat.setCatName("jenny");
cat.setCatAge(3);
catService.save(cat);
return "save OK!";
}
@RequestMapping("/delete")
public String delete() {
catService.delete(1);
return "delete OK!";
}
@RequestMapping("/getAll")
public Iterable<Cat>getAll(){
return catService.getAll();
}
}
先访问127.0.0.1:8080/cat/save