HTML+CSS实训——Day07——发现页用JavaScript进一步修改

news2024/11/16 6:59:45

仓库链接:https://github.com/MengFanjun020906/HTML_SX

前言

继续改昨天的界面,我们在上周写的都是静态页面,这周开始给静态界面加上javascript,可以让其互相跳转,再加上一些功能。

Find.html

            // 歌曲列表
            let songs = [
			{
				"sid": 1,
				"title": "TBD",
				"singer": "David",
				"cover": "img/song/615.jpg",
				"url": "audio/615.mp3"
			},
			{
				"sid": 2,
				"title": "出头天",
				"singer": "五月天",
				"cover": "img/song/618.jpg",
				"url": "audio/618.mp3"
			},
			{
				"sid": 3,
				"title": "刚刚好",
				"singer": "薛之谦",
				"cover": "img/song/781.jpg",
				"url": "audio/781.mp3"
			},
			{
				"sid": 4,
				"title": "你不是真正的快乐",
				"singer": "邓紫棋",
				"cover": "img/song/796.jpg",
				"url": "audio/796.mp3"
			},
			{
				"sid": 5,
				"title": "绅士",
				"singer": "薛之谦",
				"cover": "img/song/801.jpg",
				"url": "audio/801.mp3"
			},
			{
				"sid": 6,
				"title": "天外来物",
				"singer": "薛之谦",
				"cover": "img/song/805.jpg",
				"url": "audio/805.mp3"
			},
			{
				"sid": 7,
				"title": "突然好想你",
				"singer": "五月天",
				"cover": "img/song/809.jpg",
				"url": "audio/809.mp3"
			},
			{
				"sid": 8,
				"title": "我不愿让你一个人",
				"singer": "五月天",
				"cover": "img/song/813.jpg",
				"url": "audio/813.mp3"
			},
			{
				"sid": 9,
				"title": "我心中的尚未崩坏的地方",
				"singer": "五月天",
				"cover": "img/song/821.jpg",
				"url": "audio/821.mp3"
			},
			{
				"sid": 10,
				"title": "想见你想见你想见你",
				"singer": "八三夭",
				"cover": "img/song/900.jpg",
				"url": "audio/900.mp3"
			},
			{
				"sid": 11,
				"title": "像风一样",
				"singer": "薛之谦",
				"cover": "img/song/903.jpg",
				"url": "audio/903.mp3"
			},
			{
				"sid": 12,
				"title": "这就是爱",
				"singer": "张杰",
				"cover": "img/song/905.jpg",
				"url": "audio/905.mp3"
			}
		]
        let narrateEL = document.querySelector('.story-box')
		for (var song of songs) {
			// 2. 生成每一个歌曲元素
			var divel = document.createElement('div')
			// 3. 给歌曲元素添加类名
			divel.className = 'item'
			// 4. 设置歌曲元素的内容
			divel.innerHTML = `
				<img class="cover" src="${song.cover}" alt="">
				<div class="info">
					<div class="title">
						<span>${song.title}</span>
						<span>-${song.singer}</span>
					</div>
					<div class="ps">
						<span>SQ</span>
						<span>${song.title}</span>
					</div>
				</div>
				<img class="play" src="./img/_play.png" οnclick="goToSong(${song.sid})" alt="">
			`
			// 5. 把歌曲元素添加到父元素中
			narrateEL.appendChild(divel)


		}
        var goToSong = function (sid) {
			window.location.href = './song-info.html?sid=' + sid
		}
        var searchStr=document.querySelector('#searchStr')
        var goToSearch = function () {
			// console.log(searchStr.value)
			location.href = './search.html?searchStr=' + searchStr.value
		}

我们增加了音乐播放的功能,在播放的时候,让其跳转到音乐播放界面。

song-info.html

	// 获取到地址栏中的参数 ?sid=1
		var url = location.search
		// slice() 去掉字符串前面的问号 sid=1
		url = url.slice(1)
		console.log(url.split('=')) // ['sid', '1']
		var sid = url.split('=')[1]
		console.log(sid)
		// 歌曲列表
		let songs = [{
				"sid": 1,
				"title": "TBD",
				"singer": "David",
				"cover": "img/song/615.jpg",
				"url": "audio/615.mp3"
			},
			{
				"sid": 2,
				"title": "出头天",
				"singer": "五月天",
				"cover": "img/song/618.jpg",
				"url": "audio/618.mp3"
			},
			{
				"sid": 3,
				"title": "刚刚好",
				"singer": "薛之谦",
				"cover": "img/song/781.jpg",
				"url": "audio/781.mp3"
			},
			{
				"sid": 4,
				"title": "你不是真正的快乐",
				"singer": "邓紫棋",
				"cover": "img/song/796.jpg",
				"url": "audio/796.mp3"
			},
			{
				"sid": 5,
				"title": "绅士",
				"singer": "薛之谦",
				"cover": "img/song/801.jpg",
				"url": "audio/801.mp3"
			},
			{
				"sid": 6,
				"title": "天外来物",
				"singer": "薛之谦",
				"cover": "img/song/805.jpg",
				"url": "audio/805.mp3"
			},
			{
				"sid": 7,
				"title": "突然好想你",
				"singer": "五月天",
				"cover": "img/song/809.jpg",
				"url": "audio/809.mp3"
			},
			{
				"sid": 8,
				"title": "我不愿让你一个人",
				"singer": "五月天",
				"cover": "img/song/813.jpg",
				"url": "audio/813.mp3"
			},
			{
				"sid": 9,
				"title": "我心中的尚未崩坏的地方",
				"singer": "五月天",
				"cover": "img/song/821.jpg",
				"url": "audio/821.mp3"
			},
			{
				"sid": 10,
				"title": "想见你想见你想见你",
				"singer": "八三夭",
				"cover": "img/song/900.jpg",
				"url": "audio/900.mp3"
			},
			{
				"sid": 11,
				"title": "像风一样",
				"singer": "薛之谦",
				"cover": "img/song/903.jpg",
				"url": "audio/903.mp3"
			},
			{
				"sid": 12,
				"title": "这就是爱",
				"singer": "张杰",
				"cover": "img/song/905.jpg",
				"url": "audio/905.mp3"
			}
		]

		// 根据sid获取歌曲信息
		var song = songs.find(function (item) {
			return item.sid == sid
		})
		console.log(song)

		var coverImg = document.querySelector('.cover')
		console.log(coverImg)
		coverImg.src = song.cover

		var audioEl = document.querySelector('audio')
		audioEl.src = song.url

		var info = document.querySelectorAll('.info span')


		console.log(info[0])

		info[0].innerHTML = song.title
		info[1].innerHTML = song.singer

		var goBack = function () {
			history.back()
		}

并且这个播放界面可以用返回按钮,返回到发现页面。

search.html

我们还做了搜索的界面,假如我们在发现页搜索的话,可以显示出相应结果。

        // 1. 获取要搜索的内容
        // ?searchStr=你
        var url = location.search
        url = url.slice(1)
        var params = new URLSearchParams(url)

        console.log(params.get('searchStr'))
        var searchStr = params.get('searchStr')

        // 歌曲列表
        let songs = [{
                "sid": 1,
                "title": "TBD",
                "singer": "David",
                "cover": "img/song/615.jpg",
                "url": "audio/615.mp3"
            },
            {
                "sid": 2,
                "title": "出头天",
                "singer": "五月天",
                "cover": "img/song/618.jpg",
                "url": "audio/618.mp3"
            },
            {
                "sid": 3,
                "title": "刚刚好",
                "singer": "薛之谦",
                "cover": "img/song/781.jpg",
                "url": "audio/781.mp3"
            },
            {
                "sid": 4,
                "title": "你不是真正的快乐",
                "singer": "邓紫棋",
                "cover": "img/song/796.jpg",
                "url": "audio/796.mp3"
            },
            {
                "sid": 5,
                "title": "绅士",
                "singer": "薛之谦",
                "cover": "img/song/801.jpg",
                "url": "audio/801.mp3"
            },
            {
                "sid": 6,
                "title": "天外来物",
                "singer": "薛之谦",
                "cover": "img/song/805.jpg",
                "url": "audio/805.mp3"
            },
            {
                "sid": 7,
                "title": "突然好想你",
                "singer": "五月天",
                "cover": "img/song/809.jpg",
                "url": "audio/809.mp3"
            },
            {
                "sid": 8,
                "title": "我不愿让你一个人",
                "singer": "五月天",
                "cover": "img/song/813.jpg",
                "url": "audio/813.mp3"
            },
            {
                "sid": 9,
                "title": "我心中的尚未崩坏的地方",
                "singer": "五月天",
                "cover": "img/song/821.jpg",
                "url": "audio/821.mp3"
            },
            {
                "sid": 10,
                "title": "想见你想见你想见你",
                "singer": "八三夭",
                "cover": "img/song/900.jpg",
                "url": "audio/900.mp3"
            },
            {
                "sid": 11,
                "title": "像风一样",
                "singer": "薛之谦",
                "cover": "img/song/903.jpg",
                "url": "audio/903.mp3"
            },
            {
                "sid": 12,
                "title": "这就是爱",
                "singer": "张杰",
                "cover": "img/song/905.jpg",
                "url": "audio/905.mp3"
            }
        ]
        // 2. 获取搜索结果
        var songList = songs.filter(function (item) {
            // includes方法 判断是否包含指定字符串
            return item.title.includes(searchStr)
        })
        console.log(songList)


        // 3. 生成html元素
        var songListel = document.querySelector('.box')
        for (var song of songList) {
            console.log(song)
            var divel = document.createElement('div')
            divel.className = 'item'
            divel.innerHTML = `
				<div class="info">
					<div class="title">${song.title}</div>
					<div class="ps">
						<span>原创</span>
						<span>翻唱-${song.singer}</span>
					</div>
				</div>
				<img class="play" src="img/youtube.png" alt="" οnclick="goToSong(${song.sid})">
				<i class="fa fa-ellipsis-v"></i>
				`
            songListel.appendChild(divel)
        }

        var goBack = function () {
			history.back()
		}
        
        var goToSong = function (sid) {
			window.location.href = './song-info.html?sid=' + sid
		}
        console.log(sid)

在这里插入图片描述
搜索“你”会出现如下结果,并且也可以返回。

sheet.html

    // 1. 获取歌单的id
    // ?sid=10
    var url = location.search
    url = url.slice(1)
    var params = new URLSearchParams(url)
    console.log(params.get('sid'))
    var sid = params.get('sid')

    var songSheets = [
      {
        "sid": 10,
        "title": "国风伤感",
        "user_id": 4,
        "pic": "img/sheet/10.jpg",
        "comment": "如今的念头,是去很远的地方,饮马曳落河,拄剑拖月山"
      },
      {
        "sid": 20,
        "title": "治愈系指南",
        "user_id": 4,
        "pic": "img/sheet/20.jpg",
        "comment": "微风吹来丝丝秋意,月亮照出梦的甜蜜,亲爱的朋友"
      },
      {
        "sid": 30,
        "title": "抖音BGM签收",
        "user_id": 1,
        "pic": "img/sheet/30.jpg",
        "comment": "善待自己,从心开始。眼里的世界,从来只是表象"
      },
      {
        "sid": 40,
        "title": "发光自习室",
        "user_id": 1,
        "pic": "img/sheet/40.jpg",
        "comment": "每到学习时间,所有的压力都接踵而至。此张歌单送给正在努力学习的你"
      },
      {
        "sid": 50,
        "title": "古风纯音",
        "user_id": 2,
        "pic": "img/sheet/50.jpg",
        "comment": "情愫始自少年时,簪缨结发两相知。年年灼灼艳桃李,结发簪花配君子"
      }
    ]

    // 2. 根据id获取歌单信息
    var sheet = songSheets.find(function (item) {
      return item.sid == sid
    })
    console.log(sheet)

    // 3. 显示歌单信息
    var infoImg = document.querySelector('.info .left img')
    infoImg.src = sheet.pic
    var infoTitle = document.querySelector('.info .right .title')
    var infoAuthor = document.querySelector('.info .right .avator span')
    infoTitle.innerHTML = sheet.title
    infoAuthor.innerHTML = sheet.comment

把主页的歌单也完善一下,就可以跳转了。
歌单界面都是不一样的,歌曲也要相应的做出更改。

        var sheetSongList = [{
                "iid": 1,
                "sheet_id": 10,
                "song_id": 3,
                "play_count": 55
            },
            {
                "iid": 2,
                "sheet_id": 10,
                "song_id": 5,
                "play_count": 15
            },
            {
                "iid": 3,
                "sheet_id": 10,
                "song_id": 9,
                "play_count": 128
            },
            {
                "iid": 4,
                "sheet_id": 10,
                "song_id": 10,
                "play_count": 135
            },
            {
                "iid": 5,
                "sheet_id": 10,
                "song_id": 12,
                "play_count": 63
            },
            {
                "iid": 6,
                "sheet_id": 20,
                "song_id": 1,
                "play_count": 13
            },
            {
                "iid": 7,
                "sheet_id": 20,
                "song_id": 2,
                "play_count": 18
            },
            {
                "iid": 8,
                "sheet_id": 20,
                "song_id": 5,
                "play_count": 31
            },
            {
                "iid": 9,
                "sheet_id": 20,
                "song_id": 9,
                "play_count": 11
            },
            {
                "iid": 10,
                "sheet_id": 20,
                "song_id": 11,
                "play_count": 101
            },
            {
                "iid": 11,
                "sheet_id": 30,
                "song_id": 2,
                "play_count": 1234
            },
            {
                "iid": 12,
                "sheet_id": 30,
                "song_id": 4,
                "play_count": 10
            },
            {
                "iid": 13,
                "sheet_id": 30,
                "song_id": 5,
                "play_count": 3
            },
            {
                "iid": 14,
                "sheet_id": 30,
                "song_id": 6,
                "play_count": 108
            },
            {
                "iid": 15,
                "sheet_id": 30,
                "song_id": 7,
                "play_count": 281
            },
            {
                "iid": 16,
                "sheet_id": 40,
                "song_id": 2,
                "play_count": 218
            },
            {
                "iid": 17,
                "sheet_id": 40,
                "song_id": 8,
                "play_count": 313
            },
            {
                "iid": 18,
                "sheet_id": 40,
                "song_id": 9,
                "play_count": 881
            },
            {
                "iid": 19,
                "sheet_id": 40,
                "song_id": 10,
                "play_count": 912
            },
            {
                "iid": 20,
                "sheet_id": 40,
                "song_id": 11,
                "play_count": 81
            },
            {
                "iid": 21,
                "sheet_id": 40,
                "song_id": 12,
                "play_count": 65
            },
            {
                "iid": 22,
                "sheet_id": 40,
                "song_id": 3,
                "play_count": 1365
            },
            {
                "iid": 23,
                "sheet_id": 50,
                "song_id": 1,
                "play_count": 812
            },
            {
                "iid": 24,
                "sheet_id": 50,
                "song_id": 3,
                "play_count": 123
            },
            {
                "iid": 25,
                "sheet_id": 50,
                "song_id": 4,
                "play_count": 181
            },
            {
                "iid": 26,
                "sheet_id": 50,
                "song_id": 5,
                "play_count": 1
            },
            {
                "iid": 27,
                "sheet_id": 50,
                "song_id": 7,
                "play_count": 702
            },
            {
                "iid": 28,
                "sheet_id": 50,
                "song_id": 8,
                "play_count": 1182
            },
            {
                "iid": 29,
                "sheet_id": 50,
                "song_id": 11,
                "play_count": 1002
            }
        ]

        // 根据歌单id获取歌曲id列表
        var songIdList = sheetSongList.filter(function (item) {
            return item.sheet_id == sid
        })
        console.log(songIdList)

        var songs = [
      {
        "sid": 1,
        "title": "TBD",
        "singer": "David",
        "cover": "img/song/615.jpg",
        "url": "audio/615.mp3"
      },
      {
        "sid": 2,
        "title": "出头天",
        "singer": "五月天",
        "cover": "img/song/618.jpg",
        "url": "audio/618.mp3"
      },
      {
        "sid": 3,
        "title": "刚刚好",
        "singer": "薛之谦",
        "cover": "img/song/781.jpg",
        "url": "audio/781.mp3"
      },
      {
        "sid": 4,
        "title": "你不是真正的快乐",
        "singer": "邓紫棋",
        "cover": "img/song/796.jpg",
        "url": "audio/796.mp3"
      },
      {
        "sid": 5,
        "title": "绅士",
        "singer": "薛之谦",
        "cover": "img/song/801.jpg",
        "url": "audio/801.mp3"
      },
      {
        "sid": 6,
        "title": "天外来物",
        "singer": "薛之谦",
        "cover": "img/song/805.jpg",
        "url": "audio/805.mp3"
      },
      {
        "sid": 7,
        "title": "突然好想你",
        "singer": "五月天",
        "cover": "img/song/809.jpg",
        "url": "audio/809.mp3"
      },
      {
        "sid": 8,
        "title": "我不愿让你一个人",
        "singer": "五月天",
        "cover": "img/song/813.jpg",
        "url": "audio/813.mp3"
      },
      {
        "sid": 9,
        "title": "我心中的尚未崩坏的地方",
        "singer": "五月天",
        "cover": "img/song/821.jpg",
        "url": "audio/821.mp3"
      },
      {
        "sid": 10,
        "title": "想见你想见你想见你",
        "singer": "八三夭",
        "cover": "img/song/900.jpg",
        "url": "audio/900.mp3"
      },
      {
        "sid": 11,
        "title": "像风一样",
        "singer": "薛之谦",
        "cover": "img/song/903.jpg",
        "url": "audio/903.mp3"
      },
      {
        "sid": 12,
        "title": "这就是爱",
        "singer": "张杰",
        "cover": "img/song/905.jpg",
        "url": "audio/905.mp3"
      }
    ]
    // 根据歌曲id列表获取歌曲列表
    var songList = songs.filter(function (item) {
      var res = songIdList.some(function (value) {
        return value.song_id == item.sid
      })
      return res
    })
    console.log(songList)
    var songListel = document.querySelector('.box')
    var i = 1;
    for (var song of songList) {
      var divel = document.createElement('div')
      divel.className = 'item'
      divel.innerHTML = `
        <div class="seq">${i}</div>
        <div class="info-song">
                <div class="title">${song.title}</div>
                <div class="ps">
                    <span>原创</span>
                    <span>翻唱-${song.singer}</span>
                </div>
            </div>
            <img class="play" src="img/youtube.png" alt="">
            <i class="fa fa-ellipsis-v"></i>

            
      `
      songListel.appendChild(divel)
      i++
    }

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/593270.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java 集合List转 Map 和Map转List的方法总结(举例说明!)

最近遇到了一个场景是&#xff0c;要将从数据库中查出的List<bean>转换为List<map>然后再取map中的value&#xff0c;最后把所有的value写到Excel中。由于这个bean的属性太多了&#xff0c;我最开始没有采用list转map的方式取获取value&#xff0c;而是在for循环中…

结构型设计模式03-外观模式

✨作者&#xff1a;猫十二懿 ❤️‍&#x1f525;账号&#xff1a;CSDN 、掘金 、个人博客 、Github &#x1f389;公众号&#xff1a;猫十二懿 外观模式&#xff08;门面模式&#xff09; 1、外观模式介绍 外观模式&#xff08;Facade Pattern&#xff09;&#xff0c;也称门…

外贸高手揭秘:心理学在谈判中的秘密武器!

在我看来&#xff0c;谈判与心理学密切相关&#xff0c;研究谈判就是研究心理学&#xff01;大学期间&#xff0c;我几乎读完了所有的心理学著作&#xff0c;我必须承认&#xff0c;这为我后来的外贸谈判打下了良好的基础。 有人说:为什么要用谈判这个词&#xff1f;这只是一个…

go语言学习——2.x

文章目录 控制结构if-elseswitchfor(range)break和continue标签与goto 函数参数与返回值传递变长参数defer内置函数递归函数函数作为参数闭包计算函数的执行时间 控制结构 if-else if condition{//do something }if condition{//do something }else{//do something }if condi…

SpringMVC03:Restfule和控制器

目录 一、控制器Controller 二、实现controller接口 三、使用注解Controller 四、RequestMappinng 五、RestFul风格 六、学习测试 1.再新建一个类RestfulController 2.在SPring MVC种可以使用PathVariable注解&#xff0c;让方法参数的值对应绑定到一个URI模板变量上。…

【hello C++】类和对象(中)

目录 1. 类的6个默认成员函数 2. 构造函数 2.1 概念 2.2 特性 3. 析构函数 3.1 概念 3.2 特性 4. 拷贝构造函数 4.1 概念 4.2 特征 5.赋值运算符重载 5.1 运算符重载 5.2 赋值运算符重载 5.3 前置和后置重载 7.const成员 8.取地址及const取地址操作符重载 类和对象&#x1f337…

《Java并发编程实战》课程笔记(六)

管程&#xff1a;并发编程的万能钥匙 什么是管程 Java 采用的是管程技术&#xff0c;synchronized 关键字及 wait()、notify()、notifyAll() 这三个方法都是管程的组成部分。 管程和信号量是等价的&#xff0c;所谓等价指的是用管程能够实现信号量&#xff0c;也能用信号量实…

通用AppKey签名验证软件

一、 需求说明 签名验证是一种技术&#xff0c;用于确保数据完整性和身份验证。在Java应用程序中&#xff0c;签名通常是由开发人员提供的一个字符串&#xff0c;它基于请求的内容和一些密钥信息生成。这个签名可以被认为是一种指纹&#xff0c;它唯一地标识了请求的内容&…

BLECommonTool通用测试工具介绍

工具下载地址&#xff1a;BLECommonTool通用工具资源-CSDN文库 大家在使用过程中&#xff0c;如有发现bug或有更好的建议&#xff0c;欢迎留言或发我QQ邮箱&#xff1a;1255033066qq.com. 工具界面 以下是关于GMBLETool工具的详细使用说明&#xff1a; 蓝牙适配器状态检测&…

springcloudAlibaba整合knife4j整合swagger整合gateway,并且同步到Yapi上

springcloudAlibaba整合knife4j整合swagger整合gateway&#xff0c;并且同步到Yapi上 1.gateway模块 1.pom引入 <dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>2.9.2</version&g…

什么是七专,电子元器件分级详细总结

🏡《电子元器件高级指南》 目录 0,概述1,商业级元器件2,工业级元器件3,汽车工业级元器件4,七专级元器件5,军级元器件6,航天级元器件0,概述 随着科学技术的发展,以及集成电路技术的不断进步。电子元器件的应用越来越广泛。在不同的应用场景下,往往需要不同等级的电子…

(双指针 ) 15. 三数之和 ——【Leetcode每日一题】

❓15. 三数之和 难度&#xff1a;中等 给你一个整数数组 nums &#xff0c;判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k &#xff0c;同时还满足 nums[i] nums[j] nums[k] 0 。请 你返回所有和为 0 且不重复的三元组。 注意&#xff1a…

pip安装python库速度慢、失败及超时报错解决办法

背景&#xff1a; 随着人工智能的不断兴起&#xff0c;python作为最接近人工智能的语言&#xff0c;变得越来越流行&#xff0c;人生苦短&#xff0c;python要学起来。之所以越来用的人喜欢学习python和研究Python&#xff0c;除了python本身便于学些、语法简短、面向对象等特点…

静态库与动态库的区别

静态库与动态库的区别 静态库动态库 首先用OpenCV的开源库来举个例子了解一下库文件的分类&#xff1a; bin文件夹里面放的都是dll文件&#xff1b; lib文件夹里面放的都是伴随dll文件的动态lib文件&#xff1b; staticlib文件夹里面放的才是真正的静态lib文件&#xff0c;和…

专利费减备案操作流程——让你申请专利时的官费大大打折

【系列专栏】&#xff1a;博主结合工作实践输出的&#xff0c;解决实际问题的专栏&#xff0c;朋友们看过来&#xff01; 《项目案例分享》 《极客DIY开源分享》 《嵌入式通用开发实战》 《C语言开发基础总结》 《从0到1学习嵌入式Linux开发》 《QT开发实战》 《Android开发实…

【为什么控件的引用和控件的代理要用weak Objective-C语言】

一、还记得我们给大家说过,UI控件,当用一个属性,引用UI控件的时候,那个标记要用weak, 1.为什么,但是用strong,是不是也行, 但是,如果是控件的代理对象,是不是一定得用weak, 我现在就告诉你,为什么, 注意听,现在,比如说,这个是控制器, 我先解释,为什么UI控…

Java实战-基于JDK的LRU算法实现、优雅的实现代码耗时统计(Spring AOP、AutoCloseable方式)

场景 Java中基于JDK的LRU算法实现 LRU算法-缓存淘汰算法-Least recently used,最近最少使用算法 根据数据的历史访问记录来进行淘汰数据&#xff0c;其核心思想是&#xff1a;如果有数据最近被访问过&#xff0c;那么将来被访问的几率也更高 在Java中可以利用LinkedHashMap…

34. Linux系统下打包qt应用程序

1. 说明 对程序进行打包前需要在Release模式对程序代码进行编译,然后得到编译后的可执行文件,正常情况下这个可执行文件是可以双击打开运行的,如果无法双击运行,可在**.pro**文件内加入下面的代码: QMAKE_LFLAGS += -no-pie TEMPLATE = app同时将main.qml文件中的Window…

【总结】对接达梦数据库DM8详细教程

目录 1.达梦数据库-技术文档2.软件安装包下载2.1 iso 安装版2.2 docker 安装版 3.DM8单机安装部署规范4.安装操作步骤4.1 安装docker4.2 docker安装dameng&#xff08;推荐&#xff09; 5. 启动/停止数据库6.客户端连接使用7.DDL SQL实践7.1 创建表空间7.2 建表语句 8.DML SQL实…

「2023大学生就业报告 」出炉,应届生都去了哪些行业?

2023年的应届毕业生人数再创新高&#xff0c;达到1158万人&#xff0c;是不是开始担忧他们的就业了&#xff1f;别急&#xff0c;最近Boss直聘发布的一组数据&#xff0c;会让这样的担忧有所缓解。 期望薪资有所下降 和增长明显的毕业人数相反的是&#xff0c;这一届大专、本…