- 浏览: 429257 次
- 性别:
- 来自: 杭州
最新评论
-
moshenglei:
应用Spring AOP(六)-------Annotation注解配置方式 -
zuishengmengsi1990:
支持分布式吗
使用Pushlet实现后台信息推送(二) -
hong782365:
...
应用Spring AOP(六)-------Annotation注解配置方式 -
liangma2:
qingchenyuji 写道您好, 看了您的博文,想向您请 ...
使用Pushlet实现后台信息推送(一) -
wuent:
不错~
Java调用Python
文章列表
Java本身的Util包里面就有提供处理正则表达式的工具类,当然还有很多第三方正则表达式处理包,反正到目前为止,用java.util.regex就已经能满足我的需求了。示例如下:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Hello {
public static void main(String[] args) {
String regEx = "[0-9]{6}";//正则表达式
String html = "12459 ...
生产者消费者是经典的线程之间同步通信问题,生产者线程只有在产品仓库中没有产品的时候才生产产品,当它生成完一个产品以后唤醒消费者线程,消费者线程只有在产品仓库中有产品的时候才能取走产品,然后唤醒生产者线程。
Java可以有好几种方法解决这个问题。首先基础的当然是用Object的wait()、notify()和notifyAll()。
产品仓库类:
//产品仓库
public class ProductStore {
private boolean flag = false;
public boolean hasProduct(){//是否有产品
return flag; ...
BlockingQueue也是java.util.concurrent下的主要用来控制线程同步的工具。
BlockingQueue有四个具体的实现类,根据不同需求,选择不同的实现类1、ArrayBlockingQueue:一个由数组支持的有界阻塞队列,规定大小的BlockingQueue,其构造函数必须带一个int参数来指明其大小.其所含的对象是以FIFO(先入先出)顺序排序的。
2、LinkedBlockingQueue:大小不定的BlockingQueue,若其构造函数带一个规定大小的参数,生成的BlockingQueue有大小限制,若不带大小参数,所生成的BlockingQueue ...
今天遇到Java调用一个Python脚本的问题,纠结了大半天,遇到各种问题。网上搜索的大部分都是用jython,但是我想要调用的python脚本里有import urllib,这个urllib也不是什么第三方扩展库,在python的安装path下的Lib下就有,在python命令行下肯定是能找到的。但是用jython的话,sys的path里面就太少了。示例代码:
import org.python.core.Py;
import org.python.core.PySystemState;
import org.python.util.PythonInterpreter;
publ ...
紧接着Callable和线程池,再次接触java.util.concurrent并发包下的东西。Lock提供比synchronized更灵活的并发控制。Lock是java.util.concurrent.locks包下的接口,Lock 实现提供了比使用synchronized 方法和语句可获得的更广泛的锁定操作,它能以更优雅的方式处理线程同步问题。使用最多的Lock类是ReentrantLock。下面用它来实现上一篇日志中的打印机的例子:
import java.util.concurrent.locks.Lock;
import java.util.concurrent.locks.R ...
Java线程之间控制占用临界资源(共享资源)用的最多就是synchronized,首先获得资源访问权的线程给资源对象加锁,使用完毕以后再释放对象锁。例如打印机的例子:
public class Printer {
public void printLetters(char c) {
for(int i = 0; i<5; i++) {
System.out.print(c);
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e. ...
Timer是一种线程设施,用于安排以后在后台线程中执行的任务。可安排任务执行一次,或者定期重复执行,可以看成一个定时器,可以调度TimerTask。TimerTask是一个抽象类,实现了Runnable接口,所以具备了多线程的能力。
测试代 ...
最近使用苹果笔记本,下载了一个rar解压缩的软件,是命令行程序,得加入到系统的环境变量中。网上搜了一下,需要添加到~/.bash_profile文件中,但是看了一下,我电脑上并没有这个文件,但是有一个~/.profile(这些文件都 ...
全屏截图:Command-Shift-3
使用快捷键后会马上截取当前的全屏
指定区域截图:Command-Shift-4
使用快捷键后会出来一个带有座标的瞄准器,用鼠标的拖放可以选择需要截图的区域.
指定程序窗口截图:Commnad-Shift-4-Space
使用快捷键后会出现一个照相机的图标,这时候你可以选择屏幕上能看到的任何程序窗口,把鼠标移到它上面后窗口会整个被高亮,只要单击一下就会把这个窗口截图。
截取的图片默认保存在了桌面上。
Runnable和Callable的区别:(1)Runnable是自从java1.1就有了,而Callable是1.5之后才加上去的(2)Callable规定的方法是call(),Runnable规定的方法是run()(3)Callable的任务执行后可返回值,而Runnable的任务是不能返回值(是void)(4)call方法可以抛出异常,r ...
线程池的接口和类位于java.util.concurrent并发包中。真正的线程池接口是ExecutorService。有四种类型的线程池:newSingleThreadExecutor:创建一个单线程的线程池。这个线程池只有一个线程在工作,也就是相当于单线程串行执行所有任务。如果这个唯一的线程因为异常结束,那么会有一个新的线程来替代它。此线程池保证所有任务的执行顺序按照任务的提交顺序执行。 newFixedThreadPool:创建固定大小的线程池。每次提交一个任务就创建一个线程,直到线程达到线程池的最大大小。线程池的大小一旦达到最大值就会保持不变,如果某个线程因为执行异常而结束,那么线程 ...
服务器新增的系统是Centos6,这个版本默认已经安装了iptables。
iptables的基本操作:
service iptables startservice iptables stop
service iptables restartservice iptables status #如果没有启动,将提示没有启动,否则将会显示已经添加的过滤规则
service iptables save #保存添加的规则,记得每次更改规则以后这样保存一下
清除iptables已有规则
iptables -F
iptables -X
iptables -Z
...
给实验室网站的服务器安装ftp服务器,安装完以后开始没有使用虚拟用户的方式,客户端连接的时候输入Centos系统的一个用户名和密码,能是能正常上传下载,但是它访问到Centos系统的所有目录,这也太不安全了,当然是不可行的。哎,没办法,最后还是设置成虚拟用户的方式吧,虽然麻烦点。虚拟用户的方式是所有客户端ftp用户都借助一个centos的系统上的用户进行上传下载。安装及配置步骤如下:
(以下所有都是在root用户下操作)
1、准备工作
yum install pam*yum install db4*
首先安装PAM(用于用户认证)和DB4(用于生成虚拟用户的用户名密码的db文 ...
最近遇到服务器网站的目录下的所有文件的编码全是gb2312,直接用cat或者vim打开显示都是乱码,网页显示出来当然也全是乱码,所以要解决怎么把目录下的所有文件(包括子文件夹里的文件)由gb2312转码成utf-8的问题。网上一顿搜,总共用了三种方法,最后终于把问题解决了。
第一种方法是利用vi编辑器,打开需要转码的文件。
:set fileencoding
这样可以查看文件当前的编码格式。
:set fileencoding=utf-8
说这样能把当前的文件转码成utf-8。但是失败了,直接打开还是显示乱码,更别说浏览器浏览的页面了。而且即使能转码成功,站点目录下的文本文件 ...
很多Web服务器都支持设置虚拟主机,允许在一台服务器里放置运行多个Web站点。多个Web站点可以根据IP,域名或者端口区分。这里记录Windows下基于端口的虚拟主机的配置方法。
Apache的安装路径为:D:\Program Files\Apache Software Foundation\Apache2.2
在Apache的安装路径下的conf目录下找到httpd.conf,修改:
Listen 80
Listen 8082
#8082 port is added as a virtul host by myself
同时引入在extra目录下的virtualhost的配 ...