JavaEE快速开发(成都传智播客提供).ppt_第1页
JavaEE快速开发(成都传智播客提供).ppt_第2页
JavaEE快速开发(成都传智播客提供).ppt_第3页
JavaEE快速开发(成都传智播客提供).ppt_第4页
JavaEE快速开发(成都传智播客提供).ppt_第5页
免费预览已结束,剩余40页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

成都传智播客 ,成都传智播客-助你成为高薪程序员,1、2010年7月,传智播客在成都设立分中心(传智播客成都分中心),easyjf开源创始人蔡世友老师任首席讲师,7月8日,成都传智播客javaee+3g就业班第一期正式开课。 2、2010年9月,成都传智播客推出先就业后付款,毕业后没有从事软件开发、月薪未达指定数额,则退还全部学费的优惠政策,广受学员好评。 3、2010年11月,第一期学员毕业,在仅一个月的时间里,全部学员顺利就业(工作地为成都),如愿走上软件开发工程师的岗位,月薪平均3000以上,有个别学员甚至拿到4k、k。 4、2011年2月,成都传智携手csdn推出“黑马训练营”课程,并作如下承诺:“不用花一分钱即可入学、不就业不还学费、就业不做软件开发不还学费”,让学员“就业后靠自己的能力逐步偿还学费”。,成都传智播客 ,javaee快速开发,讲师:蔡世友 email:,成都传智播客 ,第一章 javaee快速开发初体验,成都传智播客 ,javaee面临的诸多问题,javaee技术选择的困惑 后台页面技术:jsp/jstl/jsp tag/struts1 tag/struts2 tag/velocity/freemaker 持久层技术:jdbc/jdbc mapping/ibatis/hibernate/jpa/entity bean 其它技术:luence全文检索、工作流jbpm、spring容器及各种应用服务器。 构架问题:分层太细,比较烦琐。 javaee面临的问题 可选择的太多:标准太多、框架太多、分工太细、配置太多、方案太多,难选择; 界面问题:界面太丑、用户体验太差、富客户端技术 javaee程序员 牛人太多 菜鸟太多,成都传智播客 ,easyjweb简介,easyjweb简介 easyjweb是基于java技术,用于实现企业级java web应用程序快速开发框架。框架由来自国内的easyjf开源团队维护,是一个完全由来自的中国开源爱好者开发,文档及注释全部为中文的开源框架。 官方网址:/easyjweb/ 发展历程: 2006年初,easyjweb项目创建; 2007年3月,easyjweb 1.0发布; 2008年5月,easyjweb 1.2发布; 2010年6月,easyjweb1.3beta发布; 主要开发人员: 大峡(传智播客蔡世友)、stef(成都蓝源吴嘉俊)、志在逍遥、天一、船长、williamram、冷雨、netgod、小星星、天意.等等,成都传智播客 ,开发struts1.x+hibernate+spring应用,1、创建项目 easyjweb主目录bin easyjweb project d:/test/ssh1 -ssh -extjs 、生成添删改查 切换到项目d:/test/ssh1目录的bin easyjweb crud myapp.customer 、修改数据库设设置 perties 、启动应用 、修改界面并添加功能,成都传智播客 ,开发struts2.x+jpa+spring应用,1、创建项目 easyjweb主目录bin easyjweb project d:/test/ssh2 -ssh2 -extjs 、生成添删改查 切换到项目d:/test/ssh1目录的bin easyjweb crud myapp.customer 、修改数据库设设置 perties 、启动应用 、修改界面并添加功能,成都传智播客 ,开发ejs的应用(普通html页面),1、创建项目 easyjweb主目录bin easyjweb project d:/test/ejs -ejs 、生成添删改查 切换到项目d:/test/ssh1目录的bin easyjweb crud myapp.customer 、修改数据库设设置 perties 、启动应用 、修改界面并添加功能,成都传智播客 ,开发ejs的应用(基于extjs界面),1、创建项目 easyjweb主目录bin easyjweb project d:/test/ejs -ejs -extjs 、生成添删改查 切换到项目d:/test/ssh1目录的bin easyjweb crud myapp.customer 、修改数据库设设置 perties 、启动应用 、修改界面并添加功能,成都传智播客 ,新手常见问题,、不能执行命令 、不能连接数据库 、连接主流数据库的配置 、确保具有建表权限,成都传智播客 ,easyjweb框架总体结构,成都传智播客 ,第二章 easyjweb mvc,成都传智播客 ,easyjweb版本的hello world,1、搭建项目 2、引入easyjweb包 3、开发一个action 4、easyjweb版登录程序,成都传智播客 ,easyjweb mvc框架的核心部件,mvc:两种,一种基于请求转发模型,struts、spring mvc、easyjweb。基于组件事件模型,jsf等。 1、actionservlet 2、url映射 3、view技术 4、前后台交互,成都传智播客 ,actionservlet配置及action路径映射,web.xml 主控servlet:com.easyjf.web.actionservlet 字符过滤器:com.easyjf.web.charsetfilter 自动扫描(惯例代替配置或零配置) 1、web.xml中配置: defaultactionpackages myapp,easyjweb.demo 扫描所有实现iwebaction的类,并会自动把类的首字母改为小写,把后面的action去掉,作为映射路径。 比如:helloaction对应的映射路径为/hello.ejf 2、在easyjf-web.xml中也可配置: myapp,easyjweb.demo,com.easyjf.demo,com.lanyotech.pps ,成都传智播客 ,actionservlet配置及action路径映射,注解 action标签来指定一个action,标签中的path属性指定映射路径。 easyjf-web.xml文件配置 ,成都传智播客 ,webform详解,读取客户端传输的数据: form.get方法,获取字符串、字符串数组及文件等类型数据; form.topo()方法,把视图中的对象封装到指定的对象中。 把数据传输给视图: form.addresult(name,value),把指定value的对象以指定的名称传输给前端。 addpo(object),把指定对象分解后传输到视图中。,成都传智播客 ,视图page,在easyjweb的action中,要求控制器返回一个page对象,这个对象表示视图。 示例: public page dologin(webform form,module module) return module.findpage(“login“); /return new page(“/login.html“); /return page(“login“); easyjweb默认的视图为velocity模板引擎。位置存放在/web-inf/views/目录下。,成都传智播客 ,velocity模板语法,显示数据: $var,$var,$!var均用于显示变量var的内容,有叹号(!)表示如果变量不存在或者为null,则什么都不显示。 条件判断: #if($var) #elseif() #else #end 循环: #foreach($info in $list) 循环体可以用$velocitycount来获得表达式的值。 #end 设置变量: #set($var=1) 包含文件: #include(“)或者#parse(“) 宏(包含) 宏定义:#macro(orderpic $type) #end 使用宏:#orderpic(“$!“),成都传智播客 ,使用其它视图技术,在easyjweb中,除了支持velocity技术以外,还支持jsp等视图技术,同时用户还可以扩展支持其它视图技术。 在page类中,通过type属性来指定的不同的视图。 page类的构造函数: public page(string name, string url, pagetype type) public page(string name, string url, string type) pagetype的类型的值如下: html-跳转,也就是一个html连接; template-模板引擎; forward-jsp视图; action-输出到另外一个action; nullpage-无输出; string-动态模板视图; ,成都传智播客 ,第三章 高级特性及ejs构架,成都传智播客 ,模块化编程:使用abstractcmdaction,概念: 模块化编程的思想是把相关连的功能封装到一个模块中,从而避免系统中出现过多的action,用户的action继承abstractcmdaction后,即可实现模块化编程。 示例: public class clientaction extends abstractcmdaction public page doindex(webform f, module m) return new page(“client/index.html“); public page dolist(webform form) return new page(“client/list.html“); public page doremove(webform form) . return go(“list“); 访问上面的action,直接使用下面的url: client.ejf?cmd=index client.ejf?cmd=list client.ejf?cmd=remove,成都传智播客 ,惯例编程:使用abstractpagecmdaction,概念: easyjweb框架中很多地方都充分考虑了惯例代替配置的原则(约定代替配置),比如针对一个action,视图文件应该在什么位置,这些都可以按一定的规则来进行。 示例: public class clientaction extends abstractpagecmdaction public page doindex(webform f, module m) return page(“index“); public page dolist(webform form) return page(“list“); public page doremove(webform form) . return go(“list“); 访问上面的action,直接使用下面的url: client.ejf?cmd=index,并且会自动查找web-inf/views/client/index.html文件来作为视图 client.ejf?cmd=list,会自动查找web-inf/views/client/list.html文件来作为视图 client.ejf?cmd=remove,成都传智播客 ,easyjweb中ioc体验,使用xml文件实现依赖注入; 使用bean、action注解标签现依赖注入 bean public class userserviceimpl implements userservice public class useraction extends abstractpagecmdaction inject private userservice service; ,成都传智播客 ,与spring集成,要集成spring,直接在easyjf-web.xml中配置如下的springbean及easyjweb内部容器即可。当然,也可以直接引入com/easyjf/core/spring-container.xml文件即可。 web-inf/classes/application.xml ,成都传智播客 ,泛型dao支持,easyjweb提供了泛型dao实现,dao接口只需要继承genericdao即可。 public interface iclientdao extends genericdao 对应该dao的配置文件: com.lanyotech.pps.dao.iclientdao com.lanyotech.pps.domain.client ,成都传智播客 ,poload详解,对于关联属性,前端只传入一个id值,此时可以通过在属性上加一个poload标签,使得webform的topo方法可以加载关联属性。 示例: public class employee implements ijsonobject id generatedvalue(strategy = generationtype.table) private long id; manytoone(fetch=fetchtype.lazy) poload private department dept; . 当在action中调用topo的时候,会把dept这个值转换成后台对应的持久化对象。,成都传智播客 ,分页引擎ipagelist简介,public interface ipagelist extends serializable / 得到查询结果集 public list getresult(); /返回总页数 public int getpages(); /返回查询总记录数 public int getrowcount(); /返回有效的当前页 public int getcurrentpage(); /返回下一页 public int getnextpage(); /返回上一页 public int getpreviouspage(); ,成都传智播客 ,queryobject简介,queryobject类用来表示具有分页功能的查询对象。 可以使用addquery方法来添加各种查询组合条件。 示例: public page dolist(webform form) queryobject qo = form.topo(queryobject.class); string searckkey=commutil.null2string(form.get(“searchkey“); if(!“.equals(searckkey) qo.addquery(“(obj.sn like ? or like ?)“,new object“%“+searckkey+“%“,“%“+searckkey+“%“); ipagelist pagelist = service.getproductby(qo); form.jsonresult(pagelist); return page.jsonpage; ,成都传智播客 ,easyjweb中ajax简介,ajaxutil,简化普通ajax应用 json生成器,把后台java对象转换成json web远程脚本调用(dwr),成都传智播客 ,easyjweb中richcomponent,可以在后台轻松实现创建富客户端编程组件。 public page dogrid() viewport view = new viewport(); gridpanel grid = new gridpanel(“grid“, “数据表格“,500,100); grid.setcolumns(new string“id“,“姓名“,“出生日期“,“email“); view.add(grid); this.addcomponent(view); return componentpage; public page dotree() viewport view = new viewport(); treepanel tree=new treepanel(“tree“,“简单的树“,200); treenode root=new treenode(“root“,“根“); root.add(new treenode(“c1“,“孩子1“); root.add(new treenode(“c2“,“孩子2“); root.getchildnodes().get(1).add(new treenode(“c3“,“孙子“); tree.setroot(root); view.add(tree); this.addcomponent(view); return componentpage; ,成都传智播客 ,extjs框架支持,ajaxutil,简化普通ajax应用 json生成器,把后台java对象转换成json web远程脚本调用,成都传智播客 ,代码生成,执行代码生成 easyjweb project 命令用于创建项目; easyjweb crud 命令用于创建crud模块; 代码生成模板template简介,成都传智播客 ,结束语,热烈欢迎大家到成都传智播客免费领取java学习视频光盘; 热烈欢迎大家到成都传智播客教学现场免费试听j

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论