求高手点拨一个Java“引号”的用法问题。

vaivoiv_9 2016-01-21 08:52:33
高手,您好:
今天小弟调试Struts1代码时,发现了一个很少见的代码用法,如图:

(图 0)
之后,小弟目睹了下面的代码场景:

(图1)

(图2)

(图3)
发现,每一幅图片中的代码,都有把图片0中的”AddPatientUI“,拿到下面的”图1“、”图2......中,并且,之后的”图1“,”图2“.......都把”AddPatientUI“这个方法,以”Patient.do?method=“addPatientUI”,来使用图片0中定义的方法。
小弟请教身边的朋友,初步得到的结果为:
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
“AddPatientUI方法”,他是一个承载了url名的标记符,用在引号中,是可以进行”引号“的自动拆除的。
【渡劫】JAVA-上海-大大(1085512377) 10:56:22
xx.do 是你配置的action 类名
【大乘】java-上海-Swich<miluoshaoyu@163.com> 10:56:46
href---》java 方法 返回值的mapping.findForward("")里面的东西 ---》配置文件匹配到jsp页面
【大乘】java-上海-Swich<miluoshaoyu@163.com> 10:56:57
我上次已经说过一次了
【渡劫】JAVA-上海-大大(1085512377) 10:57:18
method = XX 就是XX.do 里的方法
【元婴】机器人(1690234744) 10:57:34
又是struts1的...
【渡劫】JAVA-上海-大大(1085512377) 10:58:54
@机器人 你还知道struts1?



------------------------------------------------------------------------------
上面四个场景下,被“两个引号括起来”调用?
addPatientUI,这一组关键字,在引号把他包起来后,addPatientUI应该就变成为“一个常量”了吧?
抓住梦想 2016/1/21 12:20:56
老师,这是问题一。
12:24:54
老师/: 2016/1/21 12:24:54
这用引号的事jsp页面

老师/: 2016/1/21 12:25:23
① 这是浏览器的URL地址

老师/: 2016/1/21 12:25:34
不是java的方法或变量
12:32:38
抓住梦想 2016/1/21 12:32:38
有什么区别?
老师,您是说在Java的Struts中,遇到上面的场景,就可以直接把变量,对象名以及方法名拿来,直接把他们的值,拿出来
写到:
这样的带有引号的场合下吗?
但是,老师,学生还有一点不明:
假如上面的程序,在程序员写到“addPatientUI”的位置时,有一个String类型的变量,也是“addPatientUI”的话,那这个时刻,方法“addPatientUI”应该怎么写,才不致让程序崩盘?
您发送了一个窗口抖动。
老师/: 2016/1/21 12:33:18
这是访问的地址不是变量
老师/: 2016/1/21 12:33:53
这是你浏览器发送的请求,Struts通过这个请求找到对应的后台的方法得名称
12:36:28

不是java的方法或变量
12:32:38
抓住梦想 2016/1/21 12:32:38
有什么区别?
老师,您是说在Java的Struts中,遇到上面的场景,就可以直接把变量,对象名以及方法名拿来,直接把他们的值,拿出来写到:

这样的带有引号的场合下吗?
但是,老师,学生还有一点不明:
假如上面的程序,在程序员写到“addPatientUI”的位置时,有一个String类型的变量,也是“addPatientUI”的话,那这个时刻,方法“addPatientUI”应该怎么写,才不致让程序崩盘?

您发送了一个窗口抖动。

老师 2016/1/21 12:33:18
这是访问的地址不是变量

老师 2016/1/21 12:33:53
这是你浏览器发送的请求,Struts通过这个请求找到对应的后台的方法得名称
----------------------------------------------------------------------------------------------------
高手,如您所视,小弟的问题是:
1.为什么”AddPatientUI“方法,能够在”双引号“里面被调用?如果AddPatientUI在双引号中被引用的话,应该被作为一个字符串来为Java系统或者M有Eclipse所处理吧?
2.类似这样的语句:
   	  <form action="login.do?method=doLogin" method="post">
<div class="content">
<div class="field"><label>账 户:</label><input class="username" name="username" type="text" /></div>
<div class="field"><label>密 码:</label><input class="password" name="password" type="password" /><br /></div>
<div class="field"><label>用户类型:</label><select name="userType" style="width:140px;height:25px;"><option value="doctor">医生用户</option><option value="patient">患者用户</option><option value="manager">管理员</option> </select><br />
<%
if(errorMessage!=null){ %>
<font color="red"> <%=errorMessage %></font>
<% }
%>

</div>
<div class="btn">
<input name="" type="submit" class="login-btn" value="" />
<div>
<a href=[color=#FF0000]"patient.do?method=addPatientUI
" ><input name="" type="button" class="zhuce-btn" value="注册" /></a>
</div>
</div>
</div></form>

之后,服务器会在下图中的Struts-config窗口中进行对上面代码区域的红色地址,进行处理:

之后,再经过计算,给予浏览器用户以下一步的数据吧?[/color]
高手,小弟一共提出两个问题,全部标为了紫色,希望得到高手的认真答复!!
谢谢高手!!
...全文
290 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
piaopiao11 2016-01-22
  • 打赏
  • 举报
回复
这个是struts1 里面很常见的用法了。网上搜索一下DispatchAction,就知道了
dracularking 2016-01-22
  • 打赏
  • 举报
回复
出现这样的用法,意味着背后有一个对应的解析机制,它能解析出你在字符串中所传达给它并且要它执行的Action和方法
  • 打赏
  • 举报
回复
1、你也看到了method=addPatientUI 这个在你的struts配置中,写到了parameter="method" 就拿你的配置来说,你配置了login.do,这个映射地址对应了你的type 类,然后你类里面是doLogin方法,为什么能找到而不是当做字符串处理呢? 因为反射!! struts通过反射找到了你的这个method 2、是的,只要你配置了你的映射地址,type,和你的method, 他就能找到你的对应的class和对应的方法 ,执行method中的代码返回结果
鸣鸣Amadues 2016-01-21
  • 打赏
  • 举报
回复
url连接是一个get方法

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧