xml数据库

MyBatis注解

时光怂恿深爱的人放手 提交于 2019-12-01 18:42:42
mybatis是一个非常好的持久层框架,有字段映射,有sql缓存,还能很好的和spring做集成,用的人真是非常非常多,尤其是互联网公司,基本上不用hibernate的都在用mybatis。 mybatis的优点主要体现在以下几个方面: java实体和数据库字段做映射,简化jdbc操作,不用写各种各样的set、get字段操作; 可以利用第三方的工具,根据model对象,自动生成xml、mapper配置文件,基本不用写sql; sql集中存储,上线后如果sql有问题,可以直接改配置,不用编译java,重启就能运行; mybatis的缓存,这个意义也不是很大,如果真到了靠这点缓存来提高性能的地步了,估计就不单单是mybatis的原因了。 缺点也有不少,简单列几点: mybatis里面的特殊字符,比如<>等,很容易造成错误,且mybatis的错误提示不是很具体; mybatis更新比较缓慢,其实这几年都没什么更新,而且也没什么要更新的了。确实是这样,mybatis后来新加的基于注解的操作,替代xml,意义不是很大,基本很少人用,mybatis的核心在于mapper映射文件,改为注解后,映射文件不存在了; 调试比较麻烦,主要是因为如果改mapper配置文件,工程需要重启,不知道现在的jrebel能不能动态加载mapper文件。 1. mybatis支持的映射方式

Mybatis最权威的知识点

ぐ巨炮叔叔 提交于 2019-12-01 13:28:54
1、什么是Mybatis? (1)Mybatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。程序员直接编写原生态sql,可以严格控制sql执行性能,灵活度高。 (2)MyBatis 可以使用 XML 或注解来配置和映射原生信息,将 POJO映射成数据库中的记录,避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。 (3)通过xml 文件或注解的方式将要执行的各种 statement 配置起来,并通过java对象和 statement中sql的动态参数进行映射生成最终执行的sql语句,最后由mybatis框架执行sql并将结果映射为java对象并返回。(从执行sql到返回result的过程)。 2、Mybaits的优点: (1)基于SQL语句编程,相当灵活,不会对应用程序或者数据库的现有设计造成任何影响,SQL写在XML里,解除sql与程序代码的耦合,便于统一管理;提供XML标签,支持编写动态SQL语句,并可重用。 (2)与JDBC相比,减少了50%以上的代码量,消除了JDBC大量冗余的代码,不需要手动开关连接; (3)很好的与各种数据库兼容(因为MyBatis使用JDBC来连接数据库,所以只要JDBC支持的数据库MyBatis都支持)。 (4

sql报错注入:extractvalue、updatexml报错原理

假如想象 提交于 2019-12-01 02:21:51
报错注入:extractvalue、updatexml报错原理 MySQL 5.1.5版本中添加了对XML文档进行查询和修改的两个函数:extractvalue、updatexml 名称 描述 ExtractValue() 使用XPath表示法从XML字符串中提取值 UpdateXML() 返回替换的XML片段 通过这两个函数可以完成报错注入 一、extractvalue函数 ExtractValue(xml_frag, xpath_expr) ExtractValue() 接受两个字符串参数,一个XML标记片段 xml_frag 和一个XPath表达式 xpath_expr (也称为 定位器); 它返回 CDATA 第一个文本节点的text(),该节点是XPath表达式匹配的元素的子元素。 第一个参数可以传入目标xml文档,第二个参数是用Xpath路径法表示的查找路径 例如: SELECT ExtractValue('<a><b><b/></a>', '/a/b'); 就是寻找前一段xml文档内容中的a节点下的b节点,这里如果Xpath格式语法书写错误的话,就会报错。这里就是利用这个特性来获得我们想要知道的内容。 (这里我们是为了学习报错注入,所以不需要太详细的知道该函数具体原理) 利用concat函数将想要获得的数据库内容拼接到第二个参数中,报错时作为内容输出。 二

Mybatis

ぃ、小莉子 提交于 2019-12-01 01:21:02
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/a745233700/article/details/80977133 1、什么是Mybatis? (1)Mybatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。程序员直接编写原生态sql,可以严格控制sql执行性能,灵活度高。 (2)MyBatis 可以使用 XML 或注解来配置和映射原生信息,将 POJO映射成数据库中的记录,避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。 (3)通过xml 文件或注解的方式将要执行的各种 statement 配置起来,并通过java对象和 statement中sql的动态参数进行映射生成最终执行的sql语句,最后由mybatis框架执行sql并将结果映射为java对象并返回。(从执行sql到返回result的过程)。 2、Mybaits的优点: (1)基于SQL语句编程,相当灵活,不会对应用程序或者数据库的现有设计造成任何影响,SQL写在XML里,解除sql与程序代码的耦合,便于统一管理;提供XML标签,支持编写动态SQL语句,并可重用。 (2

如何高效地进行数据建模

旧巷老猫 提交于 2019-11-30 15:53:21
理解数据是控制任何企业的先决条件。但只有当这些知识能够被分享和传播时,理解才是有用的。有效的数据建模应该是任何企业架构师的首要关注点。 在我的上一篇文章中,我认为理解一个企业的数据是指导一个企业的核心。但理解只是问题的一半。另一半是能够记录这种理解并与他人分享。 如果没有对数据的共同理解,就谈不上跨系统或组织的共享数据。传统上,这是通过使用数据字典来完成的--这些文件旨在解释数据结构中每个字段的内容和格式。可悲的现实是,这些文档必须手动创建和更新,因此很少会进行更新。其结果是往往会出现过时的、无用的文档和沮丧的架构师和开发人员。但其实还有更好的办法。 正确完成建模 在过去的几十年里,数据建模的努力通常集中在关系数据建模或可扩展标记语言(XML)的建模上。只要数据存储在关系数据库中,关系数据建模就会很好,但除此之外,它很少会有其他的用途。而且XML也不能被可靠地称为建模语言。XML是序列化数据的规范--即定义了如何将数据写入文件。XML为构造数据的序列化提供了一种格式,但它不是一个真正的模型。 我所说的“模型”指的是以数学为基础的形式规范。实际上,这意味着是可以使用形式化方法进行验证的东西。通俗地说,这意味着我们可以用数学运算来证明它是正确的,并且我们可以使验证过程自动化。而在XML模式中捕获数据不符合此定义下的模型。但可以肯定的是,我们可以使用软件来验证该XML格式是否良好

初始MyBatis

萝らか妹 提交于 2019-11-30 14:35:36
初始MyBatis 什么是 MyBatis? MyBatis是支持定制化SQL,存储过程以及高级映射的优秀的持久层框架.MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集.MyBatis可以对配置和原生Map使用简单的XMl或注解,将接口和Java的POJO(Plain Old java Objects,普通的Java对象)映射成数据库中的记录. *** MyBatis如何安装? jar包下载地址 要使用MyBatis,只需要mybatis-x.x.x.jar文件置于classpath中即可,web项目把jar包放到WEB-INF下的lib包中 如果使用Maven来构建项目,则需将下面dependency代码置于pom.xml文件中: <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifacId> <version>x.x.x</version> //版本号 </dependency> MyBatis的功能架构 我们把Mybatis的功能架构分为三层 API接口层:提供给外部使用的接口API,开发人员通过这些本地API来操纵数据库.接口层一接受调用请求就会调用数据处理层来完成具体的数据处理. 数据处理层:负责具体的SQL查找.SQL解析.SQL执行和执行结果映射处理等

mybatis-Java API

前提是你 提交于 2019-11-30 12:26:40
Java API 既然你已经知道如何配置 MyBatis 和创建映射文件,你就已经准备好来提升技能了。 MyBatis 的 Java API 就是你收获你所做的努力的地方。正如你即将看到的,和 JDBC 相比, MyBatis 很大程度简化了你的代码而且保持简洁,很容易理解和维护。MyBatis 3 已经引入 了很多重要的改进来使得 SQL 映射更加优秀。 应用目录结构 在我们深入 Java API 之前,理解关于目录结构的最佳实践是很重要的。MyBatis 非常灵 活, 你可以用你自己的文件来做几乎所有的事情。 但是对于任一框架, 都有一些最佳的方式。 让我们看一下典型应用的目录结构: /my_application /bin /devlib /lib <-- MyBatis *.jar文件在这里。 /src /org/myapp/ /action /data <-- MyBatis配置文件在这里, 包括映射器类, XML配置, XML映射文件。 /mybatis-config.xml /BlogMapper.java /BlogMapper.xml /model /service /view /properties <-- 在你XML中配置的属性 文件在这里。 /test /org/myapp/ /action /data /model /service /view

XML文件解析

假装没事ソ 提交于 2019-11-30 06:16:07
XML文件解析 一、XML 什么是 XML 可扩展标记语言(Extensible Markup Language),标准通用标记语言的子集,简称 XML。是一种 用于标记电子文件使其具有结构性的标记语言。 早在 Web 未发明之前,SGML(Standard Generalized Markup Language,标准通用标记语言)就 已存在 SGML 是国际上定义电子文件结构和内容描述的标准。SGML 具有非常复杂的文档结构,不 适用于 Web 数据描述,欧洲核子物理研究中心的研究人员在 1989 年发明并推出了 HTML。HTML 最 大的特点是简单性和跨平台性,它是一种界面技术并且规定的标记是固定的,即 HTML 语法是不可扩 展的。随着 Web 应用的不断发展,HTML 的局限性也越来越明显地显现了出来,如 HTML 无法描述 数据、可读性差、搜索时间长等。为了适应网络需求 1998 年 2 月 10 日,W3C(World Wide Web Consortium,万维网联盟)公布XML 1.0标准,XML设计目的是为了EDI(Electronic Data Interchange, 电子数据交换),确切地说是为 EDI 提供一个标准数据格式。 XML 主要功能 1.配置文件 2.数据传输 3.存储数据 XML 与 HTML 区别 1) XML 标签都是自定义的,HTML

Hibernate 学习教程

青春壹個敷衍的年華 提交于 2019-11-29 21:01:47
第1课 课程内容. 6 第2课Hibernate UML图. 6 第3课 风格. 7 第4课 资源. 7 第5课 环境准备. 7 第6课 第一个示例HibernateHelloWorld 7 第7课 建立Annotation版本的HellWorld 9 第8课 什么是O/RMapping 11 一、 定义:. 11 二、 Hibernate的创始人:. 11 三、 Hibernate做什么:. 12 四、 Hibernate存在的原因:. 12 五、 Hibernate的优缺点:. 12 六、 Hibernate使用范围:. 12 第9课Hibernate的重点学习:Hibernate的对象关系映射. 12 一、对象---关系映射模式. 12 二、常用的O/R映射框架:. 13 第10课 模拟Hibernate原理(OR模拟) 13 一、 项目名称. 13 二、 原代码. 13 第11课Hibernate基础配置. 15 一、 提纲. 15 二、 介绍MYSQL的图形化客户端. 16 三、 Hibernate.cfg.xml:hbm2ddl.auto 16 四、 搭建日志环境并配置显示DDL语句. 16 五、 搭建Junit环境. 16 六、 ehibernate.cfg.xml : show_sql 17 七、 hibernate.cfg.xml :format_sql 17 八

Struts2+Spring3+Hibernate——整合byMaven

大憨熊 提交于 2019-11-29 19:39:22
在平时的JavaEE开发中,为了能够用最快的速度开发项目,一般都会选择使用Struts2,SpringMVC,Spring,Hibernate,MyBatis这些开源框架来开发项目,而这些框架一般不是单独使用的,经常是Struts2+Spring3+Hibernate、SpringMVC+Spring+Hibernate、SpringMVC+Spring+Mybatis这几种组合中的一种,也就是多个框架配合起来使用。今天来总结一下如何使用Maven搭建Struts2+Spring3+Hibernate4的整合开发环境。 一、建立Maven工程 第一步:    第二步:    第三步:      创建好的项目如下图所示:    第四步:      注意:这里的JDK要选择默认的,这样别人在使用的时候,如何JDk不一致的话也不会出错,如下图所示:    第五步:   创建Maven标准目录      src/main/java     src/main/resources     src/test/java     src/test/resources    第六步:   发布项目:Maven install   清除编译过的项目:Maven clean      Maven install命令执行结果如下:      OK,Maven工程创建成功! 二、搭建Spring3开发环境 2