(来源:https://www.runoob.com/cplusplus/cpp-namespaces.html)#includeusingnamespacestd;namespaceA{inta=100;namespaceB//嵌套一个命名空间B{inta=20;}}inta=200;//定义一个全局变量intmain(intargc,char*argv[]){cout<<"A::a="<
129、交换机如何设置控制IP地址冲突故障
BinaryStarXin
网络工程师提升之路综合布线大数据
网络用户如果没有按照规定设置IP地址的话,IP地址冲突现象就不可避免,一旦这种现象频繁发生,不但会影响上网用户的冲浪效率,而且也不利于局域网网络的稳定运行。为了提高局域网运行稳定性,我们不能等IP地址冲突故障发生时,才想办法去应对,而应该主动出击,让上网用户无法抢用局域网中的其他IP地址;为此,本文就从实战角度出发,通过巧妙设置交换机,来控制IP地址冲突故障反复出现!组网情况举例:局域网大约有15
183、如何解决IP地址发生冲突故障?
BinaryStarXin
网络工程师提升之路tcp/ip网络协议网络
随着网络的广泛应用,使网络规模不断扩大,相应的IP地址分配也在不断增多,IP地址冲突现象与日俱增,在一定程度上影响了网络的正常运行。维护网络稳定、高效运行,解决IP地址冲突问题,已成为网络管理中的重要任务之一,发生IP冲突的原因是什么呢?如何解决IP冲突的问题呢?一、个人IP地址冲突解决方案1、如果您使用的计算机的操作系统是:windows(windows7或window10都行)。这里面需要用到
Vue.js 组件开发:构建可重用且高效的 UI 块
沉浮yu大海
vue.jsui前端
在现代前端开发中,Vue.js凭借其简洁的语法、强大的数据绑定能力和灵活的组件系统,成为许多开发者的首选框架。组件化开发是Vue.js的核心特性之一,它允许我们将大型应用拆分成多个独立、可复用的部分,从而提高代码的可维护性和扩展性。本文将带你深入了解Vue.js组件开发的基本概念和最佳实践,帮助你构建高效且可重用的UI组件。一、Vue.js组件基础在Vue.js中,组件是可复用的Vue实例,它们封
selenium的使用细节
演技拉满的白马
爬虫工具seleniumpythonchrome
selenium的使用实战本节目标:通过selenium得到搜索答案selenium的安装详解本节阅读需要(20)min。本节实操需要(20)min。selenium官网前言selenium的本质是操纵浏览器模拟用户行为!!!这样才能处理需要交互行为的动态网页.所以总结起来可以分为几个大点.控制浏览器操作浏览器等待某个变化出现获取元素的值一、一般的格式#-*-coding:utf-8-*-from
使用C#元组实现列表分组汇总拼接字段
懒人咖
LINQC#工作笔记c#开发语言经验分享笔记
文章目录使用C#元组实现列表分组汇总拼接字段代码运行结果使用C#元组实现列表分组汇总拼接字段代码stringmessage=string.empty;vartupleList=newList>();tupleList.Add(newTuple("SCHB2412270002","1","批号或生产日期有误,最早批号【2446】生产日期【2024-11-11】"));tupleList.Add(ne
曾国藩家书:劝弟谨记进德修业篇
云纳星辰怀自在
文言文家书
四位老弟左右:昨廿七日接信,快畅之至,以信多而处处详明也。四弟七夕诗甚佳,已详批诗后。从此多作诗亦甚好,但须有志有恒,乃有成就耳。余于诗亦有工夫,恨当世无韩昌黎及苏、黄一辈人可与发愤一谈。然人事应酬,作诗亦难,但不得以有恒者而废之。诸弟在家读书,不审每日如何用功?余自十月初一立志自新以来,虽懒惰如故,而每日楷书写日记,每日读史十页,每日记茶余偶谈一则,此三事未尝一日间断。十月廿一日立誓永戒吃水烟,
Python网络编程
懒大王爱吃狼
pythonpython网络开发语言pycharmPython基础pycharm安装
Python网络编程涉及使用Python语言来创建网络应用程序,这些应用程序可以在网络上与其他计算机进行通信。Python提供了多个库和框架来简化网络编程的过程,其中一些最常用的包括socket库、http.server模块、asyncio库以及第三方库如requests、Twisted和aiohttp等。以下是一些Python网络编程的基本概念和使用示例:1.套接字编程(SocketProgra
【C++文件读写操作】IO流读文件[程序和文件必须在同一文件夹]
超级码力666
c++
郑书p505习题3:使用IO流以文本方式建立一个文件test1.txt(我存在了D盘的demo2文件夹下),注意程序和文件必须在同一文件夹下代码解释1.ofstreamfile(“test1.txt”);①创建一个ofstream对象file,用于写入文件②没有文件会自动创建文件;已有文件会覆盖原内容2.fileusingnamespacestd;intmain(){//创建一个ofstream对
Linux:Supervisor进程管理
m0_37559973
linux运维服务器
目录一、Supervisor介绍二、核心组件2.1supervisord2.2supervisorctl2.3WebServer三、安装Supervisor3.1安装要求3.2安装方式3.3修改WebServer端口(可选)3.4启动服务四、Supervisor常用命令4.1supervisord命令行选项4.2supervisorctl命令行选项五、监控服务5.1创建进程管理配置文件5.2重新加
使用Docker部署Spark集群
小孩真笨
工程开发技术CloudDataDockerSpark
使用Docker部署Spark集群克隆包含启动脚本的git仓库启动Spark0.8.0集群并切换至SparkShell环境不带参数运行部署脚本*运行一些小的例子终止集群克隆包含启动脚本的git仓库*
[email protected]:amplab/docker-scripts.git当然,在这之前你必须已经配置了Github的SSH密钥认证,如果没有配置,会提示Per
在vue3中配置scss
库库林_沙琪马
#Vue组件直接使用scssvue.js前端
要在Vue3中使用SCSS(Sass的一个子集),你需要安装相应的依赖,并对项目进行一些配置。下面是详细的步骤:步骤1:安装依赖首先,你需要安装sass和vue-loader(如果你使用的是VueCLI)以及vite-plugin-vue2或vite-plugin-vue3(如果你使用的是Vite)。这里我们假设你使用的是Vite构建工具。打开终端并运行以下命令以安装所需的依赖包:npminsta
从0开始使用Docker搭建Spark集群
吃鱼的羊
SPARKHadoop
https://www.jianshu.com/p/ee210190224f?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation最近在学习大数据技术,朋友叫我直接学习Spark,英雄不问出处,菜鸟不问对错,于是我就开始了Spark学习。为什么要在Docker上搭建Spark集群
运营推广活动怎么替换网址
ddd_c1n
经验分享
在运营推广活动时,我们常常会面临这样的情况:根据用户反馈、市场表现,或者突然出现的新策略,需要对活动页面进行调整。这时候,替换网址就成了一个关键问题。如果没有合适的方法,每次替换网址都要重新投放所有渠道,那工作量简直难以想象。今天就给大家分享一个超实用的技巧——利用短链接工具随时替换网址,让你的运营推广工作轻松不少!那么,如何使用短链接工具来替换网址呢?这里以C1N短网址为例,给大家详细介绍一下操
vue基础(十)
Goodbaibaibai
面试vue.js
在Vue中,vue-router是官方的路由管理插件,用于在单页面应用(SPA)中实现不同页面的切换。在此介绍Vue2和Vue3中路由的使用。1.安装vue-router如果是Vue2:npminstallvue-router@3如果是Vue3:npminstallvue-router@42.基本路由配置创建router/index.js作为路由配置文件。Vue2#路由文件importVuefro
【Linux】 TCP短服务编写和守护进程
杰瑞的猫^_^
Linuxlinuxtcp/ip守护进程进程组
文章目录TCP短服务编写流程进程组和会话和守护进程TCP短服务编写流程 TCP服务器是面向连接的,客户端在发送数据之前需要先与服务器建立连接。因此,TCP服务器需要能够监听客户端的连接请求。为了实现这一功能,需要将TCP服务器创建的套接字设置为监听状态,以便等待和处理客户端的连接请求。服务器在完成监听工作后,才算初始化完成。 客户端在创建套接字后,使用connect函数向服务器发起连接请求,而
网络IP地址冲突故障,快速解决方案(非常详细)零基础入门到精通,收藏这一篇就够了_内网总提示有ip冲突(1)
2401_84263282
网络tcp/ip网络协议
还有兄弟不知道网络安全面试可以提前刷题吗?费时一周整理的160+网络安全面试题,金九银十,做网络安全面试里的显眼包!王岚嵚工程师面试题(附答案),只能帮兄弟们到这儿了!如果你能答对70%,找一个安全工作,问题不大。对于有1-3年工作经验,想要跳槽的朋友来说,也是很好的温习资料!【完整版领取方式在文末!!】93道网络安全面试题内容实在太多,不一一截图了黑客学习资源推荐最后给大家分享一份全套的网络安全
数学建模基础训练-1:概念解析
MPCTHU
数学建模数学建模
文章目录数学建模基础训练-1:概念解析问题一:如何找到“概念”?问题二:如何全面理解概念的基础含义?问题三:如何深刻理解概念并作出创新点发掘?实际举例问题一:研究并给出寒假开学某大学返校交通问题的合理解决方案首先,找到“概念”:其次,认识基础概念:第三,对概念的二次挖掘学生到校与离校的交通流量模型交通拥堵对学校教学与运营的影响模型交通安全事故风险评估模型学校交通设施规划与优化模型问题二:研究并给出
Selenium 对页面元素的操作动作及其语法
静静在思考
#Seleniumselenium测试工具
Selenium提供了丰富的操作动作,用于模拟用户在浏览器中的各种交互行为。以下为你详细介绍常见操作动作及其语法,并结合百度网站为例给出Python代码示例。1.打开网页语法:使用driver.get(url)方法,其中driver是浏览器驱动实例,url是要打开的网页地址。示例代码:fromseleniumimportwebdriverdriver=webdriver.Chrome()drive
Budibase低代码平台体验
samson_www
企业系统IT技术low-code
低代码平台还是很多的,体验了Nocobase,又开始体验Budibase,其实Budibase和appsmith更相似一点。Budibase的安装也很简单。1.安装好操作系统Debian;2.安装好docker,docker-compose3.创建目录/data,在里面参考内容创建文件docker-compose.ymlversion:"3"services:budibase:restart:un
Python教学-最常用的标准库之一——OS库
懒大王爱吃狼
pythonpython服务器开发语言Python基础python学习python爬虫
os库是Python标准库中的一个模块,它提供了一种方便的方式来使用操作系统相关的功能。os模块提供了很多函数,可以用来处理文件和目录、访问环境变量、执行系统命令等。以下是一些常用的os模块的功能和示例:1.文件和目录操作1.1当前工作目录os.getcwd():获取当前工作目录。os.chdir(path):改变当前工作目录。importoscurrent_dir=os.getcwd()prin
InspireMusic - 阿里通义实验室开源音乐生成框架 支持音乐、歌曲、音频生成 本地一键整合包下载
昨日之日2006
ai语音音视频
InspireMusic是阿里通义实验室开源的一个用于音乐生成的统一框架,旨在打造一个集音乐、歌曲及音频生成能力于一体的开源工具包,为研究者、开发者及音乐爱好者提供一个全面的创作平台。InspireMusic不仅为研究者和开发者提供了丰富的音乐/歌曲/音频生成模型的训练和调优工具,还为他们配备了高效的模型,以便优化生成效果。同时,这款工具包也大大降低了音乐创作的门槛,使得音乐爱好者能够通过简单的文
Java CopyOnWriteArrayList 源码分析及使用案例
铁甲小宝摸鱼
Java面试八股文javawindows开发语言
CopyOnWriteArrayList是Java中一种线程安全的List实现,它通过在每次修改时复制底层数组来实现线程安全。本文将详细分析CopyOnWriteArrayList的源码,并结合具体使用案例来展示其使用场景和优缺点。一、CopyOnWriteArrayList简介CopyOnWriteArrayList是java.util.concurrent包中的一个类,适用于读多写少的场景。它
智能图像处理平台:技术融合与实践的结晶
顾北辰20
智能图像处理平台图像处理人工智能
目录项目目标项目功能用户模块图像处理模块异步任务模块技术栈数据库设计核心功能实现方式图片上传图片处理异步任务项目扩展近日DeepSeek很火,我让他给我出了个小项目练练手,带大家一起做一下,可做为毕业设计参考。在当今数字化时代,图像处理技术广泛应用于各个领域,从医学影像到社交媒体,其重要性不言而喻。本文将介绍一个智能图像处理平台的练手项目,旨在巩固Java、MySQL、SpringBoot、Red
cmake Qt Mingw windows构建
极客-杀生丸
嵌入式qtwindows开发语言
今天教大家怎么在windows构建qt应用使用cmd命令行,而不是一键通过QtCreator一键构建。首先我们用qtcreator创建一个模板程序(PS:记得在安装qt时要悬着mingw套件,如果安装太慢可以换源)输入以下的命令:mkdirbuildcdbuildcmake-G"MinGWMakefiles"-DCMAKE_PREFIX_PATH=D:/Qt2/6.5.3/mingw_64..mi
银河麒麟V10SP1下qt5-12-12编译环境配置
洛阳鱼紫怡
qt
下面的脚本在兆芯版kylin上试过,如果是本地编译,arm版应该也没有问题a.如果执行脚本安装有问题,读者可以拷贝命令多次安装b.建议在虚拟机环境下进行#!/bin/bashsudoaptupdatesudoapt-getinstallg++gccmakecmakegperfbisonflexlibdrm-devlibxcomposite-devsudoapt-getinstalllibxcurs
html
周华华
html
js
1,数组的排列
var arr=[1,4,234,43,52,];
for(var x=0;x<arr.length;x++){
for(var y=x-1;y<arr.length;y++){
if(arr[x]<arr[y]){
&
【Struts2 四】Struts2拦截器
bit1129
struts2拦截器
Struts2框架是基于拦截器实现的,可以对某个Action进行拦截,然后某些逻辑处理,拦截器相当于AOP里面的环绕通知,即在Action方法的执行之前和之后根据需要添加相应的逻辑。事实上,即使struts.xml没有任何关于拦截器的配置,Struts2也会为我们添加一组默认的拦截器,最常见的是,请求参数自动绑定到Action对应的字段上。
Struts2中自定义拦截器的步骤是:
make:cc 命令未找到解决方法
daizj
linux命令未知make cc
安装rz sz程序时,报下面错误:
[root@slave2 src]# make posix
cc -O -DPOSIX -DMD=2 rz.c -o rz
make: cc:命令未找到
make: *** [posix] 错误 127
系统:centos 6.6
环境:虚拟机
错误原因:系统未安装gcc,这个是由于在安
Oracle之Job应用
周凡杨
oracle job
最近写服务,服务上线后,需要写一个定时执行的SQL脚本,清理并更新数据库表里的数据,应用到了Oracle 的 Job的相关知识。在此总结一下。
一:查看相关job信息
1、相关视图
dba_jobs
all_jobs
user_jobs
dba_jobs_running 包含正在运行
多线程机制
朱辉辉33
多线程
转至http://blog.csdn.net/lj70024/archive/2010/04/06/5455790.aspx
程序、进程和线程:
程序是一段静态的代码,它是应用程序执行的蓝本。进程是程序的一次动态执行过程,它对应了从代码加载、执行至执行完毕的一个完整过程,这个过程也是进程本身从产生、发展至消亡的过程。线程是比进程更小的单位,一个进程执行过程中可以产生多个线程,每个线程有自身的
web报表工具FineReport使用中遇到的常见报错及解决办法(一)
老A不折腾
web报表finereportjava报表报表工具
FineReport使用中遇到的常见报错及解决办法(一)
这里写点抛砖引玉,希望大家能把自己整理的问题及解决方法晾出来,Mark一下,利人利己。
出现问题先搜一下文档上有没有,再看看度娘有没有,再看看论坛有没有。有报错要看日志。下面简单罗列下常见的问题,大多文档上都有提到的。
1、address pool is full:
含义:地址池满,连接数超过并发数上
mysql rpm安装后没有my.cnf
林鹤霄
没有my.cnf
Linux下用rpm包安装的MySQL是不会安装/etc/my.cnf文件的,
至于为什么没有这个文件而MySQL却也能正常启动和作用,在这儿有两个说法,
第一种说法,my.cnf只是MySQL启动时的一个参数文件,可以没有它,这时MySQL会用内置的默认参数启动,
第二种说法,MySQL在启动时自动使用/usr/share/mysql目录下的my-medium.cnf文件,这种说法仅限于r
Kindle Fire HDX root并安装谷歌服务框架之后仍无法登陆谷歌账号的问题
aigo
root
原文:http://kindlefireforkid.com/how-to-setup-a-google-account-on-amazon-fire-tablet/
Step 4: Run ADB command from your PC
On the PC, you need install Amazon Fire ADB driver and instal
javascript 中var提升的典型实例
alxw4616
JavaScript
// 刚刚在书上看到的一个小问题,很有意思.大家一起思考下吧
myname = 'global';
var fn = function () {
console.log(myname); // undefined
var myname = 'local';
console.log(myname); // local
};
fn()
// 上述代码实际上等同于以下代码
m
定时器和获取时间的使用
百合不是茶
时间的转换定时器
定时器:定时创建任务在游戏设计的时候用的比较多
Timer();定时器
TImerTask();Timer的子类 由 Timer 安排为一次执行或重复执行的任务。
定时器类Timer在java.util包中。使用时,先实例化,然后使用实例的schedule(TimerTask task, long delay)方法,设定
JDK1.5 Queue
bijian1013
javathreadjava多线程Queue
JDK1.5 Queue
LinkedList:
LinkedList不是同步的。如果多个线程同时访问列表,而其中至少一个线程从结构上修改了该列表,则它必须 保持外部同步。(结构修改指添加或删除一个或多个元素的任何操作;仅设置元素的值不是结构修改。)这一般通过对自然封装该列表的对象进行同步操作来完成。如果不存在这样的对象,则应该使用 Collections.synchronizedList 方
http认证原理和https
bijian1013
httphttps
一.基础介绍
在URL前加https://前缀表明是用SSL加密的。 你的电脑与服务器之间收发的信息传输将更加安全。
Web服务器启用SSL需要获得一个服务器证书并将该证书与要使用SSL的服务器绑定。
http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后
【Java范型五】范型继承
bit1129
java
定义如下一个抽象的范型类,其中定义了两个范型参数,T1,T2
package com.tom.lang.generics;
public abstract class SuperGenerics<T1, T2> {
private T1 t1;
private T2 t2;
public abstract void doIt(T
【Nginx六】nginx.conf常用指令(Directive)
bit1129
Directive
1. worker_processes 8;
表示Nginx将启动8个工作者进程,通过ps -ef|grep nginx,会发现有8个Nginx Worker Process在运行
nobody 53879 118449 0 Apr22 ? 00:26:15 nginx: worker process
lua 遍历Header头部
ronin47
lua header 遍历
local headers = ngx.req.get_headers()
ngx.say("headers begin", "<br/>")
ngx.say("Host : ", he
java-32.通过交换a,b中的元素,使[序列a元素的和]与[序列b元素的和]之间的差最小(两数组的差最小)。
bylijinnan
java
import java.util.Arrays;
public class MinSumASumB {
/**
* Q32.有两个序列a,b,大小都为n,序列元素的值任意整数,无序.
*
* 要求:通过交换a,b中的元素,使[序列a元素的和]与[序列b元素的和]之间的差最小。
* 例如:
* int[] a = {100,99,98,1,2,3
redis
开窍的石头
redis
在redis的redis.conf配置文件中找到# requirepass foobared
把它替换成requirepass 12356789 后边的12356789就是你的密码
打开redis客户端输入config get requirepass
返回
redis 127.0.0.1:6379> config get requirepass
1) "require
[JAVA图像与图形]现有的GPU架构支持JAVA语言吗?
comsci
java语言
无论是opengl还是cuda,都是建立在C语言体系架构基础上的,在未来,图像图形处理业务快速发展,相关领域市场不断扩大的情况下,我们JAVA语言系统怎么从这么庞大,且还在不断扩大的市场上分到一块蛋糕,是值得每个JAVAER认真思考和行动的事情
安装ubuntu14.04登录后花屏了怎么办
cuiyadll
ubuntu
这个情况,一般属于显卡驱动问题。
可以先尝试安装显卡的官方闭源驱动。
按键盘三个键:CTRL + ALT + F1
进入终端,输入用户名和密码登录终端:
安装amd的显卡驱动
sudo
apt-get
install
fglrx
安装nvidia显卡驱动
sudo
ap
SSL 与 数字证书 的基本概念和工作原理
darrenzhu
加密ssl证书密钥签名
SSL 与 数字证书 的基本概念和工作原理
http://www.linuxde.net/2012/03/8301.html
SSL握手协议的目的是或最终结果是让客户端和服务器拥有一个共同的密钥,握手协议本身是基于非对称加密机制的,之后就使用共同的密钥基于对称加密机制进行信息交换。
http://www.ibm.com/developerworks/cn/webspher
Ubuntu设置ip的步骤
dcj3sjt126com
ubuntu
在单位的一台机器完全装了Ubuntu Server,但回家只能在XP上VM一个,装的时候网卡是DHCP的,用ifconfig查了一下ip是192.168.92.128,可以ping通。
转载不是错:
Ubuntu命令行修改网络配置方法
/etc/network/interfaces打开后里面可设置DHCP或手动设置静态ip。前面auto eth0,让网卡开机自动挂载.
1. 以D
php包管理工具推荐
dcj3sjt126com
PHPComposer
http://www.phpcomposer.com/
Composer是 PHP 用来管理依赖(dependency)关系的工具。你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer 会帮你安装这些依赖的库文件。
中文文档
入门指南
下载
安装包列表
Composer 中国镜像
Gson使用四(TypeAdapter)
eksliang
jsongsonGson自定义转换器gsonTypeAdapter
转载请出自出处:http://eksliang.iteye.com/blog/2175595 一.概述
Gson的TypeAapter可以理解成自定义序列化和返序列化 二、应用场景举例
例如我们通常去注册时(那些外国网站),会让我们输入firstName,lastName,但是转到我们都
JQM控件之Navbar和Tabs
gundumw100
htmlxmlcss
在JQM中使用导航栏Navbar是简单的。
只需要将data-role="navbar"赋给div即可:
<div data-role="navbar">
<ul>
<li><a href="#" class="ui-btn-active&qu
利用归并排序算法对大文件进行排序
iwindyforest
java归并排序大文件分治法Merge sort
归并排序算法介绍,请参照Wikipeida
zh.wikipedia.org/wiki/%E5%BD%92%E5%B9%B6%E6%8E%92%E5%BA%8F
基本思想:
大文件分割成行数相等的两个子文件,递归(归并排序)两个子文件,直到递归到分割成的子文件低于限制行数
低于限制行数的子文件直接排序
两个排序好的子文件归并到父文件
直到最后所有排序好的父文件归并到输入
iOS UIWebView URL拦截
啸笑天
UIWebView
本文译者:candeladiao,原文:URL filtering for UIWebView on the iPhone说明:译者在做app开发时,因为页面的javascript文件比较大导致加载速度很慢,所以想把javascript文件打包在app里,当UIWebView需要加载该脚本时就从app本地读取,但UIWebView并不支持加载本地资源。最后从下文中找到了解决方法,第一次翻译,难免有
索引的碎片整理SQL语句
macroli
sql
SET NOCOUNT ON
DECLARE @tablename VARCHAR (128)
DECLARE @execstr VARCHAR (255)
DECLARE @objectid INT
DECLARE @indexid INT
DECLARE @frag DECIMAL
DECLARE @maxfrag DECIMAL
--设置最大允许的碎片数量,超过则对索引进行碎片
Angularjs同步操作http请求with $promise
qiaolevip
每天进步一点点学习永无止境AngularJS纵观千象
// Define a factory
app.factory('profilePromise', ['$q', 'AccountService', function($q, AccountService) {
var deferred = $q.defer();
AccountService.getProfile().then(function(res) {
hibernate联合查询问题
sxj19881213
sqlHibernateHQL联合查询
最近在用hibernate做项目,遇到了联合查询的问题,以及联合查询中的N+1问题。
针对无外键关联的联合查询,我做了HQL和SQL的实验,希望能帮助到大家。(我使用的版本是hibernate3.3.2)
1 几个常识:
(1)hql中的几种join查询,只有在外键关联、并且作了相应配置时才能使用。
(2)hql的默认查询策略,在进行联合查询时,会产
struts2.xml
wuai
struts
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache