我的 JavaEE 模型视图控制器实现

发布于 2024-12-12 18:33:03 字数 643 浏览 0 评论 0原文

我想问一个关于我如何决定实现 MVC 模式的问题 对于一个简单的 javaEE 应用程序(当我说 javaEE 时,我的意思是纯 javaEE,没有任何 附加框架,例如:servlet、jsp ejbeans...)。 我的 mvc 是这样工作的:

Actors:

  • view ->一组jsp页面;
  • 控制器->单个 servlet;
  • 型号->一组包含静态方法的不可实例化的 java 类。

功能: 每个用户请求都由 servlet 管理,servlet 决定正确的请求 在模型的类之间调用的静态方法。尤其, jsps中的每个表单都包含3个隐藏字段:classToCall、methodToCall 和目的地页面。一旦 servlet 收到 http post,它就会读取 这 3 个隐藏字段并

  1. 通过反射传递 HttpRequest 作为参数调用正确类中的正确方法,
  2. 将用户转发到显示计算结果的正确 jsp。

我的主要疑问是将模型的实现视为“静态”类:因为许多 框架通常通过动态创建 bean 并调用来处理用户请求 它的实例方法,我想知道我的“静态”模型是否可以有任何 “禁忌症”。

非常感谢您的帮助,再见 尼科

I would like to ask a question on how I decided to implement the MVC pattern
for a simple javaEE application (when I say javaEE I mean pure javaEE without any
additional framework, so: servlet, jsp ejbeans...).
My mvc works in this way:

Actors:

  • view -> a set of jsp pages;
  • controller -> a single servlet;
  • model -> a set of non-instantiable java classes containing static methods.

Functioning:
each user request is managed by the servlet which decides the correct
static method to call among the classes of the model. In particular,
each form in the jsps contains 3 hidden fields: classToCall, methodToCall
and destionationPage. Once the servlet receives the http post, it reads
these 3 hidden fields and

  1. call the right method in the right class via reflection passing the HttpRequest as parameter
  2. forwards the user to the correct jsp which displays the result of the computation.

My main doubt regards the implementation of the model as "static" classes: since many
frameworks tipically handle user requests by creating a bean on the fly and calling
an instance method of it, I would like to know if my "static" model can have any
"contraindication".

Thanks a lot for your help, bye
Nico

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

睡美人的小仙女 2024-12-19 18:33:03

:) 你可以使用 jsf 2.0 集成在 javaEE6 中 :) 并且是纯 java ee :)

这里是一个概述: javaEE 6 概述

不要尝试重新发明这个.. :) jsf 2.0 也集成了 ajax :) 你只有写jsf而不是jsp...:)或者你可以同时写...jsp和jsf...但我建议你只写jsf

但是如果你想写你自己的...我不建议你使用静态函数...

  • 不能被覆盖
  • 较少模块化

你应该使用AOP和依赖注入..
你可能还想创建自己的bean工厂..并不难..我发现这很容易...你只需要为bean做一些注释来看看它是一个bean还是其他东西..或者只使用一个XML文件定义你的bean...并通过反射访问它们...

你可以在这里看到更多答案:何时不使用Java中的static关键字?

:) you can use jsf 2.0 is integrated in javaEE6 :) and is pure java ee :)

here is an overview: javaEE 6 overview

Don't try to reinvent this.. :) jsf 2.0 also has ajax integrated :) you only have to write jsf and not jsp... :) or you can write both... jsp and jsf... but I recommend you only jsf

But if you want to write your own... I do not recommend you use static functions...

  • can not be overriden
  • less modular

You should use AOP and dependecy injection..
You might also want to make your own bean factory.. is not that hard.. I find it easy ... you just have to do some annotations for beans to see if it's a bean or something.. or just use an XML file to define your beans... and with reflection access them...

You can see more answers here: When NOT to use the static keyword in Java?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文