当写好Struts和spring的配置文件之后,就可以开始写具体的代码了。
1 先看看处理类Action的
**
*
*/
package cn.xxxx.trade.user.action;
import java.util.List;
import javax.annotation.Resource;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import com.opensymphony.xwork2.ActionSupport;
public class UserInfoAction extends ActionSupport
{
/**
* serialVersionUID.
*/
private static final long serialVersionUID = -6823936273178828935L;
/**
* logger.
*/
private static final Log log = LogFactory.getLog(UserInfoAction.class);
/**
* 注入用户信息管理接口实例.
*/
@Resource
private UserInfoService userInfoService;
/**
* 注入权限信息管理接口实例.
*/
@Resource
private PmService pmService;
/**
* 用户信息实体 .
*/
private UserInfo user;
/**
* 用户ID DWZ框架ajax请求参数.
*/
private int userId;
/**
* 用户id集:userIds.
*/
private int[] ids;
/**
* 页面传参对象 dwz .
*/
private DwzAjax dwz;
/**
* 封装组别集合的 .
*/
private List<PermissionGroup> pmGroupList;
/**
* 分页用 pageBean.
*/
private PageBean pageBean;
/**
* 每页记录数:numPerPage.
*/
private int numPerPage = 15;
/**
* 当前页数:pageNum.
*/
private int pageNum = 1;
//
// /**
// * 文件上传 .
// */
// private File upload;
/**
* 用户所选的风格主题.
*/
private String theme;
/**
* 查询并分页列出用户信息.
*
* @return listUserInfo.
*/
public final String listUserInfo()
{
log.info("*** search for list user info list ***");
// 获取用户信息
pageBean = userInfoService.queryForPage(user, numPerPage, pageNum);
// 获取用户权限组别信息
pmGroupList = pmService.queryGroupForPage();
log.warn(LogTool.userLog() + "列出所有用户信息");
return "listUserInfo";
}
Action类里面也只不过是一些属性(这些属性加上setter getter后,就可以在jsp提交表单和java类之间串联的处理)还有一些方法体。里面也注入了具体操作数据库的接口方法,接下来我们来看看接口是怎么写的
2 接口,没有方法体的
package cn.xxxx.trade.user.service;
public interface UserInfoService
{
/**
* 按条件查询并分页列出用户信息.
*
* @param user
* 用户信息对象.
* @param numPerPage
* 每页记录数.
* @param pageNum
* 当前页数.
* @return userList.
*/
PageBean queryForPage(UserInfo user, int numPerPage, int pageNum);
}
可以看到interface了。那么它的具体实现类是:
/**
*
*/
package cn.xxxx.trade.user.service.impl;
@Transactional
public class UserInfoServiceBean implements UserInfoService
{
/**
* logger.
*/
private static final Log log = LogFactory.getLog(UserInfoServiceBean.class);
/**
* sessionFactory .
*/
@Resource
private SessionFactory sessionFactory;
/**
* pageDao .
*/
@Resource
private PageDao pageDao;
/**
* 根据用户ID删除用户 .
*
* @param userIds
* .
* @return success or error .
*/
public final String deleteByUserIds(final int... userIds)
{
for (int userId : userIds)
{
try
{
UserInfo user = (UserInfo) sessionFactory.getCurrentSession().get(UserInfo.class, userId);
log.warn(LogTool.userLog() + "删除用户信息,帐号:" + user.getUserNo() + ",姓名:" + user.getUserName());
sessionFactory.getCurrentSession().delete(user);
} catch (HibernateException e)
{
log.info("*** delete merchant by merchantId :" + userId + " exception:", e);
break;
}
}
return "success";
}
}
分享到:
相关推荐
DAOImpl --> DAO接口Implements实现类 程序配置 --> web.xml 验证框架--> bean-validation.xml (实体验证)、SaveAction-validation.xml (保存验证)、UpdateAction-validation.xml (修改验证) 日志管理配置 --> log4j...
DAOImpl --> DAO接口Implements实现类 程序配置 --> web.xml 验证框架--> bean-validation.xml (实体验证)、SaveAction-validation.xml (保存验证)、UpdateAction-validation.xml (修改验证) 日志管理配置 --> ...
通用SSH2结构的增删查改标准代码, bean,HBM文件为自定义, service,dao接口为标准可重用 servce实现,dao实现为通用 -----使用说明--- action 调用通用service,service调用通用dao 调用关系用spring 配址文件设置 ...
DAOImpl --> DAO接口Implements实现类 程序配置 --> web.xml 验证框架--> bean-validation.xml (实体验证)、SaveAction-validation.xml (保存验证)、UpdateAction-validation.xml (修改验证) 日志管理配置 --> ...
DAOImpl --> DAO接口Implements实现类 程序配置 --> web.xml 验证框架--> bean-validation.xml (实体验证)、SaveAction-validation.xml (保存验 证)、UpdateAction-validation.xml (修改验证) 日志管理配置 --> ...
Struts+Spring+Hibernate实现上传下载 本文将围绕SSH文件上传下载的主题,向您... 代码 8 业务接口实现类之save() 1. … 2. public class FileServiceImpl 3. implements FileService 4. { 5. private TfileDAO ...
就算在项目开发前定制了规范,也有开发人员因为自己的习惯忘记了定制的规范,按照自己的风格来进行代码编写,这样久而久之,一个项目中各种风格的代码都有,对于ssh架构的开发人员每天都会遇到重复的代码编写(当然对重复...
Struts2,Spring,Hibernate是Java Web开发中最为常见的3种...实体虽然有7个,真正的实现却很简单,这并不是一个完整的在线书店项目。 我的CSDN博客 http://blog.csdn.net/FansUnion 亲,有很多精彩技术文章等着你哦。
编写JSP,Action类,Service接口类,Service实现类,DAO接口类,DAO实现类 15 Jsp添加 15 Jsp修改 15 Jsp主界面 16 *Action,Action类 16 *Service,Service接口类 18 *ServiceImpl,Service实现类 18 *DAO,DAO接口...
本系统的表现层是基于Struts作扩展设计,结合本系统的需求完成了自定义标签的封装,基本action接口的编写。在业务层则是采用单例模式设计与Spring的IoC模式相结合,实现了公共代理类的编写,各业务逻辑接口的封装。...
本系统的表现层是基于Struts作扩展设计,结合本系统的需求完成了自定义标签的封装,基本action接口的编写。在业务层则是采用单例模式设计与Spring的IoC模式相结合,实现了公共代理类的编写,各业务逻辑接口的封装。...
08 接口继承与归一化设计 09 继承顺序之mro线性顺序列表 10 在python2中的继承顺序是什么 11 在子类中调用父类方法 12 super调用父类的方法 13 选择系统作业讲解 第26章 01 学生自主复习 02 分享列表 03 多态 04 ...
业务层封装业务流程,为适应业务的变更,每一业务模块均有专门的接口及实现类,利用Spring的IOC功能将实现类注入给表现层的Action;数据访问层借助于Hibernate实现,代码简洁且可适应不同的数据库。事务部分利用...
本系统的表现层是基于Struts作扩展设计,结合本系统的需求完成了自定义标签的封装,基本action接口的编写。在业务层则是采用单例模式设计与Spring的IoC模式相结合,实现了公共代理类的编写,各业务逻辑接口的封装。...
本系统的表现层是基于Struts作扩展设计,结合本系统的需求完成了自定义标签的封装,基本action接口的编写。在业务层则是采用单例模式设计与Spring的IoC模式相结合,实现了公共代理类的编写,各业务逻辑接口的封装。...
本系统的表现层是基于Struts作扩展设计,结合本系统的需求完成了自定义标签的封装,基本action接口的编写。在业务层则是采用单例模式设计与Spring的IoC模式相结合,实现了公共代理类的编写,各业务逻辑接口的封装。...