Java -- POI -- 入门使用以及简单介绍

 1.创建工作簿 (WORKBOOK)
        HSSFWorkbook wb = new HSSFWorkbook();  

        FileOutputStream fileOut = new FileOutputStream("workbook.xls");  

        wb.write(fileOut);  

        fileOut.close(); 
2.创建工作表(SHEET)
        HSSFWorkbook wb = new HSSFWorkbook();  

        HSSFSheet sheet1 = wb.createSheet("new sheet");  

        HSSFSheet sheet2 = wb.createSheet("second sheet");  

        FileOutputStream fileOut = new FileOutputStream("workbook.xls");  

        wb.write(fileOut);  

        fileOut.close();  
3.创建单元格(CELL)
        HSSFWorkbook wb = new HSSFWorkbook();  

        HSSFSheet sheet = wb.createSheet("new sheet");  

        // Create a row and put some cells in it. Rows are 0 based.  

        HSSFRow row = sheet.createRow((short)0);  

        // Create a cell and put a value in it.  

        HSSFCell cell = row.createCell((short)0);  

        cell.setCellValue(1);  

        // Or do it on one line.  

        row.createCell((short)1).setCellValue(1.2);  

        row.createCell((short)2).setCellValue("This is a string");  

        row.createCell((short)3).setCellValue(true);  

        // Write the output to a file  

        FileOutputStream fileOut = new FileOutputStream("workbook.xls");  

        wb.write(fileOut);  

        fileOut.close();  
4.创建指定单元格式的单元格
        HSSFWorkbook wb = new HSSFWorkbook();  

        HSSFSheet sheet = wb.createSheet("new sheet");  

        // Create a row and put some cells in it. Rows are 0 based.  

        HSSFRow row = sheet.createRow((short)0);  

        // Create a cell and put a date value in it.  The first cell is not styled  

        // as a date.  

        HSSFCell cell = row.createCell((short)0);  

        cell.setCellValue(new Date());  

        // we style the second cell as a date (and time).  It is important to  

        // create a new cell style from the workbook otherwise you can end up  

        // modifying the built in style and effecting not only this cell but other cells.  

        HSSFCellStyle cellStyle = wb.createCellStyle();  

        cellStyle.setDataFormat(HSSFDataFormat.getBuiltinFormat("m/d/yy h:mm"));  

        cell = row.createCell((short)1);  

        cell.setCellValue(new Date());  

        cell.setCellStyle(cellStyle);  

        // Write the output to a file  

        FileOutputStream fileOut = new FileOutputStream("workbook.xls");  

        wb.write(fileOut);  

        fileOut.close();  
5. 单元格的不同格式
        HSSFWorkbook wb = new HSSFWorkbook();  

        HSSFSheet sheet = wb.createSheet("new sheet");  

        HSSFRow row = sheet.createRow((short)2);  

        row.createCell((short) 0).setCellValue(1.1);  

        row.createCell((short) 1).setCellValue(new Date());  

        row.createCell((short) 2).setCellValue("a string");  

        row.createCell((short) 3).setCellValue(true);  

        row.createCell((short) 4).setCellType(HSSFCell.CELL_TYPE_ERROR);  

        // Write the output to a file  

        FileOutputStream fileOut = new FileOutputStream("workbook.xls");  

        wb.write(fileOut);  

        fileOut.close();  
6.单元格的不通对齐方式
        public static void main(String[] args)  

                throws IOException  

        {  

            HSSFWorkbook wb = new HSSFWorkbook();  

            HSSFSheet sheet = wb.createSheet("new sheet");  

            HSSFRow row = sheet.createRow((short) 2);  

            createCell(wb, row, (short) 0, HSSFCellStyle.ALIGN_CENTER);  

            createCell(wb, row, (short) 1, HSSFCellStyle.ALIGN_CENTER_SELECTION);  

            createCell(wb, row, (short) 2, HSSFCellStyle.ALIGN_FILL);  

            createCell(wb, row, (short) 3, HSSFCellStyle.ALIGN_GENERAL);  

            createCell(wb, row, (short) 4, HSSFCellStyle.ALIGN_JUSTIFY);  

            createCell(wb, row, (short) 5, HSSFCellStyle.ALIGN_LEFT);  

            createCell(wb, row, (short) 6, HSSFCellStyle.ALIGN_RIGHT);  

            // Write the output to a file  

            FileOutputStream fileOut = new FileOutputStream("workbook.xls");  

            wb.write(fileOut);  

            fileOut.close();  

        }  

        /** 

         * Creates a cell and aligns it a certain way. 

         * 

         * @param wb        the workbook 

         * @param row       the row to create the cell in 

         * @param column    the column number to create the cell in 

         * @param align     the alignment for the cell. 

         */  

        private static void createCell(HSSFWorkbook wb, HSSFRow row, short column, short align)  

        {  

            HSSFCell cell = row.createCell(column);  

            cell.setCellValue("Align It");  

            HSSFCellStyle cellStyle = wb.createCellStyle();  

            cellStyle.setAlignment(align);  

            cell.setCellStyle(cellStyle);  

        }  
7.单元格的边框设置
        HSSFWorkbook wb = new HSSFWorkbook();  

        HSSFSheet sheet = wb.createSheet("new sheet");  

        // Create a row and put some cells in it. Rows are 0 based.  

        HSSFRow row = sheet.createRow((short) 1);  

        // Create a cell and put a value in it.  

        HSSFCell cell = row.createCell((short) 1);  

        cell.setCellValue(4);  

        // Style the cell with borders all around.  

        HSSFCellStyle style = wb.createCellStyle();  

        style.setBorderBottom(HSSFCellStyle.BORDER_THIN);  

        style.setBottomBorderColor(HSSFColor.BLACK.index);  

        style.setBorderLeft(HSSFCellStyle.BORDER_THIN);  

        style.setLeftBorderColor(HSSFColor.GREEN.index);  

        style.setBorderRight(HSSFCellStyle.BORDER_THIN);  

        style.setRightBorderColor(HSSFColor.BLUE.index);  

        style.setBorderTop(HSSFCellStyle.BORDER_MEDIUM_DASHED);  

        style.setTopBorderColor(HSSFColor.BLACK.index);  

        cell.setCellStyle(style);  

        // Write the output to a file  

        FileOutputStream fileOut = new FileOutputStream("workbook.xls");  

        wb.write(fileOut);  

        fileOut.close();  
8.填充和颜色设置
        HSSFWorkbook wb = new HSSFWorkbook();  

        HSSFSheet sheet = wb.createSheet("new sheet");  

        // Create a row and put some cells in it. Rows are 0 based.  

        HSSFRow row = sheet.createRow((short) 1);  

        // Aqua background  

        HSSFCellStyle style = wb.createCellStyle();  

        style.setFillBackgroundColor(HSSFColor.AQUA.index);  

        style.setFillPattern(HSSFCellStyle.BIG_SPOTS);  

        HSSFCell cell = row.createCell((short) 1);  

        cell.setCellValue("X");  

        cell.setCellStyle(style);  

        // Orange "foreground", foreground being the fill foreground not the font color.  

        style = wb.createCellStyle();  

        style.setFillForegroundColor(HSSFColor.ORANGE.index);  

        style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);  

        cell = row.createCell((short) 2);  

        cell.setCellValue("X");  

        cell.setCellStyle(style);  

        // Write the output to a file  

        FileOutputStream fileOut = new FileOutputStream("workbook.xls");  

        wb.write(fileOut);  

        fileOut.close();  
9.合并单元格操作
        HSSFWorkbook wb = new HSSFWorkbook();  

        HSSFSheet sheet = wb.createSheet("new sheet");  

        HSSFRow row = sheet.createRow((short) 1);  

        HSSFCell cell = row.createCell((short) 1);  

        cell.setCellValue("This is a test of merging");  

        sheet.addMergedRegion(new Region(1,(short)1,1,(short)2));  

        // Write the output to a file  

        FileOutputStream fileOut = new FileOutputStream("workbook.xls");  

        wb.write(fileOut);  

        fileOut.close(); 
10.字体设置
        HSSFWorkbook wb = new HSSFWorkbook();  

        HSSFSheet sheet = wb.createSheet("new sheet");  

        // Create a row and put some cells in it. Rows are 0 based.  

        HSSFRow row = sheet.createRow((short) 1);  

        // Create a new font and alter it.  

        HSSFFont font = wb.createFont();  

        font.setFontHeightInPoints((short)24);  

        font.setFontName("Courier New");  

        font.setItalic(true);  

        font.setStrikeout(true);  

        // Fonts are set into a style so create a new one to use.  

        HSSFCellStyle style = wb.createCellStyle();  

        style.setFont(font);  

        // Create a cell and put a value in it.  

        HSSFCell cell = row.createCell((short) 1);  

        cell.setCellValue("This is a test of fonts");  

        cell.setCellStyle(style);  

        // Write the output to a file  

        FileOutputStream fileOut = new FileOutputStream("workbook.xls");  

        wb.write(fileOut);  

        fileOut.close(); 
11.自定义颜色
        HSSFWorkbook wb = new HSSFWorkbook();  

        HSSFSheet sheet = wb.createSheet();  

        HSSFRow row = sheet.createRow((short) 0);  

        HSSFCell cell = row.createCell((short) 0);  

        cell.setCellValue("Default Palette");  

        //apply some colors from the standard palette,  

        // as in the previous examples.  

        //we‘ll use red text on a lime background  

        HSSFCellStyle style = wb.createCellStyle();  

        style.setFillForegroundColor(HSSFColor.LIME.index);  

        style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);  

        HSSFFont font = wb.createFont();  

        font.setColor(HSSFColor.RED.index);  

        style.setFont(font);  

        cell.setCellStyle(style);  

        //save with the default palette  

        FileOutputStream out = new FileOutputStream("default_palette.xls");  

        wb.write(out);  

        out.close();  

        //now, let‘s replace RED and LIME in the palette  

        // with a more attractive combination  

        // (lovingly borrowed from freebsd.org)  

        cell.setCellValue("Modified Palette");  

        //creating a custom palette for the workbook  

        HSSFPalette palette = wb.getCustomPalette();  

        //replacing the standard red with freebsd.org red  

        palette.setColorAtIndex(HSSFColor.RED.index,  

                (byte) 153,  //RGB red (0-255)  

                (byte) 0,    //RGB green  

                (byte) 0     //RGB blue  

        );  

        //replacing lime with freebsd.org gold  

        palette.setColorAtIndex(HSSFColor.LIME.index, (byte) 255, (byte) 204, (byte) 102);  

        //save with the modified palette  

        // note that wherever we have previously used RED or LIME, the  

        // new colors magically appear  

        out = new FileOutputStream("modified_palette.xls");  

        wb.write(out);  

        out.close(); 
12.读和重写EXCEL文件
        POIFSFileSystem fs = new POIFSFileSystem(new FileInputStream("workbook.xls"));  

        HSSFWorkbook wb = new HSSFWorkbook(fs);  

        HSSFSheet sheet = wb.getSheetAt(0);  

        HSSFRow row = sheet.getRow(2);  

        HSSFCell cell = row.getCell((short)3);  

        if (cell == null)  

            cell = row.createCell((short)3);  

        cell.setCellType(HSSFCell.CELL_TYPE_STRING);  

        cell.setCellValue("a test");  

        // Write the output to a file  

        FileOutputStream fileOut = new FileOutputStream("workbook.xls");  

        wb.write(fileOut);  

        fileOut.close();  
13.在EXCEL单元格中使用自动换行
        HSSFWorkbook wb = new HSSFWorkbook();  

        HSSFSheet s = wb.createSheet();  

        HSSFRow r = null;  

        HSSFCell c = null;  

        HSSFCellStyle cs = wb.createCellStyle();  

        HSSFFont f = wb.createFont();  

        HSSFFont f2 = wb.createFont();  

        cs = wb.createCellStyle();  

        cs.setFont( f2 );  

        //Word Wrap MUST be turned on  

        cs.setWrapText( true );  

        r = s.createRow( (short) 2 );  

        r.setHeight( (short) 0x349 );  

        c = r.createCell( (short) 2 );  

        c.setCellType( HSSFCell.CELL_TYPE_STRING );  

        c.setCellValue( "Use /n with word wrap on to create a new line" );  

        c.setCellStyle( cs );  

        s.setColumnWidth( (short) 2, (short) ( ( 50 * 8 ) / ( (double) 1 / 20 ) ) );  

        FileOutputStream fileOut = new FileOutputStream( "workbook.xls" );  

        wb.write( fileOut );  

        fileOut.close();  
14.数字格式自定义
        HSSFWorkbook wb = new HSSFWorkbook();  

        HSSFSheet sheet = wb.createSheet("format sheet");  

        HSSFCellStyle style;  

        HSSFDataFormat format = wb.createDataFormat();  

        HSSFRow row;  

        HSSFCell cell;  

        short rowNum = 0;  

        short colNum = 0;  

        row = sheet.createRow(rowNum++);  

        cell = row.createCell(colNum);  

        cell.setCellValue(11111.25);  

        style = wb.createCellStyle();  

        style.setDataFormat(format.getFormat("0.0"));  

        cell.setCellStyle(style);  

        row = sheet.createRow(rowNum++);  

        cell = row.createCell(colNum);  

        cell.setCellValue(11111.25);  

        style = wb.createCellStyle();  

        style.setDataFormat(format.getFormat("#,##0.0000"));  

        cell.setCellStyle(style);  

        FileOutputStream fileOut = new FileOutputStream("workbook.xls");  

        wb.write(fileOut);  

        fileOut.close();  
15.调整工作单位置
        HSSFWorkbook wb = new HSSFWorkbook();  

        HSSFSheet sheet = wb.createSheet("format sheet");  

        HSSFPrintSetup ps = sheet.getPrintSetup();  

        sheet.setAutobreaks(true);  

        ps.setFitHeight((short)1);  

        ps.setFitWidth((short)1);   

        // Create various cells and rows for spreadsheet.  

        FileOutputStream fileOut = new FileOutputStream("workbook.xls");  

        wb.write(fileOut);  

        fileOut.close();  
16.设置打印区域
        HSSFWorkbook wb = new HSSFWorkbook();  

        HSSFSheet sheet = wb.createSheet("Sheet1");  

        wb.setPrintArea(0, "$A$1:$C$2");  

        //sets the print area for the first sheet  

        //Alternatively:  

        //wb.setPrintArea(0, 0, 1, 0, 0) is equivalent to using the name reference (See the JavaDocs for more details)  

        // Create various cells and rows for spreadsheet.  

        FileOutputStream fileOut = new FileOutputStream("workbook.xls");  

        wb.write(fileOut);  

        fileOut.close();  
17.标注脚注
        HSSFWorkbook wb = new HSSFWorkbook();  

        HSSFSheet sheet = wb.createSheet("format sheet");  

        HSSFFooter footer = sheet.getFooter()  

        footer.setRight( "Page " + HSSFFooter.page() + " of " + HSSFFooter.numPages() );  

        // Create various cells and rows for spreadsheet.  

        FileOutputStream fileOut = new FileOutputStream("workbook.xls");  

        wb.write(fileOut);  

        fileOut.close();  
18.使用方便的内部提供的函数
        HSSFWorkbook wb = new HSSFWorkbook();  

        HSSFSheet sheet1 = wb.createSheet( "new sheet" );  

        // Create a merged region  

        HSSFRow row = sheet1.createRow( (short) 1 );  

        HSSFRow row2 = sheet1.createRow( (short) 2 );  

        HSSFCell cell = row.createCell( (short) 1 );  

        cell.setCellValue( "This is a test of merging" );  

        Region region = new Region( 1, (short) 1, 4, (short) 4 );  

        sheet1.addMergedRegion( region );  

        // Set the border and border colors.  

        final short borderMediumDashed = HSSFCellStyle.BORDER_MEDIUM_DASHED;  

        HSSFRegionUtil.setBorderBottom( borderMediumDashed,  

            region, sheet1, wb );  

        HSSFRegionUtil.setBorderTop( borderMediumDashed,  

            region, sheet1, wb );  

        HSSFRegionUtil.setBorderLeft( borderMediumDashed,  

            region, sheet1, wb );  

        HSSFRegionUtil.setBorderRight( borderMediumDashed,  

            region, sheet1, wb );  

        HSSFRegionUtil.setBottomBorderColor(HSSFColor.AQUA.index, region, sheet1, wb);  

        HSSFRegionUtil.setTopBorderColor(HSSFColor.AQUA.index, region, sheet1, wb);  

        HSSFRegionUtil.setLeftBorderColor(HSSFColor.AQUA.index, region, sheet1, wb);  

        HSSFRegionUtil.setRightBorderColor(HSSFColor.AQUA.index, region, sheet1, wb);  

        // Shows some usages of HSSFCellUtil  

        HSSFCellStyle style = wb.createCellStyle();  

        style.setIndention((short)4);  

        HSSFCellUtil.createCell(row, 8, "This is the value of the cell", style);  

        HSSFCell cell2 = HSSFCellUtil.createCell( row2, 8, "This is the value of the cell");  

        HSSFCellUtil.setAlignment(cell2, wb, HSSFCellStyle.ALIGN_CENTER);  

        // Write out the workbook  

        FileOutputStream fileOut = new FileOutputStream( "workbook.xls" );  

        wb.write( fileOut );  

        fileOut.close();  
19.在工作单中移动行,调整行的上下位置
        HSSFWorkbook wb = new HSSFWorkbook();  

        HSSFSheet sheet = wb.createSheet("row sheet");  

        // Create various cells and rows for spreadsheet.  

        // Shift rows 6 - 11 on the spreadsheet to the top (rows 0 - 5)  

        sheet.shiftRows(5, 10, -5);  

        FileOutputStream fileOut = new FileOutputStream("workbook.xls");  

        wb.write(fileOut);  

        fileOut.close(); 
20.选种指定的工作单
        HSSFWorkbook wb = new HSSFWorkbook();  

        HSSFSheet sheet = wb.createSheet("row sheet");  

        sheet.setSelected(true);  

        // Create various cells and rows for spreadsheet.  

        FileOutputStream fileOut = new FileOutputStream("workbook.xls");  

        wb.write(fileOut);  

        fileOut.close();  
21.工作单的放大缩小
        HSSFWorkbook wb = new HSSFWorkbook();  

        HSSFSheet sheet1 = wb.createSheet("new sheet");  

        sheet1.setZoom(3,4);   // 75 percent magnification  

        FileOutputStream fileOut = new FileOutputStream("workbook.xls");  

        wb.write(fileOut);  

        fileOut.close();  
22.头注和脚注
        HSSFWorkbook wb = new HSSFWorkbook();  

        HSSFSheet sheet = wb.createSheet("new sheet");  

        HSSFHeader header = sheet.getHeader();  

        header.setCenter("Center Header");  

        header.setLeft("Left Header");  

        header.setRight(HSSFHeader.font("Stencil-Normal", "Italic") +  

                        HSSFHeader.fontSize((short) 16) + "Right w/ Stencil-Normal Italic font and size 16");  

        FileOutputStream fileOut = new FileOutputStream("workbook.xls");  

        wb.write(fileOut);  

        fileOut.close();  

三、重点介绍

一个excel文档必备的内容都有什么呢:

1、文档的名字和保存的位置。(文档以xls结尾)

2、sheet页,一个excel文档可以包括多个sheet页

3、行

4、单元格(有些单元格是合并的)

5、单元格样式(包括背景颜色、对其方式等)

  HSSFWorkbook wb = new HSSFWorkbook();  //创建excel  

    HSSFSheet sheet1 = wb.createSheet("new sheet");  //创建多个sheet页
    HSSFSheet sheet2 = wb.createSheet("second sheet");    

    HSSFCellStyle style = wb.createCellStyle();  //设置单元格背景颜色
    style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
    style.setFillForegroundColor(HSSFColor.YELLOW.index);  

    HSSFRow row = sheet1.createRow((short)0);//创建一行数据,  

    row.createCell((short)0).setCellValue(1);  //给第一行数据赋值
    row.createCell((short)1).setCellValue(1.2);
    row.createCell((short)2).setCellValue("This is a string");
    HSSFCell cell =  row.createCell((short)3);
    cell.setCellValue(true);
    cell.setCellStyle(style);//设置单元格背景颜色  

    sheet1.addMergedRegion(new Region(0,(short)1,1,(short)1));  //合并单元格  

 HSSFCellStyle style_green = wb.createCellStyle();  //设置单元格背景颜色
    style_green.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
    style_green.setFillForegroundColor(HSSFColor.LIME.index);
    style_green.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下边框
    style_green.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左边框
    style_green.setBorderTop(HSSFCellStyle.BORDER_THIN);//上边框
    style_green.setBorderRight(HSSFCellStyle.BORDER_THIN);//右边框
    style_green.setWrapText( true );//自动回车
    style_green.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);//设置竖直方向居中
    style_green.setAlignment(HSSFCellStyle.ALIGN_CENTER);//设置水平方向居中  

sheet.setColumnWidth( (short) k, (short) ( ( 50 * 4 ) / ( (double) 1 / 20 ) ) );//设置单元格宽度

row1.setHeight((short) 0x220 );//设置行高度 

页面弹出保存位置:

    req.setCharacterEncoding("UTF-8");
    resp.setCharacterEncoding("UTF-8");
    resp.setContentType("application/x-download");
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss");
    String filedisplay = sdf.format(new Date())+".xls";
    filedisplay = URLEncoder.encode(filedisplay, "UTF-8");
    resp.addHeader("Content-Disposition", "attachment;filename="+ filedisplay);
    OutputStream out = resp.getOutputStream();
    wb.write(out);  

背景颜色:

HSSFColor.ROYAL_BLUE
HSSFColor.TEAL
HSSFColor.LIME
HSSFColor.PALE_BLUE
HSSFColor.AQUA
HSSFColor.GREEN
HSSFColor.TURQUOISE
HSSFColor.DARK_BLUE
HSSFColor.CORNFLOWER_BLUE
HSSFColor.OLIVE_GREEN
HSSFColor.WHITE
HSSFColor.LIGHT_TURQUOISE
HSSFColor.LEMON_CHIFFON
HSSFColor.LIGHT_GREEN
HSSFColor.BLUE
HSSFColor.DARK_RED
HSSFColor.CORAL
HSSFColor.RED
HSSFColor.LIGHT_YELLOW
HSSFColor.SKY_BLUE
HSSFColor.BROWN
HSSFColor.SEA_GREEN
HSSFColor.INDIGO
HSSFColor.MAROON
HSSFColor.GREY_80_PERCENT
HSSFColor.GREY_25_PERCENT
HSSFColor.DARK_GREEN
HSSFColor.YELLOW
HSSFColor.GOLD
HSSFColor.GREY_40_PERCENT
HSSFColor.DARK_TEAL
HSSFColor.PINK
HSSFColor.ORCHID
HSSFColor.LIGHT_BLUE
HSSFColor.LIGHT_CORNFLOWER_BLUE
HSSFColor.BLACK
HSSFColor.DARK_YELLOW
HSSFColor.VIOLET
HSSFColor.LAVENDER
HSSFColor.ROSE
HSSFColor.BLUE_GREY
HSSFColor.LIGHT_ORANGE
HSSFColor.ORANGE
HSSFColor.GREY_50_PERCENT    

啦啦啦

啦啦啦
时间: 2024-11-05 12:09:02

Java -- POI -- 入门使用以及简单介绍的相关文章

漫游Kafka入门篇之简单介绍

原文地址:http://blog.csdn.net/honglei915/article/details/37564521 介绍 Kafka是一个分布式的.可分区的.可复制的消息系统.它提供了普通消息系统的功能,但具有自己独特的设计.这个独特的设计是什么样的呢? 首先让我们看几个基本的消息系统术语: Kafka将消息以topic为单位进行归纳. 将向Kafka topic发布消息的程序成为producers. 将预订topics并消费消息的程序成为consumer. Kafka以集群的方式运行,

(转)漫游Kafka入门篇之简单介绍

转自:http://blog.csdn.net/honglei915/article/details/37564521 原文地址:http://blog.csdn.net/honglei915/article/details/37564521 介绍 Kafka是一个分布式的.可分区的.可复制的消息系统.它提供了普通消息系统的功能,但具有自己独特的设计.这个独特的设计是什么样的呢? 首先让我们看几个基本的消息系统术语: Kafka将消息以topic为单位进行归纳. 将向Kafka topic发布消

Spring入门篇7 ---- 简单介绍AOP

Spring-AOP 面向切面编程,它是对OOP的一种补充,OOP一般就是纵向关系,举个例子我们发一个用户信息的请求,正常情况下流程就是:身份验证 ——查询用户信息——日志记录(是情况而定)——返回信息,这个就是OOP面向对象编程,但如果有很多业务的话,那么身份验证,日志处理(一般AOP不会用于业务日志处理,否则以后运维的时候比较麻烦),会被调用很多次,这个时候可以引入AOP,他是面向切片处理,它会将程序横向截断,例如把权限模块进行抽离,实现解耦,如果后续权限需要调整只需要调整抽离出来的权限组件

关于java前端入门的一些简单的看法

html:是网页的骨架,静态网页初步的轮廓,简单粗糙,僵硬又没有美感.表单的标签<form>,里面的<input>很常用,里面有type属性等css:为了更加灵活,常与div一起布局,设置边框,颜色,位置等,标签内写(关键词style)JavaScript:比前两个多了var多了function(),,有对象有方法,走向动态,通过<script></script>标签插入到HTML页面JQuery:JavaScript封装和创建对象不方便操作,于是有了JQu

webpack入门篇--1.简单介绍

webpack是一个模块打包工具,给js准备的打包工具,可以把很多的模块打包成很少的文件,特性:代码分割,只加载所需文件,模块通过loaders处理各种文件       处理过程:把有各种依赖的文件通过webpack打包处理成css,js,图片文件 目标:1.切分依赖数,分到不同代码块里,按需加载,懒加 载 2.任何静态资源都可以被视为一个模块,在项目中被引用 3.整合第三方类库,把类库也视为它的模块,在项目中被引用 4.初始化加载时间更少 5.在整个打包过程中可以自定义 6.适合做大型项目 特

Java POI 导出EXCEL经典实现 Java导出Excel弹出下载框

在web开发中,有一个经典的功能,就是数据的导入导出.特别是数据的导出,在生产管理或者财务系统中用的非常普遍,因为这些系统经常要做一些报表打印的工作.而数据导出的格式一般是EXCEL或者PDF,我这里就用两篇文章分别给大家介绍下.(注意,我们这里说的数据导出可不是数据库中的数据导出!么误会啦^_^) 呵呵,首先我们来导出EXCEL格式的文件吧.现在主流的操作Excel文件的开源工具有很多,用得比较多的就是Apache的POI及JExcelAPI.这里我们用Apache POI!我们先去Apach

软件入门的知识之程序设计语言Java和C#的简单介绍和对比[图]

软件入门的知识之程序设计语言Java和C#的简单介绍和对比[图]:前言:要做软件就必然会涉及到程序设计语言,它是什么?有哪些特点?又有哪几部分组成的呢?在这里我们为大家做了一个总结,希望可以通过这些内容让大家对于程序设计语言有一个大概的认识.基本概念:1.低级/高级计算机的硬件只可以识别由1.0组成的机器指令程序,所以机器指令是最基本的计算机语言.由于机器指令是由特定的计算机系统所固有的.面向机器的语言,所以使用机器语言进行程序设计,效率低.可读性差.难以理解,而且也不便修改和维护.后来出现了由

Mahout学习之Mahout简单介绍、安装、配置、入门程序測试

一.Mahout简单介绍 查了Mahout的中文意思--驭象的人,再看看Mahout的logo,好吧,想和小黄象happy地玩耍,得顺便陪陪这位驭象人耍耍了... 附logo: (就是他,骑在象头上的那个Mahout) 步入正文啦: Mahout 是一个非常强大的数据挖掘工具,是一个分布式机器学习算法的集合,包含:被称为Taste的分布式协同过滤的实现.分类.聚类等.Mahout最大的长处就是基于hadoop实现,把非常多曾经执行于单机上的算法,转化为了MapReduce模式,这样大大提升了算法

java 的简单介绍

一.Java 特点     1.简单: 和C++相比较     2.面向对象     3.跨平台    由于它是先编译后解释 + JVM(屏蔽底层操作系统的差异) 二.程序的运行一般有两种:     1.编译  源文件 ------> 编译器  机器码文件       快  无法跨平台     2.解释  源文件 ------> 解释器  逐行翻译并运行   慢  可以跨平台 三.Java运行机制: 先编译,后解释     .java 源文件  -------> 编译器 .class 字