Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。

1:下面简单的程序来创建一个空白Microsoft Excel工作簿。

请记住一定要引入jar包,切记:http://poi.apache.org/download.html

如:poi-3.9-20121203.jar

 package com.bie;

 import java.io.FileOutputStream;
import java.io.IOException; import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Workbook; /**
*
* @author biexiansheng
*
*/
public class PoiTest { public static void main(String[] args) throws IOException {
//创建一个空的工作簿
Workbook wb = new HSSFWorkbook();
//创建输出流
FileOutputStream fos = new FileOutputStream("c:\\poi.xlsx");
//写入到流中,创建这个excel文件
wb.write(fos);
//关闭流
fos.close(); }
}

2:创建一个excel,然后插入一些数据测试一下;

 package com.bie;

 import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Calendar;
import java.util.Date; import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.usermodel.CreationHelper;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook; /**
*
* @author biexiansheng
*
*/
public class PoiTest { public static void main(String[] args) throws IOException {
//创建一个空的工作簿
Workbook wb = new HSSFWorkbook();
//创建sheet页
Sheet sheet1 = wb.createSheet("第一个sheet页");
wb.createSheet("第二个sheet页");
//创建一个行
Row createRow = sheet1.createRow();
//创建一个单元格,第一列
Cell createCell = createRow.createCell();
createCell.setCellValue("编号");
//创建一个单元格,第二列,然后对此单元格进行赋值
createRow.createCell().setCellValue("姓名");
//创建一个单元格,第三列,然后对此单元格进行赋值
createRow.createCell().setCellValue("年龄");
//创建一个单元格,第四列,然后对此单元格进行赋值
createRow.createCell().setCellValue("性别");
//创建一个单元格,第五列,然后对此单元格进行赋值
createRow.createCell().setCellValue("生日"); //创建第二行
Row createRow2 = sheet1.createRow();
//创建单元格,然后对单元格进行赋值
createRow2.createCell().setCellValue("");
createRow2.createCell().setCellValue("张三");
createRow2.createCell().setCellValue("");
createRow2.createCell().setCellValue("男"); //设置时间格式
//创建一个单元格的样式,单元格样式类
CellStyle cellStyle = wb.createCellStyle();
CreationHelper creationHelper = wb.getCreationHelper();
//格式化日期
cellStyle.setDataFormat(creationHelper.createDataFormat().getFormat("yyyy-MM-dd HH:mm:ss"));
//得到这个单元格,用于赋值和设置单元格的格式
//第一种方法:
Cell createCell2 = createRow2.createCell();
createCell2.setCellValue(new Date());
createCell2.setCellStyle(cellStyle); //第二种方法:
//Cell createCell3 = createRow2.createCell(4);
//createCell3.setCellValue(Calendar.getInstance());
//createCell3.setCellStyle(cellStyle); //创建输出流
FileOutputStream fos = new FileOutputStream("c:\\poi.xlsx");
//写入到流中,创建这个excel文件
wb.write(fos);
//关闭流
fos.close(); }
}

可以看到excel里面的数据内容如下所示:

3:创建一个时间格式的单元格

package com.bie;

import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Date; import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.usermodel.CreationHelper;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook; /**
*
* @author biexiansheng
*
*/
public class PoiTest { public static void main(String[] args) throws IOException {
//创建一个空的工作簿
Workbook wb = new HSSFWorkbook();
//创建sheet页
Sheet sheet1 = wb.createSheet("第一个sheet页");
wb.createSheet("第二个sheet页");
//创建一个行
Row createRow = sheet1.createRow();
//创建一个单元格,第一列
Cell createCell = createRow.createCell();
createCell.setCellValue("编号");
//创建一个单元格,第二列,然后对此单元格进行赋值
createRow.createCell().setCellValue("姓名");
//创建一个单元格,第三列,然后对此单元格进行赋值
createRow.createCell().setCellValue("年龄");
//创建一个单元格,第四列,然后对此单元格进行赋值
createRow.createCell().setCellValue("性别");
//创建一个单元格,第五列,然后对此单元格进行赋值
createRow.createCell().setCellValue("生日"); //创建第二行
Row createRow2 = sheet1.createRow();
//创建单元格,然后对单元格进行赋值
createRow2.createCell().setCellValue("");
createRow2.createCell().setCellValue("张三");
createRow2.createCell().setCellValue("");
createRow2.createCell().setCellValue("男"); //设置时间格式
//创建一个单元格的样式,单元格样式类
CellStyle cellStyle = wb.createCellStyle();
CreationHelper creationHelper = wb.getCreationHelper();
//格式化日期
cellStyle.setDataFormat(creationHelper.createDataFormat().getFormat("yyyy-MM-dd HH:mm:ss"));
//得到这个单元格,用于赋值和设置单元格的格式
Cell createCell2 = createRow2.createCell();
createCell2.setCellValue(new Date());
createCell2.setCellStyle(cellStyle); //创建输出流
FileOutputStream fos = new FileOutputStream("c:\\poi.xlsx");
//写入到流中,创建这个excel文件
wb.write(fos);
//关闭流
fos.close(); }
}

运行效果如下所示:

4:遍历工作簿的行和列并且获取单元格内容

 package com.bie;

 import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Calendar;
import java.util.Date; import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.usermodel.CreationHelper;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook; /**
*
* @author biexiansheng
*
*/
public class PoiTest2 { public static void main(String[] args) throws IOException {
FileInputStream fis = new FileInputStream("c:\\poi.xlsx");
//接受输入流
POIFSFileSystem pfs = new POIFSFileSystem(fis);
//创建一个工作簿
HSSFWorkbook hwb = new HSSFWorkbook(pfs);
//获取第一个sheet页
HSSFSheet sheetAt = hwb.getSheetAt();
if(sheetAt == null){
return ;
} //遍历行里面的单元格内容.
for(int i =; i<=sheetAt.getLastRowNum(); i++){
//得到每一行
HSSFRow row = sheetAt.getRow(i);
//如果为空就跳出
if(row == null){
continue;
}
//遍历列
for(int j=; j<row.getLastCellNum(); j++){
//遍历列里面的内容
HSSFCell cell = row.getCell(j);
if(cell == null){
continue;
}
//输出列里面的内容
System.out.print(" " + cell);
}
System.out.println();
}
} public static String getValue(HSSFCell cell){
if(cell.getCellType() == HSSFCell.CELL_TYPE_BOOLEAN){
return String.valueOf(cell.getBooleanCellValue());
}else if(cell.getCellType() == HSSFCell.CELL_TYPE_NUMERIC){
return String.valueOf(cell.getNumericCellValue());
}else{
return String.valueOf(HSSFCell.CELL_TYPE_STRING);
}
} }

运行效果如下所示:

5:文本提取

 package com.bie;

 import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Calendar;
import java.util.Date; import org.apache.poi.hssf.extractor.ExcelExtractor;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.usermodel.CreationHelper;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook; /**
*
* @author biexiansheng
*
*/
public class PoiTest3 { public static void main(String[] args) throws IOException {
FileInputStream fis = new FileInputStream("c:\\poi.xlsx");
//接受输入流
POIFSFileSystem pfs = new POIFSFileSystem(fis);
//创建一个工作簿
HSSFWorkbook hwb = new HSSFWorkbook(pfs);
//获取第一个sheet页
HSSFSheet sheetAt = hwb.getSheetAt();
if(sheetAt == null){
return ;
}
//文本抽取
ExcelExtractor excelExtractor = new ExcelExtractor(hwb);
System.out.println(excelExtractor.getText());
} }

运行效果如下所示://不要sheet的名称
 excelExtractor.setIncludeSheetNames(false);

6:单元格对齐方式,单元格边框处理,单元格填充色和颜色操作,单元格合并

 package com.bie;

 import java.io.FileOutputStream;
import java.io.IOException; import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFRichTextString;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.usermodel.IndexedColors;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.util.CellRangeAddress; /**
* @author Author:别先生
* @date Date:2017年9月9日 上午10:14:31
*
*
*/
public class PoiTest { /***
* 创建一个单元格并为其设定指定的对齐方式
* @param wb 工作簿
* @param row 行
* @param column 列
* @param halign 水平对齐的方式
* @param valign 垂直对齐的方式
*/
private static void createCell(Workbook wb,Row row,short column,short halign,short valign){
//创建单元格
Cell cell = row.createCell(column);
//设置单元格的值
cell.setCellValue(new HSSFRichTextString("测试内容"));
//创建单元格的样式
CellStyle cellStyle = wb.createCellStyle();
//设置单元格水平对齐方式
cellStyle.setAlignment(halign);
//设置单元格垂直对齐方式
cellStyle.setVerticalAlignment(valign); //设置边框线和颜色
//底部边框
cellStyle.setBorderBottom(CellStyle.BORDER_THIN);
//底部颜色
cellStyle.setBottomBorderColor(IndexedColors.BLUE.getIndex()); //左边边框
cellStyle.setBorderLeft(CellStyle.BORDER_DASH_DOT);
//左边颜色
cellStyle.setBottomBorderColor(IndexedColors.RED.getIndex()); //右边边框
cellStyle.setRightBorderColor(CellStyle.ALIGN_FILL);
//右边边框颜色
cellStyle.setBottomBorderColor(IndexedColors.DARK_YELLOW.getIndex()); //顶部边框
cellStyle.setBorderTop(CellStyle.BORDER_DOTTED);
//顶部颜色
cellStyle.setTopBorderColor(IndexedColors.AUTOMATIC.getIndex()); //设置单元格填充色和颜色操作
//设置背景颜色
cellStyle.setFillBackgroundColor(IndexedColors.GREEN.getIndex());
cellStyle.setFillPattern(CellStyle.BIG_SPOTS);
//设置前景颜色
cellStyle.setFillForegroundColor(IndexedColors.BLUE.getIndex());
cellStyle.setFillPattern(CellStyle.BIG_SPOTS); //设置单元格的样式
cell.setCellStyle(cellStyle);
} public static void main(String[] args) throws IOException {
//定义一个工作簿
Workbook wb =new HSSFWorkbook();
//创建第一个sheet页
Sheet createSheet = wb.createSheet("第一个sheet");
//创建第一行
Row createRow = createSheet.createRow();
createRow.setHeightInPoints(); //调用工具方法,创建单元格
//单元格的对齐方式的调用和使用
createCell(wb, createRow, (short), HSSFCellStyle.ALIGN_CENTER, HSSFCellStyle.VERTICAL_BOTTOM);;
createCell(wb, createRow, (short), HSSFCellStyle.ALIGN_LEFT, HSSFCellStyle.VERTICAL_CENTER);;
createCell(wb, createRow, (short), HSSFCellStyle.ALIGN_RIGHT, HSSFCellStyle.VERTICAL_TOP);;
createCell(wb, createRow, (short), HSSFCellStyle.ALIGN_JUSTIFY, HSSFCellStyle.VERTICAL_JUSTIFY);; //创建单元格
//创建第3行
Row createRow2 = createSheet.createRow();
createRow.setHeightInPoints();
//创建第一列和第二列
Cell createCell = createRow2.createCell();
createCell.setCellValue("单元格合并1"); Cell createCell2 = createRow2.createCell();
createCell2.setCellValue("单元格合并2"); //单元格合并,起始行,结束行,起始列,结束列
createSheet.addMergedRegion(new CellRangeAddress(, , , )); //创建输出流
FileOutputStream fos = new FileOutputStream("d:\\poi.xlsx");
//将内容写到excel文件中
wb.write(fos);
//关闭流
fos.close();
} }

演示效果如下所示:

7:字体处理的单元格

 package com.bie;

 import java.io.FileOutputStream;
import java.io.IOException; import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.usermodel.Font;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.util.CellRangeAddress; /**
* @author Author:别先生
* @date Date:2017年9月9日 上午10:14:31
*
*
*/
public class PoiTest2 { public static void main(String[] args) throws IOException {
//定义一个工作簿
Workbook wb =new HSSFWorkbook();
//创建第一个sheet页
Sheet createSheet = wb.createSheet("第一个sheet");
//创建第一行
Row createRow = createSheet.createRow(); //创建一个字体处理类
Font createFont = wb.createFont();
createFont.setFontHeightInPoints((short));
createFont.setFontName("Courier New");
createFont.setItalic(true);
createFont.setStrikeout(true); CellStyle createCellStyle = wb.createCellStyle();
createCellStyle.setFont(createFont); //创建单元格
Cell createCell = createRow.createCell((short));
createCell.setCellValue("这是一个字体设计的单元格");
createCell.setCellStyle(createCellStyle); //创建输出流
FileOutputStream fos = new FileOutputStream("d:\\poi.xlsx");
//将内容写到excel文件中
wb.write(fos);
//关闭流
fos.close();
} }

演示效果如下所示:

8:读取和重写工作簿

 package com.bie;

 import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException; import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook; /**
* @author Author:别先生
* @date Date:2017年9月9日 上午10:14:31
*
*
*/
public class PoiTest3 { public static void main(String[] args) throws IOException {
//创建输入流
FileInputStream fis = new FileInputStream("d:\\poi.xlsx");
//将获取到文件流放到内存中
POIFSFileSystem pfs = new POIFSFileSystem(fis);
//创建一个工作簿
Workbook wb = new HSSFWorkbook(pfs);
//获取第一个sheet页
Sheet sheetAt = wb.getSheetAt();
//获取第6行
Row row = sheetAt.getRow();
//获取第六个单元格
Cell cell = row.getCell();
if(cell == null){
cell = row.createCell();
}
cell.setCellType(Cell.CELL_TYPE_STRING);
cell.setCellValue("测试单元格"); //创建输出流
FileOutputStream fos = new FileOutputStream("d:\\poi.xlsx");
//将内容写到excel文件中
wb.write(fos);
//关闭流
fos.close();
fis.close();
} }

演示效果如下所示:

9:poi操作单元格换行操作:

 package com.bie;

 import java.io.FileOutputStream;
import java.io.IOException; import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFRichTextString;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.usermodel.IndexedColors;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.util.CellRangeAddress; /**
* @author Author:别先生
* @date Date:2017年9月9日 上午10:14:31
*
*
*/
public class PoiTest4 { public static void main(String[] args) throws IOException {
//定义一个工作簿
Workbook wb =new HSSFWorkbook();
//创建第一个sheet页
Sheet createSheet = wb.createSheet("第一个sheet");
//创建第一行
Row createRow = createSheet.createRow();
//创建单元格
Cell createCell = createRow.createCell();
createCell.setCellValue("我要换行\n are you ok !!!!"); //设置样式
CellStyle cs = wb.createCellStyle();
//设置可以换行
cs.setWrapText(true);
createCell.setCellStyle(cs); //调整一下行的高度
createRow.setHeightInPoints( * createSheet.getDefaultRowHeightInPoints());
//调整单元格的宽度
createSheet.autoSizeColumn(); //创建输出流
FileOutputStream fos = new FileOutputStream("d:\\poi.xlsx");
//将内容写到excel文件中
wb.write(fos);
//关闭流
fos.close();
} }

演示效果如下所示:

10、java集合数据写入至Excel文件poi。

 package com.feixian.yqdata.utils;

 import com.feixian.yqdata.po.YqData;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook; import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List; /**
*
*/
public class DecryptExcelData2 { public static void main(String[] args) throws IOException { List<YqData> yqData = new ArrayList<>();
YqData yqData1 = new YqData("张三", "", "2020-02-05 12:22:22", "巴铁");
YqData yqData2 = new YqData("张三", "", "2020-02-05 12:22:22", "巴铁");
YqData yqData3 = new YqData("张三", "", "2020-02-05 12:22:22", "巴铁");
YqData yqData4 = new YqData("张三", "", "2020-02-05 12:22:22", "巴铁"); yqData.add(yqData1);
yqData.add(yqData2);
yqData.add(yqData3);
yqData.add(yqData4); //创建一个空的工作簿
Workbook wb = new HSSFWorkbook();
//创建sheet页
Sheet sheet1 = wb.createSheet("sheet0");
//创建一个行
Row createRow = sheet1.createRow();
//创建一个单元格,第一列
Cell createCell = createRow.createCell();
createCell.setCellValue("name");
//创建一个单元格,第二列,然后对此单元格进行赋值
createRow.createCell().setCellValue("CertNo");
//创建一个单元格,第三列,然后对此单元格进行赋值
createRow.createCell().setCellValue("TriplDate");
//创建一个单元格,第四列,然后对此单元格进行赋值
createRow.createCell().setCellValue("TripMode"); //设置时间格式
//创建一个单元格的样式,单元格样式类
// CellStyle cellStyle = wb.createCellStyle();
// CreationHelper creationHelper = wb.getCreationHelper();
// //格式化日期
// cellStyle.setDataFormat(creationHelper.createDataFormat().getFormat("yyyy-MM-dd HH:mm:ss")); // 循环遍历生成的集合
for (int i = ; i < yqData.size(); i++) {
Row createRows = sheet1.createRow(i + );
createRows.createCell().setCellValue(yqData.get(i).getName());
createRows.createCell().setCellValue(yqData.get(i).getCertNo()); // 设置日期类型
createRows.createCell().setCellValue(yqData.get(i).getTriplDate());
// 设置日期类型的样式
// createRows.createCell(2).setCellStyle(cellStyle); createRows.createCell().setCellValue(yqData.get(i).getTripMode());
} //创建输出流
FileOutputStream fos = new FileOutputStream("F:\\poi.xlsx");
//写入到流中,创建这个excel文件
wb.write(fos);
//关闭流
fos.close();
} }

效果如下所示:

一脸懵逼学习Java操作Excel之POI(Apache POI)的更多相关文章

  1. [Training Video - 6] [File Reading] [Java] Read Excel File Using Apache POI API

    读取以下两种格式的Excel : *.xls  and *.xlsx 用Apache POI API来实现,需要用到 HSSF 和 XSSF 的类库 HSSF is the POI Project's ...

  2. Java操作Excel工具类(poi)

    分享一个自己做的poi工具类,写不是很完全,足够我自己当前使用,有兴趣的可以自行扩展 1 import org.apache.commons.lang3.exception.ExceptionUtil ...

  3. java 操作Excel表 创建 查看 修改

    需要用到jxl.jar包  修改有两种方法一种是jxl的  另一种需要apache.poi包 package excelChuLi; import java.io.File; import java. ...

  4. java操作excel文件

    采用POI操作excel API:http://poi.apache.org/apidocs/org/apache/poi/hssf/usermodel/HSSFCell.html poi包:http ...

  5. Java 操作Excel 之Poi(第一讲)

    1.Poi 简介 Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能.HSSF - 提供读写Micros ...

  6. Java 操作 EXCEL

    今天帮朋友写了一段用来处理EXCEL内容的程序,在这里记录下自己的学习过程.主要是对EXCEL表格中的内容做分类和统计,使用计算机来做这种重复的机械性地工作再好不过了.首先,我们需要下载一个java操 ...

  7. JAVA操作Excel时文字自适应单元格的宽度设置方法

    使用JAVA操作Excel通常都使用JXL,方法很简单网上也有很多的教程,然后往往一些细节性的问题却导致我们这些Programmer苦恼不已.这两天帮一个朋友做一个Excel表格自动生成的小软件,就遇 ...

  8. java操作excel常用的两种方式

    Excel是我们平时工作中比较常用的用于存储二维表数据的,JAVA也可以直接对Excel进行操作,在这篇博客中将为大家介绍两种操作Excel的方式,分别为:jxl和poi. 对于两者的区别网上有测试如 ...

  9. java操作Excel处理数字类型的精度损失问题验证

    java操作Excel处理数字类型的精度损失问题验证: 场景: CELL_TYPE_NUMERIC-->CELL_TYPE_STRING--->CELL_TYPE_NUMERIC POI版 ...

随机推荐

  1. python3-元类

    原文出处:http://www.cnblogs.com/linhaifeng/articles/8029564.html exec的使用 #可以把exec命令的执行当成是一个函数的执行,会将执行期间产 ...

  2. Linux内核的整体架构简介

    1. 前言 本文是“Linux内核分析”系列文章的第一篇,会以内核的核心功能为出发点,描述Linux内核的整体架构,以及架构之下主要的软件子系统.之后,会介绍Linux内核源文件的目录结构,并和各个软 ...

  3. web@css普通布局 , 高级布局 , 布局坑

    1.高级布局<文档流概念>:页面从上至下,块式标签一行一行排列,内联式一行中从左至右排列<BFC规则>:左右位置(左右margin)垂直位置(上下margin)容器内外(互不影 ...

  4. springboot:接收date类型的参数

    今天有个postmapping方法,地址都正确,就是死活进不去,真是奇怪了. 终于从日志中得出些端倪,见下: 只有这个属性报错,恰恰这个属性是Date型. 这句话说得更清楚: "defaul ...

  5. C# pdf转word

    引用组件 Spire.Pdf,去官网下载安装,在bin目录里面有需要的dll文件. static void Main(string[] args) { #region Pdf转word PdfDocu ...

  6. dubbo @Activate 注解使用和实现解析

    Activate注解表示一个扩展是否被激活(使用),可以放在类定义和方法上, dubbo用它在spi扩展类定义上,表示这个扩展实现激活条件和时机. 先看下定义: @Documented @Retent ...

  7. ICO和IPO

    ICO 和 IPOIPO:在经过种子轮,天使轮,x轮之后已经非常成熟的状态下进行的投资,基本上是盈利的,上市的是股份,现金流ICO:早期有一个idea,然后又很多的小散户进行的几千万-几亿的投资,风险 ...

  8. ORA-00257: archiver error. Connect internal only, until freed.| Oracle数据库归档日志满导致应用系统反应缓慢的问题处理

    一:查看原因 查看了下V$FLASH_RECOVERY_AREA_USAGE,看看归档目录使用的情况.果然是归档满了. Disconnected from Oracle Database 11g En ...

  9. Confluence 6 数据库表-授权(Authentication)

    下面的表格对用户授权有关的信息进行存储,这部分是通过嵌入到 Confluence 中的  Atlassian Crowd 框架实现的. cwd_user Confluence 中每一个用户的信息. c ...

  10. gnuradio 打包脚本

    #!/bin/sh echo "cd build" cd build echo "rm -rf **" rm -rf ** echo "cmake . ...