springboot增删改查案例
[外链图⽚转存失败,源站可能有防盗链机制,建议将图⽚保存下来直接上传(img-UeB6NkMj-1645584534448)
(C:\Users\ZSL\AppData\Roaming\Typora\typora-user-images\1645435709328.png)]
这是依赖图
整体的样⼦:[外链图⽚转存失败,源站可能有防盗链机制,建议将图⽚保存下来直接上传(img-UE8nHFsz-1645584534455)
(C:\Users\ZSL\AppData\Roaming\Typora\typora-user-images\1645435766159.png)]
下载好了后解压,⽤idea打开,
将左边的⽂件夹搞好
[外链图⽚转存失败,源站可能有防盗链机制,建议将图⽚保存下来直接上传(img-qu2Pm4YT-1645584534458)
(C:\Users\ZSL\AppData\Roaming\Typora\typora-user-images\1645493750202.png)]
福州企业网站制作介绍⼀下⽂件夹的作⽤
controller⽂件夹
controller⽂件夹内的java类这是控制器,传参,调⽤⽅法的类,确定在url上的路径。
controller层即控制层。
controller层的功能为请求和响应控制。
controller层负责前后端交互,接受前端请求,调⽤service层,接收service层返回的数据,最后返回具体的页⾯和数据到客户端。
entity⽂件夹
Form01类是实体类,意思是跟我的数据库⾥⾯的⽂件的属性⼀⼀对应
model层(数据库表字段映射到实体类)
数据库实体层,也被称为entity层,pojo层。
⼀般数据库⼀张表对应⼀个实体类,类属性同表字段⼀⼀对应。
mapper⽂件夹(Dao⽂件夹)在线文档
mapper类是映射器,数据持久层,访问数据库
dao层即数据持久层,也被称为mapper层。
dao层的作⽤为访问数据库,向数据库发送sql语句,完成数据的增删改查任务。
service⽂件夹
mysql面试题 增删改查⼀个接⼝,⼀个类,接⼝也是存放增删改查四个抽象⽅法
类是实现了service接⼝,并且在类⾥调⽤了mapper接⼝new了⼀个对象,这个对象我们就调⽤mapper
service层即业务逻辑层。
service层的作⽤为完成功能设计。
service层调⽤dao层接⼝,接收dao层返回的数据,完成项⽬的基本功能设计 接⼝⾥⾯的⽅法
代码
//也写了⽅法,跟serivice中的⼀样,不过是传参⽤的
//这个类调⽤serivice的⽅法
import Form01;
import Form01Mapper;
import Form01Service;
import Autowired;
import*;
import List;
@RestController//返回json,规范接⼝@controller与@RestController有区别
@RequestMapping("/Form01")//url映射,在url上的路径
public class Form01Controller {
//引⼊Service层
@Autowired//对成员变量、⽅法和构造函数进⾏标注,来完成⾃动装配的⼯作
Form01Service form01Service;//IoC
@GetMapping("/all")//@GetMapping = @RequestMapping(method=RequestMethod.GET)
public List<Form01>getFrom(){//设置返回List<Form01>,grtFrom⽅法
return form01Service.findAll();
}
@GetMapping("/findById")//查⼀会问阳哥查的数据怎么输⼊
public Form01 findById(@RequestParam(name ="id",required =true) Integer id){//传⼊数据
return form01Service.findByID(id);
}
@PostMapping("/savedata")//增ok
public String savedata(@RequestBody Form01 form01){//把你传过来的json数据包装成form01实体
form01Service.save(form01);
return"succes";
}
@PutMapping("/updata")//改ok
public String updata(@RequestBody Form01 form01){
form01Service.updataById(form01);
return"succes";
}
sql server使用教程图文
@DeleteMapping("/{id}")//删ok
public String deletById(@PathVariable("id")int id){//@PathVariable允许前台地址传过来带id
form01Service.deleteById(id);
return"succes";
}
@GetMapping("/{id}")//按id查
public Form01 foundById(@PathVariable("id")int id){//@PathVariable允许前台地址传过来带id
return form01Service.foundById(id);
}
}
//4、controller层(前后端传参)
/
/ controller层即控制层。
// controller层的功能为请求和响应控制。
// controller层负责前后端交互,接受前端请求,调⽤service层,接收service层返回的数据,最后返回具体的页⾯和数据到客户端。//
//实体类与数据库内容⼀致对应
bootstrapping文化指import Data;
//entity是实体的意思,实体类,为啥不叫数据库类
@Data
public class Form01 {
private int id;
private String name;
private int age;
private String sex;
private String gradeClass;
}
//1、model层(数据库表字段映射到实体类)
// 数据库实体层,也被称为entity层,pojo层。
// ⼀般数据库⼀张表对应⼀个实体类,类属性同表字段⼀⼀对应。
package;
//这⾥接⼝的⽅法定义不⼤懂,这⾥的接⼝跟service类有关,⽣成了form01Mapper抽象类
//向数据库发送执⾏增删改查的sql语句的代码的类
//mapper⽂件夹作⽤是访问数据库原本⽤@select标签写了select语句,但是阳哥说这样⼦sql语句简单就可以,但是难了的话是不⾏的,//于是⽤了@Mapper标签,这是个接⼝
import Form01;
import Mapper;
import Param;
import List;
@Mapper//mybatis的插件,单表查询时很⽅便//那我没写sql代码是因为啥
public interface Form01Mapper {idea右侧的maven不见了
//List<Form01>数组,泛型
List<Form01>findAll();//String替换成了List<Form01>,也就是说List<Form01>是数据类型数据类型⽅法名();这个样⼦
Form01 findById(@Param("idx") Integer id);//@Param 当参数为2-5个时候,⽤@param最佳,其他时候⽤map
void saveData(Form01 form01);
void updataById(Form01 form01);
Form01 deletById(int id);
Form01 foundById(int id);
}
//dao层(CURD⽅法)
// dao层即数据持久层,也被称为mapper层。
// dao层的作⽤为访问数据库,向数据库发送sql语句,完成数据的增删改查任务。
package;
//所以它实现了service接⼝,然后IoC了mapper接⼝,mapper接⼝的⽅法通过form01Mapper这个实例对象调⽤,所以如果我⼀调⽤//service⽅法
import Form01;
import Form01Mapper;
import Form01Service;
import Service;
//service包实现业务逻辑
import Resource;
import List;
@Service
public class Form01ServiceImpl implements Form01Service {//表01服务实现表接⼝
@Resource
Form01Mapper form01Mapper;//IoC如果没采⽤它,应该怎么写
@Override
public List<Form01>findAll(){
return form01Mapper.findAll();
}
@Override
public Form01 findByID(Integer id){
return form01Mapper.findById(id);
}
@Override
public void save(Form01 form01){
form01Mapper.saveData(form01);
}
@Override
public void updataById(Form01 form01){
form01Mapper.updataById(form01);
}
@Override
public void deleteById(int id){
form01Mapper.deletById( id);
}
@Override
public Form01 foundById(int id){
return form01Mapper.foundById(id);
}
}
package;
//定义增删改查抽象
import Form01;
import Param;
import List;
public interface Form01Service {
List<Form01>findAll();
Form01 findByID(Integer id);
void save(Form01 form01);
void updataById(Form01 form01);
void deleteById(int id);
Form01 foundById(int id);
}
//3、service层 (功能设计)
// service层即业务逻辑层。
// service层的作⽤为完成功能设计。
// service层调⽤dao层接⼝,接收dao层返回的数据,完成项⽬的基本功能设计。package;
import MapperScan;
import SpringApplication;
import SpringBootApplication;
@SpringBootApplication
@MapperScan("ample.demo.mapper")
public class Demo02Application {
public static void main(String[] args){
SpringApplication.run(Demo02Application.class, args);
}
}
//个⼈总结,⼀般先写实体类就是entity⽂件,数据库表写个类⼀⼀对应
//然后mapper写接⼝,但是我现在搞不懂为啥两个接⼝,同时都实现了
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论