×

java xml pr

java xml(Spring中的XML、注解、JavaConfig该如何选择你怎么看)

admin admin 发表于2023-10-27 08:39:31 浏览44 评论0

抢沙发发表评论

本文目录

Spring中的XML、注解、JavaConfig该如何选择你怎么看

首先注解,JavaConfig用起来方便实用,是趋势将会取代

.xml

的,应为xml有两个缺点:

1、如果所有内容都配置在.xml 文件中,会造成.xml文件十分庞大;文件很多,导致可读性和可维护性很低。2、开发中不断来回切换,太过麻烦,编译期间不容易发现错误

3、采用javaConfig配置代码简介方便管理和阅读。综上三点,注解Annotation和javaConfig将会取代xml

java怎么操作excel转xml文件

百度搜索圈T社区 免费行业视频教程www.aiquanti.com

package com.asima;

import java.io.FileInputStream;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

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;

/**

*

* @author asima

* @data 2006-10-18

*/

public class XlsToAccess

{

HSSFSheet globalSheet = null;

/*读取一个指定单元格内容*/

public String readCellValue(String pos)

{

int xpos;

short ypos;

int cellType; /*取得此单元格的类型 0-Numeric,1-String,3-null*/

String result; /*返回取得的单元格的值*/

ypos = (short) (pos.toUpperCase().charAt(0) - 65);

xpos = Integer.parseInt(pos.substring(1, pos.length())) - 1;

HSSFRow row = null; /* 定义excel中的行 */

HSSFCell cell = null; /* 定义excel中的单元格 */

/* 根据xPos和yPos取得单元格 */

row = globalSheet.getRow(xpos);

cell = row.getCell(ypos);

/** **************此处如果是空需要修改********************************** */

cellType = cell.getCellType();

switch (cellType)

{

case 0: /* 0-Numeric */

result = String.valueOf(cell.getNumericCellValue());

break;

case 1: /* 1-String */

result = cell.getStringCellValue();

break;

case 3: /* 3-null */

result = "";

break;

default:

result = "";

break;

}

return result;

}

/*读取excel文件并把内容插入到access表中*/

public void insertIntoTable() throws Exception

{

// 创建对Excel工作簿文件的引用

HSSFWorkbook workbook =

new HSSFWorkbook(new FileInputStream("D:/temp/test.xls"));

// 获得一个sheet

globalSheet = workbook.getSheetAt(0);

String value1 = readCellValue("c1");

String value2 = readCellValue("c2");

String value3 = readCellValue("c3");

String value4 = readCellValue("c4");

System.out.println(value1);

System.out.println(value2);

/* 插入数据库 */

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

String url = "jdbc:odbc:asima";

Connection conn = DriverManager.getConnection(url);

PreparedStatement stmt =

conn.prepareStatement("insert into custom values(?,?,?,?)");

// 定义查询的SQL语句

stmt.setString(1, value1);

stmt.setString(2, value2);

stmt.setString(3, value3);

stmt.setString(4, value4);

stmt.executeUpdate

java如何读取xml文件

xml解析还是用dom4j方便,import java.util.List;import org.dom4j.Document;import org.dom4j.DocumentException;import org.dom4j.Element;import org.dom4j.io.SAXReader;public class XMLPaser {public static void main(String args) {paserXML();}public static void paserXML(){SAXReader reader = new SAXReader();try {// 读取XML文件Document doc = reader.read("NewFile.xml");Element root = doc.getRootElement();System.out.println(root.getName());List《Element》 param = root.elements();for (Element element : param) {if(element.attributeValue("name").equals("a")){System.out.println(element.getText());}}} catch (DocumentException e) {e.printStackTrace();}}}

在java中解析xml有哪几种方法

(1)DOM解析DOM是html和xml的应用程序接口(API),以层次结构(类似于树型)来组织节点和信息片段,映射XML文档的结构,允许获取和操作文档的任意部分,是W3C的官方标准【优点】①允许应用程序对数据和结构做出更改。②访问是双向的,可以在任何时候在树中上下导航,获取和操作任意部分的数据。【缺点】①通常需要加载整个XML文档来构造层次结构,消耗资源大。【解析详解】①构建Document对象:DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();DocumentBuilder db = bdf.newDocumentBuilder();InputStream is = Thread.currentThread().getContextClassLoader().getResourceAsStream(xml文件);Document doc = bd.parse(is);②遍历DOM对象Document: XML文档对象,由解析器获取NodeList: 节点数组Node: 节点(包括element、#text)Element: 元素,可用于获取属性参数(2)SAX(Simple API for XML)解析流模型中的"推"模型分析方式。通过事件驱动,每发现一个节点就引发一个事件,事件推给事件处理器,通过回调方法完成解析工作,解析XML文档的逻辑需要应用程序完成【优势】①不需要等待所有数据都被处理,分析就能立即开始。②只在读取数据时检查数据,不需要保存在内存中。③可以在某个条件得到满足时停止解析,不必解析整个文档。④效率和性能较高,能解析大于系统内存的文档。【缺点】①需要应用程序自己负责TAG的处理逻辑(例如维护父/子关系等),文档越复杂程序就越复杂。②单向导航,无法定位文档层次,很难同时访问同一文档的不同部分数据,不支持XPath。【原理】简单的说就是对文档进行顺序扫描,当扫描到文档(document)开始与结束、元素(element)开始与结束时通知事件处理函数(回调函数),进行相应处理,直到文档结束【事件处理器类型】①访问XML DTD:DTDHandler②低级访问解析错误:ErrorHandler③访问文档内容:ContextHandler【DefaultHandler类】SAX事件处理程序的默认基类,实现了DTDHandler、ErrorHandler、ContextHandler和EntityResolver接口,通常做法是,继承该基类,重写需要的方法,如startDocument()【创建SAX解析器】SAXParserFactory saxf = SAXParserFactory.newInstance();SAXParser sax = saxf.newSAXParser();注:关于遍历①深度优先遍历(Depthi-First Traserval)②广度优先遍历(Width-First Traserval)(3)JDOM(Java-based Document Object Model)Java特定的文档对象模型。自身不包含解析器,使用SAX【优点】①使用具体类而不是接口,简化了DOM的API。②大量使用了Java集合类,方便了Java开发人员。【缺点】①没有较好的灵活性。②性能较差。(4)DOM4J(Document Object Model for Java)简单易用,采用Java集合框架,并完全支持DOM、SAX和JAXP【优点】①大量使用了Java集合类,方便Java开发人员,同时提供一些提高性能的替代方法。②支持XPath。③有很好的性能。【缺点】①大量使用了接口,API较为复杂。(5)StAX(Streaming API for XML)流模型中的拉模型分析方式。提供基于指针和基于迭代器两种方式的支持,JDK1.6新特性【和推式解析相比的优点】①在拉式解析中,事件是由解析应用产生的,因此拉式解析中向客户端提供的是解析规则,而不是解析器。②同推式解析相比,拉式解析的代码更简单,而且不用那么多库。③拉式解析客户端能够一次读取多个XML文件。④拉式解析允许你过滤XML文件和跳过解析事件。【简介】StAX API的实现是使用了Java Web服务开发(JWSDP)1.6,并结合了Sun Java流式XML分析器(SJSXP)-它位于javax.xml.stream包中。XMLStreamReader接口用于分析一个XML文档,而XMLStreamWriter接口用于生成一个XML文档。XMLEventReader负责使用一个对象事件迭代子分析XML事件-这与XMLStreamReader所使用的光标机制形成对照。

java中xml有什么作用,用在什么地方

java中xml一般是用来当做配置文件的,比方说struts的struts.xml、spring的application.xml,这里面记录的一般是配置信息,比方说servlet配置,映射注入配置等等都可以用xml来配置,当然配置也可以写入数据库,如果配置和程序的业务无关,也和系统配置无关,仅仅和系统构架有关,那就可以把配置写入xml里面来存储这些配置。

java和xml什么关系

xml(Extensible Markup Language)中文意思就是可扩展标记语言,用于存储数据和描述数据,不同的平台可以同过xml文件建立起联系。在java开发中,许多的配置文件,都是xml的,比如web.xml,struts-config.xml,ibatis的sqlMapConfig.xml等。XML作为全球通用的结构化语言,越来越受人们青睐,各种开发平台(比如Microsoft Studio系列、Oracle系列、Inprise Borland系列等)也都把支持XML开发作为宣传口号之一 。由于笔者所从事的电子政务开发较早的引入了XML,所以尝到了许多甜头,在许多项目中利用XML数据交换信息,省去了许多麻烦事,不用制定繁锁的数据格式,利用XML数据易于表达,也利于一线开发者跟踪调试。