4.J2EE模式

这些设计模式特别关注表示层。

一、MVC模式(MVC pattern)

Model-view-Controller模式,这种模式用于应用程序的分层开发

  • Model:代表一个存取数据的对象或Java POJO。可以带有逻辑,数据变化时更新控制器。
  • View:视图代表模型包含的数据可视化。
  • Controller:控制器作用模型和视图上,他控制数据流向模型对象,并且数据变化更新视图,它使视图和模型分开。

1.创建Model—Student.java

public class Student{
	private String rollNo;
	private String name;
	public String getRollNo(){
	return rollNo;
	}
	public setRollNo(String rollNo){
		this.rollNo=rollNo;
	}
	public String getName(){
	return name;
	}
	public void setName(String name){
		this.name=name;
	}
}

2.创建View—StudentView.java

public class StudentView{
	public void printStudentDetalis(String name,String rollNo){
		System.out.println("Student:"+name+"rollNo");
	}
}

3.创建Controller—StudentController.java

public class StudentController{
	private Student model;
	private StudentView view;
	public StudentController(Student model,StudentView studentView){
		this.model=model;
		this.view=studentView;
	}
	public void setStudentName(String name){
		model.name=name;
	}
	public String getStudentName(){
		return model.name;
	}
	public String getRollNo(){
		return model.rollNo;
	}
	public void setRollNo(String rollNo){
		model.rollNo=rollNo;
	}
	public updateView(){
		view.printStudentDetails(model.getName(),model.getRollNo());
	}
}

4.使用StudentController—MVCPatternDemo.java

public class MVCPatternDemo{
	public  static void main(String[] args){
		Student model=retriveStudentFromDate();
		StudentView view=new StudentView();
		StudentController controller=new StudentController(model,view);
		controller.updateView();
		//更新数据
		controller.setStudentName("John");
		controller.updateView();
				
	}
	private static Student retriveStudentFromData(){
		Student student=new Student();
		student.setName("Robert");
		student.setRollNo("10");
		return student;
	{
}

二、业务代表模式(Business Delegate Pattern)

三、组合实体模式(Composite Entity Pattern)

四、数据访问对象模式(Data Access Object Pattern)

五、前端控制器模式(Front Controller Pattern)

六、拦截过滤器模式(Intercepting Filter Pattern)

七、服务定位器模式(Service Locator Pattern)

八、传输对象模式(Transfer Object Pattern)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值