|
|
<!DOCTYPE html><html lang="zh-CN" data-theme="light"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"><title>水榭听泉</title><meta name="author" content="Ruoneo"><meta name="copyright" content="Ruoneo"><meta name="format-detection" content="telephone=no"><meta name="theme-color" content="#ffffff"><meta property="og:type" content="website"> |
|
|
<meta property="og:title" content="水榭听泉"> |
|
|
<meta property="og:url" content="https://ismaxu.com/page/4/index.html"> |
|
|
<meta property="og:site_name" content="水榭听泉"> |
|
|
<meta property="og:locale" content="zh_CN"> |
|
|
<meta property="og:image" content="https://ismaxu.com/img/avatar.jpg"> |
|
|
<meta property="article:author" content="Ruoneo"> |
|
|
<meta name="twitter:card" content="summary"> |
|
|
<meta name="twitter:image" content="https://ismaxu.com/img/avatar.jpg"><link rel="shortcut icon" href="/img/avatar.jpg"><link rel="canonical" href="https://ismaxu.com/page/4/"><link rel="preconnect" href="//cdn.jsdelivr.net"/><link rel="stylesheet" href="/css/index.css"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free/css/all.min.css" media="print" onload="this.media='all'"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fancyapps/ui/dist/fancybox.min.css" media="print" onload="this.media='all'"><script>const GLOBAL_CONFIG = { |
|
|
root: '/', |
|
|
algolia: undefined, |
|
|
localSearch: {"path":"/search.xml","preload":false,"languages":{"hits_empty":"找不到您查询的内容:${query}"}}, |
|
|
translate: undefined, |
|
|
noticeOutdate: undefined, |
|
|
highlight: {"plugin":"highlighjs","highlightCopy":true,"highlightLang":true,"highlightHeightLimit":false}, |
|
|
copy: { |
|
|
success: '复制成功', |
|
|
error: '复制错误', |
|
|
noSupport: '浏览器不支持' |
|
|
}, |
|
|
relativeDate: { |
|
|
homepage: false, |
|
|
post: false |
|
|
}, |
|
|
runtime: '', |
|
|
date_suffix: { |
|
|
just: '刚刚', |
|
|
min: '分钟前', |
|
|
hour: '小时前', |
|
|
day: '天前', |
|
|
month: '个月前' |
|
|
}, |
|
|
copyright: undefined, |
|
|
lightbox: 'fancybox', |
|
|
Snackbar: undefined, |
|
|
source: { |
|
|
justifiedGallery: { |
|
|
js: 'https://cdn.jsdelivr.net/npm/flickr-justified-gallery/dist/fjGallery.min.js', |
|
|
css: 'https://cdn.jsdelivr.net/npm/flickr-justified-gallery/dist/fjGallery.min.css' |
|
|
} |
|
|
}, |
|
|
isPhotoFigcaption: false, |
|
|
islazyload: true, |
|
|
isAnchor: false |
|
|
}</script><script id="config-diff">var GLOBAL_CONFIG_SITE = { |
|
|
title: '水榭听泉', |
|
|
isPost: false, |
|
|
isHome: true, |
|
|
isHighlightShrink: false, |
|
|
isToc: false, |
|
|
postUpdate: '2024-09-26 22:34:15' |
|
|
}</script><noscript><style type="text/css"> |
|
|
#nav { |
|
|
opacity: 1 |
|
|
} |
|
|
.justified-gallery img { |
|
|
opacity: 1 |
|
|
} |
|
|
|
|
|
#recent-posts time, |
|
|
#post-meta time { |
|
|
display: inline !important |
|
|
} |
|
|
</style></noscript><script>(win=>{ |
|
|
win.saveToLocal = { |
|
|
set: function setWithExpiry(key, value, ttl) { |
|
|
if (ttl === 0) return |
|
|
const now = new Date() |
|
|
const expiryDay = ttl * 86400000 |
|
|
const item = { |
|
|
value: value, |
|
|
expiry: now.getTime() + expiryDay, |
|
|
} |
|
|
localStorage.setItem(key, JSON.stringify(item)) |
|
|
}, |
|
|
|
|
|
get: function getWithExpiry(key) { |
|
|
const itemStr = localStorage.getItem(key) |
|
|
|
|
|
if (!itemStr) { |
|
|
return undefined |
|
|
} |
|
|
const item = JSON.parse(itemStr) |
|
|
const now = new Date() |
|
|
|
|
|
if (now.getTime() > item.expiry) { |
|
|
localStorage.removeItem(key) |
|
|
return undefined |
|
|
} |
|
|
return item.value |
|
|
} |
|
|
} |
|
|
|
|
|
win.getScript = url => new Promise((resolve, reject) => { |
|
|
const script = document.createElement('script') |
|
|
script.src = url |
|
|
script.async = true |
|
|
script.onerror = reject |
|
|
script.onload = script.onreadystatechange = function() { |
|
|
const loadState = this.readyState |
|
|
if (loadState && loadState !== 'loaded' && loadState !== 'complete') return |
|
|
script.onload = script.onreadystatechange = null |
|
|
resolve() |
|
|
} |
|
|
document.head.appendChild(script) |
|
|
}) |
|
|
|
|
|
win.activateDarkMode = function () { |
|
|
document.documentElement.setAttribute('data-theme', 'dark') |
|
|
if (document.querySelector('meta[name="theme-color"]') !== null) { |
|
|
document.querySelector('meta[name="theme-color"]').setAttribute('content', '#0d0d0d') |
|
|
} |
|
|
} |
|
|
win.activateLightMode = function () { |
|
|
document.documentElement.setAttribute('data-theme', 'light') |
|
|
if (document.querySelector('meta[name="theme-color"]') !== null) { |
|
|
document.querySelector('meta[name="theme-color"]').setAttribute('content', '#ffffff') |
|
|
} |
|
|
} |
|
|
const t = saveToLocal.get('theme') |
|
|
|
|
|
if (t === 'dark') activateDarkMode() |
|
|
else if (t === 'light') activateLightMode() |
|
|
|
|
|
const asideStatus = saveToLocal.get('aside-status') |
|
|
if (asideStatus !== undefined) { |
|
|
if (asideStatus === 'hide') { |
|
|
document.documentElement.classList.add('hide-aside') |
|
|
} else { |
|
|
document.documentElement.classList.remove('hide-aside') |
|
|
} |
|
|
} |
|
|
|
|
|
const detectApple = () => { |
|
|
if(/iPad|iPhone|iPod|Macintosh/.test(navigator.userAgent)){ |
|
|
document.documentElement.classList.add('apple') |
|
|
} |
|
|
} |
|
|
detectApple() |
|
|
})(window)</script><meta name="generator" content="Hexo 6.2.0"></head><body><div id="web_bg"></div><div id="sidebar"><div id="menu-mask"></div><div id="sidebar-menus"><div class="avatar-img is-center"><img src="/img/avatar.jpg" onerror="onerror=null;src='/img/friend_404.gif'" alt="avatar"/></div><div class="sidebar-site-data site-data is-center"><a href="/archives/"><div class="headline">文章</div><div class="length-num">64</div></a><a href="/tags/"><div class="headline">标签</div><div class="length-num">26</div></a><a href="/categories/"><div class="headline">分类</div><div class="length-num">4</div></a></div><hr/><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw fas fa-home"></i><span> 首页</span></a></div><div class="menus_item"><a class="site-page" href="/archives/"><i class="fa-fw fas fa-archive"></i><span> 时间轴</span></a></div><div class="menus_item"><a class="site-page" href="/tags/"><i class="fa-fw fas fa-tags"></i><span> 标签</span></a></div><div class="menus_item"><a class="site-page" href="/categories/"><i class="fa-fw fas fa-folder-open"></i><span> 分类</span></a></div><div class="menus_item"><a class="site-page" href="/messageboard/"><i class="fa-fw fas fa-comment-dots"></i><span> 留言板</span></a></div><div class="menus_item"><a class="site-page" href="/links/"><i class="fa-fw fas fa-link"></i><span> 友链</span></a></div><div class="menus_item"><a class="site-page" href="/about/"><i class="fa-fw fas fa-heart"></i><span> 关于</span></a></div></div></div></div><div class="page" id="body-wrap"><header class="full_page" id="page-header" style="background-image: url('https://imgs-1302910354.cos.ap-shanghai.myqcloud.com/images/%E6%9C%8B%E5%85%8B%E9%98%B3%E5%8F%B0.png')"><nav id="nav"><span id="blog_name"><a id="site-name" href="/">水榭听泉</a></span><div id="menus"><div id="search-button"><a class="site-page social-icon search"><i class="fas fa-search fa-fw"></i><span> 搜索</span></a></div><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw fas fa-home"></i><span> 首页</span></a></div><div class="menus_item"><a class="site-page" href="/archives/"><i class="fa-fw fas fa-archive"></i><span> 时间轴</span></a></div><div class="menus_item"><a class="site-page" href="/tags/"><i class="fa-fw fas fa-tags"></i><span> 标签</span></a></div><div class="menus_item"><a class="site-page" href="/categories/"><i class="fa-fw fas fa-folder-open"></i><span> 分类</span></a></div><div class="menus_item"><a class="site-page" href="/messageboard/"><i class="fa-fw fas fa-comment-dots"></i><span> 留言板</span></a></div><div class="menus_item"><a class="site-page" href="/links/"><i class="fa-fw fas fa-link"></i><span> 友链</span></a></div><div class="menus_item"><a class="site-page" href="/about/"><i class="fa-fw fas fa-heart"></i><span> 关于</span></a></div></div><div id="toggle-menu"><a class="site-page"><i class="fas fa-bars fa-fw"></i></a></div></div></nav><div id="site-info"><h1 id="site-title">水榭听泉</h1><div id="site-subtitle"><span id="subtitle"></span></div><div id="site_social_icons"><a class="social-icon" href="https://github.com/ruoneo" target="_blank" title="Github"><i class="fab fa-github"></i></a><a class="social-icon" href="mailto:xum321@gmail.com" target="_blank" title="Email"><i class="fas fa-envelope"></i></a></div></div><div id="scroll-down"><i class="fas fa-angle-down scroll-down-effects"></i></div></header><main class="layout" id="content-inner"><div class="recent-posts" id="recent-posts"><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2020/06/13/Multi-view%20Multichannel%20Attention%20Graph%20Convolutional%20Network%20for%20miRNA%E2%80%93disease%20association%20prediction/" title="Multi-view Multichannel Attention Graph Convolutional Network for miRNA–disease association prediction">Multi-view Multichannel Attention Graph Convolutional Network for miRNA–disease association prediction</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time class="post-meta-date-created" datetime="2020-06-13T11:21:09.000Z" title="发表于 2020-06-13 19:21:09">2020-06-13</time><span class="article-meta-separator">|</span><i class="fas fa-history"></i><span class="article-meta-label">更新于</span><time class="post-meta-date-updated" datetime="2021-02-03T11:30:53.000Z" title="更新于 2021-02-03 19:30:53">2021-02-03</time></span></div><div class="content">用于miRNA-疾病关联预测的多视角多通道注意图卷积网络 |
|
|
Xinru Tang, Jiawei Luo, Cong Shen and Zihan Lai |
|
|
Corresponding author: Jiawei Luo, College of Computer Science and Electronic Engineering, Hunan University, Changsha 410083, China. |
|
|
E-mail: luojiawei@hnu.edu.cn |
|
|
摘要 |
|
|
动机:近年来,越来越多的研究证明,微小RNA(miRNAs)在人类复杂疾病的发展中起着重要作用。发现miRNA与疾病之 ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2020/06/02/Biomedical%20data%20and%20computational%20models%20for%20drug%20repositioning_%20a%20comprehensive%20review/" title="Biomedical data and computational models for drug repositioning_ a comprehensive review">Biomedical data and computational models for drug repositioning_ a comprehensive review</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time class="post-meta-date-created" datetime="2020-06-02T05:33:21.000Z" title="发表于 2020-06-02 13:33:21">2020-06-02</time><span class="article-meta-separator">|</span><i class="fas fa-history"></i><span class="article-meta-label">更新于</span><time class="post-meta-date-updated" datetime="2021-07-20T12:31:38.000Z" title="更新于 2021-07-20 20:31:38">2021-07-20</time></span></div><div class="content">摘要 |
|
|
药物重新定位可以显著降低传统药物研发的成本和持续时间,同时避免不可预见的不良事件的发生。随着高通量技术的快速发展以及各种生物数据和医学数据的激增,计算药物重新定位方法已经成为系统识别潜在药物-靶标相互作用和药物-疾病相互作用的有吸引力且强大的技术。在这篇综述中,我们首先总结了与药物、疾病和靶点相关的现有生物医学数据和公共数据库。然后,我们讨论了现有的药物重新定位方法,并根据它们的基本计算模型对它们进行分组,这些模型包括经典的机器学习、网络传播、矩阵分解和完成以及基于深度学习的模型。我们还全面分析了药物再定位中常用的标准数据集和评价指标,并对金标准数据集上的各种预测方法进行了简要比较。最后 ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2017/12/15/%E7%BB%BC%E5%90%88%E6%A1%88%E4%BE%8B/" title="综合案例">综合案例</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time class="post-meta-date-created" datetime="2017-12-15T07:42:55.000Z" title="发表于 2017-12-15 15:42:55">2017-12-15</time><span class="article-meta-separator">|</span><i class="fas fa-history"></i><span class="article-meta-label">更新于</span><time class="post-meta-date-updated" datetime="2022-08-27T14:55:18.200Z" title="更新于 2022-08-27 22:55:18">2022-08-27</time></span></div><div class="content">综合案例 |
|
|
今日目标: |
|
|
|
|
|
|
|
|
能够完成查询所有功能 |
|
|
能够完成添加功能 |
|
|
能够理解 BaseServlet 思想 |
|
|
能够完成批量删除功能 |
|
|
能够完成分页查询功能 |
|
|
能够完成条件查询功能 |
|
|
|
|
|
|
|
|
1,功能介绍 |
|
|
|
|
|
以上是我们在综合案例要实现的功能。对数据的除了对数据的增删改查功能外,还有一些复杂的功能,如 批量删除、分页查询、条件查询 等功能 |
|
|
|
|
|
批量删除 功能:每条数据前都有复选框,当我选中多条数据并点击 批量删除 按钮后,会发送请求到后端并删除数据库中指定的多条数据。 |
|
|
分页查询 功能:当数据库中有很多数据时,我们不可能将所有的数据展示在一页里,这个时候就需要分页展示数据。 |
|
|
条件查询 功能:数据库量大的时候,我们就 ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2017/12/06/VUE&Element&%E7%BB%BC%E5%90%88%E6%A1%88%E4%BE%8B/" title="VUE&Element&综合案例">VUE&Element&综合案例</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time class="post-meta-date-created" datetime="2017-12-06T05:07:23.000Z" title="发表于 2017-12-06 13:07:23">2017-12-06</time><span class="article-meta-separator">|</span><i class="fas fa-history"></i><span class="article-meta-label">更新于</span><time class="post-meta-date-updated" datetime="2022-08-28T10:38:25.051Z" title="更新于 2022-08-28 18:38:25">2022-08-28</time></span><span class="article-meta tags"><span class="article-meta-separator">|</span><i class="fas fa-tag"></i><a class="article-meta__tags" href="/tags/%E5%89%8D%E7%AB%AF/">前端</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E6%A1%86%E6%9E%B6/">框架</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E5%89%8D%E7%AB%AF%E6%A1%86%E6%9E%B6/">前端框架</a></span></div><div class="content">VUE&Element |
|
|
1,VUE |
|
|
1.1 概述 |
|
|
接下来我们学习一款前端的框架,就是 VUE。 |
|
|
==Vue 是一套前端框架,免除原生JavaScript中的DOM操作,简化书写。== |
|
|
我们之前也学习过后端的框架 Mybatis ,Mybatis 是用来简化 jdbc 代码编写的;而 VUE 是前端的框架,是用来简化 JavaScript 代码编写的。前一天我们做了一个综合性的案例,里面进行了大量的DOM操作,如下 |
|
|
|
|
|
学习了 VUE 后,这部分代码我们就不需要再写了。那么 VUE 是如何简化 DOM 书写呢? |
|
|
==基于MVVM(Model-View-ViewModel)思想,实现数据的 ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2017/11/21/Filter&Listener&Ajax/" title="Filter&Listener&Ajax">Filter&Listener&Ajax</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time class="post-meta-date-created" datetime="2017-11-21T10:42:10.000Z" title="发表于 2017-11-21 18:42:10">2017-11-21</time><span class="article-meta-separator">|</span><i class="fas fa-history"></i><span class="article-meta-label">更新于</span><time class="post-meta-date-updated" datetime="2022-08-28T10:38:25.049Z" title="更新于 2022-08-28 18:38:25">2022-08-28</time></span><span class="article-meta tags"><span class="article-meta-separator">|</span><i class="fas fa-tag"></i><a class="article-meta__tags" href="/tags/%E5%90%8E%E7%AB%AF/">后端</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E7%BD%91%E7%BB%9C%E7%BC%96%E7%A8%8B/">网络编程</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%BC%80%E5%8F%91/">服务器开发</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E8%BF%87%E6%BB%A4%E5%99%A8%E5%92%8C%E7%9B%91%E5%90%AC%E5%99%A8/">过滤器和监听器</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E5%89%8D%E7%AB%AF/">前端</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E5%8A%A8%E6%80%81%E7%BD%91%E9%A1%B5/">动态网页</a></span></div><div class="content">Filter&Listener&Ajax |
|
|
1,Filter |
|
|
1.1 Filter概述 |
|
|
Filter 表示过滤器,是 JavaWeb 三大组件(Servlet、Filter、Listener)之一。Servlet 我们之前都已经学习过了,Filter和Listener 我们今天都会进行学习。 |
|
|
过滤器可以把对资源的请求==拦截==下来,从而实现一些特殊的功能。 |
|
|
如下图所示,浏览器可以访问服务器上的所有的资源(servlet、jsp、html等) |
|
|
|
|
|
而在访问到这些资源之前可以使过滤器拦截来下,也就是说在访问资源之前会先经过 Filter,如下图 |
|
|
|
|
|
拦截器拦截到后可以做什么功能呢? |
|
|
...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2017/11/11/%E4%BC%9A%E8%AF%9D%E6%8A%80%E6%9C%AF/" title="会话技术">会话技术</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time class="post-meta-date-created" datetime="2017-11-11T07:58:48.000Z" title="发表于 2017-11-11 15:58:48">2017-11-11</time><span class="article-meta-separator">|</span><i class="fas fa-history"></i><span class="article-meta-label">更新于</span><time class="post-meta-date-updated" datetime="2022-09-24T11:58:42.737Z" title="更新于 2022-09-24 19:58:42">2022-09-24</time></span><span class="article-meta tags"><span class="article-meta-separator">|</span><i class="fas fa-tag"></i><a class="article-meta__tags" href="/tags/%E5%90%8E%E7%AB%AF/">后端</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E7%BD%91%E7%BB%9C%E7%BC%96%E7%A8%8B/">网络编程</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%BC%80%E5%8F%91/">服务器开发</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E4%BC%9A%E8%AF%9D%E6%8A%80%E6%9C%AF/">会话技术</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/cookie-session/">cookie/session</a></span></div><div class="content">会话技术 |
|
|
今日目标 |
|
|
|
|
|
|
|
|
|
|
|
理解什么是会话跟踪技术 |
|
|
|
|
|
|
|
|
掌握Cookie的使用 |
|
|
|
|
|
|
|
|
掌握Session的使用 |
|
|
|
|
|
|
|
|
完善用户登录注册案例的功能 |
|
|
|
|
|
|
|
|
|
|
|
1,会话跟踪技术的概述 |
|
|
对于会话跟踪这四个词,我们需要拆开来进行解释,首先要理解什么是会话,然后再去理解什么是会话跟踪: |
|
|
|
|
|
|
|
|
会话:用户打开浏览器,访问web服务器的资源,会话建立,直到有一方断开连接,会话结束。在一次会话中可以包含==多次==请求和响应。 |
|
|
|
|
|
从浏览器发出请求到服务端响应数据给前端之后,一次会话(在浏览器和服务器之间)就被建立了 |
|
|
会话被建立后,如果浏览器或服务端都没有被关闭,则会话就会持续建立着 |
|
|
浏览器和服务器就可以继续使用该会话进行 ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2017/11/07/JSP/" title="JSP">JSP</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time class="post-meta-date-created" datetime="2017-11-07T11:11:35.000Z" title="发表于 2017-11-07 19:11:35">2017-11-07</time><span class="article-meta-separator">|</span><i class="fas fa-history"></i><span class="article-meta-label">更新于</span><time class="post-meta-date-updated" datetime="2022-08-27T14:55:18.171Z" title="更新于 2022-08-27 22:55:18">2022-08-27</time></span><span class="article-meta tags"><span class="article-meta-separator">|</span><i class="fas fa-tag"></i><a class="article-meta__tags" href="/tags/%E5%89%8D%E7%AB%AF/">前端</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E5%8A%A8%E6%80%81%E7%BD%91%E9%A1%B5/">动态网页</a></span></div><div class="content">JSP |
|
|
今日目标: |
|
|
|
|
|
|
|
|
理解 JSP 及 JSP 原理 |
|
|
能在 JSP中使用 EL表达式 和 JSTL标签 |
|
|
理解 MVC模式 和 三层架构 |
|
|
能完成品牌数据的增删改查功能 |
|
|
|
|
|
|
|
|
1,JSP 概述 |
|
|
==JSP(全称:Java Server Pages):Java 服务端页面。==是一种动态的网页技术,其中既可以定义 HTML、JS、CSS等静态内容,还可以定义 Java代码的动态内容,也就是 JSP = HTML + Java。如下就是jsp代码 |
|
|
1234567891011<html> <head> <title>Title</title& ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2017/10/21/Request&Response/" title="Request&Response">Request&Response</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time class="post-meta-date-created" datetime="2017-10-21T08:12:10.000Z" title="发表于 2017-10-21 16:12:10">2017-10-21</time><span class="article-meta-separator">|</span><i class="fas fa-history"></i><span class="article-meta-label">更新于</span><time class="post-meta-date-updated" datetime="2022-08-27T14:55:18.187Z" title="更新于 2022-08-27 22:55:18">2022-08-27</time></span><span class="article-meta tags"><span class="article-meta-separator">|</span><i class="fas fa-tag"></i><a class="article-meta__tags" href="/tags/%E5%90%8E%E7%AB%AF/">后端</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E7%BD%91%E7%BB%9C%E7%BC%96%E7%A8%8B/">网络编程</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%BC%80%E5%8F%91/">服务器开发</a></span></div><div class="content">##Request&Response |
|
|
今日目标 |
|
|
|
|
|
|
|
|
掌握Request对象的概念与使用 |
|
|
掌握Response对象的概念与使用 |
|
|
能够完成用户登录注册案例的实现 |
|
|
能够完成SqlSessionFactory工具类的抽取 |
|
|
|
|
|
|
|
|
1,Request和Response的概述 |
|
|
==Request是请求对象,Response是响应对象。==这两个对象在我们使用Servlet的时候有看到: |
|
|
此时,我们就需要思考一个问题request和response这两个参数的作用是什么? |
|
|
|
|
|
|
|
|
request:==获取==请求数据 |
|
|
|
|
|
浏览器会发送HTTP请求到后台服务器[Tomcat] |
|
|
HTTP的请求中会包含很多请求数据 ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2017/10/14/HTTP&Tomcat&Servlet/" title="HTTP&Tomcat&Servlet">HTTP&Tomcat&Servlet</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time class="post-meta-date-created" datetime="2017-10-14T14:24:32.000Z" title="发表于 2017-10-14 22:24:32">2017-10-14</time><span class="article-meta-separator">|</span><i class="fas fa-history"></i><span class="article-meta-label">更新于</span><time class="post-meta-date-updated" datetime="2022-08-28T10:38:25.050Z" title="更新于 2022-08-28 18:38:25">2022-08-28</time></span><span class="article-meta tags"><span class="article-meta-separator">|</span><i class="fas fa-tag"></i><a class="article-meta__tags" href="/tags/%E5%90%8E%E7%AB%AF/">后端</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E7%BD%91%E7%BB%9C%E7%BC%96%E7%A8%8B/">网络编程</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%BC%80%E5%8F%91/">服务器开发</a></span></div><div class="content">HTTP&Tomcat&Servlet |
|
|
1,Web概述 |
|
|
1.1 Web和JavaWeb的概念 |
|
|
==Web是全球广域网,也称为万维网(www),能够通过浏览器访问的网站。== |
|
|
在我们日常的生活中,经常会使用浏览器去访问百度、京东、传智官网等这些网站,这些网站统称为Web网站。如下就是通过浏览器访问传智官网的界面: |
|
|
|
|
|
我们知道了什么是Web,那么JavaWeb又是什么呢?顾名思义==JavaWeb就是用Java技术来解决相关web互联网领域的技术栈。== |
|
|
等学习完JavaWeb之后,同学们就可以使用Java语言开发我们上述所说的网站。而国内很多大型网站公司也是首选Java语言来解决 ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2017/10/02/JavaScript/" title="JavaScript">JavaScript</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time class="post-meta-date-created" datetime="2017-10-02T07:49:20.000Z" title="发表于 2017-10-02 15:49:20">2017-10-02</time><span class="article-meta-separator">|</span><i class="fas fa-history"></i><span class="article-meta-label">更新于</span><time class="post-meta-date-updated" datetime="2022-08-27T14:55:18.165Z" title="更新于 2022-08-27 22:55:18">2022-08-27</time></span><span class="article-meta tags"><span class="article-meta-separator">|</span><i class="fas fa-tag"></i><a class="article-meta__tags" href="/tags/%E5%89%8D%E7%AB%AF/">前端</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/JS/">JS</a></span></div><div class="content">JavaScript |
|
|
今日目标 |
|
|
|
|
|
|
|
|
掌握 JavaScript 的基础语法 |
|
|
掌握 JavaScript 的常用对象(Array、String) |
|
|
能根据需求灵活运用定时器及通过 js 代码进行页面跳转 |
|
|
能通过DOM 对象对标签进行常规操作 |
|
|
掌握常用的事件 |
|
|
能独立完成表单校验案例 |
|
|
|
|
|
|
|
|
1,JavaScript简介 |
|
|
==JavaScript 是一门跨平台、面向对象的脚本语言==,而Java语言也是跨平台的、面向对象的语言,只不过Java是编译语言,是需要编译成字节码文件才能运行的;JavaScript是脚本语言,不需要编译,由浏览器直接解析并执行。 |
|
|
JavaScript 是用来控制网页行为的,它能使 ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2017/09/23/HTML/" title="HTML">HTML</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time class="post-meta-date-created" datetime="2017-09-23T08:04:00.000Z" title="发表于 2017-09-23 16:04:00">2017-09-23</time><span class="article-meta-separator">|</span><i class="fas fa-history"></i><span class="article-meta-label">更新于</span><time class="post-meta-date-updated" datetime="2022-08-27T14:55:18.156Z" title="更新于 2022-08-27 22:55:18">2022-08-27</time></span><span class="article-meta tags"><span class="article-meta-separator">|</span><i class="fas fa-tag"></i><a class="article-meta__tags" href="/tags/%E5%89%8D%E7%AB%AF/">前端</a></span></div><div class="content">快速入门 |
|
|
1.新建文本文件,后缀名改为 .html/.htm |
|
|
2.编写 HTML结构标签 |
|
|
3.在<body>中使用<h1>定义标题字体 |
|
|
4.使用<img>标签定义图片 |
|
|
5.保存后,使用浏览器打开该文件 |
|
|
|
|
|
|
|
|
|
|
|
标签 |
|
|
描述 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<HTML> |
|
|
定义 HTML 文档 |
|
|
|
|
|
|
|
|
<head> |
|
|
定义关于文档的信息 |
|
|
|
|
|
|
|
|
<title> |
|
|
定义文档的标题 |
|
|
|
|
|
|
|
|
<body> |
|
|
定义文档的主体 |
|
|
|
|
|
|
|
|
|
|
|
基础标签 |
|
|
|
|
|
|
|
|
|
|
|
标签 |
|
|
描述 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<h1> ~ <h6> |
|
|
定义标题,h1最大,h6最小 |
|
|
|
|
|
|
|
|
<font ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2017/09/10/HTML&CSS/" title="HTML&CSS">HTML&CSS</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time class="post-meta-date-created" datetime="2017-09-10T14:27:57.000Z" title="发表于 2017-09-10 22:27:57">2017-09-10</time><span class="article-meta-separator">|</span><i class="fas fa-history"></i><span class="article-meta-label">更新于</span><time class="post-meta-date-updated" datetime="2022-08-27T14:55:18.155Z" title="更新于 2022-08-27 22:55:18">2022-08-27</time></span><span class="article-meta tags"><span class="article-meta-separator">|</span><i class="fas fa-tag"></i><a class="article-meta__tags" href="/tags/%E5%89%8D%E7%AB%AF/">前端</a></span></div><div class="content">HTML&CSS |
|
|
今日目标: |
|
|
|
|
|
|
|
|
能够掌握课程中讲解的标签的使用 |
|
|
了解css的使用 |
|
|
|
|
|
|
|
|
1,HTML |
|
|
1.1 介绍 |
|
|
HTML 是一门语言,所有的网页都是用HTML 这门语言编写出来的,也就是HTML是用来写网页的,像京东,12306等网站有很多网页。 |
|
|
|
|
|
|
|
|
这些都是网页展示出来的效果。而HTML也有专业的解释 |
|
|
==HTML(HyperText Markup Language):超文本标记语言:== |
|
|
|
|
|
|
|
|
超文本:超越了文本的限制,比普通文本更强大。除了文字信息,还可以定义图片、音频、视频等内容 |
|
|
如上图看到的页面,我们除了能看到一些文字,同时也有大量的图片展示;有些网页也有视频,音频等。这 ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2017/09/10/Mybatis/" title="Mybatis">Mybatis</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time class="post-meta-date-created" datetime="2017-09-10T08:42:53.000Z" title="发表于 2017-09-10 16:42:53">2017-09-10</time><span class="article-meta-separator">|</span><i class="fas fa-history"></i><span class="article-meta-label">更新于</span><time class="post-meta-date-updated" datetime="2022-08-27T14:55:18.176Z" title="更新于 2022-08-27 22:55:18">2022-08-27</time></span><span class="article-meta tags"><span class="article-meta-separator">|</span><i class="fas fa-tag"></i><a class="article-meta__tags" href="/tags/%E5%90%8E%E7%AB%AF/">后端</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E6%95%B0%E6%8D%AE%E5%BA%93%E9%A9%B1%E5%8A%A8/">数据库驱动</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E6%95%B0%E6%8D%AE%E6%8C%81%E4%B9%85%E5%8C%96/">数据持久化</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/Mybatis/">Mybatis</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E5%90%8E%E7%AB%AF%E6%A1%86%E6%9E%B6/">后端框架</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E6%A1%86%E6%9E%B6/">框架</a></span></div><div class="content">Mybatis练习 |
|
|
目标 |
|
|
|
|
|
|
|
|
能够使用映射配置文件实现CRUD操作 |
|
|
能够使用注解实现CRUD操作 |
|
|
|
|
|
|
|
|
1,配置文件实现CRUD |
|
|
|
|
|
如上图所示产品原型,里面包含了品牌数据的 查询 、按条件查询、添加、删除、批量删除、修改 等功能,而这些功能其实就是对数据库表中的数据进行CRUD操作。接下来我们就使用Mybatis完成品牌数据的增删改查操作。以下是我们要完成功能列表: |
|
|
|
|
|
|
|
|
查询 |
|
|
|
|
|
查询所有数据 |
|
|
查询详情 |
|
|
条件查询 |
|
|
|
|
|
|
|
|
添加 |
|
|
修改 |
|
|
|
|
|
修改全部字段 |
|
|
修改动态字段 |
|
|
|
|
|
|
|
|
删除 |
|
|
|
|
|
删除一个 |
|
|
批量删除 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
我们先将必要的环境准备一下。 |
|
|
1.1 环境准备 |
|
|
|
|
|
|
|
|
数据库表(tb_brand)及数据准备 |
|
|
123 ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2017/08/23/Maven&MyBatis/" title="Maven&MyBatis">Maven&MyBatis</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time class="post-meta-date-created" datetime="2017-08-23T07:16:17.000Z" title="发表于 2017-08-23 15:16:17">2017-08-23</time><span class="article-meta-separator">|</span><i class="fas fa-history"></i><span class="article-meta-label">更新于</span><time class="post-meta-date-updated" datetime="2022-08-27T14:55:18.173Z" title="更新于 2022-08-27 22:55:18">2022-08-27</time></span><span class="article-meta tags"><span class="article-meta-separator">|</span><i class="fas fa-tag"></i><a class="article-meta__tags" href="/tags/%E5%90%8E%E7%AB%AF/">后端</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E6%95%B0%E6%8D%AE%E5%BA%93%E9%A9%B1%E5%8A%A8/">数据库驱动</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E6%95%B0%E6%8D%AE%E6%8C%81%E4%B9%85%E5%8C%96/">数据持久化</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/Mybatis/">Mybatis</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E5%90%8E%E7%AB%AF%E6%A1%86%E6%9E%B6/">后端框架</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E6%A1%86%E6%9E%B6/">框架</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E9%A1%B9%E7%9B%AE%E7%AE%A1%E7%90%86/">项目管理</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E9%A1%B9%E7%9B%AE%E6%9E%84%E5%BB%BA%E5%B7%A5%E5%85%B7/">项目构建工具</a></span></div><div class="content">Maven&MyBatis |
|
|
目标 |
|
|
|
|
|
|
|
|
能够使用Maven进行项目的管理 |
|
|
能够完成Mybatis代理方式查询数据 |
|
|
能够理解Mybatis核心配置文件的配置 |
|
|
|
|
|
|
|
|
1,Maven |
|
|
Maven是专门用于管理和构建Java项目的工具,它的主要功能有: |
|
|
|
|
|
|
|
|
提供了一套标准化的项目结构 |
|
|
|
|
|
|
|
|
提供了一套标准化的构建流程(编译,测试,打包,发布……) |
|
|
|
|
|
|
|
|
提供了一套依赖管理机制 |
|
|
|
|
|
|
|
|
标准化的项目结构: |
|
|
项目结构我们都知道,每一个开发工具(IDE)都有自己不同的项目结构,它们互相之间不通用。我再eclipse中创建的目录,无法在idea中进行使用,这就造成了很大的不方便,如下图:前两个是以后开发经常使用的 ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2017/08/16/druid%E9%85%8D%E7%BD%AE%E8%AF%A6%E8%A7%A3/" title="druid配置详解">druid配置详解</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time class="post-meta-date-created" datetime="2017-08-16T06:27:43.000Z" title="发表于 2017-08-16 14:27:43">2017-08-16</time><span class="article-meta-separator">|</span><i class="fas fa-history"></i><span class="article-meta-label">更新于</span><time class="post-meta-date-updated" datetime="2022-08-27T14:55:18.149Z" title="更新于 2022-08-27 22:55:18">2022-08-27</time></span><span class="article-meta tags"><span class="article-meta-separator">|</span><i class="fas fa-tag"></i><a class="article-meta__tags" href="/tags/%E5%90%8E%E7%AB%AF/">后端</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/MySQL/">MySQL</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E6%95%B0%E6%8D%AE%E5%BA%93/">数据库</a><span class="article-meta-link">•</span><a class="article-meta__tags" href="/tags/%E6%95%B0%E6%8D%AE%E5%BA%93%E8%BF%9E%E6%8E%A5%E6%B1%A0/">数据库连接池</a></span></div><div class="content">druid配置详解 |
|
|
|
|
|
|
|
|
|
|
|
属性 |
|
|
说明 |
|
|
建议值 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
url |
|
|
数据库的jdbc连接地址。一般为连接oracle/mysql。示例如下: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
mysql : jdbc:mysql://ip:port/dbname?option1&option2&… |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
oracle : jdbc:oracle:thin:@ip:port:oracle_sid |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
username |
|
|
登录数据库的用户名 |
|
|
|
|
|
|
|
|
|
|
|
password |
|
|
登录数据库的用户密码 |
|
|
|
|
|
|
|
|
|
|
|
initialSize |
|
|
启动程序时,在连接池中初始化多少个连接 |
|
|
10-50已足够 |
|
|
|
|
|
|
|
|
maxActive |
|
|
连接池中最多支持多少 ...</div></div></div><nav id="pagination"><div class="pagination"><a class="extend prev" rel="prev" href="/page/3/#content-inner"><i class="fas fa-chevron-left fa-fw"></i></a><a class="page-number" href="/">1</a><span class="space">…</span><a class="page-number" href="/page/3/#content-inner">3</a><span class="page-number current">4</span><a class="page-number" href="/page/5/#content-inner">5</a><a class="extend next" rel="next" href="/page/5/#content-inner"><i class="fas fa-chevron-right fa-fw"></i></a></div></nav></div><div class="aside-content" id="aside-content"><div class="card-widget card-info"><div class="is-center"><div class="avatar-img"><img src="/img/avatar.jpg" onerror="this.onerror=null;this.src='/img/friend_404.gif'" alt="avatar"/></div><div class="author-info__name">Ruoneo</div><div class="author-info__description">嗨! 你好!</div></div><div class="card-info-data site-data is-center"><a href="/archives/"><div class="headline">文章</div><div class="length-num">64</div></a><a href="/tags/"><div class="headline">标签</div><div class="length-num">26</div></a><a href="/categories/"><div class="headline">分类</div><div class="length-num">4</div></a></div><div class="card-info-social-icons is-center"><a class="social-icon" href="https://github.com/ruoneo" target="_blank" title="Github"><i class="fab fa-github"></i></a><a class="social-icon" href="mailto:xum321@gmail.com" target="_blank" title="Email"><i class="fas fa-envelope"></i></a></div></div><div class="card-widget card-announcement"><div class="item-headline"><i class="fas fa-bullhorn fa-shake"></i><span>公告</span></div><div class="announcement_content">感谢来访。希望这里有对你有帮助的内容。</div></div><div class="sticky_layout"><div class="card-widget card-recent-post"><div class="item-headline"><i class="fas fa-history"></i><span>最新文章</span></div><div class="aside-list"><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/2024/07/06/git%E5%B1%80%E5%9F%9F%E7%BD%91%E9%83%A8%E7%BD%B2%E6%96%B9%E6%B3%95/" title="git局域网部署方法">git局域网部署方法</a><time datetime="2024-07-06T08:13:10.000Z" title="发表于 2024-07-06 16:13:10">2024-07-06</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/2023/09/25/%E5%85%B3%E4%BA%8EPyQt%E7%9A%84connect%E4%BC%A0%E5%85%A5lambda%E5%87%BD%E6%95%B0%E4%BD%9C%E4%B8%BA%E5%8F%82%E6%95%B0%E8%B0%83%E7%94%A8%E6%A7%BD%E5%87%BD%E6%95%B0%E7%9A%84%E4%B8%80%E7%82%B9%E6%80%9D%E8%80%83/" title="关于PyQt的connect传入lambda函数作为参数调用槽函数的一点思考">关于PyQt的connect传入lambda函数作为参数调用槽函数的一点思考</a><time datetime="2023-09-25T13:53:35.000Z" title="发表于 2023-09-25 21:53:35">2023-09-25</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/2022/03/30/%E5%A4%8D%E4%B9%A05/" title="Spring注解">Spring注解</a><time datetime="2022-03-30T07:22:16.000Z" title="发表于 2022-03-30 15:22:16">2022-03-30</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/2022/03/30/%E5%A4%8D%E4%B9%A04/" title="Spring">Spring</a><time datetime="2022-03-30T02:23:10.000Z" title="发表于 2022-03-30 10:23:10">2022-03-30</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/2022/03/22/MultiDTI_%20drug%E2%80%93target%20interaction%20prediction%20based%20on%20multi-modal%20representation%20learning%20to%20bridge%20the%20gap%20between%20new%20chemical/" title="MultiDTI_ drug–target interaction prediction based on multi-modal representation learning to bridge the gap between new chemical">MultiDTI_ drug–target interaction prediction based on multi-modal representation learning to bridge the gap between new chemical</a><time datetime="2022-03-22T06:29:57.000Z" title="发表于 2022-03-22 14:29:57">2022-03-22</time></div></div></div></div><div class="card-widget card-categories"><div class="item-headline"> |
|
|
<i class="fas fa-folder-open"></i> |
|
|
<span>分类</span> |
|
|
|
|
|
</div> |
|
|
<ul class="card-category-list" id="aside-cat-list"> |
|
|
<li class="card-category-list-item "><a class="card-category-list-link" href="/categories/%E6%9C%8D%E5%8A%A1%E5%99%A8/"><span class="card-category-list-name">服务器</span><span class="card-category-list-count">1</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/categories/%E8%AE%BA%E6%96%87%E9%98%85%E8%AF%BB%E7%AC%94%E8%AE%B0/"><span class="card-category-list-name">论文阅读笔记</span><span class="card-category-list-count">3</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/categories/%E8%B8%A9%E5%9D%91%E6%97%A5%E8%AE%B0/"><span class="card-category-list-name">踩坑日记</span><span class="card-category-list-count">1</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/categories/%E9%94%99%E8%AF%AF%E6%9C%AC/"><span class="card-category-list-name">错误本</span><span class="card-category-list-count">1</span></a></li> |
|
|
</ul></div><div class="card-widget card-tags"><div class="item-headline"><i class="fas fa-tags"></i><span>标签</span></div><div class="card-tag-cloud"><a href="/tags/GAT/" style="font-size: 1.1em; color: #999">GAT</a> <a href="/tags/JS/" style="font-size: 1.1em; color: #999">JS</a> <a href="/tags/Java/" style="font-size: 1.1em; color: #999">Java</a> <a href="/tags/MySQL/" style="font-size: 1.3em; color: #99a1ac">MySQL</a> <a href="/tags/Mybatis/" style="font-size: 1.17em; color: #999c9f">Mybatis</a> <a href="/tags/cookie-session/" style="font-size: 1.1em; color: #999">cookie/session</a> <a href="/tags/drug-taget-interactions-prediction/" style="font-size: 1.1em; color: #999">drug-taget interactions prediction</a> <a href="/tags/%E4%BC%9A%E8%AF%9D%E6%8A%80%E6%9C%AF/" style="font-size: 1.1em; color: #999">会话技术</a> <a href="/tags/%E5%89%8D%E7%AB%AF/" style="font-size: 1.43em; color: #99a6b9">前端</a> <a href="/tags/%E5%89%8D%E7%AB%AF%E6%A1%86%E6%9E%B6/" style="font-size: 1.1em; color: #999">前端框架</a> <a href="/tags/%E5%8A%A8%E6%80%81%E7%BD%91%E9%A1%B5/" style="font-size: 1.17em; color: #999c9f">动态网页</a> <a href="/tags/%E5%90%8E%E7%AB%AF/" style="font-size: 1.5em; color: #99a9bf">后端</a> <a href="/tags/%E5%90%8E%E7%AB%AF%E6%A1%86%E6%9E%B6/" style="font-size: 1.17em; color: #999c9f">后端框架</a> <a href="/tags/%E5%9B%BE%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C/" style="font-size: 1.23em; color: #999ea6">图神经网络</a> <a href="/tags/%E6%95%B0%E6%8D%AE%E5%BA%93/" style="font-size: 1.3em; color: #99a1ac">数据库</a> <a href="/tags/%E6%95%B0%E6%8D%AE%E5%BA%93%E8%BF%9E%E6%8E%A5%E6%B1%A0/" style="font-size: 1.1em; color: #999">数据库连接池</a> <a href="/tags/%E6%95%B0%E6%8D%AE%E5%BA%93%E9%A9%B1%E5%8A%A8/" style="font-size: 1.23em; color: #999ea6">数据库驱动</a> <a href="/tags/%E6%95%B0%E6%8D%AE%E6%8C%81%E4%B9%85%E5%8C%96/" style="font-size: 1.23em; color: #999ea6">数据持久化</a> <a href="/tags/%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%BC%80%E5%8F%91/" style="font-size: 1.37em; color: #99a4b2">服务器开发</a> <a href="/tags/%E6%A1%86%E6%9E%B6/" style="font-size: 1.23em; color: #999ea6">框架</a> <a href="/tags/%E7%89%B9%E5%BE%81%E5%AD%A6%E4%B9%A0/" style="font-size: 1.23em; color: #999ea6">特征学习</a> <a href="/tags/%E7%BD%91%E7%BB%9C%E7%BC%96%E7%A8%8B/" style="font-size: 1.37em; color: #99a4b2">网络编程</a> <a href="/tags/%E8%B6%85%E8%8A%82%E7%82%B9/" style="font-size: 1.1em; color: #999">超节点</a> <a href="/tags/%E8%BF%87%E6%BB%A4%E5%99%A8%E5%92%8C%E7%9B%91%E5%90%AC%E5%99%A8/" style="font-size: 1.1em; color: #999">过滤器和监听器</a> <a href="/tags/%E9%A1%B9%E7%9B%AE%E6%9E%84%E5%BB%BA%E5%B7%A5%E5%85%B7/" style="font-size: 1.1em; color: #999">项目构建工具</a> <a href="/tags/%E9%A1%B9%E7%9B%AE%E7%AE%A1%E7%90%86/" style="font-size: 1.1em; color: #999">项目管理</a></div></div><div class="card-widget card-archives"><div class="item-headline"><i class="fas fa-archive"></i><span>归档</span><a class="card-more-btn" href="/archives/" title="查看更多"> |
|
|
<i class="fas fa-angle-right"></i></a></div><ul class="card-archive-list"><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2024/07/"><span class="card-archive-list-date">七月 2024</span><span class="card-archive-list-count">1</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2023/09/"><span class="card-archive-list-date">九月 2023</span><span class="card-archive-list-count">1</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2022/03/"><span class="card-archive-list-date">三月 2022</span><span class="card-archive-list-count">6</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2022/02/"><span class="card-archive-list-date">二月 2022</span><span class="card-archive-list-count">2</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2022/01/"><span class="card-archive-list-date">一月 2022</span><span class="card-archive-list-count">1</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2021/12/"><span class="card-archive-list-date">十二月 2021</span><span class="card-archive-list-count">2</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2021/11/"><span class="card-archive-list-date">十一月 2021</span><span class="card-archive-list-count">2</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2021/09/"><span class="card-archive-list-date">九月 2021</span><span class="card-archive-list-count">1</span></a></li></ul></div></div></div></main><footer id="footer" style="background: color(orange)"><div id="footer-wrap"><div class="copyright">©2024 By Ruoneo</div><div class="footer_custom_text"><div><a target="_blank" rel="noopener" href="https://beian.miit.gov.cn"><img class="icp-icon"><span>豫ICP备 2022020326号</span></a> | <a target="_blank" rel="noopener" href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=41020202000143"><span>豫公网安备 41020202000143号</span></a></div></div></div></footer></div><div id="rightside"><div id="rightside-config-hide"><button id="darkmode" type="button" title="浅色和深色模式转换"><i class="fas fa-adjust"></i></button><button id="hide-aside-btn" type="button" title="单栏和双栏切换"><i class="fas fa-arrows-alt-h"></i></button></div><div id="rightside-config-show"><button id="rightside_config" type="button" title="设置"><i class="fas fa-cog fa-spin"></i></button><button id="go-up" type="button" title="回到顶部"><i class="fas fa-arrow-up"></i></button></div></div><div id="local-search"><div class="search-dialog"><nav class="search-nav"><span class="search-dialog-title">搜索</span><span id="loading-status"></span><button class="search-close-button"><i class="fas fa-times"></i></button></nav><div class="is-center" id="loading-database"><i class="fas fa-spinner fa-pulse"></i><span> 数据库加载中</span></div><div class="search-wrap"><div id="local-search-input"><div class="local-search-box"><input class="local-search-box--input" placeholder="搜索文章" type="text"/></div></div><hr/><div id="local-search-results"></div></div></div><div id="search-mask"></div></div><div><script src="/js/utils.js"></script><script src="/js/main.js"></script><script src="https://cdn.jsdelivr.net/npm/@fancyapps/ui/dist/fancybox.umd.min.js"></script><script src="https://cdn.jsdelivr.net/npm/vanilla-lazyload/dist/lazyload.iife.min.js"></script><script src="/js/search/local-search.js"></script><div class="js-pjax"><script>function subtitleType () { |
|
|
getScript('https://sdk.jinrishici.com/v2/browser/jinrishici.js').then(() => { |
|
|
jinrishici.load(result =>{ |
|
|
if (true) { |
|
|
const sub = [] |
|
|
const content = result.data.content |
|
|
sub.unshift(content) |
|
|
window.typed = new Typed('#subtitle', { |
|
|
strings: sub, |
|
|
startDelay: 300, |
|
|
typeSpeed: 150, |
|
|
loop: true, |
|
|
backSpeed: 50, |
|
|
}) |
|
|
} else { |
|
|
document.getElementById('subtitle').innerHTML = result.data.content |
|
|
} |
|
|
}) |
|
|
}) |
|
|
} |
|
|
|
|
|
if (true) { |
|
|
if (typeof Typed === 'function') { |
|
|
subtitleType() |
|
|
} else { |
|
|
getScript('https://cdn.jsdelivr.net/npm/typed.js/lib/typed.min.js').then(subtitleType) |
|
|
} |
|
|
} else { |
|
|
subtitleType() |
|
|
} |
|
|
</script></div></div></body></html> |