Eclipse + Spring boot +mybatis + mysql
Eclipse + Spring boot +mybatis + mysql
如题。使用Springboot 2.0 版本进行网页的开发。原理和优点很多博文已经讲过了,这里不再赘述。但是很多项目按照他们的方法根本没办法搭建起来,故此详细记录步骤,以供博友查阅。也算是自己的备忘录。原文件我都存在Github之中,文末会放出链接。
1. 项目的创建
上start.spring.io/网站填写项目名称。勾选Web, Mysql, JDBC, Mybatis选项。下载安装包,解压后当成已经存在的Maven project导入。
另一种方式是在Eclipse中的marketplace直接安装插件,然后就会出现spring boot选项。勾选内容与上面方法类似。
具体采用哪种方式全凭个人喜好。
2. 配置pom.xml
一部分的依赖已经自动生成。需要添加的依赖可以去https://mvnrepository.com/自己添加。
注意:如果Eclipse的jar包没有下载完全,或者下载的jar包损坏(通常不能从文件名和文件大小判断是否损坏),会出现报错。可以到该项目的lib文件夹中讲损坏的jar包删除,然后右击项目选择Maven -> update project。这样项目会自动重新下载缺失jar包。
再说一下热部署优点。
在普通的配置下,每一次代码的修改都必须关闭进制释放端口,再次启动才能让改动生效,非常麻烦。使用热部署以后,保存代码,刷新网页就可以让改动生效。在pom.xml中添加以下依赖。如果版本号标黄可以删除。
<!-- 热部署依赖 --><dependency><groupId>org.springframework</groupId><artifactId>springloaded</artifactId><version>1.2.8.RELEASE</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><optional>true</optional> <!-- 这个需要为 true 热部署才有效 --></dependency>
顺便说一下释放端口的问题。
每次都需要在控制台终止以后点remove launch来释放端口。否则再次启动的时候Tomcat会报端口被占用的错误。
3. 配置application.properties
在src/main/resources文件下会自动生成该文件。没有的话自己添加就好。主要是配置端口和数据库的地址。
server.port = 8088spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=****
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
端口默认是8080,我是有别的程序占用了端口,所以改成了8088.在配置数据库地址的时候记得加上serverTimezone这个变量,其他可以不需要配,否则会报错:
the server time zone value '??????' is unrecognized or represents more than one time zone.
4. Entity层
主要是表明java对象的变量以及各种getter和setter方法。
5. DAO层
把访问数据库的代码封装起来,提供接口。主要负责处理数据库操作,对于数据库中的数据做增删改查等操作的代码。此程序是Mapper的代码。将sql中的数据和java对象对应起来。
6. Controller层
记得在每一个class之前加上@RestController注释。
class和每一个方法之前都可以加上@RequestMapping注释,其中value这个值就是进入到这个部分的网址(只是网址后面的一部分,前面要写localhost:端口号/)。
7. 程序的启动
XXX(项目名)Application.java这个文件必须放在src/main/java文件下的包(通常是com.xxx)下的第一级。意思就是。否则扫描文件的时候会出现问题。
右击XXXApplication.java文件,选择Run as -> java application就可以启动项目。springboot自带tomcat容器,所以不需要再重新下载。
另一种启动方式是右击项目,选择Run as -> maven clean之后再选择maven install。此时会生成一个war包(如果没有就刷新项目),将war包复制到tomcat容器里面(需要自己下载),tomcat会自动解压。在tomcat文件夹中的bin文件夹启动startup.bat文件(本人是Windows系统,Mac和Linux请双击启动startup.sh)。
8. 源码
https://github.com/csy99/SpringBoot.git
9. 参考博文
1. https://blog.csdn.net/weixin_37539378/article/details/79908313
2. https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/80949846
版权声明:本文为博主原创文章,转载请注明出处。https://blog.csdn.net/qq_40136685/article/details/86088596
Eclipse + Spring boot +mybatis + mysql相关推荐
- Eclipse + Spring boot +mybatis + mysql(后续)
这一篇实际上是上一篇的续集.做了一个简陋的前端页面实现与后台的数据交互.实现的功能是用户的注册(若成功就存进数据库),用户的登录(与数据库内已注册用户的数据进行比对).注册时候对重复ID的检测,登录验 ...
- mysql快速启动_GitHub - TianSiQiang/Spring-Boot-MyBatis-Mysql: Spring Boot+MyBatis+Mysql 快速启动示例...
Spring Boot+MyBatis+Mysql 添加依赖 引入 lombok.mysql-connector-java .mybatis-plus-boot-starter 依赖: org.pro ...
- spring boot+Mybatis+mysql+atomikos+jta实现多数据源分布式事务
spring boot+Mybatis+mysql+atomikos+jta实现多数据源分布式事务 1.导入相关依赖 2.配置相关application.properties 3.创建配置文件 4.创 ...
- SpringBoot实战系列1:Spring Boot+Mybatis+MySql实现增删改查
前言 Spring boot项目目前是Java Web开发领域最受市场欢迎的Spring框架之一,也是构建分布式项目.微服务项目重要基础之一,Spring Boot免去了配置繁杂的依赖和配置,使得开发 ...
- Spring Boot + MyBatis + MySQL读写分离
今日推荐 借助Redis锁,完美解决高并发秒杀问题还在直接用JWT做鉴权?JJWT真香Spring Boot 操作 Redis 的各种实现Fluent Mybatis 牛逼!Nginx 常用配置清单这 ...
- Spring Boot + Mybatis 实现动态数据源
动态数据源 在很多具体应用场景的时候,我们需要用到动态数据源的情况,比如多租户的场景,系统登录时需要根据用户信息切换到用户对应的数据库.又比如业务A要访问A数据库,业务B要访问B数据库等,都可以使用动 ...
- 初学Java 从0-1创建Spring boot+Mybatis - plus+Swagger2+Mysql(代码生成器)
第一章 初学Java 创建Spring boot+Mybatis-plus+mysql 目录 一.创建项目 二.配置pom.xml 三.配置application.yml 四.增加Mybatis-pl ...
- 从零搭建一个 Spring Boot 开发环境!Spring Boot+Mybatis+Swagger2 环境搭建
从零搭建一个 Spring Boot 开发环境!Spring Boot+Mybatis+Swagger2 环境搭建 本文简介 为什么使用Spring Boot 搭建怎样一个环境 开发环境 导入快速启动 ...
- spring boot+mybatis整合
LZ今天自己搭建了下Spring boot+Mybatis,比原来的Spring+SpringMVC+Mybatis简单好多.其实只用Spring boot也可以开发,但是对于多表多条件分页查询,Sp ...
最新文章
- linux下利用openssl来实现证书的颁发(详细步骤)--转载和修改
- Redis Cluster 高可用方案
- Matlab计算多项式的值(数值)
- 设计模式之单例设计模式(懒汉式)
- linux 匹配文本中的ip,linux文本三剑客匹配网卡IP地址大PK(CentOS 7系统)
- JS正则表达式验证账号、手机号、电话和邮箱
- 内连接查询的重点分析
- 面对万物互联的智能世界,你是否也想分一杯羹
- AutoCAD 2021 macOS Big Sur 11版 注册机无法打开?注册机怎么使用?
- python opencv3 特征提取与描述 DoG SIFT hessian surf
- MOGRE学习(三) Mogre的SceneNode及Entity
- 使用xp_readerrorlog命令读取SQL Server错误日志
- 人性歪曲的心理调适 一【浮躁心理、偏激心理、自卑心理、自杀心理、愤怒心理】...
- typedef NS_ENUM 等枚举介绍
- idea中常用快捷键
- SSD1306 - OLED显示屏
- 【第三方互联】微博2、创建新浪微博(sina)互联应用
- 两个乒乓球队进行比赛
- 霍夫曼树之切割木板最小总代价问题
- 数据类型、数组越界和宏定义引发的悲剧