• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    搭建EXTJS和STRUTS2框架(ext和struts2简单实例)

    新建一个工程struts2工程teaweb(因为现在所做的项目是一个关于茶叶,茶文化的),导入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>

    您可能感兴趣的文章:
    • 关于Struts2的类型转换详解
    • struts2单个文件上传的两种实现方式
    • Java以struts2为例介绍如何实现图片上传
    • java Struts2 在拦截器里的跳转问题
    • 如何解决struts2日期类型转换
    • struts2 中文乱码的解决办法分享
    • struts2中simple主题下s:fieldError>标签默认样式的移除方法
    上一篇:传智播客java web 过滤器
    下一篇:JSP 获取真实IP地址的代码
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    搭建EXTJS和STRUTS2框架(ext和struts2简单实例) 搭建,EXTJS,和,STRUTS2,框架,