码迷,mamicode.com
首页 > Web开发 > 详细

为上节课项目添加两个页面传值显示的功能+MVC框架学习日志

时间:2015-07-14 06:30:36      阅读:163      评论:0      收藏:0      [点我收藏+]

标签:

一、对test2的修改:

上节课的理解误区:EL表达式 ${loginName}是进行接收数据的

要求:为index页面添加一个input标记,设置type属性添加一个文本框,要求在其中输入一段文字可以在跳转后的response页面中的文本框中显示。

分析:实现这个功能的过程,就是将一个JSP页面的值先传给servlet服务器,然后再由服务器传递给跳转后的页面显示出来。

若想实现则是需要在业务逻辑中使用getParameter()方法获取index中输入的值,然后在使用setAttribute()方法来进行值的设置。servlet中修改的代码如下:

String loginadd = req.getParameter("loginadd");
req.setAttribute("loginadd",loginadd);

二、MVC框架

MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。

补充内容:(C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。

Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。
  通常模型对象负责在数据库中存取数据。

View(视图)是应用程序中处理数据显示的部分。
  通常视图是依据模型数据创建的。

Controller(控制器)是应用程序中处理用户交互的部分。
  通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。

三、实例分析(V-C-M-C-V)

项目:springMMVC

HelloWorldController.java(节选)

@Autowired	
HelloWorldService helloWorldService;
@RequestMapping(value = "/", method = RequestMethod.GET)public String index(Model model) {
return "helloWorld";   }
@RequestMapping(value = "/init", method = RequestMethod.POST)public String initLogin(UserBean userBean,Model model) {    
UserBean result=helloWorldService.searchUser(userBean);    
model.addAttribute("userBean", result);
return "login";

@Autowired  可以对成员变量、方法和构造函数进行标注,来完成自动装配的工作

@?RequestMapping是通过匹配路径URL来访问相应页面。用来处理请求地址映射的注解,可用于类或方法上。

 例如:@RequestMapping(value= "/", method = RequestMethod.GET)public String index(Model model) {
return "helloWorld";   }当IE页面请求方式是GET时,按根路径匹配,并通过return中的helloWorld跳转到helloWorld页面。然后执行后表单提交到init

@RequestMapping(value = "/init", method = RequestMethod.POST)public String initLogin(UserBean userBean,Model model) {    
UserBean result=helloWorldService.searchUser(userBean);    
model.addAttribute("userBean", result);
return "login";}

创建一个bean来设置uesrId属性的get,set方法

public class UserBean {	
private String userId;	
public String getUserId(){		
return userId;	
}
public void setUserId(String userId){
	this.userId=userId;
  }
}

 

        创建一个HelloWorldService类来给uesrId赋值为test

public class HelloWorldService {	
public UserBean searchUser(UserBean frm){	
	frm.setUserId("test");		
          return frm;
    }
}

       最后跳转login页面是显示所赋的值

  ${userBean.userId};

 

 

为上节课项目添加两个页面传值显示的功能+MVC框架学习日志

标签:

原文地址:http://my.oschina.net/u/2411768/blog/478164

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!