sor_heart 2014-01-23 17:31
浏览 400
已采纳

java相关的服务器端开发是否可以抛弃基于servlet的框架了

如果用java写移动端的服务器是不是可以直接抛弃基于servlet的框架了,感觉那些框架能做的netty都可以做。而且struts等等框架还多了个无用的view。
其实就是问一下java编写移动app的服务器端可以用什么技术?

Netty肯定可以用的,好像也可以直接写servlet然后发布到j2ee容器?
感觉nodejs也可以,不过不是java语言的了。而且nodejs似乎不能处理业务逻辑非常复杂、计算很多的业务。

请指教,刚转服务器端开发的不是很明白这些。。。

  • 写回答

5条回答 默认 最新

  • jimmee 2014-01-26 17:25
    关注

    其实理解本质即可:

    1. servlet是放到http容器中运行的,也就是说,容器已经替你完成底层的工作,例如处理连接,协议解析等,这样自己可以专注于业务逻辑的处理。拿tomcat举例,tomcat底层已经tcpip,之后实现http协议,具体io的处理是bio还是nio,这些可以配置,用户只需要写servlet处理get,post等方法即可。

    2. 如果不写servlet,使用netty等框架,就等于更底层一点,netty只负责tcpip的链接的处理,提供了一个框架给你,具体的协议的制定,实现等一般自己完成,使用bio或nio等需要自己控制。

    优缺点:
    1.使用tomcat,编写servlet等的方式,优点:开发效率高,client端处理灵活,只要支持http协议即可;缺点:性能相对来说,会比较低,毕竟http传递的消息头和消息体的传输还是比较大的

    1. 使用netty,优点:性能较高,支持的协议更灵活,可以是http,可以是自定义的协议。缺点:开发效率低,对编程要求高。
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败