既然有了模型,那如何为这些模型赋予相关的属性呢?从案例出发,
接受参数的模型,最重要的属性,当然是 接受怎样的参数了,然后这些参数应该定义为怎样的类型了。
可以这样设计这个模型:
接受参数模型{
参数列表{参数名、参数类型;参数名、参数类型;.....}
}
那执行逻辑模型呢?在这个案例里面,执行的逻辑是,把接收到的用户名和密码拿出来,然后去查询数据库表,再返回结果,
如果按照我们写代码的习惯,会把这个过程独立成为一个方法,然后用户名和密码就是输入的参数,而查询的结果,我们可能使用int来返回,
返回1,就代表是有,如果返回 0 就代表没有(当然,你使用布尔类型也可以,这个不影响模型的抽取)。
那么这个模型可以设计如下:
执行逻辑的模型{
输入参数{参数名、参数类型;参数名、参数类型;.....}
返回参数{参数类型}
}
这样一看,貌似是缺乏些什么?那我所要执行的真正逻辑在哪表示了?还没有包含啊?对的,缺乏这个,那在这个模型里面,如何表示?嗯,要不,我们先从一个简单的角度去考虑:
假如你已经有一个登陆方法了,你只需要传入用户名和密码,就能返回1表单有该用户,0代表没有。那么以上的模型就可以表示如下:
执行逻辑的模型{
输入参数{参数名、参数类型;参数名、参数类型;.....}
返回参数{参数类型}
执行的方法 //什么包下什么类什么方法
}
返回结果模型呢:
返回结果模型,这里根据不同的结果返回不同的jsp页面,不妨,我们就用一个jsp模型,来代表返回结果的模型
如果我们写java代码,一般都是这样写:
结果不同就forward不同的页面
然后在forward页面前,我们可能要将一些要输出到jsp页面的变量设置的到request中的Attribute中去,例如,如果我们这个案例中,如果没有该用户的话,返回的是登陆页面,
我们需要在登陆页面中显示“你输入的用户名或者密码有误”,这样一个反馈信息给用户知道。
所以,我们的返回模型、也就是jsp模型可以这样设计:
返回结果模型(jsp模型){
返回参数{参数名、参数名....} //可能是返回多个
jsp页面的路径 //需要转向的jsp页面路径
}
有了模型后,那该如何生成代码?模型只不过是描绘这一个请求处理过程的细分单元罢了,嗯,那怎样生成代码呢?
模型怎样去描绘这个请求处理过程呢?
这里需要一个编辑器,然后在这个编辑器上面使用模型来描绘这个过程。例如,如下的登陆截图