java程序员基本技能

来源:互联网 发布:java实现树形层级关系 编辑:程序博客网 时间:2024/05/01 17:33
1. Java基础:
        Collection: Set(HashSet,LinkedHashSet,SortedSet,TreeSet),Map(HashMap,LinkedHashMap,SortedMap,TreeMap,ConcurrentHashMap),List(ArrayList,LinkedList),Queue(LinkedList)
        正则表达式: Pattern,Matcher
        IO: Serializable,Reader,Writer,InputStreamReader,OutputStreamWriter,StringWriter,BufferedWriter,ObjectOutputStream,ObjectInputStream,TeeOutputStream
        Java反射: Class,Method,Field
        Annotation: 编写,使用
        Socket: ServerSocket,Socket,URL,InetAddress
        多线程: 锁机制,synchronized,wait(),notify(),notifyAll(),BlockingQueue,Lock,ThreadLocal
        线程池: Executors,ThreadPoolExecutor
        util: Arrays,Collections,AtomicNumber(AtomicInteger)
        压缩: GZIP,Zip,Infalter
        日期: SimpleDateFormat,java.util.Date,java.sql.Date,java.sql.Time,java.sql.Timestamp
        jdbc: PreparedStatement,Statement,事务,SQL注入,metadata,数据库连接池,分页SQL
        异常处理
                常用异常: IllegalArgumentException,IllegalStateException,SecurityException
                原则:     1. 将所有异常转换为只使用RuntimeException,抛异常时将输入参数作为exception message抛出
                        2. 所有用 return error_code的地方全部采用抛异常
                        3。只对 循环 try catch异常,以避免批处理中断,其它非特殊情况,一般不作异常处理
        断言: org.springframework.util.Assert
        RPC: RMI,WebService

        邮件: JavaMail


2. 工具类库:
        commons-lang
                org.apache.commons.lang.StringUtils
                org.apache.commons.lang.RandomStringUtils               
        commons-io
                org.apache.commons.io.IOUtils
        commons-collections
                CollectionUtils
        commons-beanutils
                BeanUtils,PropertyUtils(两个性能都较差,性能比较重要的场合可以自己重写)
        java日志框架
                log4j,slf4j
        模板语言
                Freemarker (相比Velocity,语法更加有可读性,性能两者差别不大)
        json
                jackson
        数据验证
                Hibernate-Validator
        单元测试:
                Junit,Mockito,PowerMock
        XML:
                xstream( xml <==> bean 序列化框架 )
        持久层框架(ORM):
                spring jdbc
        定时任务: 
                Timer,Cron表达式
                spring cron: org.springframework.scheduling.concurrent.ConcurrentTaskScheduler
                             concurrentTaskScheduler.schedule(task, new CronTrigger("0 1 3 * * *"));    
        动态语言
                Groovy
        表达式工具
                MVEL(语法最像java)
        数据库连接池

                c3p0


3. JVM
        JProfiler,JVisiualVM
        sun jdk命令行: jmap -heap <pid> : 查看jvm内存
        JRockit: jrcmd <pid> help
        jps -ml : 显示进程ID及类名称
        JVM: 内存结构(分代结构:新生代,老年代)


4. Web开发

        容器:
                Jetty,Tomcat
        概念:
                Servlet,Filter,Listerner
        Jsp:
                常用标签: JSTL,spring form tag
        MVC:
                springmvc: 参数绑定,返回值("redirect:/" , "forward:/") 


5.Spring

        IOC
                autowire
        AOP
                配置,应用场景(权限,日志/审计,耗时,对象池,缓存,错误处理,事务,上下文(ThreadLocal)
        ORM
                JdbcTemplate,RowMapper
        其它:
                1. 生命周期: 
                        org.springframework.beans.factory.InitializingBean
                        org.springframework.beans.factory.DisposableBean
                2. FactoryBean
                3. xxxxAware接口
                4.
                <!-- component-scan自动搜索@Component , @Controller , @Service , @Repository等标注的类 -->
                <context:component-scan base-package="com.company.project.service.impl" />              


6. 权限:

        RBAC概念,单点登录,OAuth


7. 前端开发

        jQuery,Ajax,jsonp


8. 设计工具

        数据库设计: PowerDesigner
        画图: Visio,甘特图: Project


9. 构建工具

        Maven,Hudson(持续集成)


10. 质量管理

        Sonar,Findbug


11. Wiki

        Dashboard


12. BUG管理

        JIRA


13. 源代码管理

        git


14. Http通讯查看

        Fiddler2


15. Linux

        dstat   系统负载全局信息:包括网络,IO,CPU等
        top     显示进程信息
        iostat -x 1 统计磁盘IO负载百分比
        awk     统计及字符串切割
        grep    
        cat     显示文件数据
        sort    排序
        uniq    排重
        wc -l   计行数
        netstat -lanp 查看网络进程


16. 数据库

        mysql,水平分区,垂直分区,水平/垂直分区工具(cobar)
        列式数据库: Mysql InfoBright


17. 缓存

        Redis: 数据结构,应用场景: 排行榜


18. Http服务器

        Nginx: upstream,负载均衡,failover


19. 消息队列

        metaq


20. 分布式计算

        Hadoop,Hive(SQL => MapReduce转换引擎),Hbase,Mahout(机器学习,推荐引擎)


21. 运维

        Cacti趋势查看,Nagios报警,Puppet(系统批量更新)


22. 最最主要:
        使用google
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 站了一天腿疼怎么办 头发被剪得很丑怎么办 淹脖子破皮了怎么办 孩子胖脖子淹了怎么办 宝宝屁股破皮了怎么办 新生儿屁屁发红及烂怎么办 头发烫完太蓬松怎么办 头发烫的太卷了怎么办 烫了卷发很毛躁怎么办 烫发后头发干枯毛躁怎么办 烫完头发掉发怎么办 烫发掉发严重该怎么办 烫头发后掉头发怎么办 烫过头发后毛躁怎么办 烫了头发像大妈怎么办 头发烫了之后很毛躁怎么办 鳄龟爪子烂了怎么办 乌龟壳边缘烂了怎么办 乌龟拉绿色的水怎么办 小乌龟龟壳变软怎么办 鳄龟不待在水里怎么办 脖子整天黏黏的怎么办 有脊椎侧弯跳舞怎么办 落枕10天还不好怎么办 落枕十几天没好怎么办 肩一边高一边低怎么办 35岁无稳定工作怎么办 机械手表走的快怎么办 机械表发条紧了怎么办 两只乌龟互相咬怎么办? 乌龟鼻子摔烂了怎么办 剃刀龟脖子肿了怎么办 遇见有戾气的人怎么办 身上的寒气太重怎么办 身体里寒气太重怎么办 做人事招不到人怎么办 苹果6cpu坏了怎么办 苹果6s升级不了怎么办 冬天打游戏手冷怎么办 漂流瓶不能用了怎么办 感冒鼻子闻不到味道怎么办