本文向你展示如何在Spring Boot的Web应用中使用Mysq数据库,也充分展示Spring Boot的优势(尽可能少的代码和配置)。数据访问层我们将使用Spring Data JPA和Hibernate(JPA的实现之一)。

1.Maven pom.xml文件
在你的项目中增加如下依赖文件
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> </dependencies>
2.属性配置文件application.properties
在src/main/resources/application.properties中设置数据源和jpa配置。
spring.datasource.url = jdbc:mysql://localhost:3306/test 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
全部的配置都在如上的文件中了,不需要另外的XML配置和Java配置。
上文中的数据库配置,你需要换成你的数据库的地址和用户名密码。
hibernate的ddl-auto=update配置表名,数据库的表和列会自动创建(根据Java实体的熟悉), 这里 可以看到更多得hibernate配置。
3.User实体
创建一个User实体,User包含三个属性id,email和name。User实体和Mysql数据库的users表相对应。
@Entity
@Table(name = "users")
public class User {
// ==============
// PRIVATE FIELDS
// ==============
// An autogenerated id (unique for each user in the db)
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private long id;
// The user email
@NotNull
private String email;
// The user name
@NotNull
private String name;
// ==============
// PUBLIC METHODS
// ==============
public User() { }
public User(long id) {
this.id = id;
}
// Getter and setter methods
// ...
} // class User
4.User实体的数据访问层UserDao
本例中UserDao非常简单,只需要继承CrudRespositroy即可,CrudRespositroy已经实现了save,delete,deleteAll,findOne和findAll.(比较神奇的时这些方法其实CrudRespositroy中其实并没有实现,并且通过对dao方法的命名还可以实现新的方法)
@Transactional
public interface UserDao extends CrudRepository<User, Long> {
public User findByEmail(String email);
}
5.测试的控制器UserController
新建一个查询控制器UserController
@Controller
public class UserController {
@RequestMapping("/get-by-email")
@ResponseBody
public String getByEmail(String email) {
String userId;
User user = userDao.findByEmail(email);
if (user != null) {
userId = String.valueOf(user.getId());
return "The user id is: " + userId;
}
return "user " + email + " is not exist.";
}
}
你可以使用浏览器访问url http://127.0.0.1:8080/get-by-email?email=qiyadeng@gmail.com,可以获得用户的Id(你可以先在Mysql数据库中新增一条记录)。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# springboot
# mysql
# jpa
# spring
# boot
# 使用jpa
# boot使用mysql
# Spring Boot Mysql 数据库操作示例
# Spring Boot如何解决Mysql断连问题
# Spring Boot 添加MySQL数据库及JPA实例
# Spring Boot中使用jdbctemplate 操作MYSQL数据库实例
# SpringBoot连接MYSQL数据库并使用JPA进行操作
# Spring Boot JPA访问Mysql示例
# SpringBoot用JdbcTemplates访问Mysql实例代码
# SpringBoot入门系列之JPA mysql
# Spring boot 使用mysql实例详解
# Spring Boot高级教程之Spring Boot连接MySql数据库
# 你可以
# 还可以
# 都在
# 不需要
# 可以看到
# 中了
# 只需要
# 向你
# 可以获得
# 先在
# 数据库中
# 创建一个
# 配置文件
# 相对应
# 多得
# 大家多多
# 新建一个
# 本例
# 实现了
# 如何在
相关文章:
建站之星云端配置指南:模板选择与SEO优化一键生成
阿里云网站搭建费用解析:服务器价格与建站成本优化指南
香港服务器如何优化才能显著提升网站加载速度?
西安专业网站制作公司有哪些,陕西省建行官方网站?
表情包在线制作网站免费,表情包怎么弄?
装修招标网站设计制作流程,装修招标流程?
如何配置IIS站点权限与局域网访问?
实现点击下箭头变上箭头来回切换的两种方法【推荐】
如何在七牛云存储上搭建网站并设置自定义域名?
青岛网站建设如何选择本地服务器?
大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?
微网站制作教程,我微信里的网站怎么才能复制到浏览器里?
制作网站的模板软件,网站怎么建设?
建站之星北京办公室:智能建站系统与小程序生成方案解析
建站之星如何开启自定义404页面避免用户流失?
开心动漫网站制作软件下载,十分开心动画为何停播?
家庭服务器如何搭建个人网站?
招贴海报怎么做,什么是海报招贴?
如何在Ubuntu系统下快速搭建WordPress个人网站?
如何彻底卸载建站之星软件?
建站之星导航配置指南:自助建站与SEO优化全解析
Avalonia如何实现跨窗口通信 Avalonia窗口间数据传递
如何零基础在云服务器搭建WordPress站点?
如何在阿里云ECS服务器部署织梦CMS网站?
如何批量查询域名的建站时间记录?
在线ppt制作网站有哪些,请推荐几个好的课件下载的网站?
官网建站费用明细查询_企业建站套餐价格及收费标准指南
北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?
,石家庄四十八中学官网?
在线制作视频网站免费,都有哪些好的动漫网站?
C#如何使用XPathNavigator高效查询XML
如何零基础开发自助建站系统?完整教程解析
定制建站方案优化指南:企业官网开发与建站费用解析
linux top下的 minerd 木马清除方法
如何在搬瓦工VPS快速搭建网站?
微信小程序制作网站有哪些,微信小程序需要做网站吗?
建站主机SSH密钥生成步骤及常见问题解答?
XML的“混合内容”是什么 怎么用DTD或XSD定义
宝盒自助建站智能生成技巧:SEO优化与关键词设置指南
网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?
如何确保FTP站点访问权限与数据传输安全?
如何在橙子建站中快速调整背景颜色?
如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?
建站之星安装步骤有哪些常见问题?
建站主机是什么?如何选择适合的建站主机?
三星网站视频制作教程下载,三星w23网页如何全屏?
宝塔面板创建网站无法访问?如何快速排查修复?
SAX解析器是什么,它与DOM在处理大型XML文件时有何不同?
南宁网站建设制作定制,南宁网站建设可以定制吗?
制作门户网站的参考文献在哪,小说网站怎么建立?
*请认真填写需求信息,我们会在24小时内与您取得联系。