search
HomeDatabaseMysql TutorialSample code sharing for adding MySQL database and JPA instance to Spring Boot

This article mainly introduces Spring Boot to add MySQL database and JPA. The editor thinks it is quite good, so I will share it with you now and give it as a reference. Let’s follow the editor and take a look

Recently I am learning Spring Boot and continue the previous learning. This time we add MySQL database and JPA.

Configuration:

pom.xmlFile

<!-- 添加Mysql和JPA--> 
  <dependency> 
  <groupId>org.springframework.boot</groupId> 
  <artifactId>spring-boot-starter-data-jpa</artifactId> 
  </dependency> 
  <dependency> 
   <groupId>mysql</groupId> 
   <artifactId>mysql-connector-java</artifactId> 
  </dependency>

Add data in the Application.properties (create a new file under the resource folder and configure it) Configure:

spring.datasource.url = jdbc:mysql://localhost:3306/spring_boot 
spring.datasource.username = root 
spring.datasource.password = root 
spring.datasource.driverClassName = com.mysql.jdbc.Driver 
 
 
# Specify the DBMS 
spring.jpa.database = MYSQL 
# Show or not log for each sql query 
spring.jpa.show-sql = true 
# Hibernate ddl auto (create, create-drop, update) 
spring.jpa.hibernate.ddl-auto = update 
# Naming strategy 
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

User class

package com.seawater.bean; 
 
import javax.persistence.*; 
import javax.validation.constraints.NotNull; 
 
/** 
 * Created by zhouhs on 2016/12/30. 
 */ 
@Entity 
@Table(name = "user") 
public class User { 
 
 @Id 
 @GeneratedValue(strategy = GenerationType.AUTO) 
 private Long id; 
 private String name; 
 private int age; 
 
 public Long getId() { 
  return id; 
 } 
 
 public void setId(Long id) { 
  this.id = id; 
 } 
 
 public String getName() { 
  return name; 
 } 
 
 public void setName(String name) { 
  this.name = name; 
 } 
 
 public int getAge() { 
  return age; 
 } 
 
 public void setAge(int age) { 
  this.age = age; 
 } 
}

UserController

package com.seawater.controller; 
import com.seawater.Dao.UserDao; 
import com.seawater.bean.User; 
import io.swagger.annotations.Api; 
import io.swagger.annotations.ApiImplicitParam; 
import io.swagger.annotations.ApiImplicitParams; 
import io.swagger.annotations.ApiOperation; 
import org.springframework.web.bind.annotation.RequestMapping; 
import org.springframework.web.bind.annotation.RequestMethod; 
import org.springframework.web.bind.annotation.RequestParam; 
import org.springframework.web.bind.annotation.RestController; 
 
import javax.annotation.Resource; 
 
/** 
 * Created by zhouhs on 2016/12/30. 
 */ 
@RestController 
@RequestMapping(value = "/user") 
@Api(description = "用户") 
public class UserController { 
 
 @Resource 
 UserDao userDAO; 
 @ApiOperation(value = "添加用户") 
 @ApiImplicitParams({ 
   @ApiImplicitParam(name = "name" , value = "name" , paramType = "query" , required = true ), 
   @ApiImplicitParam(name = "age" , value = "age" , paramType = "query" , required = true ) 
 }) 
 @RequestMapping(value = "/addUser" , method = RequestMethod.POST) 
 public String addUser(@RequestParam(value = "name") String name,@RequestParam(value = "age") int age){ 
 
  User user = new User(); 
  user.setName(name); 
  user.setAge(age); 
 
  userDAO.save(user); 
 
  return "add user success !"; 
 } 
 
 @ApiOperation(value = "查找用户") 
 @ApiImplicitParam(name = "id" , value = "id" , paramType = "query" , required = true , dataType = "int") 
 @RequestMapping(value = "/findById" , method = RequestMethod.POST) 
 public String findById(@RequestParam(value = "id") Long id){ 
 
  User user = userDAO.findById(id); 
 
  if(user == null){ 
   return "error"; 
  }else{ 
   return "name:" + user.getName() + " , age:" + user.getAge(); 
  } 
 } 
 
 @ApiOperation(value = "查询所有用户") 
 @RequestMapping(value = "/findAll" , method = RequestMethod.POST) 
 public Iterable findAll(){ 
 
  Iterable<User> userList = userDAO.findAll(); 
 
  return userList; 
 
 } 
 
 @ApiOperation(value = "删除用户") 
 @ApiImplicitParam(name = "id" , value = "id" , paramType = "query" , required = true , dataType = "int") 
 @RequestMapping(value = "/deleteById" , method = RequestMethod.POST) 
 public String deleteById(@RequestParam(value = "id") Long id){ 
 
  userDAO.delete(id); 
  return "delete success !"; 
 
 } 
}

Data table (id is defined as Integer):

Sample code sharing for adding MySQL database and JPA instance to Spring Boot

UserDao:

package com.seawater.Dao; 
 
import com.seawater.bean.User; 
import org.springframework.data.repository.CrudRepository; 
 
/** 
 * Created by zhouhs on 2016/12/30. 
 */ 
public interface UserDao extends CrudRepository<User, Long> { 
 
 public User findById(Long id); 
 
}

ThenStart the project: Visit localhost:8081/swagger-ui.html

Result:

Sample code sharing for adding MySQL database and JPA instance to Spring Boot

I won’t do it one by one.

The above is the detailed content of Sample code sharing for adding MySQL database and JPA instance to Spring Boot. For more information, please follow other related articles on the PHP Chinese website!

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
What Are the Limitations of Using Views in MySQL?What Are the Limitations of Using Views in MySQL?May 14, 2025 am 12:10 AM

MySQLviewshavelimitations:1)Theydon'tsupportallSQLoperations,restrictingdatamanipulationthroughviewswithjoinsorsubqueries.2)Theycanimpactperformance,especiallywithcomplexqueriesorlargedatasets.3)Viewsdon'tstoredata,potentiallyleadingtooutdatedinforma

Securing Your MySQL Database: Adding Users and Granting PrivilegesSecuring Your MySQL Database: Adding Users and Granting PrivilegesMay 14, 2025 am 12:09 AM

ProperusermanagementinMySQLiscrucialforenhancingsecurityandensuringefficientdatabaseoperation.1)UseCREATEUSERtoaddusers,specifyingconnectionsourcewith@'localhost'or@'%'.2)GrantspecificprivilegeswithGRANT,usingleastprivilegeprincipletominimizerisks.3)

What Factors Influence the Number of Triggers I Can Use in MySQL?What Factors Influence the Number of Triggers I Can Use in MySQL?May 14, 2025 am 12:08 AM

MySQLdoesn'timposeahardlimitontriggers,butpracticalfactorsdeterminetheireffectiveuse:1)Serverconfigurationimpactstriggermanagement;2)Complextriggersincreasesystemload;3)Largertablesslowtriggerperformance;4)Highconcurrencycancausetriggercontention;5)M

MySQL: Is it safe to store BLOB?MySQL: Is it safe to store BLOB?May 14, 2025 am 12:07 AM

Yes,it'ssafetostoreBLOBdatainMySQL,butconsiderthesefactors:1)StorageSpace:BLOBscanconsumesignificantspace,potentiallyincreasingcostsandslowingperformance.2)Performance:LargerrowsizesduetoBLOBsmayslowdownqueries.3)BackupandRecovery:Theseprocessescanbe

MySQL: Adding a user through a PHP web interfaceMySQL: Adding a user through a PHP web interfaceMay 14, 2025 am 12:04 AM

Adding MySQL users through the PHP web interface can use MySQLi extensions. The steps are as follows: 1. Connect to the MySQL database and use the MySQLi extension. 2. Create a user, use the CREATEUSER statement, and use the PASSWORD() function to encrypt the password. 3. Prevent SQL injection and use the mysqli_real_escape_string() function to process user input. 4. Assign permissions to new users and use the GRANT statement.

MySQL: BLOB and other no-sql storage, what are the differences?MySQL: BLOB and other no-sql storage, what are the differences?May 13, 2025 am 12:14 AM

MySQL'sBLOBissuitableforstoringbinarydatawithinarelationaldatabase,whileNoSQLoptionslikeMongoDB,Redis,andCassandraofferflexible,scalablesolutionsforunstructureddata.BLOBissimplerbutcanslowdownperformancewithlargedata;NoSQLprovidesbetterscalabilityand

MySQL Add User: Syntax, Options, and Security Best PracticesMySQL Add User: Syntax, Options, and Security Best PracticesMay 13, 2025 am 12:12 AM

ToaddauserinMySQL,use:CREATEUSER'username'@'host'IDENTIFIEDBY'password';Here'showtodoitsecurely:1)Choosethehostcarefullytocontrolaccess.2)SetresourcelimitswithoptionslikeMAX_QUERIES_PER_HOUR.3)Usestrong,uniquepasswords.4)EnforceSSL/TLSconnectionswith

MySQL: How to avoid String Data Types common mistakes?MySQL: How to avoid String Data Types common mistakes?May 13, 2025 am 12:09 AM

ToavoidcommonmistakeswithstringdatatypesinMySQL,understandstringtypenuances,choosetherighttype,andmanageencodingandcollationsettingseffectively.1)UseCHARforfixed-lengthstrings,VARCHARforvariable-length,andTEXT/BLOBforlargerdata.2)Setcorrectcharacters

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

mPDF

mPDF

mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

WebStorm Mac version

WebStorm Mac version

Useful JavaScript development tools

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools