Spring与Struts整合之让Spring管理控制器操作示例

网友投稿 473 2023-06-30

Spring与Struts整合之让Spring管理控制器操作示例

Spring与Struts整合之让Spring管理控制器操作示例

本文实例讲述了Spring与Struts整合之让Spring管理控制器操作。分享给大家供大家参考,具体如下:

一 Web配置

xmlns:xsi="http://w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee

http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1">

org.springframework.web.context.ContextLoaderListener

struts2

org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

struts2

/*

xmlns:xsi="http://w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee

http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1">

org.springframework.web.context.ContextLoaderListener

struts2

org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

struts2

/*

二 applicationContext.xml配置

xmlns="http://springframework.org/schema/beans"

xmlns:p="http://springframework.org/schema/p"

xsi:schemaLocation="http://springframework.org/schema/beans

http://springframework.org/schema/beans/spring-beans-4.0.xsd">

class="org.crazyit.app.service.impl.MyServiceImpl"/>

scope="prototype" p:ms-ref="myService"/>

xmlns="http://springframework.org/schema/beans"

xmlns:p="http://springframework.org/schema/p"

xsi:schemaLocation="http://springframework.org/schema/beans

http://springframework.org/schema/beans/spring-beans-4.0.xsd">

class="org.crazyit.app.service.impl.MyServiceImpl"/>

scope="prototype" p:ms-ref="myService"/>

class="org.crazyit.app.service.impl.MyServiceImpl"/>

scope="prototype" p:ms-ref="myService"/>

scope="prototype" p:ms-ref="myService"/>

三 视图

1 loginForm.jsp

<%@ page contentType="text/html; charset=GBK" language="java" errorPage="" %>

<%@taglib prefix="s" uri="/struts-tags"%>

"http://w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

2 welcome.jsp

<%@ page contentType="text/html; charset=GBK" language="java" errorPage="" %>

<%@taglib prefix="s" uri="/struts-tags"%>

"http://w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

您已经登录!

3 error.jsp

<%@ page contentType="text/html; charset=GBK" language="java" errorPage="" %>

"http://w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

您不能登录!

四 Struts配置

"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"

"http://struts.apache.org/dtds/struts-2.3.dtd">

/WEB-INF/content/error.jsp

/WEB-INF/content/welcome.jsp

/WEB-INF/content/{1}.jsp

五 action

package org.crazyit.app.action;

import com.opensymphony.xwork2.ActionSupport;

import org.crazyit.app.service.*;

public class LoginAction extends ActionSupport

{

// 下面是用于封装用户请求参数的两个成员变量

private String username;

private String password;

// 系统所用的业务逻辑组件

private MyService ms;

// 设值注入业务逻辑组件所必需的setter方法

public void setMs(MyService ms)

{

this.ms = ms;

}

// username的setter和getter方法

public void setUsername(String username)

{

this.username = username;

}

public String getUsername()

{

return this.username;

}

// password的setter和getter方法

public void setPassword(String password)

{

this.password = password;

}

public String getPassword()

{

return this.password;

}

// 处理用户请求的execute方法

public String execute() throws Exception

{

// 调用业务逻辑组件的validLogin()方法

// 验证用户输入的用户名和密码是否正确

if (ms.validLogin(getUsername(), getPassword()) > 0)

{

addActionMessage("哈哈,整合成功!");

return SUCCESS;

}

return ERROR;

}

}

六 Service

1 接口

package org.crazyit.app.service;

public interface MyService

{

int validLogin(String username , String pass);

}

2 实现类

package org.crazyit.app.service.impl;

impohttp://rt org.crazyit.app.service.*;

public class MyServiceImpl implements MyService

{

public int validLogin(String username , String pass)

{

// 此处只是简单示范,故直接判断用户名、密码是否符合要求

if ( username.equals("crazyit.org")

&& pass.equals("leegang") )

{

return 99;

}

return -1;

}

}

七 测试

更多关于java相关内容感兴趣的读者可查看本站专题:《Spring框架入门与进阶教程》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》

希望本文所述对大家java程序设计有所帮助。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:springboot配置aop切面日志打印过程解析
下一篇:SpringCloud断路器Hystrix原理及用法解析
相关文章

 发表评论

暂时没有评论,来抢沙发吧~