社区
Web 开发
帖子详情
菜鸟求:struts2中的package与namespace的区别
pkh198504
2011-11-04 11:54:08
如题,package 与 namespace 的区别是什么?最好的例子。
分少,不要见怪。
...全文
933
11
打赏
收藏
菜鸟求:struts2中的package与namespace的区别
如题,package 与 namespace 的区别是什么?最好的例子。 分少,不要见怪。
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Zeus
2011-11-05
打赏
举报
回复
namespace是设置访问路径的,
package就是个包名。
crazywolf
2011-11-05
打赏
举报
回复
package 就像一个文件夹,它下面包含什么不受其它的影响,namespace是访问时的路径!
a_mean
2011-11-05
打赏
举报
回复
struts2中是采用<package>元素来管理Action的,package的作用类似于java中的类包。
它管理一组业务功能相关的action。而namespace属性可以不配置,主要是为了避免package中的
action重名,还有就是当有namespace时,可以减少配置的书写量,因为相同路径的action请求可以放置在同一个名称空间下,这样就不用每次都写出名称空间值所代表的路径。
最后还说一点,在页面跳转时,struts2自动寻找匹配的action,namespace的优先权大于package.
多云转大雨
2011-11-05
打赏
举报
回复
namespace决定了action的访问路径,默认为"",可以接收所有路径的action
namespace可以写为/ ,或者/xxx,或者/xxx/yyy,对应的action访问路径
为/index.action,/xxx/index.action,或者/xxx/yyy/index.action
namespace最好也用模块来进行命名
package用来区分重名的情况
namespace必须以/ 开头
云鹏
2011-11-05
打赏
举报
回复
namespace是C#里面的命名空间,跟java里面的package是一个意思,都是相当于一个文件夹,区别就是一个是c#的,一个是java的...
Lucky_BW
2011-11-05
打赏
举报
回复
[Quote=引用 5 楼 pkh198504 的回复:]
<package name="pay" extends="struts-default">
为什么 /pay/queryMyPay.action?userid=1 这个也是正确的?(事实上我程序能找到相应的ACTION)
我在package 里面没有写 namespace .
我改成 /queryMyPay.action?userid=1 ,也可能执行。
为什么呢?
[/Quote]
2L的已经说明了,之于你说的这个问题,它首先会在namespace为pay下搜索,找不到就会向上级搜索。所以你这样写也是能找到
annan211
2011-11-05
打赏
举报
回复
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="test1" extends="struts-default" >
<global-results >
<result name="global-exception">/global-exception.jsp</result>
</global-results>
<global-exception-mappings >
<exception-mapping result="global-exception" exception="java.lang.Exception"></exception-mapping>
</global-exception-mappings>
<action name="login" class="cn.cstp.org.action.LoginAction">
<result name="success" type="redirectAction" >${nextAction}</result>
<result name="exception" type="dispatcher" >/exception.jsp</result>
<exception-mapping result="exception" exception="java.sql.SQLException"></exception-mapping>
</action>
<action name="admin" class="cn.cstp.org.action.AdminAction">
<result>/admin.jsp</result>
</action>
<action name="user" class="cn.cstp.org.action.UserAction">
<result>/user.jsp</result>
</action>
</package>
</struts>
好了 这是我的一个项目中的一个struts 配置文件 你可以在里面看到有<package>但是没有namespace 这就是说明我的这个配置文件下面的namespace是空 等同<package name="test1" extends="struts-default" namespace=""> 我访问这个配置文件里面的资源时根本不用去问 <package name="test1">这里面的name是哪家大佛 我只关心namespace是否为空就行了 如果为空 那么我访问package里面的资源的时候直接跳过namespace 如果不为空 那么我在访问 比如里面的Action时候就得加上 比如我访问
<action name="admin" class="cn.cstp.org.action.AdminAction">
<result>/admin.jsp</result>
</action>里面的action http://localhost:8080/progectname/admin.action
如果namespace存在并且为 space 则访问路径 http://localhost:8080/progectname/space/admin.action
不明白再问我
「已注销」
2011-11-05
打赏
举报
回复
[Quote=引用 1 楼 ithink_88 的回复:]
namespace是C#里面的命名空间,跟java里面的package是一个意思,都是相当于一个文件夹,区别就是一个是c#的,一个是java的...
[/Quote]
哦,这样啊。
但我说的是 struts2中的,也就是 struts.xml配置文件中的
「已注销」
2011-11-05
打赏
举报
回复
<package name="pay" extends="struts-default">
为什么 /pay/queryMyPay.action?userid=1 这个也是正确的?(事实上我程序能找到相应的ACTION)
我在package 里面没有写 namespace .
我改成 /queryMyPay.action?userid=1 ,也可能执行。
为什么呢?
dracularking
2011-11-05
打赏
举报
回复
namespace这种叫法还是挺霸气的
「已注销」
2011-11-05
打赏
举报
回复
好。大概清楚了。
使用
struts2
时报There is no Action mapped for
namespace
[/] and action name [hello]
听说
struts2
在现在已经不流行了,但作为入门的
菜鸟
还是学一下,这不,就出现了这个问题了。 There is no Action mapped for
namespace
[/] and action name [Login] associated 这问题的出现是由于配置或者自己书写搞错问题,我的就是配置问题 1、要确保struts.xml文件在src目录下 2、strut
SSH框架整合之
namespace
下无action
在整合ssh框架的时候,对于新手而言,总是会出现某些问题,此时我们首先想到的便是度娘,本以为度娘会给我们这些
菜鸟
一个满意的答案,但往往发现,找遍度娘,却没有一篇文章或一篇博文能够解决自己所遇到的问题。本人就是在整合的时候,因此头痛了两天,最终寻
求
大佬才得以解决。 注:
Struts2
版本为2.5 spring 版本为5.1 问题始于Struts与s...
spring3+
struts2
环境搭建
中
遇到的一些问题
很长时间没有搭建环境,今天试着搭建了一下spring3+
struts2
的环境,遇到许多问题,特整理一下。 首先是jar包的问题,添加了常用的jar包,但是还是忘记了几个: ognl-3.x.x.jar 用于支持ognl语言,
struts2
需要使用这个jar包读写对象的属性; javassist-3.x.x.GA.jar 经百度才知道,该jar包是一个开源的分析、编辑、创建Java字节码的
struts2
action标签学习
使用action标签,可以允许在jsp页面
中
直接调用Action Java代码 <s:action name="hello"
namespace
="/space" executeResult="true"></s:action> id: 可选属性,作为该Action的引用ID name:必选属性,指定调用Action namesp...
论文基于java 的公司财务管理系统.docx
公司财务管理系统(源码+数据库+论文+答辩ppt一整套齐全)java开发springboot框架javaweb,可做计算机毕业设计或课程设计 本系统分为员工、管理员两个用户角色。 员工功能: 1. 注册登录:填写员工账号、密码、姓名、部门职位等信息完成注册,账号密码登录系统。 2. 请假管理:填写请假标题、原因、时间、类型提交请假申请,查看本人请假记录与审核回复。 3. 考勤查看:查看个人考勤信息,查看出勤、请假、迟到、早退、缺勤统计数据。 4. 薪资查询:查看每月薪资详情,查看底薪、绩效、奖金、扣款以及实发工资等信息。 5. 薪资异议申请:对薪资有疑问时提交薪资异议申请,查看申请审核状态与管理员回复。 6. 个人
中
心:修改个人头像、手机号等资料,修改登录密码。 管理员功能: 1. 员工管理:查询、新增、编辑、删除员工账号,维护员工部门、职位等基础信息。 2. 请假信息管理:查看全部员工请假申请,搜索筛选请假记录,审核请假申请并填写回复。 3. 考勤信息管理:录入、编辑、删除员工考勤数据,按年月统计员工出勤相关信息。 4. 薪资信息管理:录入员工每月薪资数据,维护底薪、绩效、奖金、扣款等薪资记录。 5. 薪资异议处理:查看员工提交的薪资异议申请,审核申请内容,填写处理回复。 6. 系统管理:维护首页轮播图,发布系统公告,查看系统操作日志。
Web 开发
81,108
社区成员
341,721
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章