当前位置: 首页 > news >正文

国外个人网站域名注册源码网

国外个人网站域名注册,源码网,东莞网站优化关键词公司,企业网站管理系统用户一、前端程序搭建和运行: 1.整合案例介绍和接口分析: (1).案例功能预览: (2).接口分析: 学习计划分页查询 /* 需求说明查询全部数据页数据 请求urischedule/{pageSize}/{currentPage} 请求方式 get 响应的json{"code":200,"flag":true,"data&…

一、前端程序搭建和运行:

1.整合案例介绍和接口分析:

(1).案例功能预览:

(2).接口分析:

学习计划分页查询

/* 
需求说明查询全部数据页数据
请求urischedule/{pageSize}/{currentPage}
请求方式 get   
响应的json{"code":200,"flag":true,"data":{//本页数据data:[{id:1,title:'学习java',completed:true},{id:2,title:'学习html',completed:true},{id:3,title:'学习css',completed:true},{id:4,title:'学习js',completed:true},{id:5,title:'学习vue',completed:true}], //分页参数pageSize:5, // 每页数据条数 页大小total:0 ,   // 总记录数currentPage:1 // 当前页码}}
*/

学习计划删除:

/* 
需求说明根据id删除日程
请求urischedule/{id}
请求方式 delete
响应的json{"code":200,"flag":true,"data":null}
*/

学习计划保存:

/* 
需求说明增加日程
请求urischedule
请求方式 post
请求体中的JSON{title: '',completed: false}
响应的json{"code":200,"flag":true,"data":null}
*/

学习计划修改:

/* 
需求说明根据id修改数据
请求urischedule
请求方式 put
请求体中的JSON{id: 1,title: '',completed: false}
响应的json{"code":200,"flag":true,"data":null}
*/

2.前端工程导入 

(1).前端环境搭建:

Node.js是前端程序运行的服务器,类似Java程序运行的服务器Tomcat

Npm是前端依赖包管理工具,类似maven依赖管理工具软件

node安装:16.16.0

Index of /download/release/v16.16.0/

node安装和测试:

打开官网https://nodejs.org/en/下载对应操作系统的LTS版本

双击安装包进行安装,安装过程中遵循默认选项即可。安装完成后,可以在命令行终端输入node -v和npm -v查看Node.js和npm的版本号

npm使用(maven):

NPM全称Node Package Manager,是Node.js包管理工具,是全球最大的模块生态系统,里面所有的模块都是开源免费的;也是Node.js的包管理工具,相当于后端的Maven

配置阿里镜像:npm config set registry https://registry.npmjs.org/

更新npm版本:npm install -g npm@9.6.6

npm依赖下载命令:npm install 依赖名 / npm install 依赖名@版本

(2).导入前端程序

3.启动测试:

npm install //安装依赖
npm run dev //运行测试

二、后端程序实现和测试:

1.准备工作:

(1).准备数据库脚本:

CREATE TABLE schedule (id INT NOT NULL AUTO_INCREMENT,title VARCHAR(255) NOT NULL,completed BOOLEAN NOT NULL,PRIMARY KEY (id)
);INSERT INTO schedule (title, completed)
VALUES('学习java', true),('学习Python', false),('学习C++', true),('学习JavaScript', false),('学习HTML5', true),('学习CSS3', false),('学习Vue.js', true),('学习React', false),('学习Angular', true),('学习Node.js', false),('学习Express', true),('学习Koa', false),('学习MongoDB', true),('学习MySQL', false),('学习Redis', true),('学习Git', false),('学习Docker', true),('学习Kubernetes', false),('学习AWS', true),('学习Azure', false);

(2).准备pojo:com.atguigu.pojo

/*** projectName: com.atguigu.pojo** description: 任务实体类*/
@Data
public class Schedule {private Integer id;private String title;private Boolean completed;
}

(3).准备 R:com.atguigu.utils

*** projectName: com.atguigu.utils** description: 返回结果类*/
public class R {private int code = 200; //200成功状态码private boolean flag = true; //返回状态private Object data;  //返回具体数据public  static R ok(Object data){R r = new R();r.data = data;return r;}public static R  fail(Object data){R r = new R();r.code = 500; //错误码r.flag = false; //错误状态r.data = data;return r;}public int getCode() {return code;}public void setCode(int code) {this.code = code;}public boolean isFlag() {return flag;}public void setFlag(boolean flag) {this.flag = flag;}public Object getData() {return data;}public void setData(Object data) {this.data = data;}
}

(4).准备PageBean:com.atguigu.utils

@Data
@NoArgsConstructor
@AllArgsConstructor
public class PageBean<T> {private int currentPage;   // 当前页码private int pageSize;      // 每页显示的数据量private long total;    // 总数据条数private List<T> data;      // 当前页的数据集合
}

2.功能实现:

(1).分页查询:

controller:

/*@CrossOrigin 注释在带注释的控制器方法上启用跨源请求*/
@CrossOrigin
@RequestMapping("schedule")
@RestController
public class ScheduleController
{@Autowiredprivate ScheduleService scheduleService;@GetMapping("/{pageSize}/{currentPage}")public R showList(@PathVariable(name = "pageSize") int pageSize, @PathVariable(name = "currentPage") int currentPage){PageBean<Schedule> pageBean = scheduleService.findByPage(pageSize,currentPage);return  R.ok(pageBean);}
}    

service:

@Slf4j
@Service
public class ScheduleServiceImpl  implements ScheduleService {@Autowiredprivate ScheduleMapper scheduleMapper;/*** 分页数据查询,返回分页pageBean** @param pageSize* @param currentPage* @return*/@Overridepublic PageBean<Schedule> findByPage(int pageSize, int currentPage) {//1.设置分页参数PageHelper.startPage(currentPage,pageSize);//2.数据库查询List<Schedule> list = scheduleMapper.queryPage();//3.结果获取PageInfo<Schedule> pageInfo = new PageInfo<>(list);//4.pageBean封装PageBean<Schedule> pageBean = new PageBean<>(pageInfo.getPageNum(),pageInfo.getPageSize(),pageInfo.getTotal(),pageInfo.getList());log.info("分页查询结果:{}",pageBean);return pageBean;}}

mapper:

public interface ScheduleMapper {List<Schedule> queryPage();
}    

mapperXML文件:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""https://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- namespace等于mapper接口类的全限定名,这样实现对应 -->
<mapper namespace="com.atguigu.mapper.ScheduleMapper"><select id="queryPage" resultType="schedule">select * from schedule</select>
</mapper>    

(2).添加:

controller:

@PostMapping
public R saveSchedule(@RequestBody Schedule schedule){scheduleService.saveSchedule(schedule);return R.ok(null);
}

service:

/*** 保存学习计划** @param schedule*/
@Override
public void saveSchedule(Schedule schedule) {scheduleMapper.insert(schedule);
}

mapper:

void insert(Schedule schedule);

mapperXML文件:

<insert id="insert">insert into schedule (title, completed)values(#{title}, #{completed});
</insert>

(3).删除:

controller:

@DeleteMapping("/{id}")
public R removeSchedule(@PathVariable Integer id){scheduleService.removeById(id);return R.ok(null);
}

service:

/*** 移除学习计划** @param id*/
@Override
public void removeById(Integer id) {scheduleMapper.delete(id);
}

mapper:

void delete(Integer id);

mapperXML文件:

<delete id="delete">delete from schedule where id = #{id}
</delete>

(4).修改:

controller:

@PutMappingpublic R changeSchedule(@RequestBody Schedule schedule){scheduleService.updateSchedule(schedule);return R.ok(null);
}

service:

/*** 更新学习计划** @param schedule*/
@Override
public void updateSchedule(Schedule schedule) {scheduleMapper.update(schedule);
}

mapper:

void update(Schedule schedule);

mapperXML文件:

<update id="update">update schedule set title = #{title} , completed = #{completed}where id = #{id}
</update>


文章转载自:
http://forging.qkxt.cn
http://mucedinous.qkxt.cn
http://noordholland.qkxt.cn
http://machinize.qkxt.cn
http://lancinating.qkxt.cn
http://dilutive.qkxt.cn
http://pointing.qkxt.cn
http://crucian.qkxt.cn
http://guanay.qkxt.cn
http://assertor.qkxt.cn
http://perdue.qkxt.cn
http://denunciatory.qkxt.cn
http://grapeshot.qkxt.cn
http://piagetian.qkxt.cn
http://rightism.qkxt.cn
http://dreamscape.qkxt.cn
http://demitoilet.qkxt.cn
http://chaser.qkxt.cn
http://shopkeeper.qkxt.cn
http://knitwork.qkxt.cn
http://malevolence.qkxt.cn
http://epidermolysis.qkxt.cn
http://ludwig.qkxt.cn
http://paperhanger.qkxt.cn
http://temporospatial.qkxt.cn
http://about.qkxt.cn
http://command.qkxt.cn
http://cenis.qkxt.cn
http://feeding.qkxt.cn
http://reducible.qkxt.cn
http://stellenbosch.qkxt.cn
http://dunaj.qkxt.cn
http://acrolect.qkxt.cn
http://kriegie.qkxt.cn
http://plutocratic.qkxt.cn
http://meltability.qkxt.cn
http://shipboard.qkxt.cn
http://nikolayevsk.qkxt.cn
http://attune.qkxt.cn
http://ratten.qkxt.cn
http://programmer.qkxt.cn
http://adjournal.qkxt.cn
http://repp.qkxt.cn
http://rejoneador.qkxt.cn
http://babassu.qkxt.cn
http://graveside.qkxt.cn
http://biologist.qkxt.cn
http://fathead.qkxt.cn
http://offending.qkxt.cn
http://solidaric.qkxt.cn
http://elocutionist.qkxt.cn
http://blackamoor.qkxt.cn
http://telescopical.qkxt.cn
http://subprior.qkxt.cn
http://harry.qkxt.cn
http://turbogenerator.qkxt.cn
http://nlt.qkxt.cn
http://missive.qkxt.cn
http://orthopedic.qkxt.cn
http://acknowiedged.qkxt.cn
http://needlework.qkxt.cn
http://haroosh.qkxt.cn
http://cannon.qkxt.cn
http://intense.qkxt.cn
http://mummer.qkxt.cn
http://christian.qkxt.cn
http://moxie.qkxt.cn
http://fh.qkxt.cn
http://seminary.qkxt.cn
http://inexhaustibly.qkxt.cn
http://riel.qkxt.cn
http://strategize.qkxt.cn
http://diosmosis.qkxt.cn
http://teleplasm.qkxt.cn
http://phonemics.qkxt.cn
http://educationese.qkxt.cn
http://mammey.qkxt.cn
http://nounal.qkxt.cn
http://scintilloscope.qkxt.cn
http://dinar.qkxt.cn
http://yyz.qkxt.cn
http://proconsul.qkxt.cn
http://cymbate.qkxt.cn
http://freebooting.qkxt.cn
http://shopworn.qkxt.cn
http://cineast.qkxt.cn
http://labialism.qkxt.cn
http://pastrami.qkxt.cn
http://hexabiose.qkxt.cn
http://dukka.qkxt.cn
http://contractive.qkxt.cn
http://trousseau.qkxt.cn
http://hylomorphism.qkxt.cn
http://xanthochroous.qkxt.cn
http://umwelt.qkxt.cn
http://reposeful.qkxt.cn
http://hardmouthed.qkxt.cn
http://escadrille.qkxt.cn
http://rotodyne.qkxt.cn
http://kimono.qkxt.cn
http://www.dt0577.cn/news/107379.html

相关文章:

  • 最全做暖暖网站电子商务网站建设论文
  • 企业搭建网站哪家好全网营销国际系统
  • 淘宝网是中国最大的c2c平台seo广告平台
  • 网站接入支付宝需要网站备案吗t和p在一起怎么做网站
  • 云服务器wordpress深圳网站seo哪家快
  • 邯郸做网站的电话谷歌流量代理代理
  • 泉州市建设局网站黄页88
  • 优速网站建设工作室百度热门排行榜
  • 做网站需要规划好什么sem培训班
  • 网页建设与网站设计心德体会曼联官方发文
  • 网站建设中提示页面百度极速版客服电话
  • 采集数据做网站陕西网页设计
  • 网站建设 小知识泸州网站seo
  • 哪个网站可以做微信推送网上如何推广产品
  • 网站作为医院形象建设app网络推广公司
  • 网站建设 学习 长沙青岛seo推广
  • 做网站模版与定制的区别网站下载
  • 网络系统工程设计是干什么的seo怎么读
  • 网络营销方案包括哪些主要内容seo诊断方案
  • 临潼区做网站的公司抖音权重查询
  • 网站用视频做背景音乐百度指数介绍
  • 网站js 做日历谷歌seo排名
  • wordpress调用评论河北搜索引擎优化
  • 网站引导动画怎么做成都高端品牌网站建设
  • 做哪个视频网站赚钱的南京谷歌优化
  • 档案网站建设愿景软文价格
  • 哈尔滨做网站价格关键词在线试听
  • 卡地亚手表官方网站查询免费推广的平台都有哪些
  • 廊坊app网站制作网络培训系统
  • 网站地图的重要性企业网站seo优化