Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Web applications 我应该选择哪个web框架?_Web Applications - Fatal编程技术网

Web applications 我应该选择哪个web框架?

Web applications 我应该选择哪个web框架?,web-applications,Web Applications,我是一名java开发人员。我想自己开发一个网站。我想选择一个快速web应用程序框架。我有一些spring mvc的经验。现在我想知道我是否应该选择另一个web框架。以下是我想要的清单: 快速发展 易于保护 易于验证 易于与数据库通信(mysql或 (NoSql) 我听说过ruby、python、groovy和scala。我应该把这些纳入我的选择吗?这些需要多少额外的努力?我应该在这些方面投入时间还是留在Java世界?请给我一些建议 非常感谢。如果您正在进行web开发,那么您很可能了解JavaSc

我是一名java开发人员。我想自己开发一个网站。我想选择一个快速web应用程序框架。我有一些spring mvc的经验。现在我想知道我是否应该选择另一个web框架。以下是我想要的清单:

  • 快速发展
  • 易于保护
  • 易于验证
  • 易于与数据库通信(mysql或 (NoSql)
  • 我听说过ruby、python、groovy和scala。我应该把这些纳入我的选择吗?这些需要多少额外的努力?我应该在这些方面投入时间还是留在Java世界?请给我一些建议


    非常感谢。

    如果您正在进行web开发,那么您很可能了解JavaScript。因此,如果您对新的框架持开放态度,您可以看看。很难打败它的简单性:

    var app = express.createServer();
    
    app.get('/', function (req, res) {
        res.send('Hello World');
    });
    
    app.listen(3000);
    
    …您在端口3000上有一个web服务器,向访问者说“Hello World”

    Express是一个web开发框架。您使用JavaScript编写,不需要任何像Apache之类的web服务器——Node是一个web服务器。

    。它与您的经验相匹配,并自称为一个快速开发框架。它使用您熟悉的技术(Spring、Hibernate)。Grails代码是用groovy编写的,Java开发人员在开始使用groovy时应该没有问题。如果遇到麻烦,您可以求助于java。Grails有一组丰富的插件,可以处理非常常见的项目,如身份验证、排队等。当需要部署应用程序时,您可以部署WAR/EAR。简而言之,Grails满足您的所有标准

    1) Grails减少了配置——它是由“约定优先于配置”驱动的,因此如果您遵循约定,那么代码将由框架为您绑定在一起。
    2) 有许多安全插件,其中一个基于spring security。
    3) 我不知道你是什么意思,但如果你是指我认为你的意思,你可以在模型对象上设置约束来验证数据。此外,grails还有一个单元/集成测试机制。
    4) 默认情况下,Grails域对象映射到数据库表。Grails在封面下使用hibernate。您可以在域类中自定义db模式——如果熟悉hibernate,您会做得很好


    因此,基本上,您可以在一个框架中获得经过验证的java技术的所有好处,从而使您能够更快地学习。

    如果您同时喜欢一种语言学习体验,您可以尝试Scala Lift。Scala是一种可伸缩语言,将在Java JVM上运行。Lift是一个非常容易编码的框架,它只需很少的努力就可以为您提供大量的功能


    如果你有时间,很值得一看。

    如果你愿意考虑Python(听起来像你),你应该检查一下。< /P>

  • 它的主要目标是
  • 更多关于安全和安全的信息
  • 如果您所说的“易于验证”是指输入/表单验证,那么它有一个很好的用途
  • 为了方便和可移植的数据库通信,它有一个可与SQLite、PostgreSQL、MySQL、Oracle、MSSQL、FireBird、DB2、Informix、Ingres和Google App Engine(即BigTable)配合使用的数据库,以及对CouchDB的部分支持
  • 安装和试用非常简单--只需解压缩并运行它。它不需要安装或配置,没有依赖性(二进制发行版甚至包括它自己的Python解释器),并且包括一个支持SSL的web服务器、一个关系数据库、一个脚手架应用程序和一个基于web的IDE/管理接口,以及一个错误记录和票务系统。它是一个集成良好的全栈框架,具有许多特性,包括缓存、会话管理、国际化、身份验证和基于角色的访问控制、web服务、Ajax等

    我对SpringMVC不太熟悉,但我认为您会发现web2py没有那么冗长。例如,请参见--下面是web2py中的等效代码(实际上,web2py代码添加了字段验证、JS日期选择器和图像上载):


    flask也是模块化的,可以根据需要启动basic并添加扩展


    希望这有帮助

    谢谢,实际上我对Grails有一些经验,我曾尝试使用Grails实现一个网站,但说实话,我没有爱上Grails,几个月后我就放弃了。我认为grails社区并不活跃,groovy也不活跃。我就是这么想的。哦,听起来很有趣。但我担心Node Express构建的网站会上线并面向现实世界。我曾经尝试学习Scala。因为成千上万的人说Scala将取代java。但对我来说这听起来很困难。我找不到一个好的IDE。我愿意尝试一下。希望不是很难。我认为web2py是最简单的。你会发现这很有帮助,如果你有任何问题,这里有一个非常友好和反应迅速的网站。
    from gluon.tools import Crud
    db=DAL('sqlite://storage.sqlite')
    crud=Crud(globals(), db)
    
    db.define_table('person',
        Field('name', required=true'),
        Field('birthdate', 'datetime'),
        Field('address', 'text'),
        Field('image', 'upload'))
    
    def index():
         db.person.id.represent=lambda id: A('view', _href=URL('show', args=id))
         return dict(people=db(db.person).select(),
                     new=A('new contact', _href=URL('edit')))
    def edit():
         row=db.person(request.args(0))
         return dict(form=crud.update(db.person, row, next='show/[id]')
    
    def show():
         row=db.person(request.args(0)) or redirect(URL('index'))
         return dict(form=crud.read(db.person, row),
                     link=A('edit', _href=URL('edit', args=row.id)))