一 、简单 easyjweb 项目

1. 创建一个web 项目 , 将easyjweb-corejar 包 和required 包下的所有jar 包拷到项目下。

2.写一个 action  ..

package com.action;

/*
* 要求:
* 1.默认hello和 views 中的包名一致(),否则找不到模板。不一致是可以配置 返回值new Page
* 2.方法名 为 index或者init为默认访问方法名,参数 webForm 访问方式 hello.ejf?cmd=index
* 3.继承AbstractPageCmdAction 或者实现IWebAction
* 4. 如果不return , 方法名 和 html 页面名是一致的
*/ import java.text.SimpleDateFormat;
import java.util.Date; import com.easyjf.web.IWebAction;
import com.easyjf.web.Module;
import com.easyjf.web.Page;
import com.easyjf.web.WebForm;
import com.easyjf.web.core.AbstractPageCmdAction; public class HelloAction extends AbstractPageCmdAction{//hello1 必须和 views 中的包名一致,否则找不到模板
public Page index(WebForm form){//方法名 为 index
form.addResult("msg", "你好,这是第一个easyjweb 项目");
SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd");
form.addResult("date",df.format(new Date()));
return new Page("/hello1/index.html");
}
}
/*public class HelloAction implements IWebAction{
@Override
public Page execute(WebForm form, Module module) throws Exception {
form.addResult("msg", "你好,这是第一个easyjweb 项目");
form.addResult("date",new Date());
return new Page("/hello/index.html");
}
}*/

3. index.html默认放到 /WEB-INF/views/hello (因为默认要和 helloAction 对应),也可以为action 指定跳转

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>Insert title here</title>
</head>
<body>
<div>来自easyjweb 的问候: <font color="red">${msg}</font></div>
<div>时间是 ${date}</div>
</body>
</html>

4 web.xml 配置

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>EasyWeb</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<context-param>
<param-name>defaultActionPackages</param-name>
<param-value>com.action</param-value> action 所在路径
</context-param>
<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>
<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>

部署启动tomcat 访问   http://localhost:8080/helloworld/hello.ejf

二 、 ejs  easyjweb+jpa+spring

1. 创建一个 实体类  Customer.java

注意package

package myapp.domain;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import com.easyjf.container.annonation.Field;
@Entity
public class Customer {
@Id
@GeneratedValue(strategy=GenerationType.TABLE)
private Long id;
@Field(name="姓名")
private String name;
@Field(name="联系人")
private String linkName;
@Field(name="工号")
private String contractNo;
@Field(name="地址")
private String address;
@Field(name="邮箱")
private String email;
@Field(name="主页")
private String homepage;
@Field(name="个人简介")
private String intro;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getLinkName() {
return linkName;
}
public void setLinkName(String linkName) {
this.linkName = linkName;
}
public String getContractNo() {
return contractNo;
}
public void setContractNo(String contractNo) {
this.contractNo = contractNo;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getHomepage() {
return homepage;
}
public void setHomepage(String homepage) {
this.homepage = homepage;
}
public String getIntro() {
return intro;
}
public void setIntro(String intro) {
this.intro = intro;
} }

2.  命令行进入 easyjweb  的bin 目录 执行easyjweb project e:\myapp\ejs –ejs   e:\myapp\ejs  为生成的项目路径

3. 讲刚才 的Customer.java  文件 放到 生成的项目中 src\main\java 的 myapp.domain  注意要和 类中的package 路径一致

4.进入 项目的 bin目录

easyjweb crud myapp.domain.Customer
../src/main/java/myapp/domain/Customer.java

5. 根据需要 更改 数据库配置文件

database.driverClassName=org.gjt.mm.mysql.Driver
database.url=jdbc:mysql://localhost:3306/myapp?createDatabaseI
fNotExist=true&useUnicode=true&characterEncoding=utf8&autoReconne
ct=true
database.username=root
database.password=123
database.show_sql=true

6. 进入项目的bin 目录下  执行 easyjweb war

打包后放到tomcat 的webapps 下 ,启动tomcat  访问

http://localhost:8080/ejs/customer.ejf  即可 打开一个对 Customer 的 增删改查 的 页面

easyjweb ejs 2014.2.25的更多相关文章

  1. 德国W家HIPP 奶粉有货播报:2014.6.25 HIPP 1+ 4盒装有货啦!

    德国W家HIPP 奶粉有货播报:2014.6.25 HIPP 1+ 4盒装有货啦!

  2. 【转】2014年25款最好的jQuery插件

    2014年25款最好的jQuery插件 来源:Specs' Blog-就爱PHP   时间:2014-12-30 10:24:10   阅读数:2267 分享到: 0 http://www.php10 ...

  3. wifi共享精灵2014.04.25.001已经更新,wifi热点中文名走起!

    五一回来后,有个惊喜,wifi共享精灵有了最新动向.不晓得wifi共享精灵是啥的朋友,我来解释下,它就相当于一个无线路由器.说起来,Wifi共享精灵正式版2014.04.25.001(http://w ...

  4. 2014年25 款最新最棒的jQuery插件

    网络上提供了大量非常有用的 jQuery 插件,帮助大家完善网站的体验.所以我们在这里收集了 2014 年发布的,并且是非常有用的插件,希望能帮助大家找到自己需要并且喜欢的,提升网站的质量! HAMM ...

  5. Visual Assist X 10.8.2042的Crack破解补丁. 2014.06.25 (General release.)

    VA小组时隔一个月又公布了新的版本号,这个版本号新添加了5个特性,修复了7-8个bug.而且也是稳定的Release版.所以这是很推荐更新的一个版本号. 对于破解补丁还是老规矩,请到我的下载空间下载, ...

  6. datetime.date(2014, 4, 25) is not JSON serializable

    # 背景 接口期望返回json格式数据,但数据存储在mysql中,先将mysql的数据转为dict,然后将dict转为json格式,然后就报这个错误了的,原因就是时间格式转换问题 # 解决方法 1. ...

  7. 2014.8.25 VS新建项目模板消失解决方法

    Vs2005 新建项目时windows应用程序模板消失问题解决方法: 1:进入C:\Program Files (x86)\Microsoft Visual Studio 8\Common7\IDE\ ...

  8. 2014.8.25 CAD系统事件触发流程

    各进近.离场.进场Arinc424数据录入界面在CADDataManager/UC/UCIAP(UCSID)下 UCAirport是一抽象用户控件类,在FormADHP初始化时实例化成airport控 ...

  9. SQL Server 2014里的针对基数估计的新设计(New Design for Cardinality Estimation)

    对于SQL Server数据库来说,性能一直是一个绕不开的话题.而当我们去分析和研究性能问题时,执行计划又是一个我们一直关注的重点之一. 我们知道,在进行编译时,SQL Server会根据当前的数据库 ...

随机推荐

  1. tornado-输入

    获取输入的信息: *** get_argument get_arguments 兼顾以下两种常用    能从url中获取    ?name=xiaoming    能从body中获取    form表 ...

  2. Requests库入门

    安装: $ pip install requests Response对象的一些基本属性: Response.status_code 请求的返回状态,正常为200 Response.text 页面的字 ...

  3. Redis 通用操作2

    01, 一次设置多个键值 => mset key1 value1 key2 value2 key3 value3 ...... 02, 一次获取多个值 => mget ke1 key2 k ...

  4. 使用matplotlib 制图(柱状图、箱型图)

    柱状图: import pandas as pd import matplotlib.pyplot as plt data = pd.read_csv('D:\\myfiles\\study\\pyt ...

  5. STS或eclipse安装SVN插件

    安装sts--SVN插件 简介:sts是与eclipse类似的Java IDE开发工具(不了解的百度) 1.sts菜单栏 help->install New Software 依据大家的版本选择 ...

  6. js中常用的事件

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  7. 吴裕雄 实战PYTHON编程(6)

    import matplotlib.pyplot as plt plt.rcParams['font.sans-serif']=['Simhei']plt.rcParams['axes.unicode ...

  8. 吴裕雄 实战PYTHON编程(4)

    import hashlib md5 = hashlib.md5()md5.update(b'Test String')print(md5.hexdigest()) import hashlib md ...

  9. RedisTemplate Redis 操作

    stringRedisTemplate.opsForValue().set("test", "100",60*10,TimeUnit.SECONDS);//向r ...

  10. bootstrap下拉框的例子,提示Error: Bootstrap's JavaScript requires jQuery

    bootstrap很多js依赖jquery,所以需要引入jquery   遇到的问题: 页面访问提示:Error: Bootstrap's JavaScript requires jQuery   解 ...