配置xml文件的dtd

8 篇文章 0 订阅

目录

1.了解dtd的思维导图

2.XML是什么?

3.XML的作用:

4.为什么学习XML

5.标准的XML的格式:

1.有且只有一个根元素,途中的

2.XML标签区分大小写,例如下图中的“filter”和“Filter”、“listener”和“Listener”就不是同一个东西,所以不同

3.正确使用结束标签,图中的有开始,既有结束,类似于双标签

4.正确嵌套标签,图中config中嵌套了action,action中嵌套了forward

5.使用了合法的标签名,图中的action和forward就是标签名

 6.定义有效的属性

6.两个例子:


1.了解dtd的思维导图

2.XML是什么?

  1. XML 指可扩展标记语言(EXtensible Markup Language)
  2. XML 是一种标记语言,类似 HTML
  3. XML 的设计宗旨是传输数据,而非显示数据
  4. XML 标签没有被预定义。您需要自行定义标签。
  5. XML 被设计为具有自我描述性。
  6. XML 是 W3C 的推荐标准

3.XML的作用:

不只是做配置,还有对于跨语言的数据交互

4.为什么学习XML

在XML语言中,它允许用户自定义标签。一个标签用于描述一段数据;一个标签可以分为开始标签和结束标签,在开始标签和结束标签之间,又可以使用其他标签描述其他数据,以此来实现数据关系的描述。

5.标准的XML的格式:

1.有且只有一个根元素,途中的<!DOCTYPE root[]>

2.XML标签区分大小写,例如下图中的“filter”和“Filter”、“listener”和“Listener”就不是同一个东西,所以不同

3.正确使用结束标签,图中的<config></config>有开始,既有结束。举个例子:类似于HTML双标签

4.正确嵌套标签,图中config中嵌套了action,action中嵌套了forward

5.使用了合法的标签名,图中的action和forward就是标签名,path和type这种就是属性

 6.定义有效的属性

6.两个例子:

上图中的root就是config

element-name就是嵌套关系,

就比如config是dtd的头,config中有两个aciton,action中有两个forward

<?xml version="1.0" encoding="UTF-8"?>
	<!--
		config标签:可以包含0~N个action标签
	-->
	<!DOCTYPE config[
		<!ELEMENT config (action*)>
		<!ELEMENT ation (forward*)>
		
		
		<!ATTLIST action
		path CDATA #REQUIRED
		type CDATA #REQUIRED
		>
		<!ATTLIST forward
		name CDATA #REQUIRED
		path CDATA #REQUIRED
		redirect (true|false) 'true'
		>
	]>
<config>
	<!--
		action标签:可以饱含0~N个forward标签 path:以/开头的字符串,并且值必须唯一 非空 ,子控制器对应的路径
		type:字符串,非空,子控制器的完整类名
	-->
	<action path="/registerAction" type="test.action.RegisterAction">
		<forward name="success" path="/index.jsp" redirect="true" />
		<forward name="failed" path="/register.jsp" redirect="false" />
	</action>
	<action path="/loginAction" type="test.action.LoginAction">
		<forward name="a" path="/index.jsp" redirect="false" />
		<forward name="b" path="/welcome.jsp" redirect="true" />
	</action>
</config>

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE persons[
	<!ELEMENT persons (person+)>
	<!ELEMENT person (name,age,contact,br*)>
	<!ELEMENT name (#PCDATA)>
	<!ELEMENT age (#PCDATA)>
	<!ELEMENT contact (phone|email)>
	<!ELEMENT br EMPTY>
	<!ATTLIST person
	  pid ID #REQUIRED
	  sex (男|女) '男'
	  qq CDATA #IMPLIED
	  parent IDREF #IMPLIED
	>
]>
<persons>
	<person pid="p1" sex="男" qq="aaa" parent="p2">
		<name>张小明</name>
		<age>10</age>
		<contact>
			<phone>1234567</phone>
		</contact>
		<br/>
	</person>
	<person pid="p2">
		<name>张大明</name>
		<age>35</age>
		<contact>
			<email>123@qq.com</email>
		</contact>
	</person>
</persons>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是 MyBatis 配置 XML 文件的基本结构: ```xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <properties> <!-- 配置数据库连接参数 --> <property name="driver" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8"/> <property name="username" value="root"/> <property name="password" value="123456"/> </properties> <typeAliases> <!-- 配置 Java 类别名 --> <typeAlias type="com.example.User" alias="User"/> </typeAliases> <environments default="development"> <environment id="development"> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <!-- 配置数据源 --> <property name="driver" value="${driver}"/> <property name="url" value="${url}"/> <property name="username" value="${username}"/> <property name="password" value="${password}"/> </dataSource> </environment> </environments> <mappers> <!-- 配置映射文件,可以配置多个 --> <mapper resource="com/example/UserMapper.xml"/> </mappers> </configuration> ``` 其中,`<properties>` 标签用来配置数据库连接参数,在 `<dataSource>` 中可以使用 `${}` 表达式引用这些参数。 `<typeAliases>` 标签用来配置 Java 类别名,方便在映射文件中引用 Java 对象。 `<environments>` 标签用来配置数据源和事务管理器,可以配置多个环境,其中 `default` 属性指定默认环境。 `<mappers>` 标签用来配置映射文件,可以配置多个,其中 `resource` 属性指定映射文件的路径。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值