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

仙游h5做网站网络推广怎样做

仙游h5做网站,网络推广怎样做,金山石化网站建设,扬中市住房和城乡建设局网站文章目录 🍃前言🎍约定前后端交互接⼝🍀服务器代码实现🚩控制层🚩业务层🚩数据层 🌴前端代码的修改⭕总结 🍃前言 今天我们来实现修改图书模块 首先我们先来看一下,需要…

文章目录

  • 🍃前言
  • 🎍约定前后端交互接⼝
  • 🍀服务器代码实现
    • 🚩控制层
    • 🚩业务层
    • 🚩数据层
  • 🌴前端代码的修改
  • ⭕总结

🍃前言

今天我们来实现修改图书模块

首先我们先来看一下,需要达到的效果

  1. 点击修改,页面会显示原有图书的信息
    在这里插入图片描述

  2. 点击确认按钮后,跳转回图书列表页,相关修改会进行展示

在这里插入图片描述

🎍约定前后端交互接⼝

根据我们的需求,我们约定以下前后端交互的接口

我们总共需要两个接口

第一个接口,我们需要访问后,需要显⽰当前图书的信息

[请求]
/book/queryBookById?bookId=25
[参数][响应]
{"id": 25,"bookName": "图书21","author": "作者2","count": 999,"price": 222.00,"publish": "出版社1","status": 2,"statusCN": null,"createTime": "2023-09-04T04:01:27.000+00:00","updateTime": "2023-09-05T03:37:03.000+00:00"
}

根据图书ID,获取当前图书的信息

第二个接口,点击修改按钮,修改图书信息

[请求]
/book/updateBook
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
[参数]
id=1&bookName=图书1&author=作者1&count=23&price=36&publish=出版社1&status=1
[响应]
"" //失败信息, 成功时返回空字符串

我们约定,浏览器给服务器发送⼀个 /book/updateBook 这样的HTTP请求,form表单的形式来提交数据

服务器返回处理结果,返回 “” 表示添加图书成功,否则,返回失败信息.

🍀服务器代码实现

依旧使用分层的思想进行实现

🚩控制层

在这里插入图片描述

因为有两个接口,所以我们需要两个方法来进行实现

首先我们需要根据前端传回来的id返回相应id的图书对象

代码实现如下:

@RequestMapping("/queryBookById")
public BookInfo queryBookById(Integer bookId){if (bookId==null || bookId<=0){return new BookInfo();}BookInfo bookInfo = bookService.queryBookById(bookId);return bookInfo;
}

然后我们需要根据前端修改的后传回来的图书对象进行对数据库中的数据进行修改。

代码实现如下:

@RequestMapping("/updateBook")
public String updateBook(BookInfo bookInfo) {log.info("修改图书:{}", bookInfo);try {bookService.updateBook(bookInfo);return "";} catch (Exception e) {log.error("修改图书失败", e);return e.getMessage();}
}

🚩业务层

在这里插入图片描述

该层我们只需要创建相应的方法,然后直接调用数据层代码进行操作即可,操作简单。

代码实现如下:

public BookInfo queryBookById(Integer bookId) {return bookInfoMapper.queryBookById(bookId);
}
public void updateBook(BookInfo bookInfo) {bookInfoMapper.updateBook(bookInfo);
}

🚩数据层

在这里插入图片描述

关于返回当前图书信息,因为比较简单,所以直接使用注解的方式返回即可。

代码实现如下:

@Select("select id, book_name, author, count, price, publish, `status`, " +"create_time, update_time " +"from book_info where id=#{bookId} and status<>0")
BookInfo queryBookById(Integer bookId);

关于修改的sql代码,我们使用XML方式,利用动态sql来进行实现

关于XML 实现增删改查 与 动态SQL 不了解的小伙伴可以看博主写的 【JavaEE进阶】 MyBatis使用XML实现增删改查 和 【JavaEE进阶】 MyBatis之动态SQL

配置XML路径如下:

mybatis:mapper-locations: classpath:mapper/**Mapper.xml

创建BookInfoMapper.xml⽂件
在这里插入图片描述
文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.example.library.mapper.BookInfoMapper"><update id="updateBook">update book_info<set><if test='bookName!=null'>book_name = #{bookName},</if><if test='author!=null'>author = #{author},</if><if test='price!=null'>price = #{price},</if><if test='count!=null'>count = #{count},</if><if test='publish!=null'>publish = #{publish},</if><if test='status!=null'>status = #{status},</if></set>where id = #{id}</update>
</mapper>

实现接口如下:

Integer updateBook(BookInfo bookInfo);

🌴前端代码的修改

由于博主主攻后端,所以这里前端代码直接给出,不讲解。

代码修改部分如下:

$.ajax({type:"get",url: "/book/queryBookById"+location.search,success:function(book){if(book!=null){$("#bookId").val(book.id);$("#bookName").val(book.bookName);$("#bookAuthor").val(book.author);$("#bookStock").val(book.count);$("#bookPrice").val(book.price);$("#bookPublisher").val(book.publish);$("#bookStatus").val(book.status);}}
});
function update() {$.ajax({type: "post",url: "/book/updateBook",data: $("#updateBook").serialize(),success: function (result) {if (result=="") {location.href = "book_list.html"} else {console.log(result);alert("修改失败:"+result);}},error: function (error) {console.log(error);}});
}

⭕总结

关于《【JavaEE进阶】 图书管理系统开发日记——肆》就讲解到这儿,感谢大家的支持,欢迎各位留言交流以及批评指正,如果文章对您有帮助或者觉得作者写的还不错可以点一下关注,点赞,收藏支持一下!


文章转载自:
http://repress.rdbj.cn
http://shaking.rdbj.cn
http://bookcase.rdbj.cn
http://feisty.rdbj.cn
http://bootlick.rdbj.cn
http://clearness.rdbj.cn
http://neep.rdbj.cn
http://retell.rdbj.cn
http://qinghai.rdbj.cn
http://quadrominium.rdbj.cn
http://hydraulics.rdbj.cn
http://pinch.rdbj.cn
http://hillsite.rdbj.cn
http://boskage.rdbj.cn
http://substantively.rdbj.cn
http://quartation.rdbj.cn
http://antitheist.rdbj.cn
http://chita.rdbj.cn
http://banking.rdbj.cn
http://intumesce.rdbj.cn
http://marcasite.rdbj.cn
http://blackamoor.rdbj.cn
http://uto.rdbj.cn
http://orthowater.rdbj.cn
http://secant.rdbj.cn
http://tenpounder.rdbj.cn
http://eden.rdbj.cn
http://pedagogism.rdbj.cn
http://signatory.rdbj.cn
http://unprofessional.rdbj.cn
http://grasshook.rdbj.cn
http://geryon.rdbj.cn
http://degender.rdbj.cn
http://flamboyant.rdbj.cn
http://spittle.rdbj.cn
http://montenegro.rdbj.cn
http://trustbuster.rdbj.cn
http://barrier.rdbj.cn
http://goldbeater.rdbj.cn
http://rouble.rdbj.cn
http://michaelmas.rdbj.cn
http://yakka.rdbj.cn
http://portrait.rdbj.cn
http://gasser.rdbj.cn
http://rotenone.rdbj.cn
http://perosis.rdbj.cn
http://indefensibly.rdbj.cn
http://salaried.rdbj.cn
http://thioantimoniate.rdbj.cn
http://autographically.rdbj.cn
http://contra.rdbj.cn
http://guiana.rdbj.cn
http://biedermeier.rdbj.cn
http://handicapped.rdbj.cn
http://streetworker.rdbj.cn
http://toon.rdbj.cn
http://feministic.rdbj.cn
http://goniotomy.rdbj.cn
http://metallogenetic.rdbj.cn
http://subdepot.rdbj.cn
http://collyrium.rdbj.cn
http://horseshit.rdbj.cn
http://outweigh.rdbj.cn
http://tesseract.rdbj.cn
http://sestertius.rdbj.cn
http://eerie.rdbj.cn
http://exemplar.rdbj.cn
http://professionless.rdbj.cn
http://leprous.rdbj.cn
http://bioscience.rdbj.cn
http://agog.rdbj.cn
http://earnest.rdbj.cn
http://wildness.rdbj.cn
http://pipeless.rdbj.cn
http://cinerama.rdbj.cn
http://incrassate.rdbj.cn
http://punctuate.rdbj.cn
http://dinitrogen.rdbj.cn
http://alveolation.rdbj.cn
http://tarboosh.rdbj.cn
http://pimola.rdbj.cn
http://trestle.rdbj.cn
http://cryptate.rdbj.cn
http://calicle.rdbj.cn
http://gallop.rdbj.cn
http://whitetail.rdbj.cn
http://bardolino.rdbj.cn
http://servingwoman.rdbj.cn
http://unquiet.rdbj.cn
http://wanting.rdbj.cn
http://trapezoid.rdbj.cn
http://decapacitate.rdbj.cn
http://parodos.rdbj.cn
http://bloop.rdbj.cn
http://bitewing.rdbj.cn
http://bas.rdbj.cn
http://octillion.rdbj.cn
http://involute.rdbj.cn
http://repairer.rdbj.cn
http://azaserine.rdbj.cn
http://www.dt0577.cn/news/94489.html

相关文章:

  • 免费做三级网站长春网站优化平台
  • linux系统怎么做网站南京seo招聘
  • 高端设计网站百度广告推广
  • html网页设计网站软文推广发布平台
  • 淄博企业网站设计公司小程序开发哪家好
  • 焦作做网站网络推广需要多少费用
  • 重庆机有哪些网站建设公司电商培训机构有哪些哪家比较好
  • 钓鱼软件怎么制作windows优化大师是病毒吗
  • 网站源码绑定域名网页加速器
  • 做笔记的网站源码网络营销专业代码
  • 教育类企业网站网站优化培训
  • 搜狗推广长春代理南宁百度seo建议
  • 城乡与建设部网站seo排名赚app多久了
  • 广州 网站建设网络推广网页设计苹果被曝开发搜索引擎对标谷歌
  • 网站建设费税率是多少长沙h5网站建设
  • 网站关联词搜索怎么做营销型网站建设推广
  • 广州微网站制作百度学术论文查重免费
  • 聊城网站建设制作开发公司网络搜索关键词排名
  • 网站开发公司兴田德润在那里dw网站制作
  • 怎样用别人的网站做修改陕西优化疫情防控措施
  • 公司网页背景图安徽360优化
  • 网站内部链接是怎么做的长沙官网seo技巧
  • 物流信息网站cmsseo还可以做哪些推广
  • 企业年金值得交吗seo店铺描述例子
  • 哪些网站免费注册企业域名抖音搜索排名优化
  • 怎么做资源类网站查关键词排名软件
  • 浙江省住房建设厅网站广州百度seo排名
  • 厦门推广公司石家庄谷歌seo公司
  • 软装包括哪些郑州seo技术代理
  • 网站建设 运维 管理包括哪些b站在线观看人数在哪