囝泺的博客[www.bluenuo.cn]

网盘[disk.bluenuo.cn]
随笔 - 6, 文章 - 1, 评论 - 11, 引用 - 0
数据加载中……

easyJWeb+Eclipse快速入门

        由于学习需要,需要接触网站开发方面的技术,从VB、C、C++、java……也学了不少的语言,以前做网站都用jsp、servlet、javabean,没怎么用过MVC框架,自己也接触了一些STRUTS、HIBERNATE相关的技术,最近有幸认识到国人自己的开源项目easyJWeb(下面简称ejf),很是兴奋,花了半个小时研究了下ejf的使用,单是配置是非常简单的,下面总结一下第一次接触ejf的经验,也希望更多的人加入到国人自己的开源项目中来。
        ejf的官方网站是http://www.easyjf.com,如果需要深入了解可以直接去官网查看,本文只是一个入门教程。

文/囝泺 www.bluenuo.cn


获得ejf
        首先,我们去http://www.easyjf.com/news/download.html下载一个名为easyjweb-1.0-m3.zip(目前是这个版本),下载到EasyJWeb后,我们解压这个压缩文件,会得到类似图1所示的目录结构:

                                        图1
然后找个空目录,这里我们在e:\java路径下建立ejf目录,然后把ejf的lib目录下的easyjweb-core-1.0-m3.jar以及required目录下的全部jar拷贝到刚建立的文件夹下。

 

 用eclipse+MyEclipse建立新的web工程
        
新建web工程,然后右键点击新建的工程目录,点击propertitex,选择java build path设置环境变量,把刚建立的目录下的所有jar导入path,如果2

                                                            图2
修改web.xml
为了让web应用能使用EasyJWeb框架,需要在web.xml文件中添加一个servlet,并把所有扩展名为.ejf的请求映射给该servlet来处理。EasyJWeb的Servlet定义如下:

<servlet>
      
<servlet-name>easyjf</servlet-name>
      
<servlet-class>com.easyjf.web.ActionServlet</servlet-class>
      
<load-on-startup>1</load-on-startup>
  
</servlet>
  
<servlet-mapping>
      
<servlet-name>easyjf</servlet-name>
      
<url-pattern>*.ejf</url-pattern>
  
</servlet-mapping>
为了让Java Web应用能更好的处理中文字符,还需要在web.xml中添加一个字符编辑过滤器,配置如下:
  <filter>
      
<filter-name>CharsetFilter</filter-name>
      
<filter-class>com.easyjf.web.CharsetFilter</filter-class>
      
<init-param>
          
<param-name>encoding</param-name>
          
<param-value>UTF-8</param-value>
      
</init-param>
      
<init-param>
          
<param-name>ignore</param-name>
          
<param-value>true</param-value>
      
</init-param>
  
</filter>
  
<filter-mapping>
      
<filter-name>CharsetFilter</filter-name>
      
<servlet-name>easyjf</servlet-name>
  
</filter-mapping>

 另外,为了让EasyJWeb能自动找到你的应用中的所有Action,你需要在web.xml中添加一个名为defaultActionPackages的应用上下文件参数来告诉EasyJWeb扫描哪些包。配置如下:
<context-param>
   
<param-name>defaultActionPackages</param-name>
   
<param-value>ejf</param-value>
  
</context-param>
最后,得到一个完整的web.xml文件,如下
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 
    xmlns
="http://java.sun.com/xml/ns/javaee" 
    xmlns:xsi
="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation
="http://java.sun.com/xml/ns/javaee 
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
>
    
<context-param>
   
<param-name>defaultActionPackages</param-name>
   
<param-value>ejf</param-value>
  
</context-param>
  
<welcome-file-list>
    
<welcome-file>index.jsp</welcome-file>
  
</welcome-file-list>
  
<servlet>
      
<servlet-name>easyjf</servlet-name>
      
<servlet-class>com.easyjf.web.ActionServlet</servlet-class>
      
<load-on-startup>1</load-on-startup>
  
</servlet>
  
<servlet-mapping>
      
<servlet-name>easyjf</servlet-name>
      
<url-pattern>*.ejf</url-pattern>
  
</servlet-mapping>
  
<filter>
      
<filter-name>CharsetFilter</filter-name>
      
<filter-class>com.easyjf.web.CharsetFilter</filter-class>
      
<init-param>
          
<param-name>encoding</param-name>
          
<param-value>UTF-8</param-value>
      
</init-param>
      
<init-param>
          
<param-name>ignore</param-name>
          
<param-value>true</param-value>
      
</init-param>
  
</filter>
  
<filter-mapping>
      
<filter-name>CharsetFilter</filter-name>
      
<servlet-name>easyjf</servlet-name>
  
</filter-mapping>
</web-app>
修改好后,我们把web工程放到web服务器上,这里用的是tomcat,在浏览器敲入http://localhost:8080/chytool/helloerror.ejf,因为没有这个页面,ejf将显示默认友情提示,如图3

                                            图3
第一个web页面
        下面我们建立第一个web页面,跟学习其他语言一样,我们用ejf版的helloworld作为入门,首先,我们在eclipse工程目录下建立ejf.hello.mvc包,然后新建class HelloAction.java,在ejf里面我们将这个类叫做action,源代码如下
package ejf.hello.mvc;
import java.util.Date;
import com.easyjf.web.WebForm;
import com.easyjf.web.core.AbstractPageCmdAction;
public class HelloAction extends AbstractPageCmdAction {
    
public void index(WebForm form) {
        form.addResult(
"msg""您好,这是EasyJWeb的第一个程序!");
        form.addResult(
"date"new Date());
        form.addResult(
"address""http://www.bluenuo.cn");
    }

}
接下来我们在web目录下的WEB-INF下建立如下目录架构WEB-INF\hello\view
然后建立index.html文件,文件内容如下
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  
<head>
    
<title>EasyJWeb示例程序</title>
    
    
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    
<meta http-equiv="description" content="this is my page">
    
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
    
    
<!--<link rel="stylesheet" type="text/css" href="./styles.css">-->

  
</head>
  
  
<body>
    
<div><h4>EasyJWeb版本的HelloWorld程序</h4></div>
    
<div>
    来自EasyJWeb的问候:
<font color="#0000FF">${msg}</font><br>
    现在时间:
<font color="#0000FF">${date}</font><br>
    我的主页是:
<href="${address}">${address}</a>
    
</div>
  
</body>
</html>

整个目录结构如图4所示

        图4
然后导入web服务器目录,在浏览器敲入地址http://localhost:8080/chytool/hello.ejf
效果如图5所示

                                                图5
怎么样?easyJWeb就是这么简单,使用过struts的一定感受得到ejf是多么的容易上手
希望笔者的介绍已经把你领进ejf的大门,至于更深层的开发跟应用,还需要我们自己探讨



囝泺,深圳康拓普信息技术有限公司
您可以通过其博客了解更多信息和文章:http://www.bluenuo.cn

posted on 2008-01-29 19:26 囝泺 阅读(3217) 评论(6)  编辑  收藏 所属分类: easyJWeb使用

评论

# re: easyJWeb+Eclipse快速入门[未登录]  回复  更多评论   

不错,学习!
2008-01-30 09:56 | java

# re: easyJWeb+Eclipse快速入门  回复  更多评论   

很明显的托!
2008-01-30 20:35 | re

# re: easyJWeb+Eclipse快速入门  回复  更多评论   

垃圾……
2008-02-23 23:53 | history

# re: easyJWeb+Eclipse快速入门  回复  更多评论   

用 easyjweb project命令生成的工程导入到eclipse后继续写程序,你试过没有?我遇到了一个问题。
2008-08-30 18:18 | 开机

# WebForm form[未登录]  回复  更多评论   

用Action中的WebForm form(String userName=(String)form.get("userName"))应该得到中文啊 为什么是乱码 我也在web.xml中配置了 <filter>
2012-06-20 17:49 | 小菜

# re: easyJWeb+Eclipse快速入门  回复  更多评论   

有很大帮助,谢谢!
2013-03-29 10:31 | sdwflzg

只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问