MVC

本文详细探讨了MVC模式在开发基于MVC模式的应用程序中的关键概念和实践,包括两种路径名称获取方式、自定义MVC框架实现及行动获取页面请求并调用模型、返回视图字符串的过程。通过实例演示,提供了紧凑且推荐使用的路径名称获取方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、概述

095729_awBH_2320342.png

095805_Z5r2_2320342.png

2、Model 1 和 Model 11

100234_8ye7_2320342.png

100412_0BWt_2320342.png100319_f9nt_2320342.png

100719_7PTV_2320342.png

100830_dpzn_2320342.png

100929_Af4R_2320342.jpeg

 101429_2YC4_2320342.jpeg

101549_63O0_2320342.jpeg

101842_zARV_2320342.jpeg

102126_lW1H_2320342.jpeg

 3、MVC模式

102829_IuP5_2320342.jpeg

103241_s0mo_2320342.png

 104800_p1VY_2320342.png

105003_QA5T_2320342.png

105038_hh65_2320342.png

105119_bXJb_2320342.png

105216_nRRN_2320342.png

105255_s80M_2320342.png

 105601_wmKk_2320342.png

4、开发基于MVC模式的应用程序

105855_KOXM_2320342.png

 110035_sVDm_2320342.png

110302_CYz7_2320342.jpeg

110403_Qaud_2320342.png

110446_6LrL_2320342.png

 135145_8bJW_2320342.jpeg

 135747_umlr_2320342.png

140012_ROTd_2320342.png

140151_5h1o_2320342.png

140442_6XXh_2320342.png

 140840_AItU_2320342.png

141700_812O_2320342.jpg

 142248_6yqZ_2320342.png

142447_5aYo_2320342.png

142615_MD0E_2320342.png

转发:

 143646_4fp4_2320342.png

143752_22Vl_2320342.png

重定向:

143911_53FR_2320342.png

 144023_fht6_2320342.png

144117_vwZ1_2320342.png

144208_Klkf_2320342.png

144314_JKhM_2320342.png

144359_AQGI_2320342.png

144452_lcrr_2320342.png

144933_wLxS_2320342.jpeg

 5、自定义MVC框架的实现

 145325_ES7a_2320342.png

145627_rJqi_2320342.jpeg

 145956_F3qn_2320342.png

150027_bMxE_2320342.png150105_yX5z_2320342.png150209_PglW_2320342.png150251_rtDk_2320342.png150334_tR0i_2320342.png150412_K5HN_2320342.png

 150654_vm7V_2320342.png

150806_NAQM_2320342.png

150849_66R7_2320342.png

150935_GFgr_2320342.png

151017_tsCR_2320342.png

 151757_6c4r_2320342.png

151850_Xzmn_2320342.png

151926_PwS9_2320342.png

 152203_brvU_2320342.png

152248_NtLt_2320342.png

152342_CsAs_2320342.png

152941_35vT_2320342.png

153123_Ck2u_2320342.png

153226_bxWt_2320342.png

153320_jgLz_2320342.png

 152710_r7Gy_2320342.png

152752_bKCc_2320342.png

 153835_FO4h_2320342.jpeg

154007_ljRk_2320342.png

 154610_aIHG_2320342.png

155609_6voU_2320342.png

 160522_bZWf_2320342.png

两种取路径名称的方式:

事例:http://localhost:8181/news/jsp/dispose.jsp

String uri = request.getRequestURI();
 System.out.println(uri);
 String contextPath = request.getContextPath();
 System.out.println(contextPath);
 String contextPathAfter = uri.substring(contextPath.length());
 System.out.println(contextPathAfter);
 String realName = contextPathAfter.substring(1, contextPathAfter.lastIndexOf(".")).trim();
 System.out.println(realName);

执行结果:

/news/jsp/dispose.jsp
/news
/jsp/dispose.jsp
jsp/dispose

注:不太理想,倒可以学学。

String uri = request.getRequestURI(); 
String name = new File(uri).getName();
 System.out.println(name);
 String actionName = name.substring(0, name.lastIndexOf(".")).trim();
 System.out.println(actionName);

执行结果:

dispose.jsp
dispose
注:紧凑,推荐使用

160923_EB4O_2320342.png

 200434_YLJw_2320342.png

200839_HWCV_2320342.png

200923_FXHR_2320342.png

注:action获取页面请求,并调用模型,返回要跳转的视图的字符串。

getAction()方法,根据页面请求的uri决定实例化哪个action,返回action对象。

doGet()方法,根据实例化的action,调用action的execute()方法,获取返回的的视图字符串,跳转相应页面。

 082348_JGUB_2320342.png

082433_wJZD_2320342.png

小结:

082704_bpSO_2320342.png

 

 

转载于:https://my.oschina.net/u/2320342/blog/412113

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值