- python字符串相等怎么表示_python怎样判断字符串相等
weixin_39993989
python字符串相等怎么表示
python字符串如何判断相等1.is来判断groupName=params['groupName']##groupName的值是'url'reqBody['dim']=groupNameprint("reqBody_dim-SummaryListHandler",reqBody['dim'])##('reqBody_dim-SummaryListHandler',u'url')print("re
- 年底
打酱油的猪会飞
到春节的年底,大家都回了家,吃年夜饭,揣上了红包,坐上了麻将桌,被亲戚好友们热切地问起了有没有结婚要孩子上什么学校:那个氛围很是家居,属于大家庭。公历的年底,就还属于自己。大家都爱总结过往,继往开来。朋友圈大家说起感悟来,也是五花八门。我自己不喜欢年度总结,但很爱看朋友们的总结。前两天,我跟一位长辈开玩笑说起这个:如果朋友圈里有报数据列表堆成绩的,说明今年过得意气风发;如果声调平和甚至略带幽怨、还
- Python 报错 ImportError: cannot import name xxx from partially initialized module xxx
SmallerFL
其他问题fixPython相关python深度学习pytorch人工智能
文章目录1.报错2.原因3.参考1.报错ImportError:cannotimportname'SummaryWriter'frompartiallyinitializedmodule'torch.utils.tensorboard'(mostlikelyduetoacircularimport)(/Library/Frameworks/Python.framework/Versions/3.1
- 基于Pytorch框架的CIFAR-10图像分类任务(附带完整代码)
难得北窗高卧
pytorch人工智能python深度学习
本文主要实现在pytorch框架下,训练CIFAR数据集,通过观察训练和验证的误差、准确率图像来进一步改善。保存最好的模型。测试集打印整体准确率和每一类别的准确率,并生成混淆矩阵,将其中每一个错误的图片并保存下来。语言:python实现方式:pytorch框架,CPU关键词:CIFAR-10数据集、Dataset和Dataloader、SummaryWriter画图、网络模型搭建、混淆矩阵、统计所
- Pytorch深度学习- Tensorboard的使用以及图像变换transform的使用(小土堆)
Mr chenxizhi
深度学习人工智能python
Tensorboard中的SummaryWriter使用导入数据包fromtorch.utils.tensorboardimportSummaryWriter构造函数方法#那么生成的数据文件都存在于logs文件夹下writer=SummaryWriter("logs")add_scalar代码示例'''tag:数据标题global_step:x轴数据scalar_value:y轴数据'''#运行结
- 动手学深度学习(pytorch土堆)-02TensorBoard的使用
#include<菜鸡>
深度学习深度学习pytorch人工智能
1.可视化代码使用了torch.utils.tensorboard将数据记录到TensorBoard以便可视化。具体来说,它将标量数据记录到目录logs中,使用的是SummaryWriter类。代码分解如下:SummaryWriter("logs"):初始化一个TensorBoard的写入器,日志会保存到"logs"目录。writer.add_scalar("y=x",i,i):在循环的每一次迭代
- pytorch计算网络参数量和Flops
Mr_Lowbee
PyTorchpytorch深度学习人工智能
fromtorchsummaryimportsummarysummary(net,input_size=(3,256,256),batch_size=-1)输出的参数是除以一百万(/1000000)M,fromfvcore.nnimportFlopCountAnalysisinputs=torch.randn(1,3,256,256).cuda()flop_counter=FlopCountAna
- Asp.Net 汉字转(拼音)
素年槿夏
C#
1.ChinesConvertSpelling:汉字转拼音类(全拼)1usingSystem;2usingSystem.Data;3usingSystem.Configuration;4usingSystem.Text;56///7///SummarydescriptionforConvertHzToPz_Gb23128///9namespaceCommon10{11publicclassChin
- 周四 2021-04-29 23:20 - 06:42 阴 08h39m
么得感情的日更机器
一时间记录二概述早上醒,6点半,哭醒,然后难过,交流,游戏,洗漱,饭早上午,杂事,照片搞定,毕业材料下午,毕业材料,手机,阅读,吃饭晚上散步,日常任务,手机,回宿舍,跑步,遇事不冷静事件,不过最终结果是好的,解决了,日总结三总结(Summary)今天总体是整理材料,阅读的一天,晚上发生一件小插曲,今日发现自身性格有不稳重的因素存在,遇事容易急躁,这点需要改进。四反思今天收获了什么?哪里做的不好?做
- 深度学习与遗传算法的碰撞——利用遗传算法优化深度学习网络结构(详解与实现)
2401_84003733
程序员深度学习人工智能
self.model.add(layers.Dense(10,activation=‘relu’))self.model.build(input_shape=(4,28*28))self.model.summary()self.model.compile(optimizer=optimizers.Adam(lr=0.01),loss=losses.CategoricalCrossentropy(f
- 微信年度大会
sydMobile
是的,今天微信召开了年度大会。相信马上就要有许多文章来介绍了!张小龙,这个神一样的产品人。的确很牛掰。微信日活跃量超10亿。这个什么概念!这个数字真的很吓人。再看看微信的年度总结。很有意思,从中真的可以发现很多信息。这就是大数据时代吧!后面会分析一下,从微信总结里面我看到的内容!
- 训练过程可视化tensorboard和wandb及np.array和tensor互相转换
小裴(碎碎念版)
python
tensorboardfromtensorboardXimportSummaryWriter#设置保存日志文件路径logger_path=os.path.join(path,current_time)logger=SummaryWriter(log_dir=logger_path,comment=comment)#要保存的数据logger.add_scalar("value_loss",value
- ss
wncbbnk
#versionss-Vss--version#numeric,展示ip,而不是域名ss-nss--numeric#listeningss-lss--listening#extended套接字信息ss-ess--extended#memory显示套接字的内存使用情况ss-mss--memory#infor展示内部信息ss-iss--info#summaryss-sss--summary#ipv4s
- 线程优先级调度
0xwangliang
#线程与进程windows内核
Windows优先级调度算法系统维护了一个全局的处理器数组KiProcessorBlock,其中每个元素对应于一个处理器的KPRCB对象。其次,另有一个全局变量KiIdleSummary记录了哪些处理器当前是空闲的。所谓一个处理器是空闲的,是指该处理器正在执行空闲循环。KiIdleSummary每一位对应于一个处理器,在32位系统中,由于KiIdleSummary是32位的。所以只支持至多32个处
- 微服务架构(MSA)
鸣鸣就
微服务架构microservices
微服务架构(MSA)的基础是将单个应用程序拆分成多个独立的小服务,这些服务可以独立开发、部署和运行。这个过程类城市建设多个火车站,达到分流的效果。springCloudAlibaba是SpringCloud的一个子项目,致力于提供微服务开发的一站式解决方案。它的核心组件有:服务限流降级、服务注册与发现、分布式配置管理、消息驱动能力、分布式事务、分布式任务调度。Summary:微服务是一个架构设计方
- 2019清零,重新开始
李慎初
马上跨年了,呃~跨年这个词儿是针对大长腿的,像我我这种粗短腿,只有☞蹦年的份先祝大家新年快乐哈!点我今年的年度总结吧,十月份之前我只能给自己打零分,十月份之后勉强可以打六分吧,事实上从15年到18年十月份之前,我大部分的时间过得都很不好,真的很不好,浑浑噩噩,活的不像个人。是的,我遭受过身体和心灵的双重打击,而且是深深的重击,我长久的陷在了泥潭里,爬不出来,也无力去爬。什么浮躁,焦虑,害怕,荒废,
- ansible中docker 代理设置
小蜗牛爬楼梯
SUMMARYI'mtryingtobuildaDockerfilebehindproxyusingdockerclientconfig.jsonasdescribedhere.Ansibledocker_imagedefaultpathforconfig.jsonisdifferentthattheonefordockerclient:Dockerdocs:~/.docker/config.js
- 谢谢!谢谢你们了!
渑池615闫冲琦
图片发自App昨晚的沪江,热闹非凡,好事连连。那里进行的,正是2017青椒计划年度总结。晚上七点,吴虹校长那亲切的、极富感召力的话语如约响起。吴校长带大家回顾了四个多月来走过的路程,带全体青椒学员们一起回味了共同经历的点点滴滴。恍惚间,我突然意识到这个学期就要结束了。时间过得好快哟!从2017年的9月10日,到2018年的1月24日,一百三十多天的时光,乡村青年教师公益活动计划已经为我们组织了四十
- Excel的内置样式和主题,一样让你的表格不失内涵
Excel客旅
在Excel中,我们不仅可以通过不同的格式来自定义表格的风格,以增强其专业性和可读性,Excel还为我们准备了一些内置的样式和主题。01样式在菜单栏的“开始”选项卡下的“样式”区域,我们可以找到样式相关的设置。如何应用这些内置的样式到我们的表格中?先以“单元格样式”为例说明一下。1.点击需应用样式的单元格,这里我们点击数据表的抬头“SalesSummary2015”所在的单元格。2.点击“单元格样
- vue.js项目实战案例源码
前端码趣逗士
vue.js
案例一:博客系统项目概述:一个简单的博客系统,包括文章列表展示、文章详情查看、分类筛选、用户登录注册等功能。技术栈:Vue.jsVueRouterVuexAxiosBootstrap主要功能实现:文章列表展示:使用Axios从后端API获取文章列表数据。在Vue组件中展示文章标题、摘要和发布日期等信息。博客文章列表{{article.title}}{{article.summary}}{{arti
- Day3-Summary
DennisH
运算符python中有:数学运算符、比较运算符、逻辑运算符、赋值运算符、位运算符1.数学运算符:+,-,,/,%,//,*加,减,乘,除,取余,整除,幂运算(x**y-->求x的y次方)取余可用于判断奇偶数/获取个位数上数字print(5%2)print(1233//10)print(133**3)print(2352637**(1/3))print(729**(1/3))2.比较运算符:>,=,
- el-table 合计 指定列
南笙浅巷墨汐°
Javascriptjavascriptelementui前端
1、在el-table中添加show-summary:summary-method="getSummaries"2.在methods中添加getSummaries()方法//指定列求和getSummaries(param){const{columns,data}=param;constsums=[];//第一列命名合计columns.forEach((column,index)=>{if(inde
- <el-table>组件show-summary合计行合并方法
weixin_52137539
前端javascriptvue.js
elementtable组件中通过show-summary生成的合并行无法通过span-method方式实现合并行;watch:{ tableData:{ immediate:true, handler(){ setTimeout(()=>{ consttds=document.querySelectorAll('#table.el-table__footer
- 推荐一篇 学习SQL 的文章
@Carey
java零基础开始sql数据库
学习java,当然避不开数据库的知识,个人认为好学好理解的一篇文章,推荐给大家SQL语法基础知识总结|JavaGuide「Java学习+面试指南」一份涵盖大部分Java程序员所需要掌握的核心知识。准备Java面试,首选JavaGuide!https://javaguide.cn/database/sql/sql-syntax-summary.html#sql-%E8%AF%AD%E6%B3%95希
- 如何使用python抓包,附代码
Uncle 城
python网络开发语言AI
以下为您介绍多种使用Python进行抓包的方法及代码示例:使用Scapy库进行抓包:首先确保已经安装了Scapy库。如果没有安装,可以使用以下命令安装:pipinstallscapy。创建一个名为packet_sniffer.py的Python文件,并输入以下代码:fromscapy.allimport*defpacket_callback(packet):print(packet.summary
- 2020年度总结——感谢之人之事
南烛子_
①白驹过隙,岁月如梭。那时光匆匆,你永远赶不上它的步伐。2020这不平凡的一年,我们所经历的听闻的故事,都让我们心怀感恩,感恩那些人和事让我们能带上希望跨进2021的港湾。由年头的疫情到武汉封城到拖延开学到推迟高考时间到推迟开学时间到封校……这一切的一切,都体现了2020的难难难!可中华儿女们没有因此退缩,而是面临困难勇往直前,团结一致打败困难。我的2020虽过得不顺利,可也要懂得感恩。我这一路上
- 2023-01-21
花芊落
元旦跨年的那一晚,我是在理发店和Tony老师一起度过的,年度总结更新失败。后面断断续续写得不顺,也就搁置了。写学校年度绩效考核表的个人总结部分时,我突然发现,这不就是最好的年度总结吗?因字数限制,全文言简意赅,要点突出,德能勤绩全覆盖,比自己漫无边际地写,好太多了。你看,体制内也可以是高效的。寒假真长。前段时间一直在一拖二带娃,每天都会心生感慨:还好我不用每天如此,还好我有自己喜欢的工作,还好娃一
- element-plus 新增一行合计。除了用summary-method还可以用append的插槽
肖肖肖丽珠
前端javascript服务器
:summary-method="getSummaries"{{reformItemStatus.filter(rs=>rs.value==scope.row.itemType)[0]?.label}}constgetSummaries=(param)=>{const{columns,data}=param;constsums=[];columns.forEach((column,index)=>
- BGP表的确认方法
singed
1,BGP的三张表邻居表(adjancytable)BGP表(forwardingdatabase):BGP默认不做负载均衡,会选出一条最优的,放入路由表路由表(routingtable)查询命令:BGP表:showipbgp路由表:showiproute邻居表:showipbgpsummary(简单邻居),showipbgpneighbor(详细邻居)2,BGP转发表的确认方法R18#showi
- python markdown vuejs前端:如何正确处理多行字符串的缩进问题
南七小僧
网站开发AI技术产品经理人工智能前端pythonvue.js
有时候,我们需要使用多行字符串配合format格式化函数来生成Markdown文本。例如,我现在开发了一个AI对话机器人,我发送一个txt文件过去,他首先帮我总结整个文件的内容,然后以问答的形式列出10个要点。你的代码可能是这样写的:defbot(text):summary=summary_text_by_gpt(text)qa=get_qa_by_gpt(text)output='''##文本总
- 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