赤湾记

  在深圳这座年轻的城市中想找个古风名迹的地方可不太容易,赤湾古炮台——这次出门的目的。
  坐地铁二号线到终点站赤湾站,出站后,周边一片荒凉,高低起伏的山丘,稀疏的房屋,马路上都是灰尘,时不时有重型大卡轰隆隆的开过。前方都是集装箱码头。
  一向方向感很强的我都指不出北了,依靠GPS和电子罗盘领路下很容易找到上山的路,在这荒凉开阔的地方GPS搜星定位极其准确,出地铁口后是港行路,往西走大概四百米后距离平行的赤湾六路最近,在此翻过围栏到赤湾六路,赤湾六路往反方向回走几百米就可以看到左炮台路,可惜在大面积修路,没法过。可从港机大楼旁边的赤湾一路再转左炮台路。大约1公里路程就可以到山下了。

赤湾左炮台简介:
  赤湾左炮台始建于清康熙八年(公元1669年),原分左、右炮台,共有生铁炮12门,现在只有左炮台保存完好。1983年被深圳市人民政府列为重点文物保护单位。1985年蛇口工业区曾对炮台作了一些修复。炮台全高约3米,北面是炮台城的入口,城内东西两厢,仍遗留两座房屋地基,是当年守炮台士兵的营房。南面的高台宽约8米,是运用炮位的场地。赤湾炮台踞山面海,左、右炮台成犄角之势,箝制赤湾港口,雄视伶仃海面,是鸦片战争时期主要的海上屏障。1839年湖广总督林则徐布防珠江口时,曾重修赤湾炮台,炮台亦为林则徐胜利禁烟发挥了重要作用。广东水师提督关天培利用炮台,在伶仃洋、穿鼻洋大败英国侵略军,书写了中国人民抵抗外侮的光辉一页。

过伶仃洋
  文天祥[南宋]
辛苦遭逢起一经,干戈寥落四周星。
山河破碎风飘絮,身世浮沉雨打萍。
惶恐滩头说惶恐,零丁洋里叹零丁。
人生自古谁无死,留取丹心照汗青!

林则徐古炮台简介
生铁炮青苔

卡口那些事

各品牌相机卡扣参数,列表如下:
可见佳能EF卡扣口大,成像距离短,使用加长的转接环可以轻易转接其他镜头。
而尼康F卡扣成像距离长,几乎无法转接,除非改镜头卡扣,成本相对较高。

卡口 卡口环类型 卡口环直径(mm) 旋转方向 机身像场定位(mm) 使用卡口的品牌
A 内三爪 50 顺时针 44.5 Minolta AF
AR 内三爪 47 顺时针 40.5 Konica
C/Y 内三爪 48 顺时针 45.5 Contax、Yashica、Phenix
EF 内三爪 54 顺时针 44 Canon EOS
F 内三爪 47 逆时针 46.5 Nikon、Phenix
FD/FL 外三爪 48 顺时针 42.1 Canon T、A、F
FX 内三爪 顺时针 43.45 Fujica
K/PK/RK 内三爪 48.5 顺时针 45.5 Pentax、Ricoh、Chinon、Cosina、Phinex
MD/MC 内三爪 45 顺时针 43.5 Minolta、Seagull
OM 内三爪 47.5 顺时针 46 Olympus
R 内三爪 顺时针 46.9 Leica R
SA 内外三爪 48.5 顺时针 44 Sigma

参考:link

[视频]镜头反接实现超微距

  一般的镜头成像距离都比较远,像尼康18~55套头和35mm定焦头都需要30厘米以上的距离才能清晰成像,放大比率也不高。玩微距还得微距镜头,价格不菲。镜头反接或使用近摄环便是最经济简单的做法了。这里我用35mm 1.8g的镜头反接试了下,成像距离只有几个厘米远,物体被放大了很多倍,细节清晰可见。景深非常浅,几乎是在一条线上,所以这个焦外是虚的“一塌糊涂”。

  注意点:G型头反接后光圈会缩到最小,需要手动拨开光圈。手握镜头会比较容易抖动,可以买个反接环将镜头固定住使用三脚架拍摄。尝尝鲜倒不错,小心灰尘。然后相机得用M挡。

  放大镜,小孔,显微。还有啥能成像的? 8-O

struts中使用FormFile文件上传

用贯了spring mvc的注入式文件上传,回到struts中都忘了怎么写,翻了翻老项目,记录下。
struts config中,定义formBean,action中用name指定formBean。

<struts-config>
    <form-beans>
        <form-bean name="fileManagerForm" type="com.dorole.FileManagerForm" />
    </form-beans>
    <action path="..." type="..." parameter="method" name="fileManagerForm">
        <forward name="..." path="..."></forward>
    </action>
</struts-config>

FileManagerForm如下

public class FileManagerForm extends ActionForm {
    private FormFile file;
    public void setFile(FormFile file) {
        this.file = file;
    }
    public FormFile getFile() {
        return file;
    }
}

FileManagerAction如下

public ActionForward upload(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response)
            throws Exception {
        FileManagerForm fmf = (FileManagerForm) form;
        FormFile formFile = fmf.getFile();
        if (formFile.getFileData().length != 0) {
            ...
        }
        return null;
}

jsp如下

<form action="..." method="post" enctype="multipart/form-data">
    <input type="file" name="file" />
    <input type="submit" value="upload" />
</form>