JFinal学习06 控制器——getPara()接收数据

JFinal学习06 控制器——getPara()接收数据

视频来源https://www.bilibili.com/video/BV1Bt411H7J9/?spm_id_from=333.337.search-card.all.click

文章目录

  • JFinal学习06 控制器——getPara()接收数据
    • `零、JFinal数据提交的三种方式`
    • `一、get提交`
    • `二、post提交`
    • `三、url参数化提交`
    • `四、getPara()方法总结`

零、JFinal数据提交的三种方式

  • 普通的http get提交
  • 普通的http post提交
  • JFinal独有的url参数化提交

一、get提交

在路由之后加 ? ,然后通过键值对的方式提交参数,多个参数通过 & 连接 \color {blue} {在路由之后加?,然后通过键值对的方式提交参数,多个参数通过\&连接} 在路由之后加?,然后通过键值对的方式提交参数,多个参数通过&连接

h t t p : / / 127.0.0.1 : 8080 / ? k e y 1 = v 1 & k e y 2 = v 2 \color {orange} {http://127.0.0.1:8080/?key1=v1 \&key2=v2} http://127.0.0.1:8080/?key1=v1&key2=v2

在Controller中获取get方式提交的参数:
getPara()

Eclipse console输出:
在这里插入图片描述

插曲:
如果在DemoConfig类中设置 me.setReportAfterInvocation(false);
则可以先输出JFinal action report,后输出Java程序的输出结果:如下
在这里插入图片描述


二、post提交

通过表单 f o r m 方式提交参数,通过 g e t P a r a ( " k e y " ) 获取参数值 \color {blue} {通过表单form方式提交参数,通过getPara("key")获取参数值} 通过表单form方式提交参数,通过getPara("key")获取参数值

    	<div class="form-group"><input type="text" class="form-control" name="title" placeholder="标题"></div>
  • 上例中,可以通过getPara("titel")获得该控件提交的参数值
  • POST方式只能通过表单实现

准备工作

在WebRoot下创建一个index2.html页面:
在IndexController.java中向前端render它:

index2.html

<!DOCTYPE html>
<html>
<head><meta charset='utf-8'><meta http-equiv='X-UA-Compatible' content='IE=edge'><title>getPara接收数据演示 POST</title><meta name='viewport' content='width=device-width, initial-scale=1'>
</head>
<body><form action="/" method="post"><div class="box-body"><div class="form-group"><input type="text" class="form-control" name="title" placeholder="标题"></div><div class="form-group"><input type="text" class="form-control" name="subtitle" placeholder="副标题"></div><div><textarea class="textarea" name="content" placeholder="文章内容" ></textarea></div></div><div class="box-footer clearfix"><button type="submit" class="pull-right btn btn-default" id="sendEmail">保存</button></div></form>
</body>
</html>

在这里插入图片描述

IndexController.java

获取参数值: \color {blue} {获取参数值:} 获取参数值:

	public void index() {	// POST 表单 提交参数String titie = getPara("title", "这是设置的默认标题");String subtitle = getPara("subtitle");String content = getPara("content");System.out.println("titie == " + titie);System.out.println("subtitle == " + subtitle);System.out.println("content == " + content);//		render("/index.html");render("/index2.html");}

验证

  • 输入参数,点击“保存”提交参数:

在这里插入图片描述

  • 可以 设置默认的参数返回值
String titie = getPara("title", "这是设置的默认标题");

如果前端未提交任何参数,则title的参数值为自己设置的默认参数值,其他两个参数为null:


三、url参数化提交

在 u r l 里的最后一个 a c t i o n 后 / 后的参数,可以指定分隔符,默认分隔符为 − \color {blue} {在url里的最后一个action后/后的参数,可以指定分隔符,默认分隔符为-} url里的最后一个action/后的参数,可以指定分隔符,默认分隔符为

h t t p : / / 127.0.0.1 : 8080 / j p r e s s − a a a − 张三 \color {orange} {http://127.0.0.1:8080/jpress-aaa-张三} http://127.0.0.1:8080/jpressaaa张三

  • 一共3个参数
  • 可以通过getPara() 无形参 ===》 获取所有的参数 e.g.:jpress-aaa-张三
  • 可以通过getPara(1) int类型的形参 ===》 获取指定下标处的参数 e.g.:aaa

在IndexController.java类中定义jpress()方法:

	public void jpress() {System.out.println("xxxxx");renderText("jpress() function is called.");}

路由 http://127.0.0.1:8080/jpress 则调用jpress()方法:

在这里插入图片描述

如果在Controller中定义jpress()方法,则默认会调用index()方法:

此时jpress为参数
在这里插入图片描述


可以接收多个参数:用分隔符隔开

在后台获得前端 u r l 中的参数 : \color {blue} {在后台获得前端url中的参数:} 在后台获得前端url中的参数:

	public void index() {	String para = getPara();System.out.println("para == " + para);// 默认URL参数分隔符是 -System.out.println("para1 == " + getPara(0));System.out.println("para2 == " + getPara(1));System.out.println("para3 == " + getPara(2));System.out.println("para3 == " + URLDecoder.decode("%E5%BC%A0%E4%B8%89"));render("/index.html");}

在这里插入图片描述


四、getPara()方法总结

在这里插入图片描述

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

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

相关文章

【设计模式之外观模式 -- C++】

外观模式 – 统一接口&#xff0c;简化调用 外观模式&#xff08;Facade Pattern&#xff09;是一种常用的软件设计模式&#xff0c;它为子系统中的一组接口提供了一个统一的高层接口&#xff0c;使得子系统更易于使用。外观模式定义了一个高层接口&#xff0c;这个接口使得这…

北航数据结构与程序设计第五次作业选填题复习

选填题考的很多都是基础概念&#xff0c;对于巩固复习一些仡佬拐角的知识点是很有用的。非北航学生也可以来看看这些题&#xff0c;这一节主要是树方面的习题&#xff1a; 一、 我们首先需要知道一个公式 这是证明&#xff1a; 知道了这个公式&#xff0c;我们把题目中的数据…

猫头虎分享:2024应届生择业在大模型和智能机器人之间该如何选择?

猫头虎分享&#xff1a;2024应届生择业在大模型和智能机器人之间该如何选择&#xff1f; 博主猫头虎的技术世界 &#x1f31f; 欢迎来到猫头虎的博客 — 探索技术的无限可能&#xff01; 专栏链接&#xff1a; &#x1f517; 精选专栏&#xff1a; 《面试题大全》 — 面试准备的…

wallless ios

登陆官网 wallless 然后跟着使用文档就可以了&#xff0c;主要得买一个账号&#xff0c;之后就可以一键导入自己已经买了的节点信息了。

B树与B+树与Mysql innodb的B+树和其相关索引

文章目录 前言B树与B树与Mysql innodb的B树和其相关索引1. B树2. B树3. Mysql上的Innodb 的B树4. 基于 innodb的B树说索引5. mysql中的数据类型转换需要注意哪些事项 前言 如果您觉得有用的话&#xff0c;记得给博主点个赞&#xff0c;评论&#xff0c;收藏一键三连啊&#xff…

如何在Bing搜索进行广告推广?2024年必应广告投放怎么做?【附开户攻略】

必应&#xff08;Bing&#xff09;作为全球领先的搜索引擎之一&#xff0c;拥有一个独特且庞大的用户群体&#xff0c;尤其在美国和欧洲市场&#xff0c;很多用户选择必应作为他们的主要搜索引擎。通过必应广告&#xff0c;企业可以触达那些在其他搜索引擎上难以接触到的潜在客…

自定义打印外观

以下示例代码演示了如何将打印外观和背景颜色自定义应用于网格控件中的偶数行。 gridView1.OptionsPrint.UsePrintStyles true; // Enable the AppearancePrint.EvenRow propertys settings. gridView1.OptionsPrint.EnableAppearanceEvenRow true; // Set the background c…

【机器学习】基于3D CNN通过CT图像分类预测肺炎

1. 引言 1.1. 研究背景 在医学诊断中&#xff0c;医生通过分析CT影像来预测疾病时&#xff0c;面临一些挑战和局限性&#xff1a; 图像信息的广度与复杂性&#xff1a; CT扫描生成的大量图像对医生来说既是信息的宝库也是处理上的负担。每组CT数据可能包含数百张切片&#xf…

【Excel技巧】Excel打开密码的两种设置方法!

excel文件打开密码可以再打开文件时输入密码查看文件内容&#xff0c;这样就可以保护文件内容不被任何人查看了&#xff0c;今天分享excel打开密码的两种设置方法给大家。 方法一&#xff1a; 点击excel中的【文件】功能&#xff0c;找到【信息】-【保护工作表】-【用密码进行…

Spring6

一 概述 1.1、Spring是什么&#xff1f; Spring 是一款主流的 Java EE 轻量级开源框架 &#xff0c;Spring 由“Spring 之父”Rod Johnson 提出并创立&#xff0c;其目的是用于简化 Java 企业级应用的开发难度和开发周期。Spring的用途不仅限于服务器端的开发。从简单性、可测…

2024年计算机相关专业是否还值得选择

目录 1.概述 1.1.就业前景 1.2.个人兴趣与能力 1.3.专业发展与趋势 1.4.市场饱和度与竞争 1.5.建议与展望 2.行业竞争现状 2.1.行业饱和度 2.2.新兴技术的影响 2.3.人才需求的变化 2.4.行业内的创新动态 2.5.保持从业者的竞争力 2.6.小结 3.专业与个人的匹配度判断…

高光谱成像光源 实现对细微色差的分类--51camera

光源在机器视觉中的重要性不容小觑&#xff0c;它直接影响到图像的质量&#xff0c;进而影响整个系统的性能。然而自然光LED光源不能完全满足实际需求&#xff0c;比如对细微的色差进行分类&#xff0c;我们就需要考虑红外高光谱光源。 所谓高光谱成像&#xff0c;是指使用具有…

【数学建模】微分方程的数值求解

微分方程的数值求解 一阶差分求解微分方程原理:四阶龙格-库塔方法应用:小船渡河问题: 进阶求二阶微分方程 一阶差分求解微分方程原理: d y d x f ( x n , y n ) \dfrac{dy}{dx}f(x_n,y_n) dxdy​f(xn​,yn​) y n 1 − y n x n 1 − x n f ( x n , y n ) \dfrac{y_{n1}-y_n…

git多账号使用报错:You don‘t have permissions to push to “xxx/xxxx“ onGitHub. Would

git多账号使用报错&#xff1a;You don’t have permissions to push to “xxx/xxxx” onGitHub. Would 有的时候我们有两个甚至多个git账号&#xff08;公司的git账号和自己的github&#xff09;&#xff0c;为了不混淆提交&#xff0c;我们需要在提交之前查看自己的git账号必…

9_1 Linux 网络管理

9_1 Linux 网络管理 文章目录 9_1 Linux 网络管理[toc]1. 构建yum仓库2. 配置主机名3. 配置网络参数之IP地址与子网掩码、网关地址3.1 修改网卡命名规则&#xff08;eth0&#xff0c;eth1&#xff0c;eth2&#xff09;3.2 配置地址3.2.1 nmcli3.2.2 配置文件修改IP地址、子网掩…

渗透测试之内核安全系列课程:Rootkit技术初探(五)

今天&#xff0c;我们来讲一下内核安全&#xff01; 本文章仅提供学习&#xff0c;切勿将其用于不法手段&#xff01; 目前&#xff0c;在渗透测试领域&#xff0c;主要分为了两个发展方向&#xff0c;分别为Web攻防领域和PWN&#xff08;二进制安全&#xff09;攻防领域。在…

人工智能对聊天机器人训练数据的“淘金热”可能会耗尽人类编写的文本

人工智能对聊天机器人训练数据的“淘金热”可能会耗尽人类编写的文本 像ChatGPT这样的人工智能系统可能很快就会耗尽让它们变得更聪明的东西——人们在网上写下和分享的数万亿字。 Epoch AI研究集团发布的一项新研究预计&#xff0c;科技公司将在大约十年之交——2026年至203…

Linux快速保存文件的快捷键:w和快速保存并退出ZZ

在Linux中&#xff0c;使用vi或Vim编辑器时&#xff0c;保存文件的快捷键主要是:w。以下是关于vi/Vim编辑器中保存操作的详细快捷键和说明&#xff1a; 1、保存文件 :w &#xff1a;这是最常用的保存命令。在命令模式下&#xff08;按Esc键进入&#xff09;&#xff0c;输入:…

【Linux】ls命令

这个命令主要是用于显示指定工作目录下之内容&#xff08;列出目前工作目录所含的文件及子目录)。 掌握几个重点的常使用的就可以&#xff1a; ls -l # 以长格式显示当前目录中的文件和目录 ls -a # 显示当前目录中的所有文件和目录&am…

Go使用https

一、服务端 1. 生成私钥和证书 安装OpenSSL windows安装OpenSSL生成CA证书创建证书 以上两个步骤&#xff0c;参考&#xff1a;Go http2 和 h2c 2. 代码 package mainimport ("log""net/http""time""golang.org/x/net/http2" )co…