深坑浅坑集合

2016年第一篇博客, HiaHiaHia.

mysql

新版5.7windows 64位解压版安装, 使用常规办法安装后启动失败. 需要在安装前执行一下命令

1
mysqld --initialize-insecure --user=mysql

对了, 再提一嘴, 环境变量不要忘.

另外win8安装的时候会有很傻逼的Bug, 例如: E:\tools\mysql 这种路径包含了\t这种表示转义符或制表符.

类似这样的地址被你配置在了my.ini中, 那么恭喜你中招, 安装会报错, 需要改成E:\\tools\\mysql.

js

linux/centos下安装如何安装JDK

首先到oracle下载想要的jdk版本上传到服务器

http://www.oracle.com/technetwork/java/javase/downloads/index.html

1
2
3
4
5
6
7
tar zxvf jdk.tar.gz //解压

vim /etc/profile //编辑该文件, 修改环境变量.

export JAVA_HOME=/usr/local/jdk1.X
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH

搞定收工, 安全起见, 查看一下当前jdk版本.

1
java -version

使用ContextLoaderListener监听tomcat启动时, tomcat启动报错.

啊啊啊啊啊啊啊啊啊啊啊啊啊, 折腾一下午啊啊啊啊啊, 好想扇死自己啊啊啊啊啊啊啊啊, 尼玛好傻逼的错误啊啊啊啊啊啊啊啊啊啊

下午项目上传服务器, 因为是第一次, 所以连同数据库都得上传. 另外还得安装tomcat和jdk.
一番折腾, 全部搞定, 启动.

尼玛啊, 这是神马啊!!

1
2
3
4
5
6
7
25-Dec-2015 19:47:33.314 WARNING [localhost-startStop-2] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesJdbc The web application [crm] registered the JDBC driver [com.mysql.jdbc.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
25-Dec-2015 19:47:33.332 WARNING [localhost-startStop-2] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads The web application [crm] appears to have started a thread named [schedulerFactory_Worker-1] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
java.lang.Object.wait(Native Method)
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:519)
25-Dec-2015 19:47:33.339 WARNING [localhost-startStop-2] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads The web application [crm] appears to have started a thread named [schedulerFactory_Worker-2] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
java.lang.Object.wait(Native Method)
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:519)

Mybatis Mapper配置XML文件热加载实现

日常开发中数据持久层, 我大多选用mybatis, 轻量化和可控性高, sql掌握在自己手里, 感觉踏实一些.
但是从ibatis到mybatis以来, 一直有个十分困扰我的问题, 就是mapperXML文件的热加载问题, 相信这也同样困扰着不少同行们.

这几天实在忍无可忍, 于是在网上搜索了一番, 找了找思路, 结合网上的几个例子改了一个工具类出来, 可解决热加载问题.
实际测试有效, 终于可以摆脱改下SQL必须重启的命运了.

Spring MVC 使用ajax请求json数据时出现406 Not Acceptable

今天又遇到一个之前解决过的问题, 但是没有记录而忘记了, 又坑了自己俩小时. 实在该打.
赶紧记下来.
Spring mvc json请求时返回406错误

错误原因有以下几种

  • 忘记加@ResponseBody注解
  • 没有引入json相关实现包, jackson、fastjson等.
  • jackson、fastjson和Spring mvc整合方式不一样, 方式错误.

如果是fastjson必须在mvc配置文件中增加

1
2
3
4
5
6
7
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="messageConverters">
<list>
<bean class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter"></bean>
</list>
</property>
</bean>
,