【3】一个java(中级)工程师需要具备的要求:
详细如下:
第3阶段(Java中级软件工程师) - Struts2、Spring、Hibernate、SpringMVC、Mybatis、Shiro、JVM
- 301 Spring
-笔记+源代码
-01-HelloWorld.wmv
-02-IOC&DI概述.wmv
-03-配置Bean.wmv
-04-属性配置细节.wmv
-05-自动装配.wmv
-06-Bean之间的关系.wmv
-07-Bean的作用域.wmv
-08-使用外部属性文件.wmv
-09-SpEL.wmv
-10-管理Bean的生命周期.wmv
-11-通过工厂方法配置Bean.wmv
-12-通过FactoryBean配置Bean.wmv
-13-通过注解配置Bean(1).wmv
-14-通过注解配置Bean(2).wmv
-15-泛型依赖注入.wmv
-16-AOP基础.wmv
-17-前置通知.wmv
-18-后置通知.wmv
-19-返回通知&异常通知&环绕通知.wmv
-20-切面的优先级.wmv
-21-重用切点表达式.wmv
-22-基于配置文件的方式来配置AOP.wmv
-23-使用JdbcTemplate和JdbcDaoSupport.wmv
-24-使用NamedParameterJdbcTemplate.wmv
-25-事务准备.wmv
-26-声明式事务.wmv
-27-事务的传播行为.wmv
-28-事务其他属性(隔离级别&回滚&只读&过期).wmv
-29-使用XML文件的方式配置事务.wmv
-30-整合Hibernate准备.wmv
-31-整合Hibernate配置.wmv
-32-整合Hibernate代码测试.wmv
-33-整合Hibernate不适用Hibernate配置文件.wmv
-34-在WEB应用中使用Spring的基本思路.wmv
-35-在WEB应用中使用Spring.wmv
-36-集成Struts2.wmv
- 302 Struts2
-笔记+源代码
-01-使用Filter作为控制器的MVC应用.wmv
-02-概述.wmv
-03-搭建环境.wmv
-04-HelloWorld.wmv
-05-详解HelloWorld.wmv
-06-Action概述.wmv
-07-通过ActionContext获取Web资源.wmv
-08-通过Aware接口获取Web资源.wmv
-09-通过和ServletAPI耦合的方式获取Web资源.wmv
-10-示例代码(1).wmv
-11-ActionSupport.wmv
-12-Result.wmv
-13-通配符映射.wmv
-14-动态方法调用.wmv
-15-值栈.wmv
-16-OGNL(1).wmv
-17-OGNL(2).wmv
-18-声明式异常处理.wmv
-19-通用标签(1).wmv
-20-通用标签(2).wmv
-21-通用标签(3).wmv
-22-表单标签(1).wmv
-23-表单标签(2).wmv
-24-示例代码(2).wmv
-25-主题.wmv
-26-CRUD操作(1).wmv
-27-运行流程分析(1).wmv
-28-CRUD操作(2)&ModelDriven拦截器.wmv
-29-CRUD操作(3)&使用paramsPrepareParams拦截器栈.wmv
-30-paramsPrepareParams拦截器栈小结&提出问题.wmv
-31-CRUD(4)&使用PrepareInterceptor.wmv
-32-类型转换错误消息的显示和定制.wmv
-33-自定义类型转换器.wmv
-34-类型转换器与复杂属性&集合协同使用.wmv
-35-国际化.wmv
-36-通过超链接动态加载国际化资源文件.wmv
-37-运行流程分析.wmv
-38-使用声明式验证.wmv
-39-短路验证&非字段验证.wmv
-40-相同的验证规则使用同一条响应消息.wmv
-41-自定义验证器.wmv
-42-文件的上传.wmv
-43-文件的下载.avi
-44-表单的重复提交问题.wmv
-45-自定义拦截器.wmv
- 303 Hibernate
-笔记+源代码
-01-概述&安装Hibernatetools插件.wmv
-02-HelloWorld代码实现部分.wmv
-03-HelloWorld详解.wmv
-04-Session概述.wmv
-05-Session缓存(Hibernate一级缓存).wmv
-06-Session核心方法(1).wmv
-07-Session核心方法(2).wmv
-08-再讲hibernate.cfg.xml.wmv
-09-详解Hibernate映射文件(1).wmv
-10-详解Hibernate映射文件(2).wmv
-11-单向多对一映射.wmv
-12-双向一对多映射.wmv
-13-Set的3个属性.wmv
-14-基于外键映射的1-1关联关系.wmv
-15-基于主键映射的1-1关联关系.wmv
-16-映射多对多关联关系.wmv
-17-映射继承关系.wmv
-18-检索策略(Lazy、Fetch、Batch-Size等).wmv
-19-HQL查询(1).wmv
-20-HQL查询(2).wmv
-21-HQL查询(3).wmv
-22-QBC&本地SQL查询.wmv
-23-二级缓存(1).wmv
-24-二级缓存(2).wmv
-25-管理Session&批量操作.wmv
- 304 SpringMVC + Mybatis + Shiro
-01-Mybatis
-笔记+资料
-源代码
-01-原生态JDBC编程中的问题总结.avi
-02-Mybatis架构.avi
-03-Mybatis工程结构.avi
-04-入门程序-查询用户信息.avi
-05-用户添加.avi
-06-用户修改和删除.avi
-07-Mybatis和Hibernate的适用场景.avi
-08-sqlSession使用范围.avi
-09-原始DAO开发方式.avi
-10-mapper代理开发方式.avi
-11-mapper接口返回单个对象和集合对象.avi
-12-mapper代理添加修改删除用户.avi
-13-mapper代理开发的问题总结.avi
-14-属性配置和全局参数.avi
-15-别名定义.avi
-16-mapper配置.avi
-17-parameterType传递包装类型.avi
-18-resultType的使用.avi
-19-resultType和resultMap的区别.avi
-20-resultMap入门.avi
-21-动态SQL-if where和SQL片段.avi
-22-foreach的使用.avi
-23-复习--SQL查询.avi
-24-Mybatis逆向工程.avi
-25-Table schema问题.avi
-02-Mybatis
-笔记+资料
-源代码
-01-订单商品数据模型分析.avi
-02-resultType实现一对一查询.avi
-03-resultMap实现一对一查询.avi
-04-resultMap实现一对多查询.avi
-05-resultMap实现一对多复杂查询.avi
-06-多对多查询需求.avi
-07-延迟加载.avi
-08-resultType、resultMap、延迟加载的应用场合.avi
-09-一级缓存.avi
-10-二级缓存.avi
-11-Mybatis和Ehcache整合.avi
-12-二级缓存场景及局限性.avi
-13-Mybatis和Spring整合工程结构.avi
-14-一些问题总结.avi
-15-Mybatis整合Spring开发原始DAO.avi
-16-Mybatis整合Spring开发mapper接口.avi
-17-逆向工程配置和生成代码.avi
-18-逆向工程代码测试.avi
-03-SpringMVC
-笔记+资料
-源代码
-01-MVC在BS系统中的应用.avi
-02-SpringMVC架构.avi
-03-SpringMVC入门程序--工程结构.avi
-04-SpringMVC入门程序-编写调试.avi
-05-非注解处理器映射器和适配器学习.avi
-06-注解处理器映射器和适配器.avi
-07-入门程序小结源码分析.avi
-08-SpringMVC和Mybatis整合工程结构.avi
-09-SpringMVC和Mybatis整合开发商品列表.avi
-10-SpringMVC和Mybatis整合开发商品列表调试.avi
-11-注解基础-商品修改功能Service开发.avi
-12-RequestMapping特性学习.avi
-13-Controller方法返回值.avi
-14-参数绑定过程.avi
-15-RequestParam注解.avi
-16-简单类型和POJO类型绑定.avi
-17-自定义参数绑定-属性编辑器.avi
-18-自定义参数绑定-自定义转换器.avi
-04-SpringMVC
-笔记+资料
-源代码
-01-数据回显.avi
-02-参数绑定-绑定List数据.avi
-03-SpringMVC和Struts的区别.avi
-04-SpringMVC图片上传.avi
-05-requestBody和responseBody.avi
-06-validation基本使用.avi
-07-validation分组校验.avi
-08-SpringMVC统一异常处理.avi
-09-SpringMVC统一异常处理图解.avi
-10-SpringMVC对RESTful的支持.avi
-11-SpringMVC拦截器测试.avi
-12-SpringMVC拦截器应用-用户认证拦截.avi
-05-shiro
-permission1110
-permission_shiro1110
-shiro_test1110
-笔记+资料
-01-Shiro授权入门程序.avi
-02-自定义realm进行授权.avi
-03-Shiro整合开发-applicationContext-shiro.avi
-04-Shiro整合开发-登陆和退出.avi
-05-Shiro整合开发-realm查询完整认证在页面展示.avi
-06-Shiro整合开发-realm授权.avi
-07-Shiro整合开发-认证连接数据库.avi
-08-Shiro整合开发-授权连接数据库.avi
-09-Shiro整合开发-缓存.avi
-10-Shiro整合开发-验证码实现.avi
-11-Shiro整合开发-记住我.avi
-06-shiro
-permission1110
-shiro_test1110
-案例
-笔记+资料
-01-权限管理原理.avi
-02-权限管理解决方案.avi
-03-基于url拦截-开发框架搭建.avi
-04-基于url拦截-用户认证实现.avi
-05-基于url拦截-用户授权实现.avi
-06-Shiro的介绍.avi
-07-Shiro认证入门程序.avi
-08-Shiro认证流程.avi
-09-自定义realm实现认证.avi
-10-realm支持散列.avi
- 305 JVM
-JVM资料+笔记
-01-初识JVM.mp4
-02-JVM运行机制.mp4
-03-常用JVM配置参数.mp4
-04-GC算法与种类.mp4
-05-GC参数.mp4
-06-类装载器.mp4
-07-性能监控工具.mp4
-08-Java堆分析.mp4
-09-锁.mp4
-10-Class文件结构.mp4
-11-字节码执行.mp4
【4】一个java(高级)工程师需要具备的要求:
另外,我要说明,您要想从本文中学到一些JAVA高级知识是学不到的,因为本文告诉您的作为一个(高级)JAVA工程师应该学什么,而不是告诉您具体的知识细节。
一、JAVA。要想成为JAVA(高级)工程师肯定要学习JAVA。一般的程序员或许只需知道一些JAVA的语法结构就可以应付了。但要成为JAVA(高级)工程师,您要对JAVA做比较深入的研究。您应该多研究一下JDBC、IO包、Util包、Text包、JMS、EJB、RMI、线程。如果可能,希望您对JAVA的所有包都浏览一下,知道大概的API,这样您就发现其实您想实现的很多功能,通过JAVA的API都可以实现了,就不必自己费太多的脑经了。
二、设计模式。其实写代码是很容易的事情,我相信您也有同感。但如何写得好就比较难了。这个“好”字包括代码可重用性,可维护性,可扩展性等。如何写出好的代码往往要借助一些设计模式。当然长期的代码经验积累,只要您用心,会使您形成自己代码风格。相信您的代码也比较符合代码的可重用性,可维护性,可扩展性。但既然前人已经给我们总结出了经验,我们何不踩着前人的肩膀前进?
三、XML。现在的系统中不使用XML几乎是不可能的。XML的功能非常强大,它可以做数据转换、做系统的配置、甚至可保存您的系统业务数据。因此您必须了解XML,包括它的语法,结构。您还需要比较熟练的使用解析XML的一些API,比如JDOM,SAX等,因为在我们一般的项目中,XML往往担当系统配置信息的作用,您需要用这些API解析这些配置信息,开发完美的项目。
四、精通使用一种或两种框架。像在《如何成为java初级程序员》中提到的那样,“框架都会有许多可重用的代码,良好的层次关系和业务控制逻辑,基于框架的开发使你可以省出很多的开发成本”。但我这里希望您能精通,更多的是希望您能通过框架的使用了解框架的思想。这样您在开发一个项目时思路会开阔一些,比如您会想到把SQL语句与您的JAVA代码分开,再比如您会考虑把您的业务逻辑配置到XML或者数据库中,这样整个项目就很容易扩张了。
五、熟悉主流数据库。其实真正比较大的项目都是有人专门做数据库的,但往往很多项目要求作为(高级)工程师的您也参与数据库的设计以及SQL的编写。所以为了更好的为国家做贡献,建议您还是多了解一些主流数据库,比如SQLSERVER,ORACLE,多连接SQL和存储过程以及触发器。如果您不是“科班”出身,您还需要补充一些数据库原理方面的知识。
六、精通一种或两种WEBServer。尽管我再《如何成为java初级程序员》里讲过它,我还是要强调您要精通一种或两种。因为作为JAVA工程师,特别时想成为高级JAVA工程师的您,您不可避免地要部署您的项目到WebServer上,而且只有当您精通一种WebServer,您才可能最大限度地使用它的资源,这往往可以节省很多时间和精力。
七、UML。我知道您肯定想成为高级工程师,因此您有必要了解或熟练或精通UML,这取决于您有多大决心想成为高级工程师和项目经理。在比较正规的开发团队中,UML是讨论项目的交流工具,您要想做一个软件工程师,您至少要能看懂,您要想做高级工程师,您要能通过它来描述您对项目的理解,尽管这不是必须,但却很重要。
八、站在高度分析问题:这不是一个知识点,也不是通过书本就能学得到的。只所以提到这一点,是因为我比您还着急,我希望您更快的成为一个高级的软件工程师,而不是一个一般的软件工程师。希望您在工作中多向您的系统分析员、需求分析员、系统设计员学习,多站在他们角度上去看您在开发的项目。在最好在项目之初先在您的脑海里对项目有个大致的分析、设计,然后和他们进行比较,找找差别,想想缺点。
九、工具。与在《如何成为java初级程序员》里提到的不同,您在这个阶段可能接触到不同的工具了,尽管您还需要使用JB或者IDEA,但能可能对ROSE,Together要多了解一些,因为您要画UML了。不要再对Dreamweaver等HTML编辑器情有独钟了,那些JSP页面让初级程序员去写吧。
详细如下:
第4阶段(Java高级软件工程师) - Web Service、Activiti工作流、Redis高速缓存、Nutch搜索引擎、Dubbo分布式服务框架
- 401 Web Service
-笔记+资料
-源代码
-01-Schema复习.avi
-02-HTTP协议复习.avi
-03-关于Web Service的几个问题.avi
-04-Web Service中的几个重要术语.avi
-05-使用JDK开发Web Service.avi
-06-监听请求_使用Eclipse的TCP_IP工具.avi
-07-编写天气预报和手机归属地的Web Service.avi
-08-WSDL文档深入分析.avi
-09-WSDL文档图解.avi
-10-CXF支持的数据类型.avi
-11-一个Web Service请求的流程.avi
-12-补充数据类型分析.avi
-13-Web Service面试题.avi
-14-CXF的拦截器.avi
-15-CXF的自定义拦截器.avi
-16-用CXF编写基于Spring的Web Service.avi
-17-用CXF编写基于Spring的Web Service添加拦截器.avi
-18-Ajax请求Web Service.avi
-19-jQuery请求Web Service的问题.avi
-20-HttpUrlConnection请求Web Service.avi
-21-通过注解修改wsdl文档.avi
- 402 Activity工作流
-笔记+资料
-源代码
-01-课程计划.avi
-02-Activiti工作流概念(使用程序演示工作流执行).avi
-03-Activiti介绍.avi
-04-准备Activiti开发环境.avi
-05-准备开发环境(配置文件)和核心API的介绍.avi
-06-Activiti入门程序HelloWorld演示流程的执行.avi
-07-流程定义的CRUD(上).avi
-08-流程定义的CRUD(下).avi
-09-流程实例,任务,执行对象控制流程的执行(上).avi
-10-流程实例,任务,执行对象控制流程的执行(下).avi
-11-流程变量(上).avi
-12-流程变量(下).avi
-13-流程历史数据查询.avi
-14-第一天知识点回顾.avi
-15-连线.avi
-16-排他网关.avi
-17-并行网关.avi
-18-流程实例开始结束.avi
-19-接收任务活动(receiveTask).avi
-20-个人任务分配(三种方式).avi
-21-组任务分配(三种方式).avi
-22-工作流提供的用户角色组(IdentityService).avi
-23-项目框架搭建(Struts).avi
-24-请假流程管理系统框架搭建(Spring+Struts).avi
-25-请假流程图.avi
-26-知识点回顾.avi
-27-系统登录(Session).avi
-28-自定义拦截器实现Session验证.avi
-29-部署流程定义(zip文件部署).avi
-30-流程定义和部署对象查询.avi
-31-查看流程图和删除流程定义.avi
-32-请假单业务的查询列表和新增保存.avi
-33-请假单业务的编辑保存和删除.avi
-34-申请请假(启动流程实例).avi
-35-查找正在执行的个人任务列表.avi
-36-使用类动态指定下一个任务的办理人.avi
-37-办理任务(获取任务节点form key中的值).avi
-38-办理任务(使用任务ID,查询请假单).avi
-39-办理任务(使用任务ID,查询任务完成后的连线名称集合).avi
-40-完成任务.avi
-41-查询办理任务时操作的历史批注信息(上).avi
-42-查询办理任务时操作的历史批注信息(下).avi
-43-在请假单中查询历史批注信息(使用请假单ID查询).avi
-44-查看当前流程图和课程总结.avi
- 403 Redis高速缓存
-01-Redis介绍.wmv
-02-安装和简单使用.wmv
-03-Key的操作.wmv
-04-String字符串类型操作.wmv
-05-List链表类型介绍.wmv
-06-List链表类型操作使用.wmv
-07-Set集合类型操作使用.wmv
-08-SortSet排序集合类型操作.wmv
-09-快照持久化.wmv
-10-AOF持久化.wmv
-11-主从模式.wmv
- 404 Nutch搜索引擎
-Nutch架构图
-01-概述、运行方式、连接Hadoop、分析Nutch脚本.mp4
-02-nutch-default.xml配置项、常用命令.mp4
-03-详解Nutch的存储文件夹data、crawldb&segments&linkdb命令.mp4
-04-深入分析Nutch的抓取周期、3大merge和3大read命令阐释、反转链接、解析页面.mp4
-05-域统计、webgraph.mp4
-06-注入分值、轻量级抓取.mp4
-07-indexchecker、安装配置Solr、运行Solr并提交索引、使用Luke工具查看索引、给Solr配置分词器mmseg4j.mp4
-08-指定Luke工具的分词器、运行Solr并提交索引.mp4
-09-安装Windows上的Nutch运行环境Cygwin、运行Nutch.mp4
-10-Hadoop单机本地模式、Hadoop单机伪分布式模式、执行Nutch的crawl命令.mp4
-11-配置Cygwin支持无密码SSH登录、Windows上的Hadoop单机伪分布式、执行wordcount命令.mp4
-12-Hadoop多机完全分布式模式.mp4
-13-改变机器负载、SecondaryNameNode、启用回收站.mp4
-14-动态增加DataNode节点和TaskTracker节点.mp4
-15-限制Hadoop节点连接、动态删除DataNode节点和TaskTracker节点.mp4
-16-运行基准测试.mp4
-17-配置服务端、配置客户端、访问页面、集成Hadoop.mp4
-18-压缩数据、以不同压缩方法注入URL、Hadoop配置Snappy压缩.mp4
-19-Ganglia以组播或单播方式监控同一个网段中的多个集群、Ganglia监控不同网段中的多个集群.mp4
-20-Ganglia以单播方式监控跨多个网段的单一集群、配置Hadoop集群使用单播地址、扩展集群让其节点分别位于3个不同网段、配置host138.mp4
- 405 Dubbo分布式服务框架
-01-Dubbo课程介绍
-02-使用Dubbo对传统工程进行服务化改造的思路介绍--(带样例工程源码)
-03-使用Dubbo对传统工程进行服务化改造
-04-ZooKeeper注册中心安装
-05-使用Dubbo对传统工程进行服务化改造后的服务调用测试--(含源码)
-06-使用Dubbo进行规模服务化前的工程结构优化
-07-Dubbo管理控制台的安装
-08-使用Maven构建Dubbo服务的可执行jar包
-09-在Linux操作系统上手工部署Dubbo服务
-10-构建Dubbo服务消费者Web应用的war包并在Tomcat中部署
-11-Dubbo监控中心的介绍与简易监控中心的安装
-12-搭建敏捷高效的持续集成管理平台
-13-SVN版本管理系统的安装(CentOS+Subversion+Apache+Jsvnadmin)
-14-SVN版本管理系统的使用(CentOS+Subversion+Apache+Jsvnadmin+TortoiseSVN)
-15-Maven私有库和本地库的安装与配置(Sonatype Nexus + Maven)
-16-SonarQube代码质量管理平台的介绍与安装
-17-SonarQube代码质量管理平台的配置与使用
-18-Hudson持续集成服务器的安装与配置
-19-Hudson持续集成服务器的使用(自动化编译、分析、打包、部署)
-20-基于Dubbo的分布式系统架构介绍(以第三方支付系统架构为例)
-21-消息中间件在分布式系统中的作用介绍
-22-ActiveMQ的安装与使用
-23-Redis的安装与使用
-24-FastDFS分布式文件系统的安装与使用
-25-简易版支付系统介绍
-26-简易版支付系统部署(单节点)
-27-Dubbo服务集群
-28-Dubbo分布式服务子系统的划分
-29-Dubbo服务接口的设计原则
-30-Dubbo服务启动依赖检查
-31-Dubbo负载均衡策略
-32-Dubbo线程模型(结合Linux线程数限制配置的实战经验分享)
-33-Dubbo直连提供者(开发调试)
-34-Dubbo服务只订阅(开发调试)
-35-Dubbo服务只注册
-36-ZooKeeper集群的安装、配置、高可用测试
-37-ZooKeeper集群的升级、迁移
-38-ActiveMQ集群的安装、配置、高可用测试
-39-ActiveMQ高可用+负载均衡集群的安装、配置、高可用测试
-40-Redis集群的安装(Redis3+CentOS)
-41-Redis集群的高可用测试(含Jedis客户端的使用)
-42-Redis集群的扩展测试
-43-Keepalived+Nginx实现高可用Web负载均衡
-44-FastDFS集群的安装
-45-FastDFS集群的配置
-46-FastDFS集群的使用(结合简易版支付系统)
-47-使用Redis3.0集群实现Tomcat集群的Session共享
-48-简易版支付系统源码