- 浏览: 321708 次
- 性别:
- 来自: 杭州
最新评论
-
アリス:
请问下@CacheEvict想删除多个缓存要怎么做,比如在添加 ...
Spring缓存注解@Cache使用 -
Finder:
zwllxs 写道楼主,如果一个方法中,有对象类型的参数,此时 ...
Spring缓存注解@Cache使用 -
zwllxs:
楼主,如果一个方法中,有对象类型的参数,此时如果 @Cache ...
Spring缓存注解@Cache使用 -
antor:
使用 @Cacheable(value ="tes ...
Spring缓存注解@Cache使用 -
crjt7937:
屌屌屌
Ubuntu中网上安装mysql
文章列表
前言
标准MVC开源框架有很多(Struts、SpringMVC、Webx),对于生活在开源世界里面的码农来说SpringMVC、Struts是接触比较多,也是最熟悉的框架。
知己知彼
以配置SpringMVC为例,我们常常关注的点主要有以下几个方面:
1.web.xml文件里面请求分配器的配置(DispatcherServlet)。如下图:
拦截以do结尾的HTTP请求。
2.视图控制器(ViewResolver),velocity、freemarker、jsp等,以jsp为例。如下图:
配置了所有视图都到/WEB-INF/view里面去找。
3 ...
从网上安装MySQL方式比较简单,步骤如下:
sudo apt-get install mysql-server
#需要设置root用户的登陆密码
apt-get isntall mysql-client
sudo apt-get install libmysqlclient-dev
检查是否安装成功
sudo netstat -tap | grep mysql
或
ps aux|grep mysql
登陆mysql
mysql -u root -p
修改mysql root用户密码
#当前无密码,设置密码
mysqladmin -u ...
Linux下遇到的问题
- 博客分类:
- linux
在linux上我们常常不会直接使用root用户开启用户的应用程序,而是创建一个新的用户来管理应用程序。
查看端口转发情况:
iptables -t nat -L -n | grep 80
例如在tomcat应用通过普通用户启动后,若请求直接访问80端口或443端口是无法到达tomcat的,原因是没有权限访问1024以下的端口。而我们常用的解决方案是增加路由规则,将80端口的请求转发到8000端口,让tomcat直接监听8000端口,执行命令为:
iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIREC ...
Eclipse远程Debug
- 博客分类:
- tomcat
转载:http://blog.sina.com.cn/s/blog_86a6730b0101iean.html
查询了一些资料,试了一部分,发现有些压根就没起作用。
不过最主要的是避免linux端口被占用的情况。
一、配置$tomcat_home/bin/catalina.sh,在文件顶端加上如下一行:
CATALINA_OPTS="-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000"
或者在 ...
转载:http://www.blogjava.net/duansky/archive/2012/03/18/372137.html
HttpClient这个东西还是要好好研究一下的。
客户端请求代码:
try{
String requestStr = "JSON格式字符串";
CloseableHttpClient httpclient = HttpClients.createDefault();
HttpPost httpPost = new HttpPost("http://127.0.0.1:8080/plan/sys/s ...
Center OS部署系统时遇到的问题
- 博客分类:
- linux
部署上线时由于服务器是全新的,很多环境、工具都未安装。碰到很多以前没有遇到的问题:
一、安装完环境:jdk、tomcat后部署上线,在启动tomcat时出现如下异常:
java.net.UnknownHostException: pay03.migutest: pay03.alipaytest
at java.net.InetAddress.getLocalHost(InetAddress.java:1461)
at com.mchange.v2.uid.UidUtils.generateVmId(UidUtils.java:70)
at com.mchange.v2.uid. ...
挣扎了许久,总算能够正常上无线网了。现在想想,操作系统的基础是如此的重要。
比较简单的方法:ubuntu apt source的bcmwl-kernel-source
安装方法如下:
sudo apt-get update
sudo apt-get install bcmwl-kernel-source
驱动加入黑名单,让系统记住
sudo vi /etc/modprobe.d/blacklist.conf
末尾加入以下语句:
blacklist b43
blacklist ssb
blacklist brcmsmac
复杂方法:
PC公司驱动下载网站上都 ...
【转载】Java NIO写大文件比较
- 博客分类:
- nio
NIO实验篇文章,下面这段话摘自作者的文章:
......
写2G文件,分批次写入,每批次写入128MB;
分别在Win7系统(3G内存,双核,32位,T系列处理器)和MacOS系统(8G内存,四核,64位,i7系列处理器)下运行测试。理论上跟硬盘类型和配置也有关系,这里不再贴出了。
显然writeWithMappedByteBuffer方式性能最好,且在硬件配置较高情况下优势越加明显
在硬件配置较低情况下,writeWithTransferTo比writeWithFileChannel性能稍好
在硬件配置较高情况下,writeWithTransferTo和 ...
业务需求:将数据库表中的大数据以文本方式保存到本地磁盘,即通过线程写入文件。
业务实现:
主线程开启创建文件缓冲流,启动多条子线程,并将文件缓冲流提供给每个子线程
每个子线程调用DAO分页查询接口获取到的数据,组装拼接写入到文件缓冲流中
在这个简单的业务里面最需要注意的应该是每个子线程分页查询时的页码数,需要通过同步的方式来控制。
一、同步锁(synchronized)的方式
同步页码类:
/**
* 同步对象,提供页码
*/
public class SyncObj {
private int pageNo = 0;
public synchron ...
线程阻塞非阻塞及原子量碰撞:http://my.oschina.net/bairrfhoinn/blog/167071
CAS:Compare and Swap, 翻译成比较并交换
java.util.concurrent包完全建立在CAS之上的
java.util.concurrent包中借助CAS实现了区别于synchronized同步锁的一种乐观锁
Java中CAS主要由sun.misc.Unsafe实现,提供了硬件级别的原子操作
Java无法直接访问到操作系统底层(如系统硬件等),因此Java使用native方法来扩展Java程序的功能,具体实现使用c++
Un ...
转载 http://blog.csdn.net/rachel_luo/article/details/8858302
默认Redis程序安装在/usr/local/redis目录下;
配置文件:/usr/local/redis/redis.conf,该配置文件中配置的端口为默认端口:6379;
Redis的启动命令路径:/usr/local/bin/redis-server。
可以指定端口启动多个Redis进程。
#/usr/local/bin/redis-server --port 6380 & #启动6380端口的redis实例。
需要启动多个Redis ...
java之基于jsch连接sftp
- 博客分类:
- Java基础
当系统与系统之间的通信需要大文件共享数据,并且是远程的关系,很多时候都会用到安全的文件传输协议SFTP。
到目前为止,碰到了两种关于SFTP的链接方式:
基于用户名密码的方式连接SFTP;
基于密匙的方式连接SFTP(可以无密码登陆);
两种的主要区别在于后者需要有SFTP服务器的密匙文件、以专网IP(SFTP服务端只允许报备过的IP访问)开放的形式获取文件,这样的安全性应该更高些。
以下是基于jsch的两种连接方式:
/** 用户名密码的方式连接SFTP
* @param host
* @param port
* ...
使用Spring过程中的疑问
- 博客分类:
- Spring
使用Autowired注解进行属性自动注入时,常常会有两个类同时继承一个接口的情况:
public interface InterfaceService {
void doSomething();
}
@Service("interfaceServiceA")
public class InterfaceServiceA implements InterfaceService{
public void doSomething(){
System.out.println("xxx");
}
}
@Service(&qu ...
Spring MVC统一异常处理:http://cgs1999.iteye.com/blog/1547197
WEB工程在运行时不可避免的遇到各种可预知的、不可预知的异常。由于数量比较大,无法逐一进行处理。但又不能放任不管直接显示在页面上,这样会暴露过多的服务器的信息。
Spring MVC提供了3种处理异常的方式:
使用Spring MVC提供的简单异常处理器SimpleMappingExceptionResolver;
实现Spring的异常处理接口HandlerExceptionResolver 自定义自己的异常处理器;
使用注解Exceptio ...
Java初始化代码块与构造函数
- 博客分类:
- Java基础
静态初始化块、非静态初始化块、构造函数、Servlet 中的init()方法
静态初始化块优先执行,且只执行一次(该类被第一次加载时执行),主要初始化静态成员变量、静态常量以及执行静态方法
注意:被final修饰的变量默认为常量,常量必须要初始化值。但当该常量为静态常量,则可以通过静态块赋初始值
public static final String test;
static{
test = "test";
}
非静态初始化块其次执行,且每次对象初始化均执行一次,主要初始化非静态变量及执行静态、非静态方法
执行顺序为:静态初始化块-->【非 ...