
java>j2ee及web
文章平均质量分 89
j2ee及web
和代码去流浪
这个作者很懒,什么都没留下…
展开
-
Web容器、Servlet容器、Spring容器、SpringMVC容器之间的关系
以下内容为个人理解,如有误还请留言指出,不胜感激!Web容器web容器(web服务器)主要有:Apache、IIS、Tomcat、Jetty、JBoss、webLogic等,而Tomcat、Jetty、JBoss、webLogic同时也是servlet容器,或者说他们还包含了servlet容器。没有servlet容器,你也可以用web容器直接访问静态页面,比如安装一个apache等,但是如果要显示jsp/servlet,你就要安装一个servlet容器了,但是光有servlet容器是不够的,因.转载 2021-10-24 19:02:55 · 634 阅读 · 0 评论 -
JavaWeb 三大器--Listener、Filter 和Interceptor 总结
说明:web.xml的加载顺序是:【Context-Param】->【Listener】->【Filter】->【Servlet】,而同个类型之间的实际程序调用的时候的顺序是根据对应的Mapping的顺序进行调用。详细介绍:web.xml加载顺序与web.xml常用节点解析一、背景这段时间因为工作不忙,所以有时间来总结整理一下之前遇到的一些问题。在之前项目开发过程中碰...转载 2020-01-27 23:39:51 · 315 阅读 · 0 评论 -
Content-Type引发的服务端收不到HTTP请求参数的问题
问题现象:前端POST请求参数已经传过来了,Java后端Debug也能进到请求里,可就是取不到请求参数。用Chrome 开发者工具可以看到请求的不同:可以看到请求参数一个在Form Data中,一个在Request Payload中,而且格式也不同。不同的原因就在于Content-Type设置不同。HTTP Content-Type 用于标识传输数据的类型。在请求中,Conte...转载 2020-01-27 23:38:35 · 1195 阅读 · 0 评论 -
session详解
什么是Session对Tomcat而言,Session是一块在服务器开辟的内存空间,其存储结构为ConcurrentHashMap;Session的目的Http协议是一种无状态协议,即每次服务端接收到客户端的请求时,都是一个全新的请求,服务器并不知道客户端的历史请求记录;Session的主要目的就是为了弥补Http的无状态特性。简单的说,就是服务器可以利用session存储客户...转载 2020-01-22 18:28:19 · 478 阅读 · 0 评论 -
ThreadLocal的理解和使用
1.ThreadLocal初步早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。ThreadLocal很容易让人望文生义,想当然地认为是一个“本地线程”。其实,ThreadLocal并不是一个Thread,而是Thread的局部变量,也许把它命...转载 2020-01-22 18:25:27 · 705 阅读 · 0 评论 -
Servlet的Cookie与Seesion的介绍
什么是Cookie?Cookie是服务器在本地机器上存储的小段文本,它是一个简单的字符串形式的键值对。网络服务器用HTTP头向客户端发送cookie,(一般情况下Cookie是由服务端生成的,当然js也能操作cookie)在客户端,浏览器解析这些cookies并将它们保存到本地,而后当浏览器访问这个服务器时,它会在任何请求上加上这些cookie。说白了就是每次你和服务器的交互都会带着这些co...转载 2020-01-22 17:53:53 · 159 阅读 · 0 评论 -
JNDI 资源
第 6 章 JNDI 资源Java 命名和目录接口 (Java Naming and Directory Interface, JNDI) 是一种应用编程接口 (application programming interface, API),用于访问不同类型的命名和目录服务。Java EE 组件通过调用 JNDI 查找方法来定位对象。JNDI 是 Java 命名和 API 目录接口的首字母...转载 2020-01-21 22:28:05 · 580 阅读 · 0 评论 -
JNDI 的架构和原理
什么是 JNDI ( Java Naming and Directory Interface )JNDI 是用于访问不同命名和目录服务的统一 API 接口;JNDI 的架构和原理架构:第一层: java 代码,是访问 JNDI 的代码;第二层: JNDI API :统一的命名和目录服务接口第三层: JNDI Naming Manager : JNDI 管理器第四层: ...转载 2020-01-21 22:26:56 · 1406 阅读 · 1 评论 -
tomcat架构分析 (JNDI体系绑定)
在tomcat架构分析 (JNDI配置)一文里,以配置JDBC数据库连接为例,介绍了tomcat中常用的JNDI配置的几种用法。使用这种配置,在app里可以通过JNDI API非常简单的调用相应的资源对象。但是调用越简单,那其背后封装的逻辑越多。就好比汽车分为手动档自动挡一样。对司机而言,自动挡开起来会轻松很多,那是因为很多复杂的操作,已经封装起来由机器来完成了。本篇就是从代码原理角度来揭示to...转载 2020-01-21 22:25:23 · 411 阅读 · 0 评论 -
SpringMVC与Freemarker的集成以及多视图解析器配置
一、Spring MVC视图解析器视图解析器的工作流程大致是这样的:Controller的某个方法执行完成以后,返回一个视图(比如:listUser),视图解析器要做的工作就是找到某个对象来完成视图的渲染,或者跳转到其他的逻辑视图。这里的渲染对象通常就是我们的jsp文件或者我们下面用的Freemarker(例如listUser.jsp或者listUser.ftl)。渲染完成以后,将解析结果发...转载 2020-01-03 23:34:20 · 357 阅读 · 0 评论 -
Spring mvc整合freemarker详解
1.什么是FreeMarkerFreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写 FreeMarker被设计用来生成HTML Web页面,特别是基于MVC模式的应用程序 虽然FreeMarker具有一些编程的能力,但通常由Java程序准备要显示的数据,由FreeMarker生成页面,通过模板显示准备的数据(如下图) 2.FreeMarker特性...转载 2020-01-03 23:32:14 · 198 阅读 · 0 评论 -
全面探索 FreeMarker 模版引擎的扩展性
FreeMarker 模版引擎简介FreeMarker 是一个采用 Java 开发的模版引擎,是一个基于模版生成文本的通用工具。 FreeMarker 被设计用来生成 HTML Web 页面,特别是基于 MVC 模式的应用程序。虽然 FreeMarker 具有一些编程的能力,但通常由 Java 程序准备要显示的数据,由 FreeMarker 生成页面,并通过模板显示准备的数据(如下图)。图...转载 2020-01-03 23:29:43 · 145 阅读 · 0 评论 -
FreeMarker模板引擎与动态页面静态化
目录一、FreeMarker简介 二、第一个FreeMark示例 2.1、新建一个Maven项目 2.2、添加依赖 2.3、添加存放模板的文件夹 2.4、添加模板 2.5、解析模板 2.6、运行结果 三、动态页面静态化 3.1、动态页面静态化的优点 3.2、动态页面静态化的问题 3.3、实现动态页面静态化 3.3.1、新建一个基于Maven的Web...转载 2019-12-29 23:29:51 · 638 阅读 · 0 评论 -
springMVC、freemarker页面半自动静态化
1,请求.do的URL时直接生成对应的.htm文件,并将请求转发到该htm文件 2,自由控制某个页面是否需要静态化如果看图不懂的呢,说白了这个中技术就是:java对象+ftl模型=输出html视图1、在sprinMVC中:MVC框架中的View层组件、Html页面静态化、代码生成工具2、为什么要用FreeMarker:简单容易学、逻辑分离明确3、FreeM...转载 2019-12-29 23:29:03 · 140 阅读 · 0 评论 -
freemarker教程
FreeMarker语言FreeMarker语言概述FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写。FreeMarker被设计用来生成HTML Web页面,特别是基于MVC模式的应用程序虽然FreeMarker具有一些编程的能力,但通常由Java程序准备要显示的数据,由FreeMarker生成页面,通过模板显示准备的数据(如下图)...转载 2019-12-29 23:25:44 · 183 阅读 · 0 评论 -
性能优化:用FreeMarker实现页面静态化
【IT168 技术】众所周知,随着网站的访问量增加,如何给用户以良好的访问体验就显得尤为重要。提升网站性能便成为一些网站面临的一大难题,像hao123这样的导航网站要提升网站的性能只要部署的web服务器数量足够就可以承载超大规模的访问量,如果是一个动态的网站呢?例如像凤凰新闻、网易新闻这样的CMS系统,淘宝、京东这样的大型购物网站由于这些网站都使用到了数据库这也就很难做到单纯的通过...转载 2019-12-28 23:27:08 · 1160 阅读 · 0 评论 -
使用Freemarker 实现JSP页面的静态化
使用Freemarker静态化网页一、原理Freemarker生成静态页面,首先需要使用自己定义的模板页面,这个模板页面可以是最最普通的html,也可以是嵌套freemarker中的取值表达式,标签或者自定义标签等等,然后后台读取这个模板页面,解析其中的标签完成相对应的操作,然后采用键值对的方式传递参数替换模板中的的取值表达式,做完之后根据配置的路径生成一个新的html...转载 2019-12-28 23:24:12 · 405 阅读 · 0 评论 -
一篇很全面的freemarker教程
以下内容全部是网上收集:FreeMarker的模板文件并不比HTML页面复杂多少,FreeMarker模板文件主要由如下4个部分组成:1,文本:直接输出的部分2,注释:<#-- … -->格式部分,不会输出3,插值:即${…}或#{…}格式的部分,将使用数据模型中的部分替代输出4,FTL指令:FreeMarker指定,和HTML标记类似,名字前加#予以区分,不会输出下面是一...转载 2019-12-28 23:03:01 · 652 阅读 · 0 评论 -
如何查看JSP和Servlet版本
WEB应用中有两个JAR文件:jsp-api.jar和servlet-api.jar ,分别打开META-INF下的MAINMEFT.MF文件,查看对应的版本。例:JSP版本:Manifest-Version: 1.0Ant-Version: Apache Ant 1.8.0Created-By: 1.6.0_27-b07 (Sun Microsystems Inc.)X...转载 2019-12-27 23:38:46 · 305 阅读 · 0 评论 -
jsp页面中JSTL/EL标签引用java后台静态static字段的方法总结
为什么使用该功能?项目中的每个页面都包含产品名称、Logo、版本等信息,我希望修改一处,其它所有的全部跟着变。有同学会说那就都引用一个页面“”就Ok了;但是我希望这些信息都是可以通过后台代码修改的,修改后保存到数据库和一个静态类中;其实后台直接读写这个引用 的页面或者保存到属性文件(properties)中也是可以的,我觉得还是存到数据库中好一些。还有同学会说直接使用“<%=co...转载 2019-12-27 23:37:46 · 149 阅读 · 0 评论 -
学会怎样使用Jsp 内置标签、jstl标签库及自定义标签
学习jsp不得不学习jsp标签,一般来说,对于一个jsp开发者,可以理解为jsp页面中出现的java代码越少,对jsp的掌握就越好,而替换掉java代码的重要方式就是使用jsp标签。 jsp标签的分类: 1)内置标签(动作标签): 不需要在jsp页面导入标签 2)jstl标签: 需要在jsp页面中导入标签 3)自定义标签 : 开发者自行定义,需要在jsp页面导入标签&nb...转载 2019-12-27 23:36:26 · 237 阅读 · 0 评论 -
验证码生成无敌版
1.创建一个servletpackage cn.itcast.common;import java.awt.image.BufferedImage;import java.io.ByteArrayOutputStream;import java.io.IOException;import javax.annotation.Resource;import javax.imageio.I...转载 2019-12-20 23:16:35 · 219 阅读 · 0 评论 -
web.xml 中的listener、 filter、servlet 加载顺序及其详解
在项目中总会遇到一些关于加载的优先级问题,近期也同样遇到过类似的,所以自己查找资料总结了下,下面有些是转载其他人的,毕竟人家写的不错,自己也就不重复造轮子了,只是略加点了自己的修饰。 首先可以肯定的是,加载顺序与它们在 web.xml 文件中的先后顺序无关。即不会因为 filter 写在 listener 的前面而会先加载 filter。最终得出的结论是:listener -&g...转载 2019-12-20 23:12:19 · 111 阅读 · 0 评论 -
防止恶意刷新页面的Java实现
在很多对安全性要求较高的项目中,需要提供至少一种对整个项目的安全控制方案,常用的比如身份认证、访问控制、安全审计等等。由于设计不合理而导致的安全问题可能会给项目带来非常大的隐患,正是因为如此,安全问题也得到了广大web项目开发者的重视,尤其是在电子政务和电子商务的开发中,更是需要提供一定层次上的安全性要求。本文的重点在于实现一种防止恶意刷新页面的方法,笔者在实现该功能时,查找了很多资料并且进行...转载 2019-12-20 23:11:05 · 13102 阅读 · 0 评论 -
J2EE的体系架构——J2EE
J2EE是Java2平台企业版(Java 2 Platform,Enterprise Edition),它的核心是一组技术规范与指南,提供基于组件的方式来设计、开发、组装和部署企业应用。J2EE使用多层分布式的应用模型。J2EE分层: 客户层,执行在客户计算机上的组件,用户与系统的接口逻辑,通过http协议的来訪问应...转载 2019-12-08 22:04:30 · 187 阅读 · 0 评论 -
Session的生命周期
以前在学习的时候没怎么注意,今天又回过头来仔细研究研究了一下Session的生命周期。 Session存储在服务器端,一般为了防止在服务器的内存中(为了高速存取),Sessinon在用户访问第一次访问服务器时创建,需要注意只有访问JSP、Servlet等程序时才会创建Session,只访问HTML、IMAGE等静态资源并不会创建Session,可调用request.getSession(tr...转载 2019-12-08 22:03:17 · 93 阅读 · 0 评论 -
J2EE 企业级应用架构简述
企业应用的特点多环境多系统的交互海量数据、高并发、高TPS安全等级高自动化集群管理架构的原则CAP原则(一致性、可用性、分区容错性)复杂的事情简单化架构的目标高速缓存并行计算负载均衡数据备份异地容灾业务分离原始版动静分离版缓存版分布式服务弹性计算 ...转载 2019-12-08 22:01:34 · 174 阅读 · 0 评论 -
解决httpServletRequest.getParameter获取不到参数
用httpServletRequest.getParameter接收post请求参数,发送端content Type必须设置为application/x-www-form-urlencoded;否则会接收不到 @RequestMapping(value = "/a2") @ResponseBody public String hello3(HttpServletRequ...原创 2019-11-28 23:47:35 · 22695 阅读 · 3 评论 -
java-web 过滤器 & 监听器 & 拦截器
Tomcat 的容器分为四个等级,真正管理 Servlet 的容器是 Context 容器,一个 Context 对应一个 Web 工程,在 Tomcat 的配置文件中可以很容易发现这一点,如下: Context 配置参数<Context path="/projectOne " docBase="D:\projects\projectOne" reloadable="true" /...转载 2019-11-28 23:44:40 · 122 阅读 · 0 评论 -
【SSH网上商城项目实战20】在线支付平台的介绍
之前已经完成了首页的显示,用户添加购物车,确认订单等功能,下面就是支付功能的开发了。用户确认了订单后会直接跳转到支付页面进行在线支付,在线支付需要第三方的接口,这一节主要介绍一些关于第三方支付的内容,从下一节开始,我们真正开发在线支付模块。1. 在线支付介绍 在线支付是指卖方与买方通过因特网上的电子商务网站进行交易时,银行为其提供网上资金结算服务的一种业务。它为企业和个人提供...转载 2019-11-28 23:42:46 · 344 阅读 · 0 评论 -
浅谈ssh(struts,spring,hibernate三大框架)整合的意义及其精髓
hibernate工作原理原理:1.读取并解析配置文件2.读取并解析映射信息,创建SessionFactory3.打开Sesssion4.创建事务Transation5.持久化操作6.提交事务7.关闭Session8.关闭SesstionFactory为什么要用:1. 对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。2. Hibernate是一个基...转载 2019-11-25 22:33:32 · 347 阅读 · 0 评论 -
获取JAVA[WEB]项目相关路径的几种方法
在jsp和class文件中调用的相对路径不同。 在jsp里,根目录是WebRoot 在class文件中,根目录是WebRoot/WEB-INF/classes 当然你也可以用System.getProperty("user.dir")获取你工程的绝对路径。另:在Jsp,Servlet,Java中详细获得路径的方法!1.jsp中取得路径: 以工程名为TEST为例: (1)得到包含工程名的当前...转载 2019-11-25 22:32:19 · 144 阅读 · 0 评论 -
最新版本的Struts2+Spring4+Hibernate4三大框架整合(截止2014-10-15)
一、项目名称:S2316S411H436项目原型:Struts2.3.16 + Spring4.1.1 + Hibernate4.3.6二、项目目的:整合使用最新版本的三大框架(即Struts2、Spring4和Hibernate4),搭建项目架构原型。项目架构原型:Struts2.3.16 + Spring4.1.1 + Hibernate4.3....转载 2019-11-25 22:30:54 · 154 阅读 · 0 评论 -
javaweb HttpServletResponse对象
Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象、和代表响应的response对象。request和response对象即然代表请求和响应,那我们要获取客户机提交过来的数据,只需要找request对象就行了。要向客户机输出数据,只需要找response对象就行了。一、HttpServletResponse对象介绍 HttpSe...转载 2019-11-23 23:33:46 · 116 阅读 · 0 评论