简单的J2EE(四)一些技术选型的建议

盘点2018Java主流架构技术,2019你将要学的都在这里 Java架构学习目录 一、《设计模式》 二、《数据结构算法模式》 三、《源码分析》 四、《微服务架构》 五、《Jvm性能优化》 六、《团队协作》 七《项目商城实战》   正文 大致的学习顺序 1.设计模式:熟悉23种设计模式。虽说对于大部分项目来说使用设计模式稍显冗余,不过在某些情况下,这些前人所总结的经验确实能让人大受裨益。当然,先学习它的原因还在于,JDK源码以及其他... 阅读详情

        本文罗列一些问题,都是平常开发中经常遇到的,希望对你们有所帮助。

 

1.数据校验

       显然,正常的J2EE程序,都离不开数据校验这一块。而数据校验又分为客户端校验和服务器端校验。客户端校验的好处是用户体验好,输入东西以后,可以马上得到响应,而不需要联网,服务器的压力也小一些。但是客户端校验面临着跨浏览器的挑战,设置浏览器的升级也会给应用程序带来麻烦,当然,一个稍微懂点js的人,可以轻松跳过客户端的数据校验。服务器端得数据校验就稳健的多了,但是对系统的开销也就多一些。就像你去买服务器,IBM的当然好了,但是也贵啊!有人建议数据校验都放在服务器端,他真的是有钱……

       数据校验到底放在哪边,或者两边都进行校验?这个需要根据项目的特点来选择,甚至是页面数据的重要性来选择。当然,一个比较好的办法就是不进行数据校验——采用选择框等数据输入方式,限制用户的输入,就不需要数据校验了。

 

2.防止重复的客户请求

       有时候,用户会不经意的重复提交数据,这在电子商务等数据提交要求很高的领域,会产生比较严重的后果。比如你一个订单提交了两次,但你的本意只想买一个商品……

这个时候,最好的处理方式是明确的刷新会话,在页面处理完成之前,先更新会话。这样会话仍然可用,并且可以在服务器端检查会话的有效性。

 

3.维护会话状态

      客户端技术有:在HTML中使用隐藏表单,使用cookie,url重写。

1.隐藏表单技术简单,好用。在会话状态使用不是特别多的项目中,比较合适使用。但是如果会话技术要求很高的项目,那么隐藏表单就会大量的,重复的在每个页面出现,这样会给效率带来不利。其次,由于隐藏表单是明文(一查看页面源码就可以看到),如果会话信息敏感,甚至还需要加密。

2.重写URL,这种方式在非表单提交时,非常有用。但是它也不能避免隐藏表单方式所拥有的缺陷。

3.cookie技术:这种技术我个人比较排斥,这里就不写了。

     综上,客户端保持会话状态这种方式,是轻量级的,不可靠的。

     服务器端的会话技术:HttpSession,这个就不是一两句话说得清楚的了,以后用专门的文章写。

 

4.Jsp的作用

      Jsp在J2EE技术体系中,其实感觉起来就比较尴尬,它做的事情,Servlet完全可以做,而Jsp基本上又可以替代Servlet。现在大部分程序员都可以做到把Servlet作为非视图层,但是很多程序员不能做到把Jsp纯作为视图。一个良好的实现应该是Jsp只作为显示使用,而没有其他。这样的好处是分层合理,便于维护。

 

5.CSS的使用

       为了程序界面的统一和高效,采用CSS是一种非常高效的方式,在所谓的第四代用户界面Android,Iphone的UI中,也使用了类似CSS的概念。

 

6.EJB的设计

       大家都知道EJB是来处理业务逻辑的,但是EJB的设计却不是每个人都把握的好。举一个简单的例子,比如一个用户提交了购物请求,后台必须先判断用户的信誉,然后才决定是否生成订单。那么,这样的功能是否应该设计在一个EJB中呢?一个好的设计原则是低耦合,高内聚。如果信誉判断和订单功能在其他地方不再使用,那么,这些步骤写在一个EJB里面是比较合理的。但是如果这两个功能在其他地方也有使用,那么,设计三个EJB是合理的:一个完成信誉判断,一个完成订单功能,一个完成控制器,耦合器的角色。

 

7.EJB层和WEB层的数据交互

       不少人想当然的认为,在两层之间交互信息,大量数据的时候,使用对象类型,少量数据的时候,使用简单类型。其实在高并发量的企业应用中,使用对象类型在这两层之间交互可以减少网络压力,并且让数据之间更有关联。

 

8.EJB性能

        大部分J2EE应用,出现性能瓶颈的地方都是EJB层,因为EJB层可能进行大量的网络通信,这严重的降低了EJB层的功效,最佳处理方式是把需要和EJB频繁通信的组件和EJB放在一台服务器上。

JavaEE 微服务架构的技术选型方法论 本文探讨了JavaEE微服务架构的技术选型策略。从业务场景、团队技术栈和性能需求三个维度,分析了SpringBoot、SpringCloud、Netty和Dubbo等主流框架的适用场景及优劣势。建议根据业务规模、团队技术储备和系统性能要求进行选择,强调没有最优方案,只有最合适的技术组合。同时指出技术选型需随业务发展动态调整,以持续满足企业需求。文章为JavaEE开发者构建微服务架构提供了实用的选型参考。 阅读详情

相关推荐

学习Python,小白如何搭建Python环境?

学习Python,首先需要搭建好Python环境,主要分为【运行环境搭建】、【开发环境搭建】以及【Python环境配置】三个环节,接下来我将对Python环境搭建这三个部分进行介绍。

weixin_72923265的博客 9000

起源之路——JSR?J2EE?JavaEE?

起源之路——JSR?J2EE?JavaEE? 前言 鉴于自己工作了一段时间对各种框架中间件处于知其然不知其所以然的状态中,所以萌生了追寻起源的想法,于是便开始准备编写该系列文章,系统的整理自己对J2EE的理解。若有发现理解不到位,或有不同见解的地方,欢迎各位大神拍砖。 什么是J2EE? J2EE的全称是Java 2 Platform Enterprise Edition,它是由多家公司共同参与并制...

LuoGuoHua_Xin的博客 881

37张图详解MAC地址、以太网、二层转发、VLAN

MAC 地址 每个网卡或三层网口都有一个 MAC 地址, MAC 地址是烧录到硬件上,因此也称为硬件地址。MAC 地址作为数据链路设备的地址标识符,需要保证网络中的每个 MAC 地址都是唯一的,才能正确识别到数据链路上的设备。 MAC 地址由 6 个字节组成。前 3 个字节表示厂商识别码,每个网卡厂商都有特定唯一的识别数字。后 3 个字节由厂商给每个网卡进行分配。厂商可以保证生产出来的网卡不会有相同 MAC 地址的网卡。 现在可以通过软件修改 MAC 地址,虚拟机使用物理机网卡的 MAC 地址,并不能保.

networktp的博客 4745

javaEE和j2EE一样吗?

javaEE和j2EE一样吗?从JDK 5.0开始 J2EE 改名为 java EE,J2SE 改名为 java SE,J2ME 改名成 java ME,其实是一回事,只是叫法改了而已java EE 是java的企业版,主要面向web应用,尤其是企业级开发,都提供了一套开发流程。(这句话个人感觉不好理解.)    1,JavaEE是标准集定义的技术架构    2,企业开发是一个面向企业开发的技术组...

dhtcdh的博客 1万+

HT7036计量芯片SPI通信与数据读取实战解析

本文详细解析HT7036计量芯片的SPI通信与数据读取实战,涵盖SPI时序配置、命令发送、数据读取及常见问题排查。重点介绍如何通过SPI接口与MCU通信,实现电能数据的稳定采集与处理,为智能电表等应用提供实用解决方案。

vscode5coder的博客 264

SAC安装与相关库文件(.so)的安装

摘要 SAC: Seismic Analysis Code 是用于地震信号处理的一套软件。 本文将介绍SAC的安装,以及安装时遇到的一些问题。主要是一些动态库(lib**.so)找不到的问题。 本文的环境 64位的 Ubuntu 16.04 64位的系统是安装出现问题的主要原因 1. SAC获取与安装 SAC 的安装,只需要解压,然后修改环境变量即可!!!不需要任何编译!!! 1.1. SAC 获取与解压 SAC软件获取地址:http://ds.iris.edu/ds/nodes/dmc/forms/s.

WangCY的博客 4334

javaEE5.0与J2EE1.4比较

<br />在新建web工程时,如果选的是javaEE5自带的jstl,仅能够使用tomcat6.x才能正常使用el <br />如果选的是j2ee1.4或者j2ee1.3时,需要手动添加jstl, <br />默认与tomcat5.x兼容,所以你修改一下web.xml,因为javaEE5.0和j2ee1.4,1.3是不一样的 <br />所以对jstl和el的支持也并不相同! <br />------------------------------------------<br />在新建web工程时,如

gyflyx的专栏 5197

SAP VC 可配置物料超级BOM简介

在有些业务中比如:汽车、笔记本、电脑、电梯等产品中,其中组成产品的型号个框架是确认的 ,但是框架内部的BOM是可变的,在客户下销售订单的时候,选取对应的组件 ,让后通过MRP的计算优生产线对这样的销售订单提供生产。这个时候我们需要选择我们需要的内存和硬盘的型号,还记得我们前面创建的特征值对应的吗,A对应的8G、B对应16G、X对应1T硬盘、Y对应2T硬盘,这里我们填写对应的值,我们这里选择16G的内存和2T的硬盘,B和Y。3、当我们选择了可配置物料的生产模式时,基本上就选择了按单生产的生产模式了。

我小时候很黑的博客 1万+

java的发展-J2EE和JavaEE的区别

为了自己更好的了解java! 一直分不清楚J2EE和JavaEE的区别,根据百度百科上的解释:“此时,Java的各种版本已经更名,已取消其中的数字2,如J2EE更名为JavaEE,J2SE更名为JavaSE,J2ME更名为JavaME。”他们是一个东西。那他们是什么? java的开发平台提供的开发包,叫做jdk(java development kit)也可以叫做java sdk(java pla...

buzhiweibuzhi的博客 1万+

【WorkBuddy从入门到精通实战教程】使用手册 第 1 章 初识 WorkBuddy

腾讯推出全场景AI办公助手WorkBuddy,突破传统聊天机器人局限,实现从需求理解到结果交付的全流程自动化。该工具通过自然语言交互,可自主规划执行复杂任务,包括文件处理、数据分析、PPT制作等,支持多模型切换和技能扩展。内置权限管控机制确保本地文件操作安全,显著降低人工切换工具的成本,提升职场效率。

企鹅码农的专属播客,分享10多年的实战案例和经验解读,包含YOLO、RT-DETR、AI等各个工作领域。 1281

Challenge 4 - OSCP A

在c盘下发现一个windows.old,在里面可以找到SYSTEM和SAM文件,下载到本地,利用samdump2解密发现没解出来,再来试试pwdump.py(https://github.com/CiscoCXSecurity/creddump7)得到压缩包密码bludecode,解压之后发现一个比较特殊的文件configuration.php,里面有两个类似密码的字符串。登录之后在/opt/backups/下发现几个特殊文件,其中sitebackup3.zip是个正常的压缩包。但是这个压缩包是有密码的。

羽的博客 5777

J2EE是什么,主要包括哪些技术

https://blog.youkuaiyun.com/Ashes18/article/details/73614571 最近最为深刻的认识:被面试老师问到了的知识,哪些是在自己心中模棱两可,似是而非的概念都一目了然。而后,只有在顿悟中不断总结才能进步。今天,我总结的部分是J2EE到底是什么东西,它包括了哪些技术。 一、J2EE是什么? 从整体上讲,J2EE 是使用 Java 技术开发企业级应用的工业标准,它...

QDShuai的博客 3万+

Nvidia Orin Driveos Camera 介绍及调试详解

自动驾驶-nvidia orin driveos Camera 驱动详解及调试

u011803281的博客 2991

J2EE

J2EE是什么,主要包括哪些技术 一、J2EE是什么? 从整体上讲,J2EE 是使用 Java 技术开发企业级应用的工业标准,它是 Java 技术不断适应和促进企业级应用过程中的产物。 适用于企业级应用的 J2EE,提供一个平台独立的、可移植的、多用户的、安全的和基于标准的企业级平台,从而简化企业应用的 开发、管理和部署。J2EE 是一个标准,而不是一个现成的产品。(来自百度) 二、J2EE主要包括哪些技术 servlet Servlet是java平台上的CGI技术。Servlet在服务器端运行,动态地生成

qq_42918433的博客 8209

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

框架——JavaEE(J2EE)相关

1、什么是JavaEE? Java EE,Java 平台企业版(Java Platform Enterprise Edition),之前称为Java 2 Platform, Enterprise Edition (J2EE),2018年3月更名为 Jakarta EE(这个名称应该还没有得到群众认可)。 狭义的 Java EE 是 Sun 公司为企业级应用推出的标准平台,用来开发B/S架构软件,可以说是一个框架,也可以说是一种规范。 广义的 Java EE 包含各种框架,其中最重要的就是 Spring 全家

weixin_42924812的博客 1107

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

如何从Maven下载J2EE API(javaee.jar)

java.net下的javaee.jar解决方案仅包含J2ee API,不包含任何方法主体。 编译是很好的选择,但不适用于运行或部署您的应用程序,因为它会导致“ 类中不是本机或抽象类的方法中的 “ 缺少代码”属性 ”或其他未找到的错误。 根据政策,不可能在任何公共Maven存储库中包含此javaee.jar 。 最佳做法是始终从http://www.oracle.com/technetwork...

一名可爱的技术搬运工 788

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

J2EE笔记之JavaEE

一、JavaEE产生的背景 为了满足开发多层体系结构的企业级应用的需求,Java公司的创始人Sun公司在早期的J2SE(Java 2 Platform Standard Edition)基础上,针对企业级应用的各种需求,提出了J2EE(Java 2 Plantform Enterprise Edition). 企业级应用程序特点 定义:泛指那些为大型组织部门创建的应用程序。注:并不是特指为企业开发的应用软件。 企业级应用程序一般具有以下特点: 1)分布式:通过局域网运行在一个组织内部,或通过Int

Zxy_zzz的博客 1309

JavaEE(J2EE)学习篇

一、简要介绍 Java EE,Java 平台企业版(Java Platform Enterprise Edition),之前称为Java 2 Platform, Enterprise Edition (J2EE),2018年3月更名为 Jakarta EE, 是 Sun 公司为企业级应用推出的标准平台,用来开发B/S架构软件,可以说是一个框架或是一种规范。 Java EE是 J2EE的一个新的名...

nann-viiv 的博客 925

J2EE的体系架构——J2EE

https://blog.youkuaiyun.com/dandanzmc/article/details/27355565 J2EE的体系架构 J2EE是Java2平台企业版(Java 2 Platform,Enterprise Edition),它的核心是一组技术规范与指南,提供基于组件的方式来设计、开发、组装和部署企业应用。J2EE使用多层分布式的应用模型。 J2EE分层 客户层,运行在客户计算机...

try to do 1万+

javaee和javaee_JavaEE概念简介

javaee和javaee 这篇文章旨在阐明J2EE范例中使用的首字母缩写词和概念。 J2EE代表Java to Platform,Entreprise Edition。 它使创建模块化Java应用程序得以部署在应用程序服务器上。 它依赖于Java SE,Java SE是一组Java库的核心,所有Java应用程序都在该Java库上实现。 一般概念 在深入探讨J2EE之前,这里提醒您一些一般...

最佳 Java 编程 715

J2EE与JAVAEE有什么区别?

去年解甲归田,重操码农旧业,突然发现之前知道的一些概念,J2EE没有了,改叫Java EE,什么意思?过了一年,终于想到要查一查,原来没有别的意思,就是Sun觉得不爽,自己改了一个名字,二者没有本质区别。 JavaEE是指Java Enterprise Edition,Java企业版,多用于企业级开发,包括web开发等等。在java1.2后叫J2EE,从java1.5开始更名为JavaEE 5.0...

ludepsea的博客 2747

JavaEE和J2EE的区别

意思是一样的,都是JAVA企业版的简称。2005年6月,JavaOne大会召开,SUN公司公开Java SE 6。此时,Java的各种版本已经更名以取消其中的数字“2”;J2EE更名为Java EE, J2SE更名为Java SE,J2ME更名为Java ME。 

zhoudm2005 3248

黑马程序员——今天发现,JavaEE其实就是以前学过的J2EE

------- android培训、java培训、期待与您交流! ---------- 最近在去咨询一家Android培训班的时候,看到宣传册上有个JavaEE + Android,当时有点懵,因为很久不接触Java了,这个JavaEE从来没见到过,以为是Sun公司推出的新技术,当时问咨询师,但她对技术也不是很了解~ 后来,回来之后在百度一搜才发现,原来JavaEE其实就是J2

Jack·Chiang 的Android开发家园 2468
上一篇: 简单的J2EE(三)客户端的选择
下一篇: 不一样的XML处理
coding_or_coded
博客等级 码龄16年 216粉丝 115原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值