首页 > 学院 > 开发设计 > 正文

使用spring-data-jpa简化开发

2019-11-06 09:14:06
字体:
来源:转载
供稿:网友

在日常开发中,我们需要经常对数据库进行“增删改查”操作,虽然简单,但代码写起来却很枯燥。使用sPRing-data-jpa能够简化开发人员对数据库的操作,能够大量减少对数据库表格属性的配置与sql代码的编写。 引入maven依赖

<!-- spring-data-JPA --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency>

创建application.properties配置数据源信息

#数据库设置spring.datasource.type=com.alibaba.druid.pool.DruidDataSourcespring.datasource.driverClassName=com.MySQL.jdbc.Driverspring.datasource.url=jdbc:mysql://localhost:3306/testspring.datasource.username=rootspring.datasource.passWord=root

创建数据库表格,包含id,name,grade属性。 创建实体类student

import javax.persistence.Column;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.Id;import javax.persistence.Table;/** * * Created by shiyufeng on 2017/2/10. */@Entity@Table(name = "student") // 别名public class student { @Id @GeneratedValue private String id; @Column(nullable = false) private String name; @Column(nullable = false) private String grade; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getGrade() { return grade; } public void setGrade(String grade) { this.grade = grade; } @Override public String toString() { return "student{" + "id='" + id + '/'' + ", name='" + name + '/'' + ", grade='" + grade + '/'' + '}'; }}

创建数据访问接口StudentRepository

import cn.entity.student;import org.springframework.data.jpa.repository.JpaRepository;import org.springframework.data.jpa.repository.Query;import org.springframework.data.repository.query.Param;/** * Created by shiyufeng on 2017/2/10. */public interface StudentRepository extends JpaRepository<student, String> { public student findByName(String name); public student findById(String id); @Query("from student s where s.id=:id") public student findStudent(@Param("id") String id);}

创建服务控制类JPAController

import cn.entity.student;import cn.jpaService.StudentRepository;import org.springframework.boot.autoconfigure.EnableAutoConfiguration;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;import javax.annotation.Resource;import java.util.List;/** * 通过spring data jpa 单个操作数据 * Created by shiyufeng on 2017/2/10. */@RestController@EnableAutoConfigurationpublic class JPAController { @Resource private StudentRepository studentRepository; @RequestMapping("addStu") public void addStu() { student stu = new student(); stu.setGrade("六年级"); stu.setName("addStu"); studentRepository.save(stu); } @RequestMapping("findStudent") public String getStudent() { student student = studentRepository.findById("001"); return student.toString(); } @RequestMapping("findStudent2") public String getStudent2() { student student = studentRepository.findStudent("002"); return student.toString(); } @RequestMapping("findStudent3") public String getStudentAll() { List<student> student = studentRepository.findAll(); String a = ""; for (student studnet1 : student) { a = a + studnet1.toString(); } return a; }}

创建springboot启动类

@SpringBootApplicationpublic class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); }}

启动服务,访问JPAController的映射地址即可对数据库进行简单操作。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表