SSH框架的简单示例(执行流程)
本文转自一篇博文,感觉通俗易懂,适用于初学j2ee者,与大家一起分享
(一)struts框架部分
1.打开Myeclipse,创建一个web project,项目名称为TestSSH.
2.在web的lib下粘贴struts需要的六个jar包.(jar包在附件里)
3.在web下的web.xml中配置struts的filter.
代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
//上面几行代码是从Referenced Libraies下的struts-core-2.0.8.jar下的struts-default.xml中拷贝过来的
<!-- 配置struts开始 -->
<filter>
<filter-name>myStruts</filter-name> <!--这个过滤器的名字可以随便写-->
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>myStruts</filter-name> <!--要和上面的那个过滤器的名字一致-->
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- 配置struts结束 -->
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
4.在src下创建一个包,叫做action,在这个包里创建一个类,叫做TestAction.java这个类要继承ActionSupport
代码如下:
package action;
import com.opensymphony.xwork2.ActionSupport;
public class TestAction extends ActionSupport {
/**
*
*/
private static final long serialVersionUID = 6241935194381649471L;
public String execute() throws Exception {
System.out.println("struts==========================");//控制台上会打印出这句话,
return "success";
}
}
5.在src下创建一个struts.xml代码如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="default" extends="struts-default">
<action name="login" class="action.TestAction">
<result name="success">index.jsp</result>
</action>
</package>
</struts>
6.index.jsp中的<body>这是测试struts框架的页面.</body>
中写上一句话,
7.将这个项目部署到Tomcat中,启动Tomcat,打开浏览器,地址栏中输入:http://localhost:8080/TestSSH/login.action就会出现一个页面,上面写着 这是测试struts框架的页面.
到此,struts框架搭建完成.
(二)struts基础上添加spring框架
添加spring框架:
右键 ->MyEclipse选择add spring ....,
将applicationContext.xml放在WEB_INF下。Finish




项目中包含的文件如下图所示.:
在web.xml中配置spring的监听:
<!-- 添加Spring的监听 -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener
注意:添加一个struts和spring的链接的jar包。
TestAction.java******************
package action;
importservice.userServiceImple;
import com.opensymphony.xwork2.ActionSupport;
public class TestActionextends ActionSupport {
/**
*
*/
private static final long serialVersionUID= 6241935194381649471L;
private String username;
private String pwd;
private userServiceImple userservice;
public userServiceImple getUserservice(){
return userservice;
}
public voidsetUserservice(userServiceImple userservice) {
this.userservice = userservice;
}
public String getUsername() {
return username;
}
public void setUsername(String username){
this.username = username;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
public String execute() throws Exception{
System.out.println("用户名:"+this.getUsername() + " 密码:" + this.getPwd());
this.userservice.test();
return "success";
}
}
userServiceImple.java*************
package service;
public class userServiceImple {
public void test(){
System.out.println("userserviceImple..................");
}
}
applicationContext.xml*****************
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean name="user"class="service.userServiceImple"></bean>
<bean name="loginaa"class="action.TestAction">
<property name="userservice"ref="user"></property>
</bean>
</beans>
struts.xml**************************
<?xml version="1.0"encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD StrutsConfiguration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="demo" extends="struts-default">
<action name="login"class="loginaa">
<result name="success">a.jsp</result>
</action>
</package>
</struts>
index.jsp****************************
.jsp文件第一行的编码换成utf-8
<body>
<form action="login.action"method="post">
用户名:<input type="text"name="username">
密码:<input type="password"name="pwd">
<input type="submit"value="登录">
</form>
</body>
a. jsp**************************************
<body>
登陆成功
</body>
访问时:http://localhost:8080/TestSSH 输入用户名和密码登录,然后成功跳转到index.jsp页面。
控制台上就打印出了
用户名:admin 密码:admin
userserviceImple..................
点击登录之后,跳转到a.jsp
(三)添加Hibernate框架,
在此之前呢,要用mysql数据库中,用户名和密码都是root,(这个要记住,以防后面创建连接时连接不上)
创建一个数据库名字叫pla,(名字自己取就行),创建一个表叫hlis_base_info.
字段如下:
(如下图所示)

打开myeclipse,



打开my切换到MyEclipsejava Enterprise视图中







再返回到MyEclipsedatabase Explorer视图中



切换到MyEclipsejava Enterprise视图中

这样就利用了Hibernate的控制反转将数据库中的表变为项目中的类,有一个映射作用,其他表也可以利用这个过程生成对应的类.
到此SSH框架搭建完毕,部署项目,启动Tomcat,会出现异常,经过分析是缺少一些jar包导致的,
所需要的jar在附件中的一个文件夹中,可以自己查看缺少的jar包.
将jar添加上,就可以正常启动Tomcat服务器了.
之后会将hibernate生成的类,运用到SSH框架中,体现框架的强大.还会有spring 强大的事务管理功能.
SSH框架的简单示例(执行流程)的更多相关文章
- Java调度框架Quartz简单示例
Quartz的大名如雷贯耳,这里就不赘述,而且本文也不作为深入探讨,只是看完Quartz的官方文档后,下个简单示例,至少证明曾经花了点时间学习过,以备不时之需. Quartz使用了SLF4J,所以至少 ...
- SSH框架新线程下执行数据库持久化时 No Session found for current thread
架构:SSH框架 问题:多线程下的持久化操作 异常No Session found for current thread出现环境: SSH框架,采用声明式事务, 通过sessionFactory.ge ...
- struts2简单入门-执行流程
简单的执行流程图
- SSH框架的简单上传功能的实现
1.创建项目. 2.导入开发包. 3.配置web.xml. 配置内容就是配置struct2的内容如下: <?xml version="1.0" encoding=" ...
- SSH框架的简单学习—Structs学习
一:struts部分 1.打开Myeclipse,创建一个web project,项目名称为SSHDemo. 2.在web的lib下粘贴struts2-blank.war解压后WEB-INF\lib下 ...
- 整合SSH框架实现简单登录
SSH整合的大体结构:我们将Struts2和hibernate交给spring来管理 创建好web项目之后,首先当然是先引入需要的pom节点,需要的pom的节点可以在Maven官方仓库中下载https ...
- SSH框架的简单含义
典型的J2EE三层结构,分为表现层.中间层(业务逻辑层)和数据服务层.三层体系将业务规则.数据访问及合法性校验等工作放在中间层处理.客户端不直接与数据库交互,而是通过组件与中间层建立连接,再由中间层与 ...
- Spring Boot集成Reactor事件处理框架的简单示例
1. Reactor简介 Reactor 是 Spring 社区发布的基于事件驱动的异步框架,不仅解耦了程序之间的强调用关系,而且有效提升了系统的多线程并发处理能力. 2. Spring Boot集成 ...
- SSH框架总结
首先,SSH是由多个框架(struts+spring+hibernate)的集成,是目前较流行的一种Web应用程序开源集成框架,用于构建灵活.易于扩展的多层Web应用程序. 集成SSH框架的系统从职责 ...
随机推荐
- XAF 14.1 DC 实现自定审计日志信息
由于一个系统的需要,需要在日志中加入自定义的信息,并且需要根据需要过滤显示其中的部分操作记录入修改,删除等,其他的不显示,具体的实现方法如下: 一.需要继承 AuditDataItemPersiste ...
- SQLserver聚集表、堆和索引
SQL Server 表使用下列两种方法之一来组织其分区中的数据页: 聚集表是有聚集索引的表.数据行基于聚集索引键按顺序存储.聚集索引按 B 树索引结构实现,B 树索引结构支持基于聚集索引键值对行进行 ...
- iis7下配置php出现404.17错误的解决办法
服务器上建有几个PHP站点,都在正常运行.今天又新建了一个PHP站点,处理程序模块配置的和其他几个都一样,但就是跑不起来,一直提示404.17错误,重启服务器也不行. 最后实在没办法了,就把正常运行站 ...
- 用POI读取具有任意合并单元的excel数据
maven依赖: <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</ ...
- aspnet超级链接 传递 当前页面 textbox值
一共有两个窗体. 第一个窗体A传参到窗体B A的参数是A窗体的textbox 窗体A代码 <html xmlns="http://www.w3.org/1999/xhtml" ...
- Java hashCode() 和 equals()的若干问题
原文:http://www.cnblogs.com/skywang12345/p/3324958.html 本章的内容主要解决下面几个问题: 1 equals() 的作用是什么? 2 equals() ...
- 救命 ,IE,崩溃
哈哈! IE崩溃, 本来原本打算重新安装win7 若干软件,若干开发环境要配置痛苦ing... 偶然发现用thinapp制作的IE,下载,用之, 世界和平了,再也不用重新安装系统
- 移动APP开发使用什么样的原型设计工具比较合适?
原型设计工具有Axure,Balsamiq Mockups,JustinMind,iClap原型工具,等其他原型工具.其中JustinMind比较适合APP开发使用. JustinMind可以输出Ht ...
- 开始研究tigase和android客户端的实现
2015.7.5. 昨晚总算把tigaase7.0的开发环境搭起来了.稍微看了下代码结构. 主要是auth,db,compnent,cluster,server,xmpp,这几块,准备先发点时间看看开 ...
- 数据库优化系列——SQL性能优化十条建议
1.查询的模糊匹配 尽量避免在一个复杂查询里面使用 LIKE '%parm1%'—— 红色标识位置的百分号会导致相关列的索引无法使用,最好不要用. 解决办法: 其实只需要对该脚本略做改进,查询速度便 ...