【备忘】Windows的命令行下设置网络代理

在公司访问网络的时候,需要设置代理,设置浏览器的代理是相当的方便了。 但有的时候要使用命令行,就需要自己设置了(貌似只要浏览器设置好了,可以直接使用命令行,但我们公司的借,需要有用户名和密码,如果没有使用浏览器先输入的话,在命令行下还是无法访问网络的),设置的方式也比较简单,只需要设置http_proxy,http_proxy_user和http_proxy_pass三个环境变量就可以了。 在命令行下,执行如下命令: set http_proxy=http://proxy.com:port/ set http_proxy_user=username set http_proxy_pass=password 之后就可以通过代理访问网络了。 如果不想每次都设置,可以将这些环境变量,设置到系统的环境变量中。右击我的电脑–>属性–>高级–>环境变量–>系统变量,用新建的方式去设置代理服务器。

【Mooko】开发环境的搭建

在自己电脑上搭建Mooko开发环境的步骤: 1、安装并配置Maven; 2、配置Eclipse,包括Maven、Tomcat等的配置; 3、下载源代码,并将mooko-parent的子工程,通过导入已存在的Maven工程的方式,导入到Eclipse中; 4、配置工程,包括Maven、编译路径、Tomcat等; 5、编译工程,先将工程进行Install(可在执行到web后取消),在mooko-web上执行ant,以进行Jar包的复制,将mooko-auth-plugin的Jar包复制到/WEB-INF/mk-plugins目录下; 6、启动工程,通过Tomcat插件,启动mooko-web工程。 :) 注意哦: 1、工程中所用到的东西,包括Eclipse啥啥的,都不要放到中文目录下哦;

【Freemarker】Freemarker的国际化及使用JSTL

这几天一直在研究怎么实现Freemarker的国际化问题,在网上找了很多的实现,有在生成模板时通过Java代码来加载资源文件的、有使用Spring标签的,但是这些用起来,都感觉不顺手,毕竟在使用Freemarker之前,一直使用的是JSP,而在JSP中使用的最多的标签,还是JSTL,所以又查了一些资料,将JSTL集成进了Freemarker当中。 下面对这三种方式,分别介绍: 1、使用Java代码加载资源文件: 通过上面的代码,将资源文件直接SET到传入模板的Map中,在模板中,通过下面的方式进行资源文件的国际化的调用: 2、通过使用Spring标签: 上面的代码,在模板代码中,引用入了Spring标签文件,这样就可以在模板文件中使用Spring的标签来进行国际化的操作了。在模板文件中使用下面的代码来进行国际化: 而Spring标签的定义文件,在org.springframework.web.servlet包下的org\springframework\web\servlet\view\freemarker目录中,将其复制到你的工作目录,便可使用。 3、使用JSTL标签: 通过上面的代码,将JSTL标签引入到模板中,之后便可像在JSP中一样,来使用JSTL标签了。当然,写法要按照Freemarker的写法。如下: 同样,要使用其他的JSTL标签,也使用同样的方式进行引用便可,下面是Core和FMT的引入例子:

【FreeMarker】在FTL文件中使用自定义的Java方法

在项目中使用FreeMarker做为Spring MVC中的视图文件,在展示List的时候,展示的对象中带有时间字段,但是此时间字段存的是整型的毫秒值,为了更好的展示给用户,必须要进行格式化。 但是FreeMarker中,没有这样的功能方法,只是自己去实现,还好它提供了一个接口,只需要在Java代码中,实现TemplateMethodModel,则可以在FTL中使用了。下面是我实现的Java代码: 在方法中,将参数传进来的对象,格式化成”yyyy-MM-dd H:mm:ss”的样式返回,这样在前台界面就能看到友好样式的时间了。 为了在页面中使用,需要将它传递给页面,在网上很多文章中,都是写的放到传值的Map(一般名为root)中,但,因为我们使用的是Spring MVC,其实传递的Map就是ModelMap,所以在 Controller中,使用下面的代码将它放到ModelMap中: 这样在FTL文件中,使用如下方式,就可以正常显示了: 上面的方法,已经能解决问题了,但还有一个问题,这样的方式,每写一个Controller,或是每个Action中要用到这个格式化方法的时候,都要向ModelMap中存值,这样就是相当相当的麻烦啦。如果做成全局的,就不需要每个都去做这样的操作了。 当然FreeMarker也提供了相应的方法,就是在配置FreeMarkerConfigurer的时候,添加freemarkerVariables,具体配置如下: 其中的timer,就是你在FTL文件中使用的方法名了,FTL文件不变,而Controller中也不需要置入timer了。 现在就可以像使用内置方法一样使用timer方法了。

【备忘】解决Rhythmbox乱码问题

因为系统默认的Banshee播放器,在播放音乐的过程中,经常的死掉,所以将播放器替换成Rhythmbox,但是导入音乐之后,发现中文显示乱码。 在网上查了很多的解决办法,有改单乐编码的,有设置环境变量的,但都不太喜欢,而且影响也蛮大的,最后选定一种,只是针对它自己设置一个变量,来解决乱码问题。 打开位于/usr/share/applications目录下的rhythmbox.desktop文件,修改Exec后的值为: 修改前为: 修改后,重启Rhythmbox,重新导入音乐,乱码解决~~~

【MyBatis】Mapper中注解(Annotation)的使用示例

接触MyBatis也有一段时间了,用起来感觉还不错。 但是它的全Annotation,折腾起来还是蛮麻烦的。不过还好,基本的问题都解决了,下面直接贴代码来展示MyBatis的Mapper中,是如果全部使用Annotation的。 POJO类: Mapper: 在使用比较复杂的SQL时,会用到各种Provider来处理。 虽然都改用Annotation了,但还有些地方不是特别的爽。 1、ResultMap,不知道怎么来定义一个对象,所有的都引用一个; 2、所有的SQL都写到JAVA里了,修改起来,也是件麻烦事。

【Spring】使用Freemarker做视图且能读取Jar包中的FTL文件

在Spring中,默认是使用JSP来做视图文件,但也可以使用Freemarker来做视图文件,不考虑代码的编写方式等的不同,从其存放、读取上,和JSP都是一置的。 但在最近的一个项目中,需要从默认设置的位置来读取FTL文件,而有一些视图文件,则被打包到了JAR中,也需要能正常读取到。 Freemarker的配置,还是使用默认的,如下: 但JAR包中文件的读取方式,和普通的文件读取不一样,需要使用Freemark中的ClassTemplateLoader,但是使用这个TemplateLoader之后,默认的FTL文件则读取不到了…… 在最开始的时候,使用的是一个笨方法,在默认配置位置去寻找FTL文件,如果找不到,则将Freemarker的TemplateLoader切换为ClassTemplateLoader,去JAR包中找寻FTL文件;为了之后还能正常的读取文件,再将TemplateLoader切换回默认的方式。修改FreeMarkerView中的getTemplate()如下: 使用这种方式,虽然可以读取到JAR包中的文件了,但却无法在FTL中使用include这样的功能,还是寻找文件位置的问题,而且,JAR包中的文件,无法做Cache,这样就降低了性能。 在查阅了一些资料之后,发现Freemarker可以设置多个TemplateLoader,同时使用文件和Class等TemplateLoader,将上面修改FreeMarkerView的getTemplate方法还原,修改FreeMarkerView的initServletContext方法中,对Freemarker的Configuration的设置,代码如下: 这样,就可以同时读取普通的FTL文件,而又能从JAR包中读取FTL文件了,而且各种功能都不影响…… PS:建议自己重写一个Freemarker,去修改源代码,不要直接修改Spring中的源码。

【Ubuntu】解决Eclipse的SVN插件的Failed to load JavaHL Library问题

又把系统换成UBUNTU了,继续遇到很多的问题,今天解决一个Eclipse中使用SVN插件的问题, 在Eclipse安装了SVN插件之后,SVN的功能到是也能使用,但是有时会跳出来一个对话框,提示错误Failed to load JavaHL Library.错误。 上网查了一下,才知道是因为缺少包的原因。解决办法: 通过软件中心安装libsvn-java或是直接使用命令来安装sudo apt-get install libsvn-java 在网上查到的,很多说是要安装libsvn-javahl,我的系统是11.10,安装的不是libsvn-javahl,而是libsvn-java 我是个LINUX小白,所以我也不知道为什么,呵呵 之后修改ECLIPSE人配置文件,如果你是使用软件中心安装的Eclipse,那么,打开/usr/lib/eclipse下的eclipse.ini文件,在-vmargs 下添加下面的代码,把缺少的包添加到JAVA人库路径中: -Djava.library.path=/usr/lib/jni (依然不知道为什么是jni,呃……) 之后,重启Eclipse,就不会在提示这个错误了…… 好多东西都不知道唉……

【Spring+MyBatis】mybatis-spring包,从1.0.1升级到1.0.2后配置的一处变更

今天搭建一个新的项目,在使用mybatis-spring包的时候,顺便将它升了一下级,但是升级之后,发现原有的配置文件,居然无法正常的启动了,因是同时升级的还是MyBatis包,所以一开始无法确认是哪里出的问题,经过一番测试后,发现是由于mybatis-spring包升级后所影响的。 在使用1.0.1版本的时候,MyBatis的配置是下面这样的: 在配置MapperScannerConfigurer的时候,是需要将SQLSessionFactory做参数传递进去的。但更新到1.0.2的时候,这个配置就会导到MapperScannerConfigurer配置的错误。将SQLSessionFactory从MapperScannerConfigurer的配置中删除,变成下面的样子,程序启动,就正常了。   没有去读它的源码,具体原因也不知道是什么,只知道这样修改后,可以正常使用了。 PS:修改的办法,来自于官方的PDF文档,当然,1.0.1的配置,也是从官方文档中找到的。呃,没有找到mybatis-spring版本升级的说明……