让我一见钟情的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.变量:
对于基本类型的全局变量,若没有初始化,系统会自动初始化为该类型的初始值;而对于局部变量,则必须显示的进行初始化。
2.常量:
final int M_Max=111;
final表示只能给变量M_MAX赋值一次,赋值之后,M_MAX的值就不可以重新赋值。所赋的值可以是一个表达式,也可以是一个具体的值。
3.类常量:
static fina ......
发送email应用;
package mail;
import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;
import sun.misc.BASE64Encoder;
public class Mail {
// 定义发件人显示名称、发件人、收件人、抄送、SMTP服务器、用户名、密码、主题、内容等
private String d ......
本文介绍的JAVA规则的说明分为5个级别,级别1是最基本也是最重要的级别,在今后将陆续写出其他的规则。遵守了这些规则可以提高程序的效率、使代码有更好的可读性等。
(1) 避免使用NEW关键字来创建String对象。
把一个String常量copy到String 对象中通常是多余、浪费时间的
Public class test{
&nbs ......
本文介绍的JAVA规则的说明分为3个主要级别,本篇抛弃了平时开发中很少遇到的情况,那些用得比较少的以后再高级篇里面出现。并有六个有用的国际软件开发重要注意的有关String的问题,遵守了这些规则可以提高程序的效率、使代码又更好的可读性等。
(1) 如果有JDBC连接没有关掉的话,需要在"finally"方法中关掉
如 ......