优秀到卓越的动态· · · · · ·

优秀到卓越 添加了新评论:

为什么都说程序员不好?

为什么都说程序员不好?还有以下几个原因:

1、累,加班,简直是常事,不加班不正常,大公司更加班

2、做程序员时间久了,基本丧失了人际交往能力。(针对普通的程序员)

3、天天坐着写程序,身体一天不如一天啊(针对不运动的程序员)

4、30岁以后,就要时刻准备被淘汰了(针对基础不好的程序员,也针对不进取其它领域的程序员)

5、不知道外面的世界什么样,整天活在自己的程序员世界中,不知道别的行业的人都什么样。(针对视野不开阔的程序员)。

所以程序员要开阔视野,多了解其它的行业,多接触其它的人。

10月前 删除
优秀到卓越 添加了新问题:

为什么都说程序员不好?

周围很多人都说程序员不好,不好相处,不要打交道,是因为他们不好说话,内心敏感吗?

我看他们也没有伤害到谁啊。

10月前 删除
优秀到卓越 添加了新问题:

小女生问一下:程序员是做什么的?

经常在节目或一些公开场合,听到“程序员”这三个字,程序员是做什么的,是什么一群人,为什么大家提起来的,总感觉有一个特别的暗示,程序员具体每天都做哪些事情,有什么特点?找老公,程序员合适不合适?
10月前 删除
优秀到卓越 关注了成员:

草木全

草木全论语之旅
1年前 删除
优秀到卓越 添加了新博客:

tomcat起用Gzip压缩的解决方法

HTTP协议上的GZIP编码是一种用来改进WEB应用程序性能的技术。大流量的WEB站点常常使用GZIP压缩技术来让用户感受更快的速度. 但很多用户对如何使用Gzip并不了解。 操作步骤分两步: 1、打开tomcat下的server.xml文件
2年前 删除
优秀到卓越 添加了新博客:

java错误处理的统一js前台代码

function ajax_post(the_url,the_param,succ_callback){ $.ajax({ type:'POST', url:the_url, data:the_param,
2年前 删除
优秀到卓越 添加了新评论:

OutputStream,http流下载文件服务器的文件给客户

前端需要注意的是window.open.该方式导致ie8无法下载。

js请求改为window.location.href=url;即可。

2年前 删除
优秀到卓越 添加了新博客:

springMVC 获得当前线程的Request或session代码

ServletRequestAttributes attr = (ServletRequestAttributes) RequestContextHolder.currentRequestAttributes(); HttpServletRequest request
2年前 删除
优秀到卓越 添加了新问题:

Fastdfs重启后报错,怎么解决?什么原因

[2016-05-12 09:24:51] DEBUG - base_path=/mnt/fastdfs_client, connect_timeout=30, network_timeout=60, tracker_server_count=1, anti_steal_tok
2年前 删除
优秀到卓越 添加了新博客:

利用dns解析来实现网站的负载均衡

当网站的访问量大了就会考虑负载均衡,这也是每一个架构师的基本功了,其基本地位就相当于相声里的说学逗唱,活好不好就看这个了 :) 传统的负载均衡思路是单点的,不管你是硬件的还是软件的基本都是这样的原理 对于一般的需求来说,这样的架构基本就可以
2年前 删除
优秀到卓越 添加了新博客:

论SOA架构的几种主要开发方式

   面向服务架构soa以其独特的优势越来越受到企业的重视,它可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性。Soa的开发方法一般主要有开源的d
2年前 删除
优秀到卓越 添加了新博客:

拜占庭将军问题深入探讨

了解过比特币和区块链的人,多少都听说过拜占庭将军问题,或听说过比特币(或区块链)的一个重要成就正是解决了拜占庭将军问题。但真正明白这个问题的人并不多,甚至知道这个问题实质的人都很罕见。本文是一篇技术科普,将重点提供了拜占庭将军问题本身对本质及经典算法的解析,并探讨与之相关的一些
2年前 删除
优秀到卓越 添加了新博客:

看德国电工的布线:美得令人窒息!

1.看吧,这真是难以置信。 2.它是如此的美丽。 3.所有的电线,被如此完美的整理在一起。 4.同样的地方,(鲜明的对比)令人
2年前 删除
优秀到卓越 添加了新博客:

kafka入门:简介、使用场景、设计原理、主要配置及集群搭建(转)

问题导读: 1.zookeeper在kafka的作用是什么? 2.kafka中几乎不允许对消息进行“随机读写”的原因是什么? 3.kafka集群consumer和producer状态信息是如何保存的? 4.partitions设计
2年前 删除
优秀到卓越 添加了新博客:

稳定模式在RESTful架构中的应用

分布式系统中保持网络稳定的五种方式 重试模式 超时模式 断路器模式 握手模式 隔离壁模式 倘若分布式系统的可靠性由一个极弱的控件决定,那么一个很小的内部功能都可能导致整
2年前 删除
优秀到卓越 添加了新博客:

采用断路器设计模式来保护软件

程序员的人生就像在一个快车道上行驶。几周甚至几小时完成某些特性编码,打包测试没有问题,盖上QA认证,代码部署到生产环境。然而最坏的事情发生 了,你所部署的软件在运行中挂掉了。用墨菲法则来说,就是“会出错的,终将出错”。但是,如果我们在写代码时就能考虑到这些问题会怎样?
2年前 删除
优秀到卓越 添加了新博客:

OutputStream,http流下载文件服务器的文件给客户

package com.ijiuwen.servlet.test; import java.io.IOException; import java.io.InputStream; import java.net.URL; import java.net.URLCon
2年前 删除
优秀到卓越 添加了新评论:

mybatis3异常工具分享【ExceptionUtil】

再看ngrinder的exceptionUtils

package org.ngrinder.common.util;

import org.ngrinder.common.exception.NGrinderRuntimeException;

import java.util.List;

/**
 * Exception processing utility.
 * 
 * @author junoyoon
 * @since 3.2.3
 */
@SuppressWarnings("ThrowableResultOfMethodCallIgnored")
public abstract class ExceptionUtils {
	/**
	 * Check if the exception is {@link NGrinderRuntimeException}. If so, throw it. If
	 * not, wrap the given exception and throw it.
	 * 
	 * @param t 	Throwable
	 * @return exception
	 */
	public static NGrinderRuntimeException processException(Throwable t) {
		if (t instanceof NGrinderRuntimeException) {
			throw (NGrinderRuntimeException) sanitize(t);
		} else {
			throw new NGrinderRuntimeException(sanitize(t), true);
		}
	}

	/**
	 * Check if the exception {@link NGrinderRuntimeException}. If so, throw. If
	 * not, wrap the given exception.
	 * 
	 * @param message	message
	 * @return exception
	 */
	public static NGrinderRuntimeException processException(String message) {
		throw processException(new NGrinderRuntimeException(message));
	}

	/**
	 * Check if the exception is {@link NGrinderRuntimeException}. If so, throw.
	 * If not, wrap the given exception.
	 * 
	 * @param message	message
	 * @param t 		Throwable
	 * @return exception
	 */
	public static NGrinderRuntimeException processException(String message, Throwable t) {
		if (t instanceof NGrinderRuntimeException) {
			throw (NGrinderRuntimeException) sanitize(t);
		} else {
			throw new NGrinderRuntimeException(message, sanitize(t), true);
		}
	}

	/**
	 * Filter the stacktrace elements with only interesting one.
	 * 
	 * @param throwable	throwable
	 * @return {@link Throwable} instance with interested stacktrace elements.
	 */
	public static Throwable sanitize(Throwable throwable) {
		if (throwable instanceof NGrinderRuntimeException) {
			if (((NGrinderRuntimeException) throwable).isSanitized()) {
				return throwable;
			}
		}
		Throwable t = throwable;
		while (t != null) {
			// Note that this getBoolean access may well be synced...
			StackTraceElement[] trace = t.getStackTrace();
			List<StackTraceElement> newTrace = CollectionUtils.newArrayList();
			for (StackTraceElement stackTraceElement : trace) {
				if (isApplicationClass(stackTraceElement.getClassName())) {
					newTrace.add(stackTraceElement);
				}
			}
			StackTraceElement[] clean = new StackTraceElement[newTrace.size()];
			newTrace.toArray(clean);
			t.setStackTrace(clean);
			t = t.getCause();
		}
		if (throwable instanceof NGrinderRuntimeException) {
			((NGrinderRuntimeException) throwable).setSanitized(true);
		}
		return throwable;
	}

	/**
	 * Check if the given class name is the application class or not.
	 * 
	 * @param className	class name including package name
	 * @return true if application class
	 */
	private static boolean isApplicationClass(String className) {
		for (String each : getUninterestingPackages()) {
			if (className.startsWith(each)) {
				return false;
			}
		}
		return true;
	}

	private static final String[] NON_NGRINDER_PACKAGE = ("org.springframework.," + "javax.," + "org.apache.catalina.,"
			+ "sun.," + "net.sf.," + "java.," + "org.ngrinder.common.exception.NGrinderRuntimeException,"
			+ "com.springsource.," + "org.apache.coyote.," + "org.apache.tomact.,"
			+ "org.ngrinder.common.util.ExceptionUtils.").split("(\\s|,)+");

	/**
	 * Get interesting packages.
	 * 
	 * @return interesting packages
	 */
	protected static String[] getUninterestingPackages() {
		return NON_NGRINDER_PACKAGE;
	}

}



2年前 删除
优秀到卓越 添加了新博客:

mybatis3异常工具分享【ExceptionUtil】

/* * Copyright 2009-2012 The MyBatis Team * * Licensed under the Apache License, Version 2.0 (the "License"); * you may no
2年前 删除
优秀到卓越 添加了新评论:

poi读取word 公式变形怎么办?

package com.uet.common.utils;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.OutputKeys;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;

import org.apache.commons.io.output.ByteArrayOutputStream;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.hwpf.HWPFDocument;
import org.apache.poi.hwpf.converter.PicturesManager;
import org.apache.poi.hwpf.converter.WordToHtmlConverter;
import org.apache.poi.hwpf.usermodel.PictureType;
import org.w3c.dom.Document;

public class WordUtils {
	public static String CODING = "GB2312";
	static {
		// 不能漏掉这个,不然jmagick.jar的路径找不到
		String osName = System.getProperty("os.name").toLowerCase();
		if (osName.indexOf("windows") >= 0) {
			CODING = "UTF-8";
		}
	}

	/**
	 * 获得word转为html的内容
	 * 
	 * @param wordFile
	 * @param fileTemp
	 *            eg:/tmp/words/
	 * @throws TransformerException
	 * @throws IOException
	 * @throws ParserConfigurationException
	 */
	public static String convert2Html(File wordFile, final String fileTemp) throws TransformerException, IOException, ParserConfigurationException {
		HWPFDocument wordDocument = new HWPFDocument(new FileInputStream(wordFile)); 
		//wordDocument=new XWPFDocument(new FileInputStream(wordFile));
		WordToHtmlConverter wordToHtmlConverter = new WordToHtmlConverter(DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument());
		wordToHtmlConverter.setPicturesManager(new PicturesManager() {
			public String savePicture(byte[] content, PictureType pictureType, String suggestedName, float widthInches, float heightInches) {
				String imgagePath = fileTemp + suggestedName.toLowerCase();  
                File file = new File(imgagePath);  
                FileOutputStream fos = null;  
                try {  
                    fos = new FileOutputStream(file);  
                    fos.write(content);  
                    fos.close();  
                } catch (Exception e) {  
                    e.printStackTrace();  
                } 
				return fileTemp + suggestedName.toLowerCase();
			}
		});
		wordToHtmlConverter.processDocument(wordDocument);
		 
		Document htmlDocument = wordToHtmlConverter.getDocument();
		ByteArrayOutputStream out = new ByteArrayOutputStream();
		DOMSource domSource = new DOMSource(htmlDocument);
		StreamResult streamResult = new StreamResult(out);

		TransformerFactory tf = TransformerFactory.newInstance();
		Transformer serializer = tf.newTransformer();
		serializer.setOutputProperty(OutputKeys.ENCODING, CODING);
		serializer.setOutputProperty(OutputKeys.INDENT, "yes");
		serializer.setOutputProperty(OutputKeys.METHOD, "html");
		serializer.transform(domSource, streamResult);
		out.close();
		String content = new String(out.toByteArray());
		content=clean(content);
		return content;
	}
	
	private static String clean(String content){
		content=StringUtils.replace(content, "QUOTE", "");
		content=StringUtils.replace(content, "\\* MERGEFORMAT", "");
		return content;
	}
}
 


这个代码,从网上来,但在poi的源码里有个WordToHtmlConverter的main方法,是一样。

有的时候,图片也无法读取,有时候分数的横线无法显示。

2年前 删除
共 66 条  1234下一页 尾页  当前1/4页
© 2014 究问社区 copyRight 豫ICP备13003319号-1