易截截图软件、单文件、免安装、纯绿色、仅160KB

Intellij8中Maven打包时jsp和servlet组件冲突解决办法

    最近在改别人的一个模块程序时,是用Intellij Idea8做的,项目是用Maven来管理的,Web模块引用到了jsp-api.jar和servlet-api.jar,结果在用Maven打包时,war文件中直接包装了这两个文件,而这两个文件和Tomcat本身的文件有冲突,导致了应用程序不能加载。
    本来自己对Idea也不熟悉,对Maven也不懂,搞了好久,始终没有解决,只能先生成,然后再删除这两个文件。因为如果不用Maven生成,直接用Idea的Build生成,那么其中的资源文件又是乱码,界面上全是蚂蚁在爬,心里麻得乱七八糟。
    找了好多资料,终于在这里找到了需要的说明:
http://macrochen.javaeye.com/blog/246170
http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html 
http://www.360doc.com/content/07/0727/14/27908_636504.shtml
    原来可以在pom文件中配置时加个<scope>参数,使用provided就可以期望应用服务器将提供这个支持,如,我需要jsp-api和servlet-api支持,则我可以配置为:
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jsp-api</artifactId>
            <version>2.0</version>
            <scope>provided</scope>   <!--这里说明jsp-api.jar文件将由应用服务器提供,打包时不需要包含-->
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jstl</artifactId>
            <version>1.1.2</version>   <!--这里没有指定scope参数,说明默认


相关文档:

jsp的pageEncoding和contentType

pageEncoding是jsp文件本身的编码
contentType的charset是指服务器发送给客户端时的内容编码
JSP要经过两次的“编码”,第一阶段会用pageEncoding,第二阶段会用utf-8至utf-8,第三阶段就是由Tomcat出来的网页, 用的是contentType。
第一阶段是jsp编译成.java,它会根据pageEncoding的设定读取jsp,结果是 ......

JSP九大内置对象及四个作用域

九大对象:
内置对象(又叫隐含对象,有9个内置对象):不需要预先声明就可以在脚本代码和表达式中随意使用
1-out:
javax.servlet.jsp.JspWriter类型,代表输出流的对象。作用域为page(页面执行期)
request:javax.servlet.ServletRequest的子类型,此对象封装了由WEB浏览器或其它客户端生成地HTTP
请求的细节(参数 ......

JSP 容器的初始化和销毁 ServletContext(转)

ServletContext 被 Servlet 程序用来与 Web 容器通信。例如写日志,转发请求。每一个 Web
应用程序含有一个Context,被Web应用内的各个程序共享。因为Context可以用来保存资源并且共享,所以我所知道的
ServletContext 的最大应用是Web缓存----把不经常更改的内容读入内存,所以服务器响应请求的时候就不需要进行慢速的磁 ......

jquery直接显示jsp返回的数据

jQuery是目前一个很流行的js框架,它也提供了对ajax很好的支持。使用ajax异步请求数据时,如果服务器返回的一个列表数据,通常的做法是把列表数据转换成json格式的数据,然后返回到页面,使用jQuery进行解析并用表格来显示,这要求你对javascript解析json很熟透。
我在这里提供一种投机取巧的做法,使用jQuery发送异步请求 ......

jsp页面导出excel 并且可以弹出保存对话框

主要在jsp页面加入
<%@ page contentType="application/msexcel;charset=GBK"%>
<%
   response.setHeader("Content-disposition",
   "attachment; filename=shouExcel.xls");
%>
完整页面如下:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号