SSH是 struts+spring+hibernate的一个集成框架,是目前比较流行的一种Web应用程序开源框架。

http://www.cnblogs.com/laibin/p/5847111.html

1.新建以下的类

2.接口

UserDao负责数据

package com.nf.dao;

import com.nf.entity.User;

public interface UserDao {
//这是数据库层面的操作,
//往往编写dao的人,不用考虑业务逻辑的
//单对象例如,User,以及List,例如UserList
//编写增删改查 public User getUserById(String id); //public boolean delUserById(); //public boolean updateUser();
}
UserDaoImpl继承UserDao接口
package com.nf.dao.impl;

import com.nf.dao.UserDao;
import com.nf.entity.User; public class UserDaoImpl implements UserDao{
public User getUserById(String id) {
//写JDBC或者hibernate等代码,获取user
//模拟从数据库已经取了一个User
User user = new User();
user.setUserName("小李");
user.setUserPassword("123456");
return user;
}
}

UserService有一个方法,获取id

UserServiceImpl继承方法并new一个获取的userDao

package com.nf.service.impl;

import com.nf.dao.UserDao;
import com.nf.entity.User;
import com.nf.service.UserService; public class UserServiceImpl implements UserService {
private UserDao userDao = null; public UserDao getUserDao() {
return userDao;
} public void setUserDao(UserDao userDao) {
this.userDao = userDao;
} public String getUserNameById(String id) {
User user = userDao.getUserById(id);
if ("123456".equals(user.getUserPassword())){
return user.getUserName()+"(弱密码)";
}
else {
return user.getUserName();
} }
}

3.service

需要一个service,就定义service的接口为属性,UserAction

private UserService userService = null;
public UserService getUserService() {
return userService;
}
public void setUserService(UserService userService) {
this.userService = userService;
} @Override
public String execute() throws Exception {
//userService=new UserServiceImpl();
String userName = userService.getUserNameById("123");
System.out.println(userName);
return this.NONE;
}

4.

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
"http://struts.apache.org/dtds/struts-2.5.dtd"> <struts>
<constant name="struts.objectFactory" value="spring"></constant> <package name="myPackage" extends="struts-default"> <action name="index" class="userAction"></action> </package> </struts>
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <bean id="userAction" class="com.nf.action.UserAction" scope="prototype">
<property name="userService" ref="userService"></property>
</bean> <bean id="userService" class="com.nf.service.impl.UserServiceImpl" scope="prototype">
<property name="userDao" ref="userDao"></property>
</bean> <bean id="userDao" class="com.nf.dao.impl.UserDaoImpl" scope="prototype"></bean> </beans>

ps:有一个web.xml

<!--1个spring的监听器-->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

地址:https://gitee.com/MuNianShi/ssh001.git

最新文章

  1. try catch中用了 Response.Redirect 引发的线程异常终止
  2. 在VFP6中模拟CursorAdapter的功能
  3. Redis实现唯一计数的3种方法分享
  4. 三. 动态添加option选项
  5. 初试FitNesse
  6. 搭建WP8开发环境
  7. 2014ACMICPC西安网赛1006
  8. RAC集群时间同步服务
  9. 【转】深入研究java.lang.Runtime类
  10. details标签和summary标签
  11. CentOS LNMP安装phpMyAdmin
  12. myeclipse部署时An internal error occurred 错误的几种情况
  13. 【linux驱动笔记】linux模块机制浅析
  14. Qt事件和事件循环
  15. sublime text3 配置使用
  16. 浏览器事件window.onload、o…
  17. XML功能
  18. Web Service进阶(二)如何用Apache TCPMon来截获SOAP消息
  19. 解决TOC与目录导航冲突问题
  20. linux系统下find命令的使用

热门文章

  1. 解决重装 Oracle 出现的 INS-32025 问题,完全卸载 Oracle11g
  2. eclipse相关问题汇总
  3. XmlReader在序列化中的使用
  4. Django查询一个权限中包含哪些用户
  5. Centos7 安装mysql教程
  6. master.sys.sysprocesses相关内容
  7. RUP 4+1视图
  8. 将JavaScript语句插入HTML文档
  9. 八、profile多环境配置
  10. 一、URL和URLConnection