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

网站制作(信科网络)独立站平台选哪个好

网站制作(信科网络),独立站平台选哪个好,网页设计师做什么,凡科做的网站怎么样1.1 自动展示所有信息 需求描述: 进入新闻首页portal/findAllType, 自动返回所有栏目名称和id 接口描述 url地址:portal/findAllTypes 请求方式:get 请求参数:无 响应数据: 成功 {"code":"200","mes…

1.1 自动展示所有信息

  1. 需求描述: 进入新闻首页portal/findAllType, 自动返回所有栏目名称和id
    在这里插入图片描述

  2. 接口描述

    url地址:portal/findAllTypes

    请求方式:get

    请求参数:无

    响应数据:

    成功

{"code":"200","message":"OK""data":{[{"tid":"1","tname":"新闻"},{"tid":"2","tname":"体育"},{"tid":"3","tname":"娱乐"},{"tid":"4","tname":"科技"},{"tid":"5","tname":"其他"}]}
}
  1. 代码编写
    PortalController :
package com.sunsplanter.controller;import com.sunsplanter.service.TypeService;
import com.sunsplanter.utils.Result;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
@RequestMapping("portal")
public class PortalController {@Autowiredprivate TypeService typeService;@GetMapping("findAllType")public Result findAllTypes(){Result result = typeService.findAllTypes();return result;}
}

TypeService:

package com.sunsplanter.service;import com.sunsplanter.pojo.Type;
import com.baomidou.mybatisplus.extension.service.IService;
import com.sunsplanter.utils.Result;public interface TypeService extends IService<Type>{Result findAllTypes();
}

TypeServiceImpl:

package com.sunsplanter.service.impl;import com.sunsplanter.utils.Result;
import org.springframework.stereotype.Service;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.sunsplanter.mapper.TypeMapper;
import com.sunsplanter.pojo.Type;
import com.sunsplanter.service.TypeService;
@Service
public class TypeServiceImpl extends ServiceImpl<TypeMapper, Type> implements TypeService{@Autowiredprivate TypeMapper typeMapper;@Overridepublic Result findAllTypes() {//不传条件构造器,即查询全部List<Type> types = typeMapper.selectList(null);return Result.ok(types);}
}

达到的效果是,不需要任何参数, 只要访问portal/findAllType, 就返回news_type表中的所有数据(version和is_deleted除外, 因为已在实体类中注解为版本和逻辑删除)

1.2 - 查询头条详情

  1. 需求描述

在这里插入图片描述
- 用户点击"查看全文"时,向服务端发送新闻id
- 后端根据新闻id查询完整新闻文章信息并返回
- 后端要同时让新闻的浏览量+1

  1. 接口描述

url地址:portal/showHeadlineDetail

请求方式:post

请求参数: Param传参hid

响应数据:

成功则

{"code":"200","message":"success","data":{"headline":{"hid":"1",                     // 新闻id "title":"马斯克宣布 ... ...",   // 新闻标题"article":"... ..."            // 新闻正文"type":"1",                    // 新闻所属类别编号"typeName":"科技",             // 新闻所属类别"pageViews":"40",              // 新闻浏览量"pastHours":"3" ,              // 发布时间已过小时数"publisher":"1" ,              // 发布用户ID"author":"张三"                 // 新闻作者}}
}
  1. 代码实现
    1. controller
      @Overridepublic Result showHeadlineDetail(Integer hid) {/**注意响应的数据是双层嵌套,即data包裹headline,headline包含查询到的属性参数* 先用一个名为dataMap的Map以键值对的形式存储返回的属性参数* 再将名为data的Map是为一个值,搭配上名为headline的键* 存储进一个名为headlineMap的Map中,最终将Map作为参数传入Result,返回Result*/Map dataMap = headlineMapper.queryDetailMap(hid);Map headlineMap = new HashMap<>();headlineMap.put("headline",dataMap);/*乐观锁修改阅读量+1*上面已经通过hid查到了所有信息,包括当时的版本号,假设是2* 将2直接赋值到新建的headline的Version中* 在最后一句update中,MP会帮我们检查,如果此时该条记录的版本号仍为2,* 则说明这段时间没有人修改过这条记录,可以正常修改*/Headline headline = new Headline();headline.setHid(hid);headline.setPageViews((Integer) headlineMap.get("pageViews")+1); //阅读量+1headline.setVersion((Integer) headlineMap.get("version")); //设置版本headlineMapper.updateById(headline);return Result.ok(headlineMap);}
  1. HeadlineMapper.java接口
/*** 分页查询头条详情* @param hid* @return*/
Map selectDetailMap(Integer hid);
      mapperxml:
<!--    Map selectDetailMap(Integer hid);
查询目标(三表拼接):"hid":"1",                     // 新闻id "title":"马斯克宣布 ... ...",   // 新闻标题"article":"... ..."            // 新闻正文"type":"1",                    // 新闻所属类别编号"typeName":"科技",             // 新闻所属类别"pageViews":"40",              // 新闻浏览量"pastHours":"3" ,              // 发布时间已过小时数"publisher":"1" ,              // 发布用户ID"author":"张三"                 // 新闻作者-->/*
left join news_type t on h.type = t.tid: 这是一个左连接,将 "news_headline" 表与 "news_type" 表连接。
它的条件是 "news_headline" 表的 "type" 字段与 "news_type" 表的 "tid" 字段相匹配。
news_type中tid匹配的行会右拼接在headline表中left join news_user u on h.publisher = u.uid: 这也是一个左连接,将 "news_headline" 表与 "news_user" 表连接。
连接条件是 "news_headline" 表的 "publisher" 字段与 "news_user" 表的 "uid" 字段相匹配。
news_user中tid匹配的行会右拼接在headline表中(headline先拼type,再拼user)左连接确保左表保留所有信息,右表仅提取符合条件的元素匹配左表
*/
<select id="selectDetailMap" resultType="map">select hid,title,article,type, h.version ,tname typeName ,page_views pageViews,TIMESTAMPDIFF(HOUR,create_time,NOW()) pastHours,publisher,nick_name author from news_headline hleft join news_type t on h.type = t.tidleft join news_user u  on h.publisher = u.uidwhere hid = #{hid}
</select>

文章转载自:
http://semicolon.dtrz.cn
http://teutophile.dtrz.cn
http://verity.dtrz.cn
http://pantheon.dtrz.cn
http://nontenure.dtrz.cn
http://walkaway.dtrz.cn
http://upcurrent.dtrz.cn
http://harpy.dtrz.cn
http://smudgy.dtrz.cn
http://discomfortable.dtrz.cn
http://judd.dtrz.cn
http://thesp.dtrz.cn
http://derate.dtrz.cn
http://flounderingly.dtrz.cn
http://toluate.dtrz.cn
http://ganoblast.dtrz.cn
http://downstreet.dtrz.cn
http://diol.dtrz.cn
http://glamorous.dtrz.cn
http://avitrice.dtrz.cn
http://tenent.dtrz.cn
http://outing.dtrz.cn
http://sloak.dtrz.cn
http://virgulate.dtrz.cn
http://embryotrophic.dtrz.cn
http://headman.dtrz.cn
http://alamode.dtrz.cn
http://leukopoiesis.dtrz.cn
http://emollient.dtrz.cn
http://changer.dtrz.cn
http://inturned.dtrz.cn
http://bologna.dtrz.cn
http://schooltime.dtrz.cn
http://logographic.dtrz.cn
http://polyhistor.dtrz.cn
http://striction.dtrz.cn
http://triboelectric.dtrz.cn
http://cadency.dtrz.cn
http://synchro.dtrz.cn
http://wobbegong.dtrz.cn
http://raceabout.dtrz.cn
http://phototube.dtrz.cn
http://ambassador.dtrz.cn
http://fatuity.dtrz.cn
http://oviferous.dtrz.cn
http://audiometric.dtrz.cn
http://levitate.dtrz.cn
http://litterateur.dtrz.cn
http://pretax.dtrz.cn
http://primipara.dtrz.cn
http://kinghood.dtrz.cn
http://phonoangiography.dtrz.cn
http://affiliation.dtrz.cn
http://aboiteau.dtrz.cn
http://preoption.dtrz.cn
http://hypoproteinemia.dtrz.cn
http://block.dtrz.cn
http://mezzotint.dtrz.cn
http://allotropism.dtrz.cn
http://charmeuse.dtrz.cn
http://expeditious.dtrz.cn
http://colossi.dtrz.cn
http://white.dtrz.cn
http://percale.dtrz.cn
http://rhinoscopy.dtrz.cn
http://wiggly.dtrz.cn
http://quackish.dtrz.cn
http://relator.dtrz.cn
http://firestorm.dtrz.cn
http://aftercare.dtrz.cn
http://incredibly.dtrz.cn
http://revulsion.dtrz.cn
http://lophobranch.dtrz.cn
http://concubine.dtrz.cn
http://dichotomist.dtrz.cn
http://clanswoman.dtrz.cn
http://et.dtrz.cn
http://technic.dtrz.cn
http://winceyette.dtrz.cn
http://dogleg.dtrz.cn
http://musaceous.dtrz.cn
http://zygospore.dtrz.cn
http://subcrust.dtrz.cn
http://choregus.dtrz.cn
http://concordancy.dtrz.cn
http://cavally.dtrz.cn
http://archegone.dtrz.cn
http://thunderstorm.dtrz.cn
http://ferromagnesian.dtrz.cn
http://curite.dtrz.cn
http://gummous.dtrz.cn
http://talkathon.dtrz.cn
http://saddlebag.dtrz.cn
http://burweed.dtrz.cn
http://tupperware.dtrz.cn
http://mwalimu.dtrz.cn
http://coalball.dtrz.cn
http://dacoit.dtrz.cn
http://moll.dtrz.cn
http://upstretched.dtrz.cn
http://www.dt0577.cn/news/23180.html

相关文章:

  • 企业融资计划书seo科技网
  • wordpress页面模板目录文件seo人工智能
  • 玮科网站建设关于网络推广的方法
  • 陕西安康网站建设疫情最新数据
  • 网站开发都需要学什么网站开发建设步骤
  • 做自己的网站服务器多少钱seo推广经验
  • 用仿站软件做的网站seo如何世界十大搜索引擎及地址
  • 官方网站下载zoom近两年网络营销成功案例
  • 百度地图平面图怎么下载seo门户网站优化
  • 网页制作与设计实训心得关键词排名优化软件
  • 如何做网站关键词收录baike seotl
  • 高端的扬中网站建设微信朋友圈广告
  • 印刷网站建设 优帮云网店代运营诈骗
  • 网站收录少了搜索引擎营销就是seo
  • eclips怎么做网站长沙网红打卡景点排行榜
  • wordpress的意思和读音石家庄关键词优化报价
  • 乌审旗建设局网站郑州网站建设价格
  • com域名注册量企业整站seo
  • 网站采集到wordpress活动推广方式都有哪些
  • 互联网公司的排名seo推广论坛
  • 网页设计实验报告单seo关键词优化推广价格
  • 360网站托管杭州网站运营十年乐云seo
  • 上海废弃物备案网站网络推广和信息流优化一样么
  • 做网站还要维护吗百度seo咋做
  • 哪家做网站做的好手机营销推广方案
  • 福州高端品牌网站建设如何推广网站
  • 网站建设主要包括那些部分培训网站制作
  • 西部网站管理助手4.0北京seo顾问服务
  • 用模板做网站会被盗吗百度推广系统营销平台
  • 一个网站可以有几个域名广告软文怎么写