原来HTML5的有个download属性

在某技术论坛里泡,发现一篇帖子介绍,原来HTML5的a链接居然有个download属性,如果一个图片链接,点击这个链接后,不再是跳转到这个图片显示,而是直接下载这个图片。

 

<a herf=”l.jpg” download>一张图片</a>

利用这个方法,还可以用来下载pdf、txt等文档,真可谓非常的方便。

 

 

REFERENCE

了解HTML/HTML5中的download属性

Tomcat启动报404错误、部署报404错误

最近打算在mac上重新安装下Tomcat,没曾想在部署上遇到了问题,以前手懒不记录,后果就是要重新踩一次坑,下面记录一下以备忘。

这类问题比较常见,问题经常出现在,web.xml出错,部署路径不正确的那个

我的这次一下子遇到 2 个问题,还都没有报明显的错误

tomcat启动报404

故障是eclipse安装tomcat,直接启动,报localhost:8080出现404页面。

这个解决方法比较简单,双击tomcat进入设置页面,在server location中选择配置use tomcat location,然后就能正常重启了。

Debian安装ibus

自从买了这台mac pro以后,我那台Lenovo老爷机就闲置了,最近想用Linux处理些东西,于是有把这台机器拿了出来,决定将这台笔记本做成一个家用的NAS。

给这台PC装Debian 8 的时候,安装ibus出现了点问题,分别安装了ibus和ibus-pinyin,但一直无法使用,debian 8的一些升级导致习惯了wheezy版debian的我也有些摸不着头脑。以前也遇到过这个问题,并且只是鼠标“点点点”之类的操作,但当时因为懒,没有记录下来,导致现在还要重新踩个坑。下面记录一下,以防再次入坑。

安装ibus、ibus-pinyin

ibus是国外的拼音输入法产品,要用它输入中文还需要ibus-pinyin的支持,

sudo apt-get install ibus ibus-pinyin

如果sudo无效,你还需要提前安装sudo

# apt-get install sudo

安装sudo后还需要将当前身份具有root权限,需要在/etc/sudoers中写入内容:

wangminli ALL=(ALL:ALL) ALL

只有这样,个人身份才能正常使用sudo。

我当初忘记安装sudo,就直接配置/etc/sudoers(这时并没有这个文件),我强行写入当然没有效果。

 

配置ibus

安装完ibus后,默认下系统并不能找到这个软件,还需要简单配置一下,但我当时就是卡在了这一步。

在terminal下使用“ibus-steup”启动ibus,进入配置页面,将pinyin选为使用的输入法。

到“设置——键盘”下找到输入源,配置一下,系统就能找到ibus了。

 

这样就可以正常的输入中文了。

 

 

 

 

公共方法,将request的各个参数全部转成Map类型

有时经常对request获取的参数进行全部获取,但分别转成 Map 类型也非常麻烦,于是在BaseController里添加了一个公共方法,可以节省一些处理的时间。

获取还会有错,慢慢完善吧….

/**
      * 将用户的请求信息封装成普通的Map
      * @param request
      * @return
      */
      public static Map<String,String> getParameterMap(HttpServletRequest request ) {
         // 参数Map
         Map properties = request.getParameterMap();
         // 返回值Map
         Map<String,String> returnMap = new HashMap<String,String>();
         Iterator entries = properties .entrySet().iterator();
         Map.Entry entry;
         String name = "";
         String value = null;
         while ( entries.hasNext()) {
             entry = (Map.Entry) entries.next();
             name = (String) entry.getKey();
             Object valueObj = entry .getValue();
             if( null == valueObj ){
//               value = null;
             } else if( valueObj instanceof String[]){
                 String[] values = (String[]) valueObj ;
                 for( int i=0; i< values. length; i++){
                     value = values[ i] + ",";
                 }
                 value = value.substring(0, value.length()-1);
             } else{
                 value = valueObj .toString();
             }
             returnMap.put( name, value);
         }
         return returnMap;
     }

调用方法如下:

Map map = BaseController.getParameterMap( request );

 

导入jar,但依然显示classNotFoundException的处理方法

最近开始练手一个项目,想导入支持json的jackson的jar包时出现了问题,总是提示classNotFoundException的错误,类不存在,但是我已经将这个jar包加载进项目中了,用了一个JacksonDemo的类测试也是成功的,但是使用controller时,就会出问题。

一时也没找到合适的解决方法。

只好使用一个保险的做法,在WEB-INF中的lib文件中build path进我创建的那三个jackson的jar包,这样在测试时就成功了,显示正常。先这样用着吧,有时间在查明原因。

 

树莓派上手记录

20140603153742-34441213

树莓派3刚发布我就购买了,也做了一些折腾,却没留下一点笔记,现在再捡起来继续研究,发现很多都忘记了,忘性真大,所以赶紧把一些知识点记录下来。

一些硬件设备

  • 8G或以上的内存卡
  • 5V 2A 的电源
  • hdmi转vga数据线(非强制)

内存卡应该没人都有,树莓派的系统其实并不是很大,安装之后不超4G,但是官站建议8G,确实,再安装一些工具后,4G肯定不够用,8G比较基础。最好是

chrome插件开发记录

先上成果,尝试开发的百度推广拦截器:

链接: http://pan.baidu.com/s/1c16JF3M 密码: xv9f

 

近期的魏泽西事件,确实让人愤恨,在对百度的价值观产生质疑的同时,也觉得有必要做一个东西,用来屏蔽掉百度的推广链接。

研究了一下,也不是非常难,并不像开发IE浏览器和Firefox那样需要用到C++的COM知识,在chrome上只需要web开发的知识足矣。

 

这个插件一共有4个文件:

  • manifest.json – 所有插件都要有这个文件,这是插件的配置文件,可看作插件的“入口”。
  • icon.png – 小图标,推荐使用19*19的半透明png图片,更好的做法是同时提供一张38*38的半透明的png图片作为大图标,在我后面提供的例子中,我就是那么干的。
  • popup.html – 就是你所看到的那个阿猫阿狗的弹出页面。
  • popup.js – 阿猫阿狗页面所引用的javascript文件。

 

 

 

 

Reference

官网上手,非常不错!

 

未完待续….