一.HTTP请求处理

1.获取GET请求数据

ASP.NET:Request.QueryString[name]

JSP:request.getParameter(String name);

2.解决字符串乱码问题:

NameValueCollection coding;
coding = HttpUtility.ParseQueryString(Request.Url.Query,Encoding.GetEncoding("UTF-8"));
string queryValue=coding["name"];

处理GET乱码 ASP.NET

request.setCharacterEncoding("utf-8");
//or
requert.setContentType("text/html,charset=utf-8");

JSP 处理GET乱码

二、页面间跳转

ASP.NET: Server.Transfer("move.htm");

JSP:页面forward指令:<jsp:forward page="a.jsp">    或者:request.getResultDispather("/a.jsp").forward(request,response);

2.改变url页面跳转

ASP.NET:Response.Redirect("move.htm");

JSP:response.sendRedirect("/a.jsp");

注:1和2两种跳转的区别:第一种,跳转后不会销毁request对象。第二种跳转后会销毁并重建request对象。

三、页面间传值

1.使用request对象传值

ASP.NET:a页面:Server.Transfer("b.aspx"); b页面:Request.QueryString["name"]; 即可取值。

JSP:request.setAttribute("name","jack");   request.getResultDispather("/a.jsp").forward(request,response);跳转后,String name=request.getAttribute("name");

2.使用url传值

ASP.NET:同Request.QueryString方式。

JSP: 在url中记录name value键值对,通过跳转后的页面的request.getParameter("name");

3.使用session传值

ASP.NET: Session["key"]=value;   使用 var val=Session["key"];

JSP: session.setAttribute("key","value");  使用:String val=session.getAttribute("key");

4.application传值

ASP.NET: Appliaction.Add("key","value"); 使用 Application["key"]

JSP: application.setAttribute("key","value");  使用:String val=application.getAttribute("key"); java中使用application需要解决并发的问题,最好用synchronized(application){.....something}

5.Cookie传值

ASP.NET: Response.Cookies["name"]=jack;

JSP: Cookie cook=new Cookie("name","jack");     Cookie[] cook=request.getCookies(); cook[i].getValue;

6.Page传值

ASP.NET: 设置 IButtonControl接口的控件的 PostBackUrl=url,url页面使用Page.PerviousPage属性获取上一个页面的内容。但是不能随便读取该页面的控件属性值。因为控件的属性都是protect的。同样可以判断Page.PerviousPage的IsCrossPagePostBack属性来判断是否是PostBackUrl跨页回发。用于区分它和Server.Transfer的跨页。

四、常见问题处理

1.禁用了Cookie后如何使session正常工作?(因为SessionId保存在客户端Cookie文件中。如果禁用Cookie则导致session不正常)

ASP.NET: 不会存在Cookie被禁用Session就会停止工作的现象。因为ASP.NET可以通过配置,将Session内容保存在 web.config、SqlServer、url、其他进程中

JSP: JSP需要将SessionId保存在url中进行传递。

2.如何前后台传值?

后台向前台传值:使用<%=%>,使用ajax

前台向后台传值:使用url  使用ajax 使用input隐藏域

ASP.NET和JSP相似方法总结(持续中。。)的更多相关文章

  1. ewebeditor编辑器ASP/ASPX/PHP/JSP版本漏洞利用总结及解决方法

    这个编辑器按脚本分主要有4个版本,ASP/ASPX/PHP/JSP 每个版本都有可以利用的漏洞.判断网站是否使用了eWebEditor查看程序源代码,看看源码中是否存在类似”ewebeditor.as ...

  2. ASP.NET 实现伪静态网页方法

    方法一:利用Httphandler实现URL重写(伪URL及伪静态) 我们有时候会见到这样的地址:“http://www.huoho.com/show-12-34.html”,你或许认为在站点服务器根 ...

  3. 【配置】检测到在集成的托管管道模式下不适用的ASP.NET设置的解决方法(非简单设置为【经典】模式)。

      ×   检测到在集成的托管管道模式下不适用的ASP.NET设置的解决方法(非简单设置为[经典]模式). 我们将ASP.NET程序从IIS6移植到IIS7,可能运行提示以下错误: HTTP 错误 5 ...

  4. 提高ASP.net性能的十种方法

    提高ASP.net性能的十种方法 2014-10-24  空城66  摘自 博客园  阅 67  转 1 转藏到我的图书馆   微信分享:   今天无意中看了一篇关于提高ASP.NET性能的文章,个人 ...

  5. Asp.net 与 jsp 交互 (打开或跳转页面)

    //// 打开固定大小窗体 Response.Write("<script>window.open('Tree1_edit.aspx','child','width=300,he ...

  6. [ASP.NET]更简单的方法:FormsAuthentication登录ReturnUrl使用绝对路径

    转自:http://www.cnblogs.com/dudu/p/formsauthentication-returnurl-absoluteuri.html [ASP.NET]更简单的方法:Form ...

  7. ASP.NET获取路径的方法

    原文:[转载]ASP.NET获取路径的方法 HttpContext.Current.Request.PhysicalPath;    // 获得当前页面的完整物理路径.比如 F:\XFU.NSQS\p ...

  8. ASP.NET常用加密解密方法

    ASP.NET常用加密解密方法 一.MD5加密解密 1.加密 C# 代码           public static string ToMd5(string clearString)        ...

  9. ASP.Net MVC_DotNetZip简单使用方法,解决文件压缩的问题[转]

    准备工作: 在vs工具栏中找到NuGet   下载DotNetZip   现在就可以使用DotNetZip强大的类库了,在这里我给出一些简单的使用. ? 1 2 3 4 5 6 7 8 9 10 11 ...

随机推荐

  1. hdu1007

    Have you ever played quoit in a playground? Quoit is a game in which flat rings are pitched at some ...

  2. Android:ViewPager实现屏幕轮转和使用PagerTabStrip

    ① ViewPager类直接继承了ViewGroup类,所有它是一个容器类,可以在其中添加其他的view类. ② ViewPager类需要一个PagerAdapter适配器类给它提供数据. ③ Vie ...

  3. aliyun install php apache mysql nginx

    yum install httpd -y yum install mysql mysql-server -y yum install php-mysql php-pgsql php-pecl-mong ...

  4. Python学习——struct模块的pack、unpack示例

    he struct module includes functions for converting between strings of bytes and native Python data t ...

  5. Block 块

    代码块本质上是和其他变量类似.不同的是,代码块存储的数据是一个函数体.使用代码块是,你可以像调用其他标准函数一样,传入参数数,并得到返回值. 脱字符(^)是块的语法标记.按照我们熟悉的参数语法规约所定 ...

  6. HTML a 标签 下载 apk 文件

    代码:   <a href="http://www.abc2016.com/phone_Client/shouji.apk" class="download_inp ...

  7. licens 问题 Error (292028): Specified license is not valid for this machine

    集成网卡调试的时候坏了,造成了quartus 不可以用,MAC地址不对应了... 应该怎么解决呢??.

  8. ActiveX控件的基本操作方法以及如何在VS2010下使用控件

    在此,小编就介绍下ActiveX控件的基本操作方法以及如何在VS2010下使用控件,我们以一个程序为例, (1)      打开VS2010编译器(右键以管理员身份运行,因为ActiveX需要注册), ...

  9. 学Lua(上)

    学Lua(上) 在很多游戏中,脚本语言是不可或缺的一部分,很多游戏都使用到了Lua,js,python一类的脚本,脚本语言可以在很多方面给开发进程带来帮助.脚本语言可以作为初始化文件读入变量和游戏数据 ...

  10. C++中不可重载的5个运算符

    大多数运算符都是可以重载的,但是有5个运算符C++语言规定是不可以重载的. 1. .(点运算符),通常用于去对象的成员,但是->(箭头运算符),是可以重载的 2.::(域运算符),即类名+域运算 ...