SpringBoot JPA實(shí)現(xiàn)查詢(xún)多值
JPA是java Persistence API簡(jiǎn)稱(chēng),中文名:java持久層API,JPA是JCP組織發(fā)布的J2EE標(biāo)準(zhǔn)之一
1.創(chuàng)建DataSource連接池對(duì)象
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <!-- 數(shù)據(jù)庫(kù)驅(qū)動(dòng) --> <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> <version>11.2.0.3</version> </dependency>
2.在pom.xml中定義spring-boot-starter-data-jpa
<!-- 定義spring-boot-starter-data-jpa -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
3.根據(jù)數(shù)據(jù)庫(kù)表定義實(shí)體類(lèi)
package cn.xdl.entity;
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity
@Table(name="EMP") //通常和@Entity配合使用,只能標(biāo)注在實(shí)體的class定義處,表示實(shí)體對(duì)應(yīng)的數(shù)據(jù)庫(kù)表的信息
public class Emp implements Serializable{
/**
*
*/
private static final long serialVersionUID = 1L;
@Id //定義了映射到數(shù)據(jù)庫(kù)表的主鍵的屬性,一個(gè)實(shí)體只能有一個(gè)屬性被映射為主鍵置于getXxxx()前
@Column(name="EMPNO") //name表示表的名稱(chēng)默認(rèn)地,表名和實(shí)體名稱(chēng)一致,只有在不一致的情況下才需要指定表名
private Integer empno;
@Column(name="ENAME")
private String ename;
@Column(name="JOB")
private String job;
@Column(name="MGR")
private int mgr;
public Integer getEmpno() {
return empno;
}
public void setEmpno(Integer empno) {
this.empno = empno;
}
public String getEname() {
return ename;
}
public void setEname(String ename) {
this.ename = ename;
}
public String getJob() {
return job;
}
public void setJob(String job) {
this.job = job;
}
public int getMgr() {
return mgr;
}
public void setMgr(int mgr) {
this.mgr = mgr;
}
@Override
public String toString() {
return "Emp [empno=" + empno + ", ename=" + ename + ", job=" + job + ", mgr=" + mgr + "]";
}
}
4.定義Dao接口,繼承JPA功能接口
package cn.xdl.jpa;
import org.springframework.data.jpa.repository.JpaRepository;
import cn.xdl.entity.Emp;
//JpaRepository:JPA資源庫(kù)
/**
* 1.所有繼承該接口的都被spring所管理,改接口作為標(biāo)識(shí)接口,功能就是用來(lái)控制domain模型的
* 2.Spring Data可以讓我們只定義接口,只要遵循spring data的規(guī)范,無(wú)需寫(xiě)實(shí)現(xiàn)類(lèi)。
*
*/
public interface EmpDao extends JpaRepository<Emp, Integer>{
}
5.獲取Dao接口對(duì)象操作數(shù)據(jù)庫(kù)
@SpringBootApplication
public class MyBootApplication {
public static void main(String[] args) throws SQLException {
ApplicationContext ioc = SpringApplication.run(MyBootApplication.class, args);
// 自動(dòng)配置創(chuàng)建DataSource,id名為dataSource
DataSource ds = ioc.getBean("dataSource", DataSource.class);
System.out.println(ds);
System.out.println("=================");
System.out.println("=================");
System.out.println("=================");
EmpDao empDao = ioc.getBean("empDao", EmpDao.class);
/**
* 遍歷
*/
List<Emp> empdatas = empDao.findAll();
for (Emp emp : empdatas) {
System.out.println(emp);
}
}
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Java中g(shù)etResourceAsStream用法分析
這篇文章主要介紹了Java中g(shù)etResourceAsStream用法,較為詳細(xì)的分析了getResourceAsStream的功能及用法,需要的朋友可以參考下2015-06-06
淺談springioc實(shí)例化bean的三個(gè)方法
下面小編就為大家?guī)?lái)一篇淺談springioc實(shí)例化bean的三個(gè)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就想給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-09-09
Spring Jpa多數(shù)據(jù)源工程配置過(guò)程解析
這篇文章主要介紹了Spring Jpa多數(shù)據(jù)源工程配置過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08
java中四種生成和解析XML文檔的方法詳解(介紹+優(yōu)缺點(diǎn)比較+示例)
本篇文章主要介紹了四種生成和解析XML文檔的方法,即:DOM、SAX、JDOM和DOM4J,具有一定的參考價(jià)值,有興趣的可以了解一下。2016-11-11

