随笔分类 - Java Web
摘要:Action只是Struts2控制器的一部分,所以它不能直接生成对浏览者的响应。Action只负责生成响应的视图组件,通常是JSP页面,而Action会为JSP页面提供显示数据。 Action处理完用户的请求后,将会返回一个普通字符串(称之为逻辑视图),Struts2框架收到这个逻辑视图后,把请求转发到对应的视图资源,视图资源将结果呈现给用户。必须在struts.xml文件中完成...
阅读全文
摘要:一、使用Action的动态方法调用 如果一个页面包含多个按钮,系统分别提交给Action的不同方法处理.此时可以采用DMI(Dynamic Method Invocation,动态方法调用)来处理这种请求。动态方法调用是指表单元素的Action并不是直接等于某个Action名字,而且以如下形式指定表单的Action属性: action="ActionName!methodNa...
阅读全文
摘要:在默认情况下,Struts2只自动加载类加载路径下的struts.xml.default-struts.xml和struts-plugin.xml三类文件。但是随着应用规模的增大,系统中Action数量也大量增加,将导致struts.xml非常臃肿。为了避免这种这情况,我们可以将struts.xml配置文件分解成多个配置文件,然后在struts.xml文件中包含其他配置文件。被包含的配置文件也是标准的Struts2配置文件,一样包含了DTD信息,根元素等信息。以下是struts.xml配置文件的示范。 value...
阅读全文
摘要:1、在web.xml文件中定义核心Filter来拦截用户请求。 struts2 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter struts2 /* 2、定义用户请求的Action类。Action是MVC中的C,也就是控制器。说白了就是编写Java源文件来处理用户请求。MVC框架的底层机制是:核心Servlet或Filter接收到用户请求后,通常会对用户请求进行简单处理,然后通过反射来创建Action实例,并调用Action的指定方法来处理用户请求。那么,如何知道创建哪个Action的...
阅读全文
摘要:创建Servlet实例有两个时机:用户请求之时和应用启动之时。应用启动之时创建的通常用于某些后台服务的Servlet。配置load-on-startup的Servlet有两种方式:在web.xml文件中通过元素的子元素进行配置。通过@WenServlet Annotation的loadOnStartuo属性指定。元素或loadOnStartup属性都只接收一个整型值,值越小,Servlet就越先实例化.配置示例: ServletToJsp ServletToJsp 1@WebServlet(loadOnStartup=1)public class TimeServlet extends H..
阅读全文
摘要:为了让Servlet能响应用户的请求,需要将Servlet配置在Web应用中。从Servlet3.0开始,配置Servlet有两种方式:l 在Servlet类中使用@WebServlet Annotation进行配置。l 通过在Web.xml文件中进行配置。WebServlet Annotation常用属性属性是否必要说明asyncSupported否指定该Servlet是否支持异步操作模式displayName否指定该Servlet的显示名称initParams否用于为该Servlet配置参数loadOnStartup否用于将Servlet配置成load-on-startup的Servlet
阅读全文
摘要:request对象是JSP中重要的对象,每个request对象封装着一次用户的请求,并且所有的请求参数都被封装在request对象中,因此request对象是获取请求参数的重要途径。一、获取请求头与请求参数web应用是请求/响应架构的应用,浏览器发送请求时通常总会附带一些请求头,还可能包含一些请求参数发送给服务器,服务器端负责解析请求头/请求参数的就是JSP或Servlet,而JSP和Servlet取的请求参数的途径就是request。request是httpServletRequest接口的实例,它提供了如下方法来获得请求参数:String getParameter(String param
阅读全文
摘要:运行环境:window 7 64位 JSP服务器 tomcat 7现象:无法访问JSP页面,如下图所示:问题原因:JSP指令的属性拼写错误。(我可真够愚蠢的!!)
阅读全文
摘要:JSP脚本中包含9个内置对象,这9个内置对象都是Servlet API接口的实例,只是JSP规范对它们进行了默认初始化。也就是说它们已经是对象,可以直接使用。我们随意打开一个由JSP页面生成的Servlet类文件,可以看到如下代码片段:public void _jspService(final javax.servlet.http.HttpServletRequest reques...
阅读全文
摘要:虽然常把Web应用称为B/S架构的应用,但其实Web应用一样是C/S结构的应用,只是这种应用的服务器是Web服务器,而客户端是浏览器。现在抛开Web应用直接看Web服务器和浏览器。Web服务器负责接收客户端请求,每当接收到客户端连接请求之后,Web服务器应该使用单独的线程为客户端提供服务。Web应用架构总是先由客户端发送请求,服务器接收到请求后送回响应的数据,所以将这种架构称做"请求/响应"架构。Web服务器大致需要以下几个步骤:启动单独的线程;使用I/O流读取用户的请求数据;从请求数据中解析参数;处理用户请求;生成响应数据;使用I/O流向客户端发送请求数据。上述中的,1、
阅读全文
摘要:简介这三个指令都是与JavaBean相关的指令,其中useBean指令用于在JSP页面中初始化一个Java实例;setProperty指令用于为JavaBean实例的属性设置值;getProperty指令用于输出JavaBean实例的属性。如果多个JSP页面需要重复使用某段代码,我们可以把这段代码定义成Java类的方法,然后让多个JSP页面调用该方法即可,这样可以达到很好的代码复用。语法格式use...
阅读全文
摘要:采用include指令导入的页面输入静态导入,采用指令属于动态导入。 语法格式如下: }" flush="true"> 动态导入与静态导入的区别: 静态导入是将被导入的页面的代码完全融入,两个页面融合在一个整天Servlet;而动态导入在Servlet中使用include方法来引入被导入页面的内容. 静态导入时被导入页面的编译指令会起作用;而动态导入时被导入页面的编译指令则失去作用,只是...
阅读全文
摘要:forward指令用于将页面响应转发到另外的页面。既可以转发到静态的HTML页面,也可以转发到动态的JSP页面,或者转发到容器中的Servlet。 forward指令格式如下:}"> {jsp:param..../>}jsp: param用于在转发时增加额外的请求参数。请求参数的值可以通过HttpServletRequest类的getParameter()方法获得。下面是代码实例:jsp-forw...
阅读全文
摘要:一、session介绍 Session用于保存服务端与客户端“会话”的信息。例如你逛淘宝时添加到购物车中的商品的信息就是保存到Session中。与Cookies不同的是,Session保存在服务端。每个客户端会有一个与之关联的Session,服务器会将Session的ID写到客户端的Cookies或者URL。如果客户端禁止Cookies了,服务器会将ID写到URL中。 二、S...
阅读全文
摘要:dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的。dom4j是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件,可以在SourceForge上找到它。在IBM developerWorks上面可以找到一篇文章,对主流的Java XML API进行的性能、功能和易用性的评测,dom4j无论在那个方面都是非常出色的。如今你可以看到越来越多的Java软件都在使用dom4j来读写XML,特别值得一提的是连Sun的JAXM也在用dom4j。这是必须使用的jar包, Hibernate用它来读写配置文件。1
阅读全文
摘要:配置启动Tomcat:1、下载tomcat的压缩包。下载地址2、解压下载下来的安装包。我喜欢解压在D:\Program Files\。3、在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量CATALINA_HOME :D:\Program Files\apache-tomcat-7.0.39CATALINA_BASE:D:\Program Files\apache-tomcat-7.0.39TOMCAT_HOME:D:\Program Files\apache-tomcat-7.0.39修改classpath变量。将%CATALINA_HOME%\li
阅读全文

浙公网安备 33010602011771号