第二天:使用struts2开发用户的增删改查
2013-12-25 13:07
295 查看
一、开发步骤:
1、确定包的命名和使用规则
com.sxt.dao 连接数据的底层类 以及接口类(主要是对数据库中的表有哪些操作)com.sxt.dao.impl 接口dao接口类的实现类 (编写具体的方法,对数据中的表进行操作)
com.sxt.service 业务类的接口类(主要书写一些业务的方法,但是没有具体的实现)
com.sxt.service.impl 业务类接口的实现类(主要对接口的方法进行具体的实现)
com.sxt.util 工具类(编写一些常用的工具方法)
com.sxt.test 测试类(测试程序是否存在错误)
com.sxt.action 核心控制器类
2、配置xml文件
<filter> <filter-name>struts</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-name>struts</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
3、编写代码
3.0、编写实体类3.1、编写数据库底层类 、以及接口类
3.2、数据库接口实现类
3.3、业务接口类以及业务接口类实现类
3.4、编写action控制器类
3.5、编写jsp界面
4、配置struts文件(重点)
解决问题:怎样从一个action跳转到另外一个action<result name="success" type="redirectAction"(result中配置属性 type 值为 redirectAction--跳转到另一个action)>list(action属性name 的值)</result>
5、页面对数据的处理(重点)
解决问题:怎样养表单中的数据封装成一个对象 <input type="password" name="user.userpass"(使用user.userpass 直接把值赋到实体类中的userpass上) value="${user.userpass}"/>(user代表action中的属性,只不过是一个对象) 如下:
private Userinfo(实体类) user;
private List<Userinfo> list;
二、知识点:
1、包含多个配置文件:
在struts.xml文件下使用标签<include file="配置文件路径"></include>主要目的地避免struts.xml文件的配置过多,出现臃肿,难于维护;分模块配置不同的业务,便于维护。
2、使用动态方法调用指定的方法:
当同一个action类中包含多个方法时候,在struts配置了多个action时,可以使用动态方法调用,减少action的配置。调用格式 (action属性name的值)!方法名.action 如下
<a href="list!UserList.action"> 显示用户列表(方法动态调用)</a>
注意:此方法不建议使用
3、使用通配调用指定的action方法
当同一个action类中包含多个方法时候,在struts配置了多个action时,可以使用动态方法调用,减少action的配置。调用格式 :
<a href="user-UserList.action"> 显示用户列表(使用通配符)</a><br/>
<action name="user-*" class="com.sxt.action.UserinfoAction" method="{1}">
说明:action中name的值为 user-* ,method的值为{1} 指明匹配所有以 user- 开头的名字
user-addList.action、user-addUpdate.action、user-addDelete.action 都能匹配
之后method的值就为匹配的值,二匹配的值又是action中的方法名,从而实现方法的指定调用。
method的值可以为{1}、{1,2}、{1,3}、{3} 表明匹那个通配符和几个通配符
4、结果视图:
全局结果视图的配置:(理解成全局变量)<global-results> <!-- 使得所有的结果都能用 --> <result name="success" type="redirectAction">list</result> </global-results>
5、<result name="" type=""/>相关配置 type的值如下:
常用:dispatcher:页面之间的请求转发
redirect:页面之间的重定向
redirectAction:action之间的重定向
chain:action之间的请求转发
freemarker:页面静态化
xslt:生成excel
stream:上传下载
6、struts.xml常量配置:
指定默认编码集,作用于HttpServletRequest的setCharacterEncoding方法 <constant name="struts.i18n.encoding" value="UTF-8"/> 该属性指定需要Struts 2处理的请求后缀,如果用户需要指定多个请求后缀,则多个后缀之间以英文逗号(,)隔开。 <constant name="struts.action.extension" value="do"/> 设置浏览器是否缓存静态内容,默认值为true(生产环境下使用),开发阶段最好关闭 <constant name="struts.serve.static.browserCache" value="false"/> 当struts的配置文件修改后,系统是否自动重新加载该文件,默认值为false(生产环境下使用),开发阶段最好打开 <constant name="struts.configuration.xml.reload" value="true"/> 开发模式下使用,这样可以打印出更详细的错误信息 <constant name="struts.devMode" value="true" /> 默认的视图主题 --> <constant name="struts.ui.theme" value="simple" /> 与spring集成时,指定由spring负责action对象的创建 <constant name="struts.objectFactory" value="spring" /> 该属性设置Struts 2是否支持动态方法调用,该属性的默认值是true。如果需要关闭动态方法调用,则可设置该属性为false。 <constant name="struts.enable.DynamicMethodInvocation" value="false"/>
7、struts 中 action:
7.1、编写一个普通类7.2、实现Action接口
7.3、继承ActionSupper类
8、获取Servlet API:
8.1、直接通过方法 ServletActionContext获取相应的对象ServletActionContext.getRequest()、ServletActionContext.getResponse()、、、
8.2、实现接口 ServletRequestAware、ServletResponseAware、SessionAware 获得
定义成员变量,就不需要每次使用创建
private HttpServletRequest request;
private HttpServletResponse response;
private Map<String,Object> session;<特殊> session对象虽然类型是Map集合 ,只需要当成session来用,存数据用session.put();
相关文章推荐
- 一步一步使用Ext JS MVC与Asp.Net MVC 3开发简单的CMS后台管理系统之用户管理(3)
- Mybatis使用接口用户的增删改查
- struts2使用拦截器完成登陆显示用户信息操作
- 使用IntelliJ IDEA开发SpringMVC网站(四)用户管理
- 使用Jquery+EasyUI 进行框架项目开发案例讲解之二---用户管理源码分享
- Struts2页面开发中常用标签使用说明
- struts2使用拦截器完成登陆显示用户信息操作和Struts2的国际化
- php使用新浪微博API开发用户授权功能
- Struts2页面开发中常用标签使用说明
- 小字典之MFC使用ADO访问ACCESS进行增删改查 VS2015开发
- 使用golang快速开发微信公众平台(七):通过客服向用户发消息
- 无责任Windows Azure SDK .NET开发入门篇三[使用Azure AD 管理用户信息--3.5 Delete删除用户]
- 关于使用ccflow工作流引擎sdk模式开发用户的声明
- DWCS6搭建jsp开发环境及使用ajax实现用户注册(基于文件)
- 使用C#开发用户控件
- 一步一步使用Ext JS MVC与Asp.Net MVC 3开发简单的CMS后台管理系统之用户管理(3)
- Struts学习总结(八)---使用Struts2实现用户信息的CRUD操作(二:添加操作)
- JAVAWEB开发之Struts2详解(二)——Action接受请求参数、类型转换器、使用Struts2的输入校验、以及遵守约定规则实现Struts2的零配置
- 使用ASP.NET Core MVC 和 Entity Framework Core 开发一个CRUD(增删改查)的应用程序
- 在程序员的眼里,用户是这样使用他们开发的软件的