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
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)
数据库连接池
JProfiler,JVisiualVM
sun jdk命令行: jmap -heap <pid> : 查看jvm内存
JRockit: jrcmd <pid> help
jps -ml : 显示进程ID及类名称
JVM: 内存结构(分代结构:新生代,老年代)
Jetty,Tomcat
概念:
Servlet,Filter,Listerner
Jsp:
常用标签: JSTL,spring form tag
MVC:
springmvc: 参数绑定,返回值("redirect:/" , "forward:/")
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" />
画图: Visio,甘特图: Project
top 显示进程信息
iostat -x 1 统计磁盘IO负载百分比
awk 统计及字符串切割
grep
cat 显示文件数据
sort 排序
uniq 排重
wc -l 计行数
netstat -lanp 查看网络进程
列式数据库: Mysql InfoBright
使用google
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
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
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
IOCautowire
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(系统批量更新)
使用google