不打算在 Java 方向上投入精力,但是工作中又免不了涉及有关的开发任务。在此整理、汇总一些链接,希望给日后有关 Java 的工作带来方便。
Java 语言
基础
- JDBC入门教程 – 终极指南
- java中Map和List初始化的两种方法 - csdn
- Java中如何遍历Map对象的4种方法 - csdn
- 数据流DataInput(Output)Stream 和 字节数组流 ByteArrayInput(Output) Stream - csnd
教训
跌的很疼的跟头,全部来自 stackoverflow:
日志解决方案
slf4j+log4j,Apache Flume
slf4j
The Simple Logging Facade for Java (SLF4J) serves as a simple facade or abstraction for various logging frameworks (e.g. java.util.logging, logback, log4j) allowing the end user to plug in the desired logging framework at deployment time.
-
slf4j(simple logging facade for java)是Java的简单的日志门面,它不是具体的日志解决方案,它只服务于各种各样slf4j-logo的日志系统。这里的slf4j-logo可以是log4j,可以是jdk的日志,可以是logback,还可以是slf4j-simple等等。按照官方的说法,SLF4J是一个用于日志系统的简单Facade,允许最终用户在部署其应用时使用其所希望的日志系统。
log4j
关于配置文件的,全部源于 stackoverflow:
Apache Flume
Apache Flume is a distributed, reliable, and available system for efficiently collecting, aggregating and moving large amounts of log data from many different sources to a centralized data store.
-
Flume NG是Cloudera提供的一个分布式、可靠、可用的系统,它能够将不同数据源的海量日志数据进行高效收集、聚合、移动,最后存储到一个中心化数据存储系统中。
maven
Maven是一个强大的Java项目构建工具。
结合 IDE 使用 maven
- 用 Maven 做项目构建 - IBM developerWorks
- 【初学maven】eclipse中maven使用 - csdn
- 使用Eclipse构建Maven项目 (step-by-step) - csdn
其他
关于 Java 思路整理
Java 两个重要的框架:Spring、Strut。
Java 的界面:关于 Swing、AWT 和 SWT,参考 百度知道的答案。目前,更多的是使用 .net/c# 来做界面。个人感觉单纯做 Windows 下的桌面程序(尤其是对界面有一定要求时),不建议选择 Java;Java 更多的是企业级应用,跨平台应用,做 web 应用。
另,徐思雨:Spring + ibatis(是一个基于 SQL 映射支持 Java 和 ·NET 的持久层框架),RTC FireFly。
Eclipse 工具
关于打 jar 包,以及如何使用第三方 jar 包:
结合其他工具:
Redis
官网还是很有价值的,搜到的中文资源基本上在官网都能找到与之对应的英文描述。
官网推荐的 Clients,主流的语言有 Bash C C++ C# Java 等等,还有好多没听过的语言。
把 redis 也放到这里是不合适的。但目前的工作项目是使用 Eclipse 开发的对 redis 进行数据插入、统计的 Java 项目,所以…主要是为工作带来便利。
基础
Java 使用 Redis
C/C++ 使用 Redis
如果想要掌握一手的资料,还是推荐学习官网上的资源。有些问题在中文教程里找不到解决方案。
- hiredis的使用
- redis C接口hiredis 简单函数使用介绍 - csdn
- Redis学习手册(实例代码)
- linux下的hiredis的安装和使用
- linux下的hiredis的安装和使用(二)
- Redis客户端连接方式Hiredis简单封装使用,连接池、屏蔽连接细节 - csdn
内存优化
MessagePack
MessagePack is an efficient binary serialization format. It lets you exchange data among multiple languages like JSON. But it’s faster and smaller. Small integers are encoded into a single byte, and typical short strings require only one extra byte in addition to the strings themselves.
为什么将 MessagePack 放到这个位置? Messagepack in redis。
关于其协议:
其他:
Java 使用案例
如何封装对象: