我和Java这些年的故事(三)
J2EE让Java在服务端找到了用武之地,之前一直处于鄙视链末端的Java,也终于有了向VB/VC叫板的资本。EJB更是J2EE的代名词,是解决企业级组件复用的法宝。
有了JSP/Servlet,Java世界的面貌也就焕然一新了,从此,Java人也能和PHP,ASP开发者平起平坐了。
2003年,我在苏州电信参与九七工程改造,就是将Applet转为EJB的一场运动。
代码的迁移不难,里面对JTS事务的处理也比较初级,大部分没有搞过EJB开发,但依照以往别的编程语言的开发经验,也能快速编写好一个个EJB。
他们原有的Applet版本其实实现得也不错,尤其是一个牛人实现了一套Applet版的JDBC driver,也就是在Applet中访问数据库,包装得很不错,访问速度也快。
痛苦的是EJB的打包,当初我不会Ant,不懂自动化构建,每天下班前用JBuilder生成部署的ear包,一次打包半小时,动不动因为各种错误就得从头来过。
有一次,领导第二天要视察,我们前一天晚上打好的正确的包找不到了。急得如热锅上的蚂蚁,最后勉强出了一个版本。
我和Java这些年的故事(三)的更多相关文章
- Java正则速成秘籍(三)之见招拆招篇
导读 正则表达式是什么?有什么用? 正则表达式(Regular Expression)是一种文本规则,可以用来校验.查找.替换与规则匹配的文本. 又爱又恨的正则 正则表达式是一个强大的文本匹配工具,但 ...
- Java反射的小故事
Java反射的小故事: 首先定义一个Java类 package com.xiaoysec.test; public class Person { private String name; privat ...
- java之jvm学习笔记三(Class文件检验器)
java之jvm学习笔记三(Class文件检验器) 前面的学习我们知道了class文件被类装载器所装载,但是在装载class文件之前或之后,class文件实际上还需要被校验,这就是今天的学习主题,cl ...
- Java IO流学习总结三:缓冲流-BufferedInputStream、BufferedOutputStream
Java IO流学习总结三:缓冲流-BufferedInputStream.BufferedOutputStream 转载请标明出处:http://blog.csdn.net/zhaoyanjun6/ ...
- Java多线程打辅助的三个小伙子
前言 之前学多线程的时候没有学习线程的同步工具类(辅助类).ps:当时觉得暂时用不上,认为是挺高深的知识点就没去管了.. 在前几天,朋友发了一篇比较好的Semaphore文章过来,然后在浏览博客的时候 ...
- java中比较特殊的三个浮点数Infinity、-Infinity、NaN
学过javaScript的应该都知道,在js中的数值型number类型中有几个特殊的数,一个正无穷大.一个负无穷大.一个不是一个数NaN. 后来无意中发现java中也有这三个数,不过这三个数是浮点数, ...
- java高并发编程(三)
java高并发主要有三块知识点: synchronizer:同步器,在多个线程之间互相之间怎么进行通讯,同步等: 同步容器:jdk提供了同步性的容器,比如concurrentMap,concurren ...
- Java NIO系列教程(三) Channel之Socket通道
目录: <Java NIO系列教程(二) Channel> <Java NIO系列教程(三) Channel之Socket通道> 在<Java NIO系列教程(二) Ch ...
- java 实现md5加密的三种方式与解密
java 实现md5加密的三种方式 CreateTime--2018年5月31日15点04分 Author:Marydon 一.解密 说明:截止文章发布,Java没有实现解密,但是已有网站可以免费 ...
- Java数据结构和算法(三)顺序存储的树结构
Java数据结构和算法(三)顺序存储的树结构 二叉树也可以用数组存储,可以和完全二叉树的节点一一对应. 一.树的遍历 // 二叉树保存在数组中 int[] data; public void preO ...
随机推荐
- QQ空间数据抓取
title: QQ空间数据抓取 author: 杨晓东 permalink: QQ空间数据抓取 date: 2021-10-02 11:27:04 categories: - 嗯哼 tags: - 无 ...
- 179. 最大数 (Medium)
问题描述 179. 最大数 (Medium) 给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数. 注意: 输出结果可能非常大,所以你需要返回一个字符串而不是整数 ...
- javaweb常用的配置文件
1.applicationContext.xml <?xml version="1.0" encoding="UTF-8"?> <beans ...
- Transformers Pipelines
pipelines 是使用模型进行推理的一种很好且简单的方法.这些pipelines 是从库中抽象出大部分复杂代码的对象,提供了一个简单的API,专门用于多个任务,包括命名实体识别.屏蔽语言建模.情感 ...
- 前端使用xlsx file-saver xlsx-style导出
import FileSaver from 'file-saver' import XLSXStyle from "xlsx-style"; import XLSX from 'x ...
- fastdfs虚拟机单机版搭建
说明:github搭建步骤:https://github.com/happyfish100/fastdfs/wiki#trackermkdir /home/dfs #创建数据存储目录 cd /usr/ ...
- xpath拉取链家二手房信息并保存到excel中
import os.path import requests from lxml import etree import xlwt import xlrd def create_excel(): if ...
- Linux安装jdk之openjdk
使用yum源 1.查看yum库中都有哪些jdk版本 yum search java|grep jdk 2.选择指定的版本安装,注意最后的 * 以及yum源安装的是openjdk,注意openjdk的区 ...
- C# 通过程序执行svn更新或提交更改
实现方法: private static void RunBat(string program, string parm) { try { Process proc = new Process(); ...
- 【杂项】利用CUDA实现tensorflow的gpu加速——以NXP的eIQ Portal Command line环境为例
这是一个针对于eIQ的解决方案,笔者所用显卡是GTX1650 step1:下载CUDA和CuDnn 2022年3月,eIQ所使用tensorflow版本为2.5.0,因此对应CUDA 11.2.0,C ...