springboot学习笔记(三)使用JDBC以及整合spring data jpa
2017-12-21 09:30
609 查看
spring boot JDBC的使用:
1.引入依赖 <dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>2.数据库连接配置
编辑 application.properties
加入spring.datasource.url=jdbc:mysql://192.9.8.144:3306/eym_lib?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull
spring.datasource.name=eym_lib
spring.datasource.username=xxxxx
spring.datasource.password=xxxx
spring.datasource.max-wait=10000
spring.datasource.max-active=50
spring.datasource.min-idle=2
ok 现在可以使用jdbc了:
@RequestMapping("/jdbc")
public void testJDBC(){
String sql = "SELECT t.approvalBy,t.approvalDate,t.id,t.keywords FROM ym_manuscript t ";
List<Map<String, Object>> list= jdbcTemplate.queryForList(sql);
System.out.println(list.size());
}输出60 与测试库一致。
spring boot 整合spring data jap
1.引入依赖:
完整pom文件如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion>
<groupId>com.springboot</groupId>
<artifactId>Test_myspringboot</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Test_myspringboot</name>
<url>http://maven.apache.org</url>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.3.RELEASE</version>
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
</dependency>
<!--data source spring data jpa 需要用c3p0 连接池-->
<dependency>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.5.2</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</project>
配置spring data jpa 连接池:
application.properties
完整资源文件如下:
logging.file=log.log
logging.level.com.xiaofangtech.sunt.controller = debug
logging.level.com.xiaofangtech.sunt.helper = warn
spring.datasource.url=jdbc:mysql://192.9.8.144:3306/eym_lib?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull
spring.datasource.name=eym_lib
spring.datasource.username=root
spring.datasource.password=
spring.datasource.max-wait=10000
spring.datasource.max-active=50
spring.datasource.min-idle=2
spring.data.jpa.repositories.enabled=true
spring.jpa.database-platform=org.hibernate.dialect.MySQL5Dialect
spring.jpa.hibernate.naming-strategy=org.hibernate.cfg.DefaultNamingStrategy
spring.jpa.generate-ddl=false
spring.jpa.show-sql=true
spring.jpa.hibernate.naming_strategy=org.hibernate.cfg.DefaultNamingStrategy
spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
编写与数据库对应的实体:
代码如下:
package com.springboot.Test_myspringboot;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
/**
* 投诉实体
*
* @author xuchuang
* @version 1.0
* @created 2017-10-10 16:28:32
*/
@Entity
@Table(name = "ym_complaint")
public class Complaint extends BaseEntity {
private static final long serialVersionUID = -5244547508593077581L;
@Column(name = "title", nullable = false)
private String title;
@Column(name = "qq")
private String qq;
@Column(name = "mobile")
private String mobile;
@Column(name = "email")
private String email;
@Column(name = "link")
private String link;
@Column(name = "details", nullable = false)
private String details;
@Column(name = "fileId")
private String fileId;
@Column(name = "createdDate")
private Date createdDate;
@Column(name = "handledBy")
private String handledBy;
@Column(name = "handledDate")
private Date handledDate;
@Column(name = "handledDetails")
private String handledDetails;
@Column(name = "status")
private String status;
public Complaint() {
}
public String getHandledDetails() {
return handledDetails;
}
public void setHandledDetails(String handledDetails) {
this.handledDetails = handledDetails;
}
public String getFileId() {
return fileId;
}
public void setFileId(String fileId) {
this.fileId = fileId;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getQq() {
return qq;
}
public void setQq(String qq) {
this.qq = qq;
}
public String getMobile() {
return mobile;
}
public void setMobile(String mobile) {
this.mobile = mobile;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getLink() {
return link;
}
public void setLink(String link) {
this.link = link;
}
public String getDetails() {
return details;
}
public void setDetails(String details) {
this.details = details;
}
public Date getCreatedDate() {
return createdDate;
}
public void setCreatedDate(Date createdDate) {
this.createdDate = createdDate;
}
public String getHandledBy() {
return handledBy;
}
public void setHandledBy(String handledBy) {
this.handledBy = handledBy;
}
public Date getHandledDate() {
return handledDate;
}
public void setHandledDate(Date handledDate) {
this.handledDate = handledDate;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
}
编写对应试题的核心仓储类:如下:
/**
* Test_myspringboot
* JpaTest.java
*/
package com.springboot.Test_myspringboot;
import java.io.Serializable;
import org.springframework.data.jpa.repository.JpaRepository;
/**
* @author xuchuang
* @updateTime 2017年12月20日 下午5:25:41
*/
public interface JpaTest extends JpaRepository<Complaint,Serializable>{
}
ok,基本配置完毕,来测是一发:
@RequestMapping("/jpa")
public void testJpa(){
List<Complaint> list= jpatest.findAll();
System.out.println(list.size());
}
访问 localhost:6366/jpa
成功拿到数据! 及此 jdbc与springdatajpa的helloword 测试完毕!
1.引入依赖 <dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>2.数据库连接配置
编辑 application.properties
加入spring.datasource.url=jdbc:mysql://192.9.8.144:3306/eym_lib?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull
spring.datasource.name=eym_lib
spring.datasource.username=xxxxx
spring.datasource.password=xxxx
spring.datasource.max-wait=10000
spring.datasource.max-active=50
spring.datasource.min-idle=2
ok 现在可以使用jdbc了:
@RequestMapping("/jdbc")
public void testJDBC(){
String sql = "SELECT t.approvalBy,t.approvalDate,t.id,t.keywords FROM ym_manuscript t ";
List<Map<String, Object>> list= jdbcTemplate.queryForList(sql);
System.out.println(list.size());
}输出60 与测试库一致。
spring boot 整合spring data jap
1.引入依赖:
完整pom文件如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion>
<groupId>com.springboot</groupId>
<artifactId>Test_myspringboot</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Test_myspringboot</name>
<url>http://maven.apache.org</url>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.3.RELEASE</version>
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
</dependency>
<!--data source spring data jpa 需要用c3p0 连接池-->
<dependency>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.5.2</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</project>
配置spring data jpa 连接池:
application.properties
完整资源文件如下:
logging.file=log.log
logging.level.com.xiaofangtech.sunt.controller = debug
logging.level.com.xiaofangtech.sunt.helper = warn
spring.datasource.url=jdbc:mysql://192.9.8.144:3306/eym_lib?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull
spring.datasource.name=eym_lib
spring.datasource.username=root
spring.datasource.password=
spring.datasource.max-wait=10000
spring.datasource.max-active=50
spring.datasource.min-idle=2
spring.data.jpa.repositories.enabled=true
spring.jpa.database-platform=org.hibernate.dialect.MySQL5Dialect
spring.jpa.hibernate.naming-strategy=org.hibernate.cfg.DefaultNamingStrategy
spring.jpa.generate-ddl=false
spring.jpa.show-sql=true
spring.jpa.hibernate.naming_strategy=org.hibernate.cfg.DefaultNamingStrategy
spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
编写与数据库对应的实体:
代码如下:
package com.springboot.Test_myspringboot;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
/**
* 投诉实体
*
* @author xuchuang
* @version 1.0
* @created 2017-10-10 16:28:32
*/
@Entity
@Table(name = "ym_complaint")
public class Complaint extends BaseEntity {
private static final long serialVersionUID = -5244547508593077581L;
@Column(name = "title", nullable = false)
private String title;
@Column(name = "qq")
private String qq;
@Column(name = "mobile")
private String mobile;
@Column(name = "email")
private String email;
@Column(name = "link")
private String link;
@Column(name = "details", nullable = false)
private String details;
@Column(name = "fileId")
private String fileId;
@Column(name = "createdDate")
private Date createdDate;
@Column(name = "handledBy")
private String handledBy;
@Column(name = "handledDate")
private Date handledDate;
@Column(name = "handledDetails")
private String handledDetails;
@Column(name = "status")
private String status;
public Complaint() {
}
public String getHandledDetails() {
return handledDetails;
}
public void setHandledDetails(String handledDetails) {
this.handledDetails = handledDetails;
}
public String getFileId() {
return fileId;
}
public void setFileId(String fileId) {
this.fileId = fileId;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getQq() {
return qq;
}
public void setQq(String qq) {
this.qq = qq;
}
public String getMobile() {
return mobile;
}
public void setMobile(String mobile) {
this.mobile = mobile;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getLink() {
return link;
}
public void setLink(String link) {
this.link = link;
}
public String getDetails() {
return details;
}
public void setDetails(String details) {
this.details = details;
}
public Date getCreatedDate() {
return createdDate;
}
public void setCreatedDate(Date createdDate) {
this.createdDate = createdDate;
}
public String getHandledBy() {
return handledBy;
}
public void setHandledBy(String handledBy) {
this.handledBy = handledBy;
}
public Date getHandledDate() {
return handledDate;
}
public void setHandledDate(Date handledDate) {
this.handledDate = handledDate;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
}
编写对应试题的核心仓储类:如下:
/**
* Test_myspringboot
* JpaTest.java
*/
package com.springboot.Test_myspringboot;
import java.io.Serializable;
import org.springframework.data.jpa.repository.JpaRepository;
/**
* @author xuchuang
* @updateTime 2017年12月20日 下午5:25:41
*/
public interface JpaTest extends JpaRepository<Complaint,Serializable>{
}
ok,基本配置完毕,来测是一发:
@RequestMapping("/jpa")
public void testJpa(){
List<Complaint> list= jpatest.findAll();
System.out.println(list.size());
}
访问 localhost:6366/jpa
成功拿到数据! 及此 jdbc与springdatajpa的helloword 测试完毕!
相关文章推荐
- SpringBoot整合Spring Data JPA、MySQL、Druid并使用Mockito实现单元测试
- spring-data-redis 整合,以及使用kryo序列化代替jdk原生序列化机制
- jedis,spring-redis-data 整合使用,版本问题异常以及解决。
- 使用 Spring Data JPA 简化 JPA 开发
- 使用 Spring Data JPA 简化 JPA 开发—Spring Data JPA 开发指南
- 使用spring2.5.6整合jdbc的基本配置
- Hibernate注解使用以及Spring整合
- 使用 Spring Data JPA 简化 JPA 开发
- Hibernate注解使用以及Spring整合
- 使用 Spring Data JPA 简化 JPA 开发
- Spring Data JPA的简单使用
- 使用 spring data jpa 时,单向OnetoOne问题
- spring整合JPA(hibernate)以及jdbctemple
- 使用 Spring Data JPA 简化 JPA 开发
- 使用 Spring Data JPA 简化 JPA 开发
- Hibernate注解使用以及Spring整合
- 使用 Spring Data JPA 简化 JPA 开发
- 使用 Spring Data JPA 简化 JPA 开发
- 使用 Spring Data JPA 简化 JPA 开发
- Hibernate注解使用以及Spring整合