第一部分:创建springboot文件
第一步:打开软件,点击file,点击new 然后选择module,在右侧选择springboot
第二步:选择配置和JDK以及java版本
①选择maven类型
②选择JDK1.8版本
③选择java8版本
④选择jar包类型
如果没有找到8版本:点击http://t.csdnimg.cn/NFUIF
第三步:选择加载配置,选择mysql driver
之后我们稍等一会,让他建立项目!~
在pom文件里面添加依赖:
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.3</version>
</dependency>
我们一定要确定右侧的这四个包被正确的加载:
如果报错,也就是没有正确的加载,看我的博客:
http://t.csdnimg.cn/7R1od
第四步:核心配置-数据库连接相关信息
(1)导入数据库
数据库的导入方法如下:http://t.csdnimg.cn/I6ioO
示例数据库:见文末
(2)开始在springboot里面配置数据库信息
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/你的数据库名称
username: 你的sql用户名
password: 对应你自己设置的密码
第五步:创建实体和对象
(1)新建一个Fuel的实体类
package com.example.domain;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
@TableName("燃煤_热电数据")
public class Fuel {
@TableField("id")
private Long id;
@TableField("fossilEnergyType")
private String fossilEnergyType;
@TableField("CAD")
private Double CAD;
@TableField("CD")
private Double CD;
@TableField("NAVar")
private Double NAVar;
@TableField("FC")
private Double FC;
@TableField("FCbj")
private Double FCbj;
@TableField("NCVbj")
private Double NCVbj;
public Fuel(Long id, String fossilEnergyType, Double CAD, Double CD, Double NAVar, Double FC, Double FCbj, Double NCVbj) {
this.id = id;
this.fossilEnergyType = fossilEnergyType;
this.CAD = CAD;
this.CD = CD;
this.NAVar = NAVar;
this.FC = FC;
this.FCbj = FCbj;
this.NCVbj = NCVbj;
}
public Fuel() {
}
@Override
public String toString() {
return "Fuel{" +
"id=" + id +
", fossilEnergyType='" + fossilEnergyType + '\'' +
", CAD=" + CAD +
", CD=" + CD +
", NAVar=" + NAVar +
", FC=" + FC +
", FCbj=" + FCbj +
", NCVbj=" + NCVbj +
'}';
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getFossilEnergyType() {
return fossilEnergyType;
}
public void setFossilEnergyType(String fossilEnergyType) {
this.fossilEnergyType = fossilEnergyType;
}
public Double getCAD() {
return CAD;
}
public void setCAD(Double CAD) {
this.CAD = CAD;
}
public Double getCD() {
return CD;
}
public void setCD(Double CD) {
this.CD = CD;
}
public Double getNAVar() {
return NAVar;
}
public void setNAVar(Double NAVar) {
this.NAVar = NAVar;
}
public Double getFC() {
return FC;
}
public void setFC(Double FC) {
this.FC = FC;
}
public Double getFCbj() {
return FCbj;
}
public void setFCbj(Double FCbj) {
this.FCbj = FCbj;
}
public Double getNCVbj() {
return NCVbj;
}
public void setNCVbj(Double NCVbj) {
this.NCVbj = NCVbj;
}
}
(2)新建一个Dao层的FuelDao接口
package com.example.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.domain.Fuel;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
@Mapper
public interface FuelDao extends BaseMapper<Fuel> {
//不需要再在这里写sql语句
}
第六步:执行test测试
测试部分代码:
package com.example.demo4;
import com.example.dao.FuelDao;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
@SpringBootTest
class Demo3ApplicationTests {
@Autowired
private FuelDao fuelDao;
@Test
void contextLoads() {
System.out.println(fuelDao.selectById(1));
}
}
易错汇总:
①出现查找表对应错误,明明我们想要查的是“燃煤热电数据库”里面的“燃煤热电”表,而不是fuel表,那么我们就可以在Fuel类或者是FuelDao接口前面加上:
@TableName("燃煤热电数据")
告诉编译器我们要查的Fuel实体类对应的表的名字叫“燃煤热电”而不是“fuel”
②出现大写字母被识别成为“小写字母和下划线_”的问题
而在表中明明是:
解决方法:
在对应实体类前面加上:
@TableField("fossilEnergyType")
这样在查找属性名字的时候就能按照这个里面的去查了。
③查找数据库中含有_导致出现查不到的情况:
数据库中的是:
解决方法:
在application.yml文件中添加:
#设置mybatis-plus的相关配置
mybatis-plus:
global-config:
db-config:
table-prefix: 燃煤_
最终运行结果为:
增删查改代码汇总:
(1)使用id查找
void contextLoads() {
//查询操作-根据id查询
System.out.println(fuelDao.selectById(2));
}
(2)查找全部
@Test
void contextLoads1() {
//查询操作-查询全部
System.out.println(fuelDao.selectList(null));
}
(3)增加
@Test
void contextLoads2() {
//增加操作
Fuel fuel = new Fuel();
fuel.setId(6L);
fuel.setFossilEnergyType("煤炭测试数据");
fuel.setCAD(12.5);
fuel.setCD(0.03);
fuel.setNAVar(100.0);
fuel.setFC(50.0);
fuel.setFCbj(25.0);
fuel.setNCVbj(5000.0);
fuelDao.insert(fuel);
}
(4)根据id删除
@Test
void contextLoads3() {
//删除
fuelDao.deleteById(2);
}
(5)根据id修改
@Test
void contextLoads4() {
//修改--先查找id=1的数据,然后修改名称
Fuel fuel=fuelDao.selectById(1);
fuel.setFossilEnergyType("测试修改煤");
fuelDao.updateById(fuel);//需要用这个,不然不生效
System.out.println(fuel);
}
(6)条件查询
我们查询fossilEnergyType属性类别数据中含有“煤”的数据条:
@Test
void contextLoads6() {
//条件查询-我们查询fossilEnergyType属性类别数据中含有“煤”的数据条
String SearchName="煤";
LambdaQueryWrapper<Fuel> wrapper=new LambdaQueryWrapper<>();
if(SearchName!=null){//避免查询的字段为null名字的字段
wrapper.like(Fuel::getFossilEnergyType,SearchName);//第一个是属性名字,第二个是我们输入要like的内容
fuelDao.selectList(wrapper);
}
}
文件获取:
①完整文件打包如下:
链接:https://pan.baidu.com/s/1gyevtozE5sDg8AndTudeoQ?pwd=rke0
提取码:rke0
--来自百度网盘超级会员V5的分享
②数据库:
链接:https://pan.baidu.com/s/1N0v0lNYQXC0-NM4cPDZF-Q?pwd=pgag
提取码:pgag
--来自百度网盘超级会员V5的分享
运行我打包的项目,为了能够正常运行(需要兼容maven以及java版本),具体的调整方法看我博客:http://t.csdnimg.cn/Uovig
好啦,希望能够帮助到大家!