让我一见钟情的java web mvc 框架:Vraptor3
前段时间公司开始用SSH框架,因为以前没有用过,下个几个demo看看,发现想理解Structs2的流程真是困难;后来又想整合Ext进行界面开发,上网找资料,发现用Structs整合Ajax还真是麻烦,不仅前台要做修改,后台还要改配置文件以及action类,真不知道这样的东西做完了该怎么样去维护!继续在网上找终于被我发现了Vraptor,该框架不仅使用方便,而且代码层次简单,易于程序员理解和扩展。现将Structs与Vraptor对比如下:
功能
Structs2
Vraptor3
请求路径与方法映射
要写Structs的配置文件
采用“约定优于配置”原则自动映射,也可通过注解进行指定
请求参数的映射
需要在Controller里设置每一个参数的属性,还要整一堆get/set
直接映射到方法的参数类的属性中
请求参数验证
想要验证个字段不仅要改类文件、还要添加配置文件、页面还要使用Structs的标签
内置可扩展验证类、Harbernate验证,验证失败后自动将错误信息放入requestscope中
view的调用
要在配置文件中配置对应方法的Result
根据规则映射、也可在java代码中通过注入Result对象进行自定义的页面调用
ajax支持
要改页面文件、配置文件、java类一大堆工作
只需简单修改request的head属性或是添加_format属性,通过约定的jsp页面用户可方便的定制返回字符串; 或者使用Result对象将所需要的类转为json或是xml串
整合Spring
需要在Structs的配置文件中进行配置
默认采用Spring核心IOC容器,什么都不需要做
相关文档:
1 列举 10个java语言的优势
免费,开源,跨平台,简单易用,功能完善,面向对象,健壮性,多线程,结构中立,
企业应用的成熟平台,无线应用。
2 列举java中 10个面向对象编程的术语
包,类,实例,封装,继承,多态,重载,重写,对 ......
1.变量:
对于基本类型的全局变量,若没有初始化,系统会自动初始化为该类型的初始值;而对于局部变量,则必须显示的进行初始化。
2.常量:
final int M_Max=111;
final表示只能给变量M_MAX赋值一次,赋值之后,M_MAX的值就不可以重新赋值。所赋的值可以是一个表达式,也可以是一个具体的值。
3.类常量:
static fina ......
在客户/服务器通信模式中,客户端主动创建与服务器连接的Socket,服务器收到客户端的连接请求,也创建了与客户端连接的Socket。
客户端主动创建Socket时候,需要做下面一些事情:
1. 构造Socket.
2. 设定等待建立连接的超时时间
&nb ......
Java可以直接调用Linux命令,形式如下:
Runtime.getRuntime().exec(command)
举例:运行ls,top命令可以这样:
Runtime.getRuntime().exec("ls");
但是这样执行时没有任何输出,原因:
调用Runtime.exec方法将产生一个本地的进程,并返回一个Process子类的实例,
(注意:Runtim ......
Java Web开发中,有许多共通的问题,是开发人员在开发过程中一定会遇到的,需要处理的问题:
1. 乱码问题
为何会出现乱码问题?既然有乱码问题,肯定是由于编码设置的不一致导致的。在Web开发
过程中,涉及以下一些编码设置,客户端参数的编码设置,Web服务器的编码设置,服务器端应用程序的编码设置,数据库 ......