java工程师技术总结_第1页
java工程师技术总结_第2页
java工程师技术总结_第3页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、java工程师技术总结最近发表了一篇名为java工程师技术总结的范文,感觉很有用处,这 里给大家转摘到。篇一:研发部java开发工程师20XX年工作总结20XX年年度总结尊敬的领导:您好!在20XX年11月我很荣幸地进入公司,加入了研发部 Java技术开发 团队,认识了友善严谨的领导、热心和睦且技术优秀的同事,很是开心。在这一 年里通过自身的努力,不断完善自己的知识结构,向同事虚心请教开发技术上的 问题,较快地熟悉了公司采用的技术框架和业务知识。通过公司日常培训学习和工作积累我对公司业务也有了一定的了解,在各方面也有了进步。目前在参与项目开发的工作中,我负责XXX功能模块开发。新年 伊始,特向

2、过去的一年20XX年工作总结汇报如下: 根据公司的安排,项目的需 要,通过在XXX项目开发中的锻炼,我成长了,也认识到了自己的不足之处。在 自身的努力、领导的帮助,团队的合作下,克服重重技术困难,增长了工作经验, 收获颇多。从入公司以来我就开始学习基于代码生成器免费开源的开发框架以及 Maven项目管理工具的使用,曾经接触过的框架比较熟悉的有SSH表现层的实现技术freemaker、JSP。个人优势就是曾在 XXX行业针对XXX业务用SpringMVC 框架开发管理系统,缺点是没有用过 Activity 工作流技术。Hibernate框架, 没有用到过多表关联动态查询和 hql查询。印象较深刻

3、的就是多对多关联表查询 需要用到构造函数的方法来查。新接触的项目中我主要涉及到的开发模块有(具 体描述功能模块)XXX等功能。工作中的经验总结如下:1. 对业务流程的梳理上,最全面的范文参考写作网站代码没有写活, 考虑的 问题不全面。后来在讨论时经过同事的指点进行了改造,代码质量和规范才有了明显提高2. 知识面还不够广博。在开发中遇到不少以前没学过的技术,一个模块功能 中,涉及的技术往往有多种,知识多了,就会灵活变通,以后一定要加强这方面的学习。3. 需要加强总结。在工作中,发现因为流程或业务需求的问题而不知道如何下手的情况有点多,包括错误与缺漏还有当时设计考虑不到位的地方,对于这块的控制力度

4、显然不够。平时总是在开发,但说到底对业务很熟悉才是项目很好完 成的前提,所以要到遇到过的问题需要进行总结,以便以后能快速定位和解决。今后的计划:通过今年的实践和学习,明年又是一个新的开始,立足当前的优缺点,肩负 起应有的工作和性质。为公司明年的发展尽自己最大的努力, 也希望自己明年有 更大的收获。随着大数据时代的到来,数据已渗透到各行各业领域,希望明年可 以学习到云数据库方面的知识技能。在当前已有关系型数据库方面经验的基础上 提升自己。明年自己给自己定的目标是,达到理想的工作状态,顺利的开展公司 的工作,掌握更多的技术点。编写高效率的代码。对公司的小建议:1. 部门管理方面:作为研发部的一员,

5、我觉得公司应该要有 0A系统。范文 写作实现员工考勤统计、绩效管理、个人通讯录等办公自动化管理,不仅仅是提 高个人的办公效率,也提高公司整体的办公效率,实现资源共享,强化部门管理 以及部门之间的沟通。这样就不需要每次都是人工来统计考勤数据。 也不必要走 线下流程打印补卡单浪费资源和减少不必要的费用支出。2. 企业文化方面:如果条件允许,每周三下午四时可以设立下午茶时间, 时 间可以是十五分钟,再忙也要学会适当放松自己。也是提高工作效率的另一种方 式。工作计划、今后规划做出以下几点规划:1工作要注重实效、注重结果,一切工作围绕着目标的完成;2立足大局,勤于沟通,分工合作,提高工作效率;3. 把握

6、一切机会提高专业能力,加强平时知识总结工作;4. 精细化工作方式的思考和实践。以上为本人粗略的个人工作小结,请领导审阅,如工作上有不到之处,请领 导多多包涵,不吝指出,以便本人及时改正,从而能更好地工作。展望20XX年,我会更加努力、工作上认真负责,再接再厉,更上一层 楼。相信自己会完成新的任务,能迎接新的挑战!研发部Java开发工程师XX 20XX年12月31日篇二:java工程师20XX年度工作总结20XX年度工作总结20XX年对于我来说是非常重要的一年,在这一年中我有了很多的进步,也 在在很多地方留下了一些遗憾。古人云:“前事不忘,后事之师”,亦云:“一 日而三省吾身”。我虽然不能做到“

7、一日三省”但是年终总结是万万不能再少 的。希望可以通过对过去的总结,找到自己在技术发展上的缺陷, 发现自己不好 的那些习惯并在未来的日子中可以不断的修正。9月份入职到现在有4个多月了,在公司领导同事的关心和帮助下,本人认 真负责的完成了各项工作任务,技术水平有了明显提高。工作情况如下:1、熟悉了解公司各项规章制度我于20XX年9月进入公司,为了更快更好地融入公司这个团队,为以后的 工作打好铺垫,在入职培训中,我认真对公司的各项规章制度进行了解, 熟悉公 司的企业文化,熟悉公司编程风格,熟悉公司编码规范,熟悉办公环境,以及人 文交流,通过了解和熟悉,我为能进入公司这个团队感到自豪, 同时也感到自

8、身 的压力。在以后的工作中,我将以公司的各项规章制度为准则, 思想汇报专题严 格要求自己,踏实工作,在坚持原则的情况下敢于创新, 更快更好地完成工作任 务。2、学习新技术由于客户对产品的要求越来越高,要求产品更人性化,多样化,交互性强, 公司在今后的项目中将用到extjs技术,所以我对这门技术进行了详细,深入的学 习,现在已经能够灵活运用,并编码实现了大量常用组件的开发, 为公司的以后 的项目需求做好了准备。3、熟悉并参与修改现有项目熟悉并参与修改佛山招投标项目和司法厅项目。 存在的不足以及改进情况如 下:1、技术水平有待继续提高在工作中遇到一些技术问题无法解决,最后通过网上搜索以及请教同事领

9、导 帮忙得以解决,我将归纳整理常见问题,做到下次遇见能够快速解决,积累经验, 提高工作效率,继续学习新知识新技术,翻新技术知识。2、缺乏计划性在工作过程中,常常因为缺乏计划,导致工作目的不够明确,主次矛盾不清, 造成事倍功半的效果,在以后的工作过程中,我要认真制订工作计划,做事加强 目的认识,分清主次矛盾,争取能达到事半功倍的效果。 3、缺乏沟通,不能充 分利用资源在工作的过程中,范文TOP100由于碍于面子,不积极向其他同事求教,造 成工作效率降低甚至出现错误,不能达到优势资源充分利用。俗话说的好“三人 行必有我师”,在以后的工作中,我要主动加强和其他部门同事的沟通, 通过公司这个平台达到资

10、源共享,从而提高自己的技术水平,更好的完成工作。在20XX年我将继续坚持认真的工作态度,刻苦的学习态度,愉快的生活态度投入工作,希望在20XX年取得新的进步与成就。篇三:java工程师面试总结一.autowired 和resource 的区另廿Resource的作用相当于 Autowired,只不过Autowired按byType自动注 入,而Resource默认按byName自动注入罢了。Resource有两个属性是比较 重要的,分是name和type,Spring将Resource注解的name属性解析为bean 的名字,而type属性则解析为bean的类型。所以如果使用name属性,贝U

11、使用 byName的自动注入策略,而使用type属性时则使用byType自动注入策略。如 果既不指定name也不指定type属性,这时将通过反射机制使用 byName自动注 入策略。Resource装 配顺序1. 如果同时指定了 name和type,则从Spring上下文中找到唯一匹配的bean 进行装配,找不到则抛出异常2. 如果指定了 name则从上下文中查找名称(id )匹配的bean进行装配, 找不到则抛出异常3. 如果指定了 type,则从上下文中找到类型匹配的唯一 bean进行装配,找 不到或者找到多个,都会抛出异常4. 如果既没有指定name又没有指定type ,则自动按照byN

12、ame方式进行装 配;如果没有匹配,则回退为一个原始类型进行匹配,如果匹配则自动装配;final可用来修饰类,变量,方法。修饰变量:final修饰变量时,表示该变量一旦获得了初始值之后就不可改 变。1.修饰成员变量: 与普通成员变量不同的是,final成员变量(实例属性 和类属性)必须由程序员显示初始化,系统不会对final成员变量进行隐式初始 化。非final修饰的成员变量初始化过程:当进行静态初始化时,可对类属性初 始化,当执行普通初始化块,构造器时可对实例属性初始化,因此:非final成员变量的初始值,可以在定义该变量时指定初始值, 可以在初始化块,构造器 中执行初始化值,否则成员变量的

13、初始值是由系统自动分配的初始值。final修饰的类属性,实例属性指定初始值的地方:类属性:静态初始化块,声明该属性时指定初始值。实例属性:非静态初始化块,构造器,声明该属性时指定初始化值。二.fin al 修饰局部变量:1.系统不会对局部变量进行初始化,必须由程序员显示初始化。如果在定义final变量时没有指定初始值,则可以在后面代码中进行对 final变量赋初始值,但只能一次,不能重复赋值,如果final修饰的局部变 量在定义时已经指定默认值,则后面的代码中不能再对该变量赋值。修饰形参不能被赋值,因为形参在调用该方法时,有系统传入的参数来完成 初始化。修饰基本类型变量与引用类型变量的区别:修

14、饰基本类型变量时,不能对基本变量重新赋值,因为基本类型变量不能被 改变。修饰引用类型变量时,仅仅保持的是这个引用所引用的地址不会改变,既一直引用同一个对象。但这个对象完全可以改变(对象的属性)例女口 final pers on p = new pers on();改变person对象的age属性,合法。(23);对p引用重新赋值,不合法。p = n ull;注意:如果final修饰变量是基本数据类型,且在编译时就可以确定该变量 的值,于是把该变量当做常量来处理:常量命名规则:多个有意义的单词连接, 所有字符大写,单词之间用下划线分割。如果final修饰变量是引用类型,final变量无法在编译时

15、就获得值,而必 须在运行时才能得到值如:final TestClass t = new TestClass();编译时系统不会创建一个TestClass对象赋给t变量,所以t不需要当做常量来处理, 无需使用常量命名规则。方法:修饰的方法不可被重写。提供的Object类有一个final方法:getClass(),因为java不希望任何一 个类重写这个方法。3.对于private 方法,仅在当前类中可见,子类无法访问,所以也就无法 重写该方法,如果子类中定义了一个与父类private方法有相同方法名,相同形 参列表,相同返回值类项的方法,也不是方法重写,只是重新定义了一个方法, 因此使用final

16、修饰的一个private访问权限的方法,依然可以在其子类中定义与该方法有相同方法名,相同形参列表,相同返回值类型的方法。修饰的方法不能被重写但完全可以被重载。类:修饰的类不可有子类,类就是一个final类,它不可以有子类。三JQuery绑定事件的方法.bi nd()$( a' ).bind( click ' ,function() alert(“That tickles! ”);这是最直接的绑定方法。jQuery扫描文档找到所有$( a')元素,然后 给每一个找到的元素的click事件绑定处理函数。ive()$( a' ).live( click ' f

17、unction() alert(“That tickles! ”);Query绑定处理函数到$(document)元素,并把 click '和 a' 作 为函数的参数。有事件冒泡到document节点的时候,检查这个事件是不是click 事件target eleme nt能不能匹配 a' css选择器,如果两个条件都是true, 处理函数执行。.delegate。$( #container ' ).delegate( a' , ' click ' function() alert( “That tickles! ”);jQuery扫描文档

18、找到 $( #container '), 绑定处理函数到他的click 事件,'a' css选择器作为函数的参数。当有事件 冒泡到$( #con ta in er '),检查事件是不是 click ,并检查target eleme nt 是不是匹配css选择器,如果两者都符合,执行函数。注意这次和ive()方法很相似,除了把事件绑定到特定元素与跟元素的区别。精明的JS' er或许会总结成$( a' ).live()=$(document).delegate(a'),真的是这样吗?不,不全是。四。spring事务管理Spring+Hiber

19、nate 的实质:就是把 Hibernate 用到的数据源 Datasource, Hibernate 的 SessionFactory 实例,事务管理器 HibernateTransactionManager ,都交给Spring管理。那么再没整合之前 Hibernate是如何实现事务管理的 呢?通过ServletFilter 实现数据库事务的管理,这样就避免了在数据库操作中 每次都要进行数据库事务处理。一. 事务的4个特性:原子性:一个事务中所有对数据库的操作是一个不可 分割的操作序列,要么全做,要么全部做。一致性:数据不会因为事务的执行而 遭到破坏。隔离性:一个事务的执行,不受其他事务(

20、进程)的干扰。既并发执行的个 事务之间互不干扰。持久性:一个事务一旦提交,它对数据库的改变将是永久的。二. 事务的实现方式:实现方式共有两种:编码方式;声明式事务管理方式。 基于AOP技术实现的声明式事务管理,实质就是:在方法执行前后进行拦截,然 后在目标方法开始之前创建并加入事务,执行完目标方法后根据执行情况提交或回滚事务。声明式事务管理又有两种方式:基于XML配置文件的方式;另一个是在业务方法上进 行Transactional注解,将事务规则应用到业务逻辑中。三.创建事务的时机: 是否需要创建事务,是由事务传播行为控制的。读数据不需要或只为其指定只读事务,而数据的插入,修改,删除就需要事务

21、管理了一种常见的事务管理配置:事务拦截器Tran sactio nln terceptor 和事务自动代理Bea nN ameAutoProxyCreator相结合的方式。五。oracle通用函数sum(), max(),min(),count(),decode(),case,avg(),to_date(),如nvl(字段,x')字段值等于null就这个函数得到的结果就是x',ABS(x)函数,此函数用来返回一个数的绝对值。CEIL(x)函数,用来返回大于或等于 X的最小整数。FLOOR(x函数,用来返回小于或等于X的最大整数。ROUND(x,y函数,返回舍入到小数点右边 丫位

22、的X值。丫缺省为0,这将X 舍入为最接近的整数。如果 丫是负数,那么舍入到小数点左边相应的位上, 丫必 须为整数。Select CONVERT(varchar(100),GETDATE(),23) 20XX-05-16CONVERT(data_type(le ngth),data_to_be_co nverted,style)data_type(le ngth) 规定目标数据类型(带有可选的长度)。data_to_be_converted 含有需要转换的 值。style规定日期时间的输出格式。六. oracle存储过程1.存储过程异常处理create or replace procedure

23、peace_i nsert ( c_n in varchar2)iserror EXCEPTION;begi nif c_n ='OKthe nin sert into course (course_ name) values (c_n);elsif c_n = NG thenin sert into course (course_ name) values (c_n);raise error;elseDbms_line( 'c_n' | c_n);end if;commit;excepti onwhe n error the nrollback;Dbms_line(

24、' ERRO );end;关于游标if,for 的例子create or replace procedure peace_if iscursor var_c is select * from grade;begi nfor temp in var_c loopif _n ame ='OS thendbms_line( Stu_n ame =' |_n ame);elsif _n ame ='DB thendbms_line('DB );elsedbms_line('feng la feng la');end if;end loop;end

25、;-关于游标for,case 的例子1create or replace procedure peace_case1iscursor var_c is select * from test_case;begi nfor temp in var_c loopcasewhe n 1 the ndbms_line( haha1');whe n 2 the ndbms_line( haha2');whe n 3 the ndbms_line( haha3');whe n 4 the ndbms_line( haha4');elsedbms_line( 'qita

26、 ');end case;end loopend;七o java对象作用范围Java对象的生命周期大致包括三个阶段:对象的创建,对象的使用,对象 的清除。因此,对象的生命周期长度可用如下的表达式表示:T = T1 + T2 +T3。其中T1表示对象的创建时间,T2表示对象的使用时间,而T3则表示其清除时 间。由此,我们可以看出,只有T2是真正有效的时间,而T1、T3则是对象本身 的开销。下面再看看T1、T3在对象的整个生命周期中所占的比例。我们知道,Java对象是通过构造函数来创建的,在这一过程中,该构造函 数链中的所有构造函数也都会被自动调用。另外,默认情况下,调用类的构造函数时,J

27、ava会把变量初始化成确定的值:所有的对象被设置成null,整数变量(byte、short、int、long )设置成0,float 和double变量设置成,逻辑值设置成false。所以用new关键字来新建一个对象的时间开销是很大的,如表1所示o表1 一些操作所耗费时间的对照表运算操作 示例 标准化时间本地赋值i = n实例赋值 =n方法调用Funct()新建对象 New Object() 980新建数组New in t10 3100从表1可以看出,新建一个对象需要980个单位的时间,是本地赋值时间的 980倍,是方法调用时间的166倍,而若新建一个数组所花费的时间就更多了。再看清除对象的过

28、程。我们知道,Java语言的一个优势,就是Java程序员 勿需再像CC+程序员那样,显式地释放对象,而由称为垃圾收集器(GarbageCollector )的自动内存管理系统,定时或在内存凸现出不足时,自动回收垃圾 对象所占的内存。凡事有利总也有弊,这虽然为Java程序设计者提供了极大的方便,但同时它也带来了较大的性能开销。这种开销包括两方面,首先是对象管理开销,GC为了能够正确释放对象,它必须监控每一个对象的运行状态,包括 对象的申请、引用、被引用、赋值等。其次,在GC开始回收“垃圾”对象时,系统会暂停应用程序的执行,而独自占用CPU因此,如果要改善应用程序的性能,一方面应尽量减少创建新对象

29、的次数; 同时,还应尽量减少T1、T3的时间,而这些均可以通过对象池技术来实现。实现一个对象池,一般会涉及到如下的类:1)对象池工厂(ObjectPoolFactory )类该类主要用于管理相同类型和设置的对象池(ObjectPool),它一般包含如 下两个方法:createPool :用于创建特定类型和设置的对象池;destroyPool :用于释放指定的对象池;同时为保证ObjectPoolFactory 的单一实例,可以采用Singleton设计模式, 见下述get In sta nee方法的实现:public static ObjectPoolFactory getl nsta nce

30、() if (poolFactory =null)篇四:总结关于JAVA工程师的一些技术面试问题总结关于JAVA工程师的一些技术面试问题?Xml相关的DTD和XSD有什么区别,用DTD如何定义attribute 和 sub-elements?JSP 和 Serlvet 的区别?JSP in elude有哪几种方式,有什么区别?作用域public,private,protected,以及不写时的区别??读取xml文件的方法有几种?hashcode和equals方法的区别,分别在什么情况下用,在什么情况下override?HashSet 和 HashTable 的区别?JVM中 classload

31、er 如何加载 class?switch语句可以处理的数据类型?ArrayList 丄 i nkedList,Victor区别??HashMap和 HashTable 的区别??Servlet 中 doGet()和 doView()方法的区别??说说什么是UrlPatten?sql左连接右连接?说说spring的应用?jdk 区别说说JMS?线程 notify notifyall?An in troducti on of the projects you have bee n invo Ived.?ln your experience,how do you handle situationswhenyou

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论