java基础:困扰jsp的一些问题与解决方法

Jsp开发遇到的70个问题及解决方法记录 我在项目工作中遇到的问题及解决方法的笔记。 立即下载

如今每一个使用servlets的开发者都知道jsp,一种由sun公司发明并花费大量精力加以推行并建构在servlet技术之上的web技术。jsp将servlet中的html代码脱离了出来,从而可以加速web应用开发和页面维护。实际上,由sun发布的官方"应用开发模型"文档上说得更远: "jsp技术应该被视为标准,而servlets在多数情况下可视为一种补充。" ( section 1.9, 1999/12/15听取意见版 )。

  本文的目的在于听取对该申明的合理性的评估 -- 通过比较jsp和另一项基于servlets的技术: template engines(模板引擎)。

  直接使用servlets的问题

  起初,servlets被发明,整个世界都看到了它的优越。基于servlet的动态网页可以被快速执行,可以在多个服务器之间轻易转移, 并且可以和后台数据库完美地集成。 servlets被广泛接受成为一种web服务器端的首选平台。
但是,通常通过简单方式即可实现的html代码现在却要让程序员通过 out.println()调用每一行html行,这在实际的 servlet应用中成为了一个严重问题。 html内容不得不通过代码来实现, 对于大的html页来说不啻是一项繁重费时的工作。另外,负责网页内容的人员不得不请开发人员来进行所有的更新。为此,人们寻求这一种更好的解决方式。

  jsp到!

  jsp 0.90出现了。在这种技术中你可以将java代码嵌入到html文件,服务器将自动为页面创建一个 servlet。 jsp被认为是一种写servlet的简易方式。所有html可以直接得到而不必通过out.println()调用,而负责页面内容的人员可以直接修改html而不必冒破坏java代码的风险。
  但是,让页面美术设计师和开发人员在同一文件上工作并不理想,让java嵌入html被证明是就象将html 嵌入java一样令人尴尬。读取一堆很乱的代码仍然是一件困难的事情。

  于是,人们在使用jsp方面变得成熟,更多地使用了javabeans。 beans包含了jsp所需的业务逻缉代码。jsp中的大多数代码都可以取出来放到bean中去,而只留下极少的标记用于调用bean。

  最近,人们开始认为这种方式下的jsp页面真的很象是视图(view)。它们成为一个用于显示客户端请求的结果的组件。于是人们会想,为什么不直接对view发送请求呢? 目标view如果对该请求不合适又将如何? 说到底,很多的请求有多种可能来取得结果view视图。例如,同一请求可能产生成功的页面,数据库例外出错报告,或者是缺少参数的出错报告。同一请求可能产生一个英文页面也可能是西班牙文页面,这取决于客户端的locale。为什么客户端必须直接将请求发送给view?为什么客户端不应该将请求发送给一些通用的服务器组件并让服务器来决定jsp view的返回?

  这使很多人接受了已被称为"model 2"的设计, 这是在jsp 0.92中定义的基于model-view-controller的模型。在这种设计中,请求被发送到一个servlet控制器,它执行了商业逻缉并产生一个相近的数据"model"来用于显示。这一数据随后通过内部送到一个jsp "view"来进行显示,这样看起来jsp页就象是一个普通的嵌入的javabean。 可以根据负责控制的servlet的内部逻辑来选择适当的jsp页面进行显示。这样,jsp文件成为了一个漂亮的template view。这就是另一种发展,并被另外一些开发者所推崇至今.

  进入template engines

  使用template engine来代替通常目的的jsp, 接下去的设计将变得简单,语法更简单,出错信息更易读,工具也更用户化。 一些公司已经做了这样的引擎,最著名的可能是webmacro (http://webmacro.org, from semiotek),他们的引擎是免费的。
  开发者应该明了,选定一个template engine来取代jsp提供了这么一些技术优势,这也正是jsp的一些不足之处:

  问题 #1: java代码太模板化了

  虽然被认为是不好的设计,jsp仍试图将java代码加入web页面。这有些象是java曾经做的,即对c++的简化修改,template engines也通过将jsp中的较低层的源码移去来使之简化。template engines实行了更好的设计。

  问题 #2: 要求java代码

  在jsp页中要求写一些java代码。例如,假设某页要决定当前web应用中根的上下文从而导向其主页,
在jsp中最好使用如下java代码:

  <a href="<%= request.getcontextpath() %>/index.html">home page</a>
 
  你可以试图避免 java代码,而使用 <jsp:getproperty> 标记但这将给你六下难以阅读的字串:

  <a href="<jsp:getproperty name="request"
  property="contextpath"/>/index.html">homepage</a>

  使用template engine则没有java代码和难看的语法。这里是同样要求下在webmacro中的写法:

  <a href=".contextpath;/index.html">home page</a>

  在webmacro中, contextpath 作为 template engines使用了其它的语法类型。
  
  再看另 一个例子,假设一个高级的"view"需要设定一个cookie来记录用户缺省的颜色配置 -- 这种任务看起来大概只能由view而不是servlet控制器来完成。在jsp中要有这样的java代码:

  <% cookie c = new cookie("colorscheme", "blue"); response.addcookie(c); %>

  在webmacro中则没有java代码:

  #set .colorscheme = "blue"

  作为最后一个离子,假如又要重新找回原来的cookie中的颜色配置。对于jsp,我们可以认为也有一个相应的工具类来提供帮助,因为用getcookies()直接做这样低层的会变得可笑而且困难。在jsp中:

  <% string colorscheme = servletutils.getcookie(request, "colorscheme"); %>

  在webmacro中没有对工具类的需要,通常是:.colorscheme.value .对写jsp的图形艺术师,又是哪一种语法更容易学习呢?

  jsp 1.1 引入了自定义标记(custom tags)允许任意的和html相似的标记在jsp页面中在后台执行java代码,这将具有一定的价值,但前提是要有一个广泛知晓的,全功能的,可以免费得到的,标准化的标记库。目前还没有出现这样的标记库。

  问题 #3: 简单工作仍然很累人

  即使是很简单的工作,例如包含 header和 footer,在jsp中仍然很很困难。 假设有一个 "header"和一个 "footer"模板要包含到所有页面,而每一个模板要在content中包含当前的页标题。
在jsp中最佳办法是:
  <% string title = "the page title"; %>
  <%@ include file="/header.jsp" %>
  ...你的页面内容...
  <%@ include file="/footer.jsp" %>

  页面设计者要记住不能遗漏第一行的分号并要将title定义为一个字符串。此外, /header.jsp和/footer.jsp必须在根目录下并且必须是可存取的完整文件。
  在webmacro中包含headers和footers做起来比较简单:

  #set 24 = "the page title"
  #parse "header.wm"
  your content here
  #parse "footer.wm"

  这里对设计者来说没有要牢记的分号或对title的定义, .wm文件可以放在可自定义的搜索路径下。

  问题 #4: 很粗的循环

  在jsp中循环很困难。这里是用jsp重复打印出每一个isp对象名字。
  <%
  enumeration e = list.elements();
  while (e.hasmoreelements()) {
  out.print("the next name is ");
  out.println(((isp)e.nextelement()).getname());
  out.print("<br>");
  }
  %>

  也许什么时候会有用户自定义标记来做这些循环。对"if"也是如此。jsp页可能看上去成了很古怪的java代码。而同时,webmacro循环很漂亮:
  #foreach in {
  the next name is .name <br>
  }

  如果必要的话,#foreach指令可被自定义的 #foreach-backwards指令很容易地取代。

  用jsp的话很可能变这样:(这里是一个可能的 <foreach>标记)

  <foreach item="isp" list="isps">
  the next name is <jsp:getproperty name="isp" property="name"/> <br>
  </foreach>

  设计者当然地回选择前者。
  问题 #5: 无用的出错信息

  jsp常有一些令人惊讶的出错信息。这是因为页面首先被转换成为一个servlet然后才进行编译。好的jsp 工具可以相对增加找到出错位置的可能性,但即使是最好的工具也无法使所有出错信息都能容易地被读懂。由于转化的过程,一些错误对工具来说可能根本不可能被识别。
例如,假设jsp页面需要建立一个对所有页通用的标题。以下代码并没有错:

  <% static string title = "global title"; %>

  但tomcat会提供以下出错信息:
  work/%3a8080%2f/jc_0002ejspjc_jsp_1.java:70: statement expected.
  static int count = 0;
  ^

  此信息认为以上脚本被放入 _jspservice()方法而静态变量不允许放入方法中。该语法应该是 <%! %>。页面设计者很难读懂这些出错信息。即使最好的平台在这方面也做得很不够。即使所有 java代码都从页中移出也无法解决问题。另外,以下表达式有什么错?

  <% count %>
  tomcat给出:
  work/8080/_0002ftest_0002ejsptest_jsp_0.java:56: class count not found in
  type declaration.
  count
  ^
  work/8080/_0002ftest_0002ejsptest_jsp_0.java:59: invalid declaration.
  out.write("/r/n");
  ^

  换句话说,只是遗失了一个标记而已。应该是 <%= count %>。

  由于template engine可以在template文件中直接产生而没有任何戏剧性的向代码转化,所以可以非常容易地给出适当的出错报告。 依次类推,当c语言的命令被打入unix shell的命令行, 你并不希望shell 会生成一个c程序来运行这个命令,而只是需要shell简单地解释命令并加以执行,如有错误也直接给出。

  问题 #6: 需要一个编译器

  jsp需要一个置放在webserver中的编译器。由于sun拒绝放弃包含了他们的javac编译器的tools.jar库, 这其中就变得有问题了。web服务器可以包含进一个第三方的编译器如ibm的 jikes。但这样的编译器并不能在所有平台上顺利工作(用 c++写成的) 也不利于建立纯java 的web服务器。 jsp有一个预编译选项可以起到一定作用,尽管并不完美。

  问题 #7: 空间的浪费

  jsp消耗了额外的内存和硬盘空间。对服务器上每30k的jsp文件,必须要有相应的大于30k的类文件产生。实际上使得硬盘空间加倍。考虑到jsp文件随时可以很容易地通过 <%@ include>包含一个大的数据文件,这样的关注有着很现实的意义。同时,每一个jsp的类文件数据必须加载到服务器的内存中,这意味着服务器的内存必须永远地将整个jsp文档树保存下去。少数一些jvm有能力将类文件数据从内存中移去;但是,程序员通常无法控制这样的规则来重新申明,而且对大的站点来说重新申明可能不是很有效。对template engines由于没有产生第二个文件,所以节省了空间。template engines还为程序员提供对templates在内存中进行缓存的完全控制。

  使用template engine也有一些问题:

  template的问题 #1: 没有严格定义

  template engine该如何工作并没有严格定义。可是,但相对jsp来说,其实这并不很重要,和 jsp不同的是,template engines对web服务器没有任何特殊要求 -- 任何支持servlet的服务器都可以支持template engines (包括api 2.0服务器如apache/jserv,它们并不能完全支持 jsp)! 如果为最好的template engine设计提供健康的竞争本可以引起一场耀眼的革新,特别是有开放源码的促进,(可以让思想相互推动和促进),那么今天的webmacro就会象perl一样,没有严格定义但公开源码组织的推动就是它的标准。

  template的问题 #2: 没有获得公认

  template engines并未被广泛知晓。jsp已经占据了极大的商业市场,并且深入人心。而使用g template engines只能是一种未被了解的替代技术。

  template的问题 #3: 尚未调配好

  template engines还没有被高度地调配好。没有对template engine 和jsp两者进行性能测试和比较。理论上说一个调配完好的template engine实现应该和一个调配好的jsp相匹配;但是,考虑到第三方为jsp已经作出了这么深远的推动,结果只有jsp被很好地调配好了。

  jsp的角色

  当然地,jsp在将来必然会有其地位。即使从名称上也可以看出jsp和asp的相似性,它们只有一个字母的差别。所以如果要让使用asp的人们转向java,非常相似的jsp环境将对此起到很大的推动作用,和asp保持这种对应关系所能起到的作用应该也是被推出jsp的设计者重点考虑到的。
然而这里想要强调的一点是:有利于转入新环境的工作者,以及实际上是否是使用该环境的最佳方式,这两者是有很大不同的。

  jsp日益显示出它正成为最重要的java技术之一, 它让人们离开asp的世界 -- 由此,sun将支持这一强有力的商业case, java相关技术支持者也将给予更大力的支持。

  可是,这并非java平台的最佳解决方案。这将使java解决方案变得好象是没有java的解决方案了。

     (责任编辑:包春林)


2026闲鱼数据采集实战:本地YOLO识别滑块验证码+接口签名分析+零成本价格监控系统 2026闲鱼反爬系统升级实战:零成本解决方案 本文针对2026年闲鱼最新反爬机制提出了一套完整的零成本解决方案。系统面临四大挑战:AI滑块验证、接口签名升级、设备指纹绑定和精细化行为检测。通过以下技术突破实现稳定运行: 本地化AI破解:训练YOLOv11n模型实现98%准确率的滑块识别,替代付费打码平台 逆向工程:Hook闲鱼App签名算法,用Python重写HMAC-SHA256签名生成器 设备指纹管理:建立"一机一号一IP"机制,维护50+种设备特征 行为模拟:开发四阶段滑动轨迹模型 阅读详情

相关推荐

ANSYS Sherlock新手避坑:从ODB++文件导入到属性匹配的完整流程(附官方教程路径)

本文详细解析了ANSYS Sherlock从ODB++文件导入到属性匹配的完整流程,帮助新手避开常见陷阱。内容包括环境准备、官方教程使用技巧、ODB++导入关键检查点、属性验证策略及常见报错解决方案,特别强调了路径设置和材料匹配的重要性,提升仿真效率。

weixin_42519781的博客 456

WEB容器内解决JSP后门的一种方式

JSP后门,本来是比较少的,但还是存在漏洞,被“有心之人”利用了,jsp后门主要从上传图片合并jsp后门,到服务器,后,执行jsp,包括所谓的菜刀,服务器中招之后,发现后门jsp,用nginx 方式禁止upload目录执行jsp,暂时解决问题:        location ~ ^/(upload|download)/.*\.(jsp)$ { deny all; } 但是还是不能从根

chinajust的专栏 2824

GitLab教程(四):分支(branch)和合并(merge)

命令进行合并时,Git具备一定的智能自动化处理能力:如果一个分支仅修改了文件A,而另一个分支独立地修改了文件B,Git能够无缝整合这些更改,自动完成合并过程——即最终的代码既包含了对A文件的修改也包含了对B文件的修改。同样地,若两个分支虽然都修改了同一个文件,但涉及的是文件中互不重叠的部分,比如一个改动发生在第一行,另一个则在第二行,Git同样能巧妙地自动合并这些非冲突性修改。获取了远程分支的最新变化,或者当你想要合并本地的一个分支到当前分支时,就会用到这个命令。,默认会尝试合并远程分支到当前分支。

TracyCoder的博客 7889

两种“新型”的javaweb后门(jspx和Java Logger)

利用这个可以突破st2下 强制jsp跳转login.jsp 利用jspx解决jsp后缀被限制拿shell - Hack Blog | 黑客博客http://www.hackblog.cn/post/45.html 两种“新型”的javaweb后门(jspx和Java Logger) | HuGtion's Bloghttps://www.hugtion.com/?p=768 关于J...

weixin_30564785的博客 508

使用vcpkg快速安装opencascade并自动配置部署开发环境

广泛的开源库:vcpkg 提供了上千个流行的 C++ 开源库,用户可以通过简单的命令安装和集成这些库,包括 Boost、OpenCV、SQLite、fmt 等。确保包版本一致性:通过 vcpkg.json 文件,开发者可以指定依赖的库版本,确保项目在不同环境下的构建结果一致,避免由于依赖库版本不一致而导致的构建问题。强大的社区支持:Vcpkg 是开源项目,拥有活跃的社区和微软团队的支持,提供了稳定的更新和问题修复。快速更新:Vcpkg 社区活跃,库的更新速度较快,开发者可以迅速获得库的最新版本。

loujiand的博客 2295

文华指标源码—区间彩带

这就是当年东方财富软件终端里主打经典的指标、主要揭示主力成本区域。

qq2054129753的博客 893

static关键字和异常

static关键字的用法,异常的捕捉和抛出基本语法格式

m0_73050509的博客 318

保姆级教程:手把手教你为裕泰微YT8521 PHY芯片编写Linux设备树(DTS)节点与驱动

本文提供了一份详细的保姆级教程,手把手教你为裕泰微YT8521 PHY芯片编写Linux设备树(DTS)节点与驱动。从基础配置到RGMII接口的特殊设置,再到驱动开发的关键步骤和调试技巧,帮助开发者快速掌握PHY芯片的移植与开发。

weixin_33734785的博客 336

idea编写js时爆红,提示statement expected

    这是因为当前的js编译工具太旧,换个新的就好。具体做法:        file---setting       

mlsama的博客 4万+

基于阿里云物联网平台设计的实时图传系统_采用MQTT协议传输图像

当前基于MQTT协议设计了一个实时图传系统,通过这个项目来演示,两个MQTT设备如何互相订阅,进行消息流转。 在阿里云服务器上创建2个设备,分为为设备A和设备B;设备A负责采集本地摄像头画面上传,设备B负责接收设备A上传的数据然后解析显示出来。在阿里云服务器上需要配置云产品流转,让设备A的数据上传后自动发送给设备B。这样就完成了视频画面数据的流转。不过因为阿里云的最大数据限制,每次最大发送10240字节的数据。

1万+

基于Python的MOOC课程评价爬取与分析系统设计与实现

本文详细介绍了如何使用Python最新技术栈构建一个高效的MOOC课程评价爬取与分析系统。系统采用Scrapy框架结合Selenium实现动态页面抓取,利用PyMySQL进行数据存储,并通过Pandas和Matplotlib实现数据可视化分析。文章从爬虫原理、技术选型、系统设计到代码实现进行全面讲解,为教育工作者改进教学质量提供数据支持。关键词:Python爬虫、MOOC评价分析、Scrapy框架、数据可视化、教学改进。

2201_76125261的博客 1103

jsp的5个不足之处

1. JSP只有对java相当熟悉的人才能用得很好。 而当前,Java程序员还比较少。 2. JSP程序调试困难。jsp页面首先被转化为一个.java文件(servlet),然后再被编译。这样,出错信息实际上指向的是经过转化的那个 .java文件而不是jsp本身。例如在.jsp文件第一行的错误可能被显示为第20行。如果试图通过反跟踪来解决这个问题有时会使结果显得很滑稽。(但是,在Resin的引擎中

weqa的专栏 2137

基于Matlab生成并可视化多架飞机轨迹仿真(附源码)

这使我们可以轻松地对直线和恒定转弯进行建模,并具有额外的自由度,可以在直线段和曲线段之间平滑过渡。同样,空气中的物体会经历重力的影响,遵循抛物线(二次)路径。需要更多的航点来适应这些变化,但是轨迹的其余部分需要更少的点。第三个轨迹,如下所示,代表了一架速度更高的飞机。它由两个恒定的转弯组成,飞机在第二个转弯的中间减速。一旦知道(并设置了)物体穿过空间的物理路径,物体的速度作为行进距离的函数就通过三次埃尔米特插值来确定。在此示例中,学习了内部使用的插值符背后的概念,并展示了如何使用少量航点重现场景。

珞瑜的博客 5466

解决JSP中文乱码问题

转载自:解决JSP中文乱码问题 文章目录前言一、 JSP页面乱码1、未指定使用字符集编码1、编码字符集设置不一致二、 表单提交中文时出现乱码1、POST提交方式A、 接受参数时进行编码转换B、通过request.seCharacterEncoding ("gb2312")对请求进行统一编码,就实现了中文的正常显示。C、为了避免每页都要写request.setCharacterEncoding("gb2312"),可以使用过滤器对所有jsp1、GET提交方式A、 使用POST提交方式解决办法的第一种方式,对接

GD_vigoss的博客 7614

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

项目实践中遇到的一些问题及解决方法

vue中遇到的一些问题及解决方法1.vue中,a 标签绑定点击事件发送请求失败的问题 1.vue中,a 标签绑定点击事件发送请求失败的问题 a 标签默认行为是发送href后面的请求,所以即使你绑定了点击事件中的请求,请求依然不会发送,所以要阻止 a 标签的默认行为 。Vue中使用 .prevent 阻止默认行为。如下: <a href.prevent="" @click="back">退出登录</a> ...

码出精彩 3967

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

JSP中文乱码问题解决方法小结

在使用JSP的过程中,最使人头疼的一个问题就是中文乱码问题,以下是我在软件开发中遇到的乱码问题以及解决方法。 1、JSP页面乱码   这种乱码的原因是应为没有在页面里指定使用的字符集编码,解决方法:只要在页面开始地方用下面代码指定字符集编码即可, 2、数据库乱码   这种乱码会使你插入数据库的中文变成乱码,或者读出显示时也是乱码,解决方法如下:   在数据库连接字符串中加入编码字符集

wangdabin_1216的专栏 767

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Java 中文问题的解决 mysql, oracle, servlet, jsp

在tomcat5中发现了以前处理tomcat4的方法不能适用于处理直接通过url提交的请求,上网找资料终于发现了最完美的解决办法,不用每个地方都转换了,而且无论get,和post都正常。写了个文档,贴出来希望跟我有同样问题的人不再像我一样痛苦一次:-)上传文件有问题,只好直接贴了,难看点:-)-------------------Tomcat 5中文问题author:kiss__sky@163.c

seaso的专栏 888

(转载)Java中文问题及最优解决方法

近日,由于中文问题的困饶,于是从csdn上,开始搜比较好的解决方案,这个方法不错,涉及到各个方面.基本上都可以处理所有在jsp.servlet.等j2ee开中所涉及到的中文乱码等问题....希望对你也有帮助.转自:http://kb.youkuaiyun.com/java/articles/200507/e0250084-7ca0-4de4-be4b-53fdd9f233e8.htmlJava中文问题及最优解

bohemia的专栏 1478

关于IDEA中JSP无法出现提示并且代码没有问题出现报错的情况解决

在用IDEA学习Java web的过程中,大家应该都遇见过令人头疼的JSP无法出现提示,并且代码没有错误缺爆红报错的问题。今天在整理的时候,更改了一些路径,然后偶然发现了这个解决办法。 相信大家在看这条前也看过别人写的文章,如下载插件、添加项目依赖、添加包等。 我也看过,我也试过他们的办法,但是我的就还是一样没有提示,爆红报错,如果大家也跟我一样,原因应该是Tomcat中的configure中的Application Servers的Libraries没有添加上对应的包。 方法如下: 1.打开Tomcat的

weixin_45807612的博客 5765

javaweb跳转jsp页面时变成下载jsp文件解决方法s

解决javaweb跳转jsp页面变成下载jsp文件的问题,网上并没有这类解决方法,遂写下这篇文章,望有用。

Slender_X的博客 4720

困扰JSP的一些问题与解决方法--Java自学网

如今每一个使用servlets的开发者都知道JSP,一种由Sun公司发明并花费大量精力加以推行并建构在servlet技术之上的web技术。JSP将servlet中的html代码脱离了出来,从而可以加速web应用开发和页面维护。实际上,由Sun发布的官方"应用开发模型"文档上说得更远: "JSP技术应该被视为标准,而servlets在多数情况下可视为一种补充。" ( Section 1.9, 199

316

java jsp 乱码_解决JSP中文乱码问题

大家在JSP的开发过程中,经常出现中文乱码的问题,可能一至困扰着大家,现把JSP开发中遇到的中文乱码的问题及解决办法写出来供大家参考。首先了解一下Java中文问题的由来:Java的内核和class文件是基于unicode的,这使Java程序具有良好的跨平台性,但也带来了一些中文乱码问题的麻烦。原因主要有两方面,Java和JSP文件本身编译时产生的乱码问题和Java程序于其他媒介交互产生的乱码问题。...

weixin_39571219的博客 487

JavaWeb项目 jsp页面无法加载样式问题

记录困扰我多天的一个关于Java web 项目问题 项目之前完美运行,不知道添加了什么,运行之后无法加载样式 查过过滤器 发现 也没有拦截 也放行了 重启电脑 重启eclipse 卸载tomcat重装都没有解决 换电脑完美运行 原因 jsp页面是由html改的 原表头 <%@ page language="java" contentType="text/html; charset=UTF...

weixin_41345933的博客 1万+

jsp中文乱码问题解决

大家在JSP的开发过程中,经常出现中文乱码的问题,可能一至困扰着大家,现把JSP开发中遇到的中文乱码的问题及解决办法写出来供大家参考。首先了解一下Java中文问题的由来: Java的内核和class文件是基于unicode的,这使Java程序具有良好的跨平台性,但也带来了一些中文乱码问题的麻烦。原因主要有两方面,Java和JSP文件本身编译时产生的乱码问题和Java程序于其他媒介交互产生的乱码问

WITNESS 1495

解决问题:Unable to compile class for JSP

解决问题:Unable to compile class for JSP

u010697988的专栏 2万+

Java JSP乱码(中文问题)解决大全

Java JSP乱码(中文问题)解决大全 1.问题的起源   每个国家(或区域)都规定了计算机信息交换用的字符编码集,如美国的 ASCII,中国的 GB2312-80,日本的 JIS 等,作为该国家/区域内信息处理的基础,有着统一编码的重要作用。字符编码集按长度分为 SBCS(单字节字符集),DBCS(双字节字符集)两大类。早期的软件(尤其是操作系统),为了解决本地字符信息的计算机处理,出现...

xgbjmxn的专栏 471
上一篇: 美峰数码科技招聘j2me开发工程师等英才
下一篇: jsp的设计模式基础:view helper模式
Labber
博客等级 码龄19年 26粉丝 1976原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值