`

Struts2 + ExtJs

阅读更多

导入jar包(基本的几个jar包:commons-logging-1.0.4.jar,freemarker- 2.3.8.jar,ognl-2.6.11.jar,struts2-core-2.0.10.jar,xwork-2.0.4.jar),配置 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>
<constant name="struts.action.extension" value="ph" />
<constant name="struts.multipart.maxSize" value="1000000000"/>
<package name="teaweb" extends="json-default" namespace="/">
<action name="test" class="com.teaweb.action.TestAction">

<result type="json"></result>
</action>
</package>
</struts>

注意此处的:extends="json-default" ,<result type="json"></result>

配置web.xml,内容如下:

<?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">

<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.ph</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
<jsp-config>
<taglib>
<taglib-uri>/WEB-INF/struts-tags.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-tags.tld</taglib-location>
</taglib>
</jsp-config>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>

新建一个java类为TestAction,java代码为:

package com.teaweb.action;

import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.List;
import com.teaweb.bean.TestBean;
import com.teaweb.dao.TestDAO;

public class TestAction extends PublicAction {
private TestBean testBean;
private long results;
private TestDAO testDAO=new TestDAO();
private List list;
public String select() {
// TODO Auto-generated method stub
response.setCharacterEncoding("gb2312");
list=testDAO.select();
results=list.size();
return SUCCESS;
}
public String login() {
// TODO Auto-generated method stub
try {
request.setCharacterEncoding("utf-8");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
response.setCharacterEncoding("gb2312");
TestBean result=testDAO.selectbyname(testBean);
if(result!=null){
outString("{success:true,msg:'"+result.getName()+"登录成功'}");
}else{
outString("{failure:true,msg:'登录失败'}");
}
return null;
}


public TestBean getTestBean() {
return testBean;
}

public void setTestBean(TestBean testBean) {
this.testBean = testBean;
}

public List getList() {
return list;
}

public void setList(List list) {
this.list = list;
}

public long getResults() {
return results;
}

public void setResults(long results) {
this.results = results;
}


}

其中TestBean 是一个实体类,还有一个连接数据库查询的方法,只要能查出为List结果就可以了

我这里做了一个登陆和查询所有TEST表里的信息两个方法

其中login.jsp代码为:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'login.jsp' starting page</title>
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<link rel="stylesheet" type="text/css" href="/ext2/resources/css/ext-all.css" />
<script type="text/javascript" src="/ext2/adapter/ext/ext-base.js"></script>
<script type="text/javascript" src="/ext2/ext-all.js"></script>
</head>
<body>
<script type="text/javascript">
Ext.onReady(function(){
Ext.QuickTips.init();
var form1=new Ext.FormPanel({
renderTo:"panel1",
width:500,
height:300,
frame:true,
title:"ajax提交",
collapsible:true,
minButtonWidth:60,
labelAlign:"right",
defaultType:"textfield",
url:"test!login.ph",
items:[{
fieldLabel:"用户名",
id:"txtName",
name:'testBean.name',
allowBlank:false,
blankText:"用户名不能为空!"
},{
fieldLabel:"密码",
allowBlank:false,
blankText:"密码不能为空!",
name:'testBean.password',
inputType:'password'
},{
fieldLabel:"备注"
}],
buttons:[{
text:"提交",
handler:function(){
if(form1.getForm().isValid()) {
form1.getForm().submit({
success:function(from,action) {
Ext.Msg.alert("返回提示",action.result.msg);
window.location = 'index.jsp';
},
failure:function(form,action) {
Ext.Msg.alert("返回提示",action.result.msg);
}
});
}
}
},{
text:"重置",
handler:function() {
form1.getForm().reset();
}
}]
});

});
</script>
<div id="panel1"> </div>
</body>
</html>

其中index.jsp页面代码为:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>index</title>
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<link rel="stylesheet" type="text/css" href="/ext2/resources/css/ext-all.css" />
<script type="text/javascript" src="/ext2/adapter/ext/ext-base.js"></script>
<script type="text/javascript" src="/ext2/ext-all.js"></script>
</head>
<body>
<script type="text/javascript">
Ext.onReady(function(){
var store=new Ext.data.JsonStore({
url:"test!select.ph",
totalProperty: "results",
root: "list",
fields:[{name:'id',mapping:'id'}, {name:'name',mapping:'name'},{name:'password',mapping:'password'}]
});
store.load();
var gird=new Ext.grid.GridPanel({
renderTo:"hello",
title:"欢迎登录",
height:150,
width:300,
columns:[
{header:"编号",dateindex:"id"},
{header:"账号",dateindex:"name"},
{header:"密码",dateindex:"password"}
],
store:store,
autoExpandColumn:2
})
})
</script>
<div id="hello"> </div>
</body>
</html>

详细出处参考:http://www.jb51.net/article/21204.htm

分享到:
评论

相关推荐

    struts2+extjs3 单/多文件上传

    Struts2和ExtJS3是两个非常流行的开源框架,它们在Web开发中有着广泛的应用。Struts2是一个基于MVC(Model-View-Controller)设计模式的Java Web框架,而ExtJS3则是一个用于构建富客户端JavaScript应用的库。本文将...

    struts2+extjs+json整合实例

    Struts2、ExtJS和JSON是Web开发中的三个关键技术,它们在构建动态、交互式的Web应用程序时发挥着重要作用。下面将详细介绍这三个技术及其整合过程。 首先,Struts2是一个基于MVC(Model-View-Controller)设计模式...

    struts2+extjs4登录源码

    Struts2和ExtJS4是两个非常重要的Java Web开发框架,它们在构建高效、用户友好的Web应用程序中发挥着关键作用。在这个"Struts2+ExtJS4登录源码"项目中,我们可以深入理解这两个框架如何协同工作以实现一个基本的用户...

    Hibernate+Spring+Struts2+ExtJS开发CRUD功能

    ### Hibernate+Spring+Struts2+ExtJS集成开发CRUD功能 #### 开源框架环境与下载 在构建一个基于`Hibernate+Spring+Struts2+ExtJS`的CRUD应用时,首先需熟悉各框架的基本特性和安装环境。 1. **Hibernate**:作为...

    Hibernate+Spring+Struts2+ExtJS整合开发实例

    "Hibernate+Spring+Struts2+ExtJS整合开发实例"就是一个典型的Java Web应用程序开发案例,它将四个关键组件结合在一起,以实现高效、模块化的后端和前端功能。 **Hibernate** 是一个流行的Java对象关系映射(ORM)...

    Hibernate+Spring+Struts2+ExtJS开发CRUD功能实例

    在IT行业中,构建Web应用程序是常见的任务,而“Hibernate+Spring+Struts2+ExtJS开发CRUD功能实例”提供了一个完整的解决方案,用于快速开发基于Java的Web应用,特别是涉及数据库操作的CRUD(创建、读取、更新、删除...

    比较流行的框架模式(Hibernate+Spring+Struts2+ExtJS)

    标题中的"Hibernate+Spring+Struts2+ExtJS"是一个经典的Java Web开发框架组合,也被称为SSH2(Struts2, Spring, Hibernate)与ExtJS的集成。这个组合在过去的几年里广泛应用于企业级应用开发,提供了强大的数据持久...

    struts2+ExtJS(带分页效果)

    Struts2和ExtJS是两种在Web开发中广泛使用的开源技术。Struts2是一个基于MVC(Model-View-Controller)架构模式的Java Web框架,它简化了开发过程,提供了强大的控制层支持。而ExtJS则是一个前端JavaScript库,用于...

    struts2 + extjs例子

    Struts2和ExtJS是两种在Web开发中广泛使用的开源技术。Struts2是一个基于MVC(Model-View-Controller)设计模式的Java Web框架,它极大地简化了创建企业级Java应用的过程。而ExtJS则是一款强大的JavaScript库,用于...

    Hibernate+Spring+Struts2+ExtJS开发CRUD功能.doc

    ### Hibernate+Spring+Struts2+ExtJS集成开发CRUD功能 #### 一、技术栈介绍与环境搭建 **1. Hibernate:** Hibernate是一个强大的对象关系映射(ORM)框架,用于简化Java应用程序与数据库之间的交互。通过...

    struts2+extjs2.1+json+hibernate+spring

    上网找资料,都是一些不全的. struts2+extjs2.1+json+hibernate+spring 自己整合的例子. 当中hibernate数据源可以配置自己的.后台输送json 前台接收.

    Hibernate+Spring+Struts2+ExtJS开发CRUD功能最新版lib[Zone Yan]

    Hibernate+Spring+Struts2+ExtJS开发CRUD功能最新版lib[Zone Yan] 2个小时才找全的啊。

    Ext学生信息系统(Spring+Struts2+ExtJs)

    "Ext学生信息系统(Spring+Struts2+ExtJs)"是一个综合性的Web应用程序,它结合了三种技术来构建一个高效的学生信息管理系统。该系统的主要特点是实现了数据的动态操作和页面的局部刷新,提供了便捷的数据管理和用户...

    Hibernate+Spring+Struts2+extjs开发的图文管理系统,完美运行

    《整合Hibernate、Spring、Struts2与ExtJS:构建高效图文管理系统》 在现代Web开发领域,企业级应用常常需要处理复杂的数据管理与用户交互。一个典型的案例是使用Hibernate、Spring、Struts2和ExtJS这四大技术栈来...

    struts2+extjs整合包

    Struts2和ExtJS是两种在Web开发领域广泛使用的开源技术。Struts2是一个基于MVC(Model-View-Controller)架构模式的Java Web框架,它简化了开发过程,提供了强大的控制层支持。而ExtJS则是一个JavaScript库,用于...

    Hibernate+Spring+Struts2+ExtJS CRUD

    在IT行业中,构建高效、可维护的Web应用是至关重要的,而SSH(Spring、Struts2、Hibernate)和ExtJS的结合使用就是一种常见的解决方案。本文将深入探讨如何利用这些技术实现CRUD(创建、读取、更新和删除)功能,并...

Global site tag (gtag.js) - Google Analytics