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

Struts2学习-ssh框架的更多相关文章

  1. 学习SSH框架

    1.SSH框架的认知 在做相关的java的网页的开发制作时,良好的层次分解是十分有比要的,所以我们在云涌第三方的框架之下来简化还有名了我们相关的网站的开发. SSH框架实则为Struct + spri ...

  2. 从零开始学习SSH框架笔记之四 几个关键配置文件备忘(模板)

    不多说,直接上代码.关于注释我尽量写详细点. 1.web.xml <?xml version="1.0" encoding="UTF-8"?> &l ...

  3. SSH框架(三) struts2的登陆示例

    因为最近在学习使用SSH框架(struts2+spring+hibernate),下面来介绍表现层struts2的使用方法. (一)添加struts2的包 见上一篇博客,先看一下添加的各个文件的目录结 ...

  4. 对于SSH框架的选择

    选择框架:SSH 对于Web开发来说,SSH框架可以提高开发效率,还可以方便需求的变更以及对后期维护方面更容易操作.SSH也是目前稍微流行的Web开发框架. 选择框架描述: 首先说明一下SSH并不是一 ...

  5. [原创]java WEB学习笔记54:Struts2学习之路---概述,环境的搭建

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  6. 【转载】SSH框架总结(将网上朋友写的给整合了下)

    一.Struts 在没有学习SSH框架前,我们一般采用Jsp+javabean+servlet开发,这里就是MVC架构.而Struts其实就是替代了Servlet,我们知道Servlet在一般的开发中 ...

  7. 为什么大多数培训机构还停留在只教ssh框架?

    最近听一些朋友说,招聘面试的很多人简历都差不多,大部分人的简历上面都写了熟悉ssh框架,我朋友就在吐槽,为什么这些人简历都差不多,并且都熟悉ssh框架? 后面他说, 可能这些人都是培训机构出来的, 然 ...

  8. 为什么要放弃ssh框架

    本文是转载他人的,觉得很好,分享! 最近听一些朋友说,招聘面试的很多人简历都差不多,大部分人的简历上面都写了熟悉ssh框架,我朋友就在吐槽,为什么这些人简历都差不多,并且都熟悉ssh框架? 后面他说, ...

  9. ssh框架被淘汰的原因

    SSH就是Struts2+Spring+Hibernate. 三个组件的简单介绍 Struts2:通俗的讲就是为了完成MVC模型中的C的功能,也就是编写具体的业务逻辑的地方.从他的设计上来看就是请求到 ...

随机推荐

  1. 转 关于shell中if 语法结构的广泛误解

    转自 ttp://blog.csdn.net/security134/article/details/6742156 最近学习SHELL编程 这篇文章很好很重要.有些东西不能想当然.同时不是表面看起来 ...

  2. 8、在Shell脚本中使用函数

    学习目标Shell的函数 Shell程序也支持函数.函数能完成一特定的功能,可以重复调用这个函数.函数格式如下: 函数名() {     函数体 }   函数调用方式: 函数名 参数列表   实例:编 ...

  3. LoadRunner使用

    LoadRunner使用 软件版本:12.53 build 1203 操作系统: Windows7 以下内容摘录自LoadRunner的官方帮助文档. 介绍 LoadRunner现在是HP公司的产品, ...

  4. 禅道 xampp中的mysql启动时无法产生err文件

       使用opt/lampp/lampp start命令启动 错误提示:root@zabbix_server ~]# /opt/lampp/bin/mysqld_safe_helper: Can‘t ...

  5. a 标签的跳转属性

     a 标签中调用js的几种方法   我们常用的在a标签中有点击事件:1. a href="JavaScript:js_method();" 这是我们平台上常用的方法,但是这种方法在 ...

  6. jmeter(5)——参数化

    之前接触过QTP或者Loadrunner的小伙伴,应该对参数化不陌生,在<badboy详解篇>中也介绍了badboy的参数化,今天说一下jmeter的参数化,同样,我们举例说明,以msn. ...

  7. WEB下渗透测试经验技巧(全)[转载]

    Nuclear’Atk 整理的: 上传漏洞拿shell: 1.直接上传asp.asa.jsp.cer.php.aspx.htr.cdx….之类的马,拿到shell.2.就是在上传时在后缀后面加空格或者 ...

  8. linux 查看服务器系统资源和负载,以及性能监控

    1.查看磁盘 df -h 2.查看内存大小 free [-m|g]#按MB,GB显示内存 3.查看每个进程的情况 cat /proc/5346/status PID 4.查看负载 uptime 5.查 ...

  9. OC与JS交互之JavaScriptCore

    JavaScriptCore提供了JavaScript和Objective-C桥接的Obj-C API.JavaScriptCore提供了让我们脱离UIWebView执行JavaScript脚本的能力 ...

  10. java 的底层通信--Socket

    以前一直不太重视java 基础的整理,感觉在实际开发中好像java 基础用处不大,感觉不理解一些底层的东西对开发工作影响也不大.不过,后来我发现,很多东西都是相互联系的,如果底层的东西你不理解,后面的 ...