网站开发之MyEclipse简单实现JSP网页表单提交及传递值

本文主要是作者《中小型网站开发与设计》课程的内容,非常基础的文章,主要是指导学生学会用MyEclipse实现JSP网页表单提交及传递参数。希望大家喜欢这篇文章,基础文章,不喜勿喷~

PS:2019年1~2月作者参加了CSDN2018年博客评选,希望您能投出宝贵的一票。我是59号,Eastmount,杨秀璋。投票地址:https://bss.csdn.net/m/topic/blog_star2018/index

五年来写了314篇博客,12个专栏,是真的热爱分享,热爱CSDN这个平台,也想帮助更多的人,专栏包括Python、数据挖掘、网络爬虫、图像处理、C#、Android等。现在也当了两年老师,更是觉得有义务教好每一个学生,让贵州学子好好写点代码,学点技术,"师者,传到授业解惑也",提前祝大家新年快乐。2019我们携手共进,为爱而生。

一. MyEclipse实现网页动态表单提交

1.新建Web Service工程,名称为test02。

2.查看网页JSP源代码,位于WebRoot文件下,src用于编写JAVA后台代码。

3.右键项目,点击MyEclipse Server Application运行程序。

运行结果如下图所示,显示“This is JSP page.”。

4.插入HTML登录页面代码,并显示相关结果。

<body>
  	<form action="" method="post" name="form">
    <table border="1" align="center">
    	<tr><td colspan="2" align="center"><h2>贵州财经大学登陆</h2></td></tr>
    	<tr><td>用户名:</td>
    		<td><input type="text" name="t1" value=""/></td></tr>
    	<tr><td>密码:</td>
    		<td><input type="password" name="t2" /></td></tr>
    	<tr><td colspan="2" align="center"><input type="submit" name="t3" value="点击试试">
    		<input type="reset" name="t4" value="取消算了"/></td></tr>
    </table>
    </form>
  </body>

运行结果如下所示,一个比较简单的登录页面。

5.通过 request.getParameter(标签参数) 获取传递的值。
完整代码如下:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>Login Page</title>
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->
  </head>
  
  <body>
  	<form action="" method="post" name="form">
    <table border="1" align="center">
    	<tr><td colspan="2" align="center"><h2>贵州财经大学登陆</h2></td></tr>
    	<tr><td>用户名:</td>
    		<td><input type="text" name="t1" value=""/></td></tr>
    	<tr><td>密码:</td>
    		<td><input type="password" name="t2" /></td></tr>
    	<tr><td colspan="2" align="center"><input type="submit" name="t3" value="点击试试">
    		<input type="reset" name="t4" value="取消算了"/></td></tr>
    </table>
    </form>
    <% String a = request.getParameter("t1");
    	if(a!=null) {
    		try {
        		out.print("当前用户名为:"+a);
        	}catch(NumberFormatException e) {
        		out.print("请输入用户名和密码");
        	}
    	}
    
    %>
  </body>
</html>

其中核心代码为 String a = request.getParameter(“t1”) 获取用户名。运行结果如下:

但是通常网站提交的值会传递至另一个页面显示,接下来创建一个新的页面MyJsp.jsp。

6.创建新的页面 MyJsp.jsp 显示表单提交的结果。
在WebRoot文件夹下右键新建JSP文件。

创建的文件名为MyJsp.jsp。

代码如下:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    <title>Main page</title>
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->

  </head>
  
  <body>
     <%
     	request.setCharacterEncoding("UTF-8");
    	String a = request.getParameter("t1");
    	String b = request.getParameter("t2");
    	if(a!=null) {
    		out.print("<marquee direction=left>当前用户名为:" + a +"<br />");
    		out.print("密码为:" + b + "</marquee>");
    	}
    %>
  </body>
</html>

index.jsp 核心代码如下:

MyJsp.jsp 核心代码如下:

最后的显示结果如下所示:

二. HTML注册及登录页面

最后补充三段比较好看的HTML代码供大家学习,建议大家寻找比较好的模板,然后用 MyEclipse 修改成自己的网站。

1.注册页面

<html>
<head>
<style type="text/css">
	/* 这个链接改变颜色 */
	a.one:link {color: #ff0000}
	a.one:visited {color: #0000ff}
	a.one:hover {color: #ffcc00}
</style>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>用户注册</title>
<style type="text/css">
<!--
.STYLE1 {color: #FF0000}
-->
</style>
</head>
 
<body>
<form id="form1" name="form1" method="post">
  <table width="570" border="0" align="center">
    <tr>
      <td colspan="2" align=center><H2>学生用户注册</H2></td>
    </tr>
    <tr>
      <td colspan="2" align=right><A href="index.php" class="one">返回</A></td>
    </tr>
    <tr>
      <td colspan="2"><hr width="95%" size="1" color="#FF0000"></td>
    </tr>
    <tr>
      <td  width="217"><div align="right">学号:<span class="STYLE1">*</span></div></td>
      <td width="343"><input type="text" name="number" id="number" value="" style=width:165pt; maxlength="50"/></td>
    </tr>
    <tr>
      <td><div align="right">姓名:<span class="STYLE1">*</span></div></td>
      <td><input type="text" name="name" id="name" value="" style=width:165pt; maxlength="50"/></td>
    </tr>
    <tr>
      <td><div align="right">插入文件:<span class="STYLE1">*</span></div></td>
      <td><input type="file" name="wj" id="wj" value="" style=width:165pt; maxlength="50"/></td>
    </tr>
    <tr>
      <td><div align="right">性别:<span class="STYLE1">*</span></div></td>
      <td><input type="radio" value="" name="sex"><input type="radio" value="" name="sex"> 
      </td>
    </tr>
    <tr>
      <td><div align="right">兴趣:<span class="STYLE1">*</span></div></td>
      <td>吃饭<input type="checkbox" value="吃饭" name="interest1"> 
	睡觉<input type="checkbox" value="睡觉" name="interest2"> 
	写代码<input type="checkbox" value="睡觉" name="interest3"> 
      </td>
    </tr>
    <tr>
      <td><div align="right">Email邮件:<span class="STYLE1">*</span></div></td>
      <td><input type="text" name="email" id="email" value="" style=width:165pt; maxlength="50"/></td>
    </tr>
    <tr>
      <td><div align="right">密码:<span class="STYLE1">*</span></div></td>
      <td><input type="password" name="pwd" id="pwd" value="" style=width:165pt; maxlength="50"/></td>
    </tr>
    <tr>
      <td><div align="right">确认密码:<span class="STYLE1">*</span></div></td>
      <td><input type="password" name="pwd2" id="pwd2" value="" style=width:165pt; maxlength="50"/></td>
    </tr>
    <tr>
      <td colspan="2"><hr width="95%" size="1" color="#FF0000"></td>
    </tr>
    <tr>
      <td><div align="right">学院:</div></td>
      <td><select name="zy" id="zy" value="" style=width:165pt; maxlength="50">
        <option value="软件学院">软件学院</option>
        <option value="计算机学院">计算机学院</option>
        <option value="自动化学院">自动化学院</option>
        <option value="光电学院">光电学院</option>
        <option value="车辆学院">车辆学院</option>
        <option value="信息与电子学院">信息与电子学院</option>
        <option value="机电学院">机电学院</option>
        <option value="基础教育学院">基础教育学院</option>
        <option value="其他">其他</option>
      	</select>      
      </td>
    </tr>
    <tr>
      <td><div align="right">出生日期:<span class="STYLE1">*</span></div></td>
      <td><input type="date" name="birth" id="birth" value="" 
      	style=width:165pt; maxlength="50" ></td>
    </tr>
    <tr>
      <td><div align="right">喜欢颜色:<span class="STYLE1">*</span></div></td>
      <td><input type="color" name="col" id="col" value="" 
      	style=width:165pt; maxlength="50" ></td>
    </tr>
    <tr>
      <td><p align="right">专业:</p>
      <p align="right">(单选)</p></td>
      <td><select name="subject" size="4" id="subject" value="" style=width:165pt; maxlength="50">
        <option value="软件工程">软件工程</option>
        <option value="数字媒体">数字媒体</option>
        <option value="信息安全">信息安全</option>
        <option value="数字仿真">数字仿真</option>
        <option value="移动应用开发">移动应用开发</option>
      </select></td>
    </tr>
		<tr>
      <td><div align="right">入学年月:</div></td>
      <td><select name="year" id="year" value="" style=width:165pt; maxlength="50">
        <option value="2010年">2010年</option>
        <option value="2011年">2011年</option>
        <option value="2012年">2012年</option>
        <option value="2013年">2013年</option>
        <option value="2014年">2014年</option>
        <option value="2015年">2015年</option>
        <option value="2016年">2016年</option>
        <option value="2017年">2017年</option>
        <option value="2018年">2018年</option>
      	</select>      
      </td>
    </tr>
    <tr>
      <td><div align="right"></div></td>
      <td><select name="month" id="month" value="" style=width:165pt; maxlength="50">
        <option value="1月">01月</option>
        <option value="2月">02月</option>
        <option value="3月">03月</option>
        <option value="4月">04月</option>
        <option value="5月">05月</option>
        <option value="6月">06月</option>
        <option value="7月">07月</option>
        <option value="8月">08月</option>
        <option value="9月">09月</option>
        <option value="10月">10月</option>
        <option value="11月">11月</option>
        <option value="12月">12月</option>
      	</select>      
      </td>
    </tr>
    <tr>
      <td colspan="2"><hr width="95%" size="1" color="#FF0000"></td>
    </tr>
    <tr>
      <td><div align="right">
        <input type="submit" style='font-size:15px' name="Submit" value="提交"/>
      </div></td>
      <td><div align="center">
      	<input type="reset" name="button2" style='font-size:15px' id="button2" value="重置" />
      	</div></td>
    </tr>
  </table>
</form>
</body>
</html>

运行结果如下图 所示:

2.table简单布局

<html>
	<head>
		<title>图片查看器</title>
		<script>
			function showDatu(src) {
				document.getElementById("big").src = src;
			}
		</script>
	</head>
	<body>
		<table border="1" style="table-layout:fixed" width="80%" height="80%" align="center">
			<tr>
			<td colspan=4 align="center"><img src="images/gufe_logo.png"></td>
			</tr>
			<tr>
			<td align="center"><h3><a href="#">贵财概况</a></h3></td>
			<td align="center"><h3><a href="#">组织机构</a></h3></td>
			<td align="center"><h3><a href="#">校园服务</a></h3></td>
			<td align="center"><h3><a href="#">教学教育</a></h3></td>
			</tr>
			<tr height="50%" width="60%">
			<td colspan=2 width="60%" align="center" style="padding:10px">
				<img src="images/wall1.jpg" width="70%" height="60%" id="big" />
		<br />
	<img src="images/wall_s1.jpg" width="60" height="60" onmouseover="showDatu('images/wall1.jpg')"/>
	<img src="images/wall_s2.jpg" width="60" height="60" onmouseover="showDatu('images/wall2.jpg')" />
	<img src="images/wall_s3.jpg" width="60" height="60" onmouseover="showDatu('images/wall3.jpg')" />
	<img src="images/wall_s4.jpg" width="60" height="60" onmouseover="showDatu('images/wall4.jpg')" />
			</td>
			<td>
				<a href="#">贵州财经大学数据科学精品案例库采购成交公告</a><br /><br />
				<a href="#">学报编辑部关于邀请参加学术会议的通知</a><br /><br />
				<a href="#">“强体魄、铸儒魂”2018年贵州财经大学足球赛竞赛规程</a><br /><br />
			</td>
			<td >
				<form >	
				Username: <input type="text" placeholder="请输入用户名"/><br />
				Password: <input type="password" /><br />
				<input type="submit" value="登陆"/>&nbsp;&nbsp;<input type="reset" value="取消"/>
				</form>
			</td>
			</tr>
			<tr>
			<td colspan=4 align="center">
			©2018 YXZ 京ICP证XXX号  京公网安备001号 <br /> 
			<a href="http://www.baidu.com">摆渡</a> | <a href="http://www.baidu.com">数字贵才</a>
			</td>
			</tr>
		</table>
	</body>
</html>

布局效果如下图所示:

3.登录界面

源代码下载地址:

希望文章对大家有所帮助,如果有错误或不足之处,还请海涵。最近经历的事情太多,有喜有悲,关闭了朋友圈,希望通过不断学习和写文章来忘记烦劳,将忧郁转换为动力,每周学习都记录下来。
(By:Eastmount 2018-11-11 晚上12点 https://blog.csdn.net/Eastmount/)

  • 11
    点赞
  • 48
    收藏
  • 打赏
    打赏
  • 0
    评论
JSP动态网站开发基础教程与实验指导(从基础到应用)光盘 作者:王晓军 田中雨 刘跃军 等 全书共分12章,介绍了,JSP开发环境配置,页面组成元素,内置对象,访问数据库技术,JavaBean,Servlet技术,以及开发JSP技术需要掌握的HTML基础知识。《JSP动态网站开发基础教程与实验指导》最后提供了三个综合开发案例。《JSP动态网站开发基础教程与实验指导》附有配套光盘,提供了书中实例的源代码和视频教学文件。 《JSP动态网站开发基础教程与实验指导》可以作为JSP职业培训教材和各级院校JSP授课培训教程,也适合作为JSP自学资料和参考资料。 目录: 上篇 基础篇 1 第1章 JSP概述 1 1.1 JSP简介 1 1.1.1 JSP的形成及发展 1 1.1.2 JSP的优势 2 1.2 Servlet技术 4 1.3 JSP与CGI、PHP、ASP/ASP.NET的比较 5 1.3.1 CGI技术 5 1.3.2 PHP技术 6 1.3.3 ASP/ASP.NET技术 7 1.3.4 各种Web技术性能比较 9 1.4 JSP技术架构 9 第2章 JSP开发环境 14 2.1 JDK开发工具包 14 2.1.1 JDK概述 14 2.1.2 JDK的安装与配置 15 2.2 Tomcat服务器 19 2.2.1 Tomcat概述 19 2.2.2 Tomcat的下载与安装 20 2.2.3 显示字体实例 23 2.3 安装与配置Eclipse 25 2.3.1 Eclipse简介 25 2.3.2 安装MyEclipse 26 2.3.3 Eclipse加载Tomcat 30 2.3.4 在Eclipse中创建JSP 31 2.4 JSP页面执行流程 36 2.5 扩展练习 37 第3章 JSP页面元素 40 3.1 JSP页面的构成 40 3.2 脚本元素 42 3.2.1 声明 42 3.2.2 表达式 44 3.2.3 脚本小程序 44 3.3 指令元素 48 3.3.1 page指令 48 3.3.2 include指令 51 3.3.3 taglib指令 52 3.4 动作元素 53 3.4.1 文件导入标签 54 3.4.2 页面转发标签 56 3.4.3 追加参数标签 59 3.4.4 标签 59 3.5 扩展练习 62 第4章 内置对象 65 4.1 Request请求对象 65 4.1.1 Request简介 65 4.1.2 Request对象应用 66 4.2 Response响应对象 69 4.2.1 response简介 69 4.2.2 Response对象应用 70 4.3 Out输出对象 74 4.3.1 Out简介 74 4.3.2 Out对象应用 76 4.4 PageContext对象 77 4.4.1 PageContext简介 77 4.4.2 PageContext对象应用 78 4.5 Session会话对象 79 4.5.1 Session简介 79 4.5.2 Session对象应用 80 4.6 Application对象 82 4.7 Execption对象 83 4.8 Config参数配置对象 84 4.9 Cookie对象 85 4.10 扩展练习 88 第5章 JSP访问文件 91 5.1 File类 91 5.1.1 File类函数介绍 91 5.1.2 File类常见操作 93 5.2 数据流概述 97 5.3 字节流 99 5.3.1 使用类FileInputStream读文件 99 5.3.2 使用类FileOutputStream写文件 101 5.4 字符流 102 5.4.1 使用类FileReader读文件 103 5.4.2 使用类FileWriter写文件 104 5.5 回压字符流 106 5.6 文件上传 109 5.7 文件下载 113 5.8 文件计数器 116 5.9 扩展练习 117 第6章 JSP访问数据库 121 6.1 JDBC技术概述 121 6.1.1 JDBC简介 121 6.1.2 JDBC连接方式 122 6.2 JDBC数据库操作核心类 124 6.2.1 JDBC核心类结构 124 6.2.2 驱动程序管理类:DriverManager 125 6.2.3 数据库连接类:Connection 128 6.2.4 SQL声明类:Statement 130 6.2.5 查询结果类:ResultSet 133 6.3 JDBC数据库操作实例 136 6.3.1 新建数据库元素 137 6.3.2 插入数据 138 6.3.3 显示数据 140 6.3.4 更新及删除数据 142 6.3.5 数据库分页显示 143 6.3.6 连接Access数据库 145 6.4 扩展练习 147 第7章 JavaBean技术 150 7.1 JavaBean简介 150 7.1.1 JavaBean概念 150 7.1.2 JavaBean优点 152 7.2 JavaBean开发 153 7.2.1 JavaBean规则 153 7.2.2 调用JavaBean 155 7.2.3 JavaBean作用域范围 158 7.3 设置或获取JavaBean属性 162 7.3.1 设置JavaBean属性 162 7.3.2 获取JavaBean属性 165 7.4 扩展练习 168 第8章 Servlet技术 171 8.1 Servlet简介 171 8.1.1 Servlet概述 171 8.1.2 Servlet技术特点 172 8.1.3 Servlet的生命周期 173 8.1.4 开发、部署一个简单的Servlet 174 8.2 Servlet常用接口及使用 177 8.2.1 Servlet体系 178 8.2.2 Servlet实现相关 179 8.2.3 Servlet请求和响应相关 182 8.2.4 配置相关 186 8.2.5 会话跟踪 188 8.2.6 Servlet异常相关 192 8.3 Servlet配置选项 192 8.3.1 元素及其子元素 192 8.3.2 元素及其子元素 194 8.4 用Servlet生成动态图片 195 8.5 扩展练习 198 第9章 Web基础知识 201 9.1 Web发展及HTTP协议 201 9.1.1 Web的产生与发展 201 9.1.2 HTTP协议 203 9.2 HTML标记语言 204 9.2.1 HTML基本元素 205 9.2.2 文字与段落 206 9.2.3 超链接 208 9.2.4 多媒体标记 209 9.2.5 表单标记 210 9.2.6 表格标记 213 9.3 CSS样式表 214 9.3.1 CSS概念 214 9.3.2 使用CSS 215 9.4 JavaScript脚本语言 220 9.4.1 JavaScript概述 220 9.4.2 JavaScript基本语法 222 9.4.3 JavaScript对象 226 9.4.4 JavaScript事件 228 9.4.5 JavaScript表单验证 230 9.4.6 JavaScript其他功能 231 9.5 扩展练习 232 第10章 宠物诊所系统分析 235 10.1 系统概述 235 10.1.1 需求分析 235 10.1.2 系统用例图 236 10.1.3 系统设计 239 10.2 数据库设计 240 10.3 系统功能模块设计 242 10.3.1 用户管理模块 242 10.3.2 宠物信息管理模块 243 10.3.3 客户管理模块 244 10.4 模块功能实现 245 10.4.1 通用模块及首页实现 245 10.4.2 用户管理模块 249 10.4.3 实现宠物信息查询操作 252 10.4.4 实现客户信息修改操作 257 10.4.5 实现宠物诊断信息添加操作 261 10.4.6 实现兽医信息浏览操作 265 第11章 Web图书查询系统 268 11.1 系统需求 268 11.1.1 功能需求 268 11.1.2 界面需求 269 11.2 系统概要 270 11.2.1 总体设计 270 11.2.2 模块设计和功能分配 270 11.3 数据库实现 271 11.3.1 数据库的设计 271 11.3.2 配置数据源 273 11.4 系统编码实现 274 11.4.1 查询功能实现 277 11.4.2 人员管理模块 279 11.4.3 图书管理模块 280 第12章 购物系统 284 12.1 规划系统前台 284 12.1.1 系统首页 284 12.1.2 其他页面 288 12.2 数据库设计 293 12.3 系统模块概要 295 12.3.1 配置文件web.xml 295 12.3.2 商品信息模块 296 12.3.3 商品类别模块 298 12.3.4 用户信息模块 300 12.3.5 订单管理模块 301 12.4 实现购物系统 302 下篇 实验篇 305 第1单元 305 练习1-1 创建静态注册页面 并以样式表修饰 305 练习1-2 使用JavaScript完成注册校验 306 第2单元 308 练习2-1 构建JSP环境 308 练习2-2 安装MyEclipse 309 练习2-3 在Eclipse中使用Tomcat服务器 310 第3单元 312 练习3-1 在JSP页面中静态包含文件 312 练习3-2 统计访问页面数量 312 练习3-3 求圆的面积和周长 313 练习3-4 动态加载页面并传递参数 314 第4单元 315 练习4-1 简单地验证用户登录 315 练习4-2 猜数字 316 练习4-3 创建一个简单的购物网站 319 练习4-4 简单聊天室功能 321 第5单元 324 练习5-1 显示指定扩展名的文件列表 324 练习5-2 文件内容复制 325 练习5-3 JSP页面实现用户登录 327 第6单元 330 练习6-1 修改数据库数据 330 练习6-2 模糊查询数据 331 练习6-3 使用日期字段查询数据 333 练习6-4 网上投票 334 第7单元 336 练习7-1 读文件Bean 336 练习7-2 数据库操作Bean 337 练习7-3 数据库分页Bean 340 第8单元 344 练习8-1 Servlet读取数据库记录 344 练习8-2 Servlet实现网上购物 347 练习8-3 Servlet控制案例 350 第9单元 352 练习9-1 创建用户登录页面 352 练习9-2 使用层构建网页 353 练习9-3 使用JavaScript创建计算器 354
1.编写一个JSP程序,计算1!+2!+3!+4!+5!,并显示出结果。要求先声明计算阶乘的方法,再调用该方法,最后在页面上输出结果。2.2、在JSP页面中静态包含文件。要求程序包含两个文件,主文件静态包含一个能够计算1到1000内的完数的页面。(如果一个正整数刚好等于它的真因子之和,这样的正整数为完数, 例如,6=1+2+3,因此6就是一个完数。)3.动态包含页面并传递数据。要求程序包含两个文件,主文件(actioninclude)加载次文件(redirection),并将随机产生的50~100之间的数据传递给它,并且在页面上显示两个信息:该数据和这个数据的平方根。进阶要求,把动态包含改为动态重定向,比较两者之间的区别。4.本题包括4个JSP程序,one.jsp、two.jsp、three.jsp、error.jsp。 one.jsp具体要求如下:要求one.jsp页面有一个表单,用户使用该表单可以输入一个1至100之间的整数,并提交给下一个页面;如果输入的整数在50至100之间(不包括50)就转向three.jsp,如果在1至50之间就转向two.jsp;如果输入不符合要求就转向error.jsp。要求forward标记在实现页面转向时,使用param子标记将整数传递到转向的two.jsp或three.jsp页面,将有关输入错误传递到转向的error.jsp页面 two.jsp、three.jsp和error.jsp的具体要求如下: 要求two.jsp和three.jsp能输出one.jsp传递过来的,并显示一幅图像,该图像的宽和高刚好是one.jsp页面传递过来的。error页面能显示有关抛出的错误信息。(程序中使用的图片,可自行准备)。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:书香水墨 设计师:CSDN官方博客 返回首页
评论

打赏作者

Eastmount

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值