为什么我用了 dnspod public的 public + 跳转网页游戏

291498人阅读
spring(12)
spring mvc controller间跳转 重定向 传参
1. 需求背景
&&& 需求:spring MVC框架controller间跳转,需重定向。有几种情况:不带参数跳转,带参数拼接url形式跳转,带参数不拼接参数跳转,页面也能显示。
本来以为挺简单的一件事情,并且个人认为比较常用的一种方式,一百度全都有了,这些根本不是问题,但是一百度居然出乎我的意料,一堆都不是我想要的结果。无奈啊,自己写一篇比较全都供以后大家一百度吧,哈哈哈。。。是这些写的不是很全都人们给了我写这篇博客的动力。
2. 解决办法
&&& 需求有了肯定是解决办法了,一一解决,说明下spring的跳转方式很多很多,我这里只是说一些自我认为好用的,常用的,spring分装的一些类和方法。
&&& (1)我在后台一个controller跳转到另一个controller,为什么有这种需求呢,是这样的。我有一个列表页面,然后我会进行新增操作,新增在后台完成之后我要跳转到列表页面,不需要传递参数,列表页面默认查询所有的。
&&&&&&& 方式一:使用ModelAndView
&&&&&&& return new ModelAndView(&redirect:/toList&);
&&&&&&& 这样可以重定向到toList这个方法
&&&&&&& 方式二:返回String
&&&&&&&&&&&&&&&&&&& return &redirect:/ toList &;
&&&&&&& 其它方式:其它方式还有很多,这里不再做介绍了,比如说response等等。这是不带参数的重定向。
&&& (2)第二种情况,列表页面有查询条件,跳转后我的查询条件不能丢掉,这样就需要带参数的了,带参数可以拼接url
&&&&&&& 方式一:自己手动拼接url
&&&&&&&&&&&&&&&&&&& new ModelAndView(&redirect:/toList?param1=&+value1+&&param2=&+value2);
&&&&&&&&&&&&&&&&&&& 这样有个弊端,就是传中文可能会有乱码问题。
&&&&&&& 方式二:用RedirectAttributes,这个是发现的一个比较好用的一个类
&&&&&&&&&&&&&&&&&&& 这里用它的addAttribute方法,这个实际上重定向过去以后你看url,是它自动给你拼了你的url。
&&&&&&&&&&&&&&&&&&& 使用方法:
&&&&&&&&&&&&&&&&&&&& attr.addAttribute(&param&, value);
&&&&&&&&&&&&&&&&&&& return &redirect:/namespace/toController&;
&&&&&&&&&&&&&&&&&&& 这样在toController这个方法中就可以通过获得参数的方式获得这个参数,再传递到页面。过去的url还是和方式一一样的。
&&& (3)带参数不拼接url页面也能拿到值(重点是这个)
&&&&&&&&&&& 一般我估计重定向到都想用这种方式:
&&&&&&&&&&& @RequestMapping(&/save&)
&&& public String save(@ModelAttribute(&form&) Bean form,RedirectAttributes attr)
&&&&&&&&&&&&&&&&&& throws Exception {
&&&&&&& String code =& service.save(form);
&&&&&&& if(code.equals(&000&)){
&&&&&&&&&&& attr.addFlashAttribute(&name&, form.getName());&
&&&&&&&&&&& attr.addFlashAttribute(&success&, &添加成功!&);
&&&&&&&&&&& return &redirect:/index&;
&&&&&&& }else{
&&&&&&&&&&& attr.addAttribute(&projectName&, form.getProjectName());&
&&&&&&&&&&& attr.addAttribute(&enviroment&, form.getEnviroment());&
&&&&&&&&&&& attr.addFlashAttribute(&msg&, &添加出错!错误码为:&+rsp.getCode().getCode()+&,错误为:&+rsp.getCode().getName());
&&&&&&&&&&& return &redirect:/maintenance/toAddConfigCenter&;
@RequestMapping(&/index&)
&&& public String save(@ModelAttribute(&form&) Bean form,RedirectAttributes attr)
&&&&&&&&&&&&&&&&&& throws Exception {
&&&&&&&&&&& return &redirect:/main/list&;
页面取值不用我说了吧,直接用el表达式就能获得到,这里的原理是放到session中,session在跳到页面后马上移除对象。所以你刷新一下后这个值就会丢掉。
&&& 最底层还是两种跳转,只是spring又进行了封装而已,所以说跳转的方式其实有很多很多种,你自己也可以封一个,也可以用最原始的response来,也没有问题。好了,就到这儿。
&&& 其实也没有什么,但是知道了这个就很简单了,之前没搞懂,现在搞懂了,和大家分享。有问题的给我留言。
spring mvc3中的addFlashAttribute方法
url: http://www.software8.co/wzjs/java/2943.html
记得在spring mvc2中,当保存POJO到数据库后,要返回成功页面,如果这个时候要带点信息,&
则要这样:&
Java代码: &
& & //第三个参数(UserModel user)默认为绑定对象 &
& & @RequestMapping(value = &/user/save&, method = RequestMethod.POST) &
& & public ModelAndView saveUser(HttpServletRequest request, HttpServletResponse response,UserModel user) throws Exception { &
& & & & ModelAndView mv = new ModelAndView(&/user/save/result&);//默认为forward模式 &
// & & &ModelAndView mv = new ModelAndView(&redirect:/user/save/result&);//redirect模式 &
& & & & mv.addObject(&message&,&保存用户成功!&); &
而在spring mvc 3.1后,可以这样&
Java代码: &
@RequestMapping(value = &/user/save&, method = RequestMethod.POST) &
public ModelAndView saveUser(UserModel user, RedirectAttributes redirectAttributes) throws Exception { &
& & redirectAttributes.addFlashAttribute(&message&, &保存用户成功!&);//使用addFlashAttribute,参数不会出现在url地址栏中 &
& & return &redirect:/user/save/result&; &
& 来个稍微完整点的例子,首先是一个表单,在其中填入一些信息:&
Java代码:&
&form:form id=&myform& action=&saveUserDetails.action& method=&POST& commandName=&user&& &
& &&form:input type=&text& name=&firstName& path=&firstName&/& &
& &&form:input type=&text& name=&lastName& path=&lastName&/& &
& &&form:input type=&text& name=&email& path=&email&/& &
& &&input type=&submit& value=&submit&& &
&/form:form& &
& &则在controller中,可以这样:&
Java代码: &
& & & &@RequestMapping(value=&/saveUserDetails.action&, method=RequestMethod.POST) &
public String greetingsAction(@Validated User user,RedirectAttributesredirectAttributes){ &
& & & & & & &&
& & & & & & & &someUserdetailsService.save(user); &
& & & & & & & &redirectAttributes.addFlashAttribute(&firstName&, user.getFirstName()); &
& & redirectAttributes.addFlashAttribute(&lastName&, user.getLastName()) &
& & return &redirect:success.html&; &
& success.html:&
&h1&Hello ${firstName} ${lastName}. Your details stored in our database.&/h1&&
&/div&&br&&
& 但如果F5的时候,会发现参数丢失,因为flash scope其实只支持redirect的,所以可以判断下:&
Java代码:&
@RequestMapping(value=&/success.html&, method=RequestMethod.GET) &
& & public String successView(HttpServletRequest request){ &
& & & & Map&String,?& map = RequestContextUtils.getInputFlashMap(request); &&
& & & & if (map!=null) &
& & & & & &return &success&; &
& & & & else return &redirect:someOtherView&; //給出其他提示信息
spring mvc 如何请求转发和重定向呢?
由于这部分内容简单,一带而过了。
1.请求转发:
& &(1)返回ModelAndView&:
@RequestMapping(value=&/model&,method=RequestMethod.GET)
public ModelAndView testForward(ModelAndView & & model,@RequestParam(value=&id&,defaultValue=&1&,required=false)Long id){
& & &User u = getBaseService().get(User.class, id);
& & &model.addObject(&user&, u);
& & &model.setViewName(&forward:index.jsp&);
&如上代码,如果返回modelAndView 则可以如红色标注,添加forward即可,若想重定向,可把forward替换成redirect便可达到目的。
(2)返回字符串
@RequestMapping(value=&/forward&,method=RequestMethod.GET)
& & public String testForward(){
&&&&&&& return &forward:/index.action&;
&如上代码红色部分。
2.请求重定向
&对于请求转发可以分为:1.带参数 2.不带参数
(1)带参数:
Java代码&&
@RequestMapping(value=&/redirect&,method=RequestMethod.GET)&&
public&String&testRedirect(RedirectAttributes&attr){&&
&&&&&attr.addAttribute(&a&,&&a&);&&
&&&&&attr.addFlashAttribute(&b&,&&b&);&&
&&&&&return&&redirect:/index.action&;&&
&带参数可使用RedirectAttributes参数进行传递:
& &&& 注意:1.使用RedirectAttributes的addAttribute方法传递参数会跟随在URL后面,如上代码即为http:/index.action?a=a
& & & & & & & 2.使用addFlashAttribute不会跟随在URL后面,会把该参数值暂时保存于session,待重定向url获取该参数后从session中移除,这里的redirect必须是方法映射路径,jsp无效。你会发现redirect后的jsp页面中b只会出现一次,刷新后b再也不会出现了,这验证了上面说的,b被访问后就会从session中移除。对于重复提交可以使用此来完成.
& & & 另外,如果使用了RedirectAttributes作为参数,但是没有进行redirect呢?这种情况下不会将RedirectAttributes参数传递过去,默认传forward对应的model,官方的建议是:
p:ignoreDefaultModelOnRedirect=&true& /&
&设置下RequestMappingHandlerAdapter 的ignoreDefaultModelOnRedirect属性,这样可以提高效率,避免不必要的检索。
(2)无参数
@RequestMapping(value=&/redirect&,method=RequestMethod.GET)
public String testRedirect(){
return &redirect:/index.action&;
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:2092492次
积分:14826
积分:14826
排名:第824名
原创:85篇
转载:427篇
评论:145条
(3)(3)(1)(4)(9)(2)(12)(2)(1)(1)(1)(2)(11)(4)(8)(4)(9)(3)(11)(4)(8)(11)(2)(11)(1)(5)(3)(2)(4)(24)(24)(8)(1)(3)(5)(2)(1)(8)(3)(3)(1)(9)(16)(11)(3)(1)(1)(1)(1)(1)(1)(5)(1)(2)(20)(19)(2)(7)(19)(8)(8)(25)(24)(29)(8)(1)(6)(1)(1)(26)(10)(1)(12)(7)
(window.slotbydup = window.slotbydup || []).push({
id: '4740881',
container: s,
size: '200,200',
display: 'inlay-fix'如何评价DNSPod的Public DNS+服务? - 知乎66被浏览10261分享邀请回答155 条评论分享收藏感谢收起正文最后编辑于:作者: 胡倡萌一个疯狂的 WordPress 爱好者,喜欢折腾 WordPress 主题,分享 WordPress 资源。如果你也喜欢 WordPress,欢迎和我一起交流!
扫一扫,用手机访问本站查看: 5647|回复: 15
总算知道DNS.LA为什么没DNSPOD好了
F1G1NS1.DNSPOD.NET
F1G1NS2.DNSPOD.NET
对比了一下
(101.76 KB, 下载次数: 5)
22:21 上传
点击文件名下载附件
服务不一样的么
dns.la 有后台没?
没的话赶快去找周流氓,可以给马化腾施压
楼主好牛逼,两个智能ABC
121.10.104.50禁icmp了呗...
&&估计是禁ping了
DNS.LA,用了两年vip的飘过。。。很稳定
看样子,新玉米只能选择DNSLA了,DNSPOD新加玉米大大缩水了功能
有没有其他的远择啦
ns1.he.net
Powered by全球最新的免费资源发布区
Freenom免费域名TK,ML,GA,CF成功申请及使用DNSPod域名解析
& 日 17:52 &
免费顶级域名TK,ML,GA,CF部落曾经写过不少的关于它们的申请和使用文章,目前多数人在申请TK,,GA,CF免费域名时都会遇到无法添加域名,或者无法成功注册Freenom系统的账号,不少的人也在博客留言询问TK,ML,GA,CF到底还能不能注册。
本篇文章是E享乐博主分享的自己成功申请到TK,ML,GA,CF,以及使用DNSPod来管理域名DNS解析的方法,对于想要注册这四个免费域名的朋友不妨参考注册一下。TK,ML,GA,CF这个四个域名都是由公司管理运营,国个域名可以账号相通。
在Freenom申请,ML,GA,CF免费顶级域名有两个关键点:一是用DL,否则在创建Freenom账号时不能成功;二是用自己的DNS服务器,或者使用不常用的DNS服务器,否则直接使用DNSPod的DNS服务器会提示不符合要求。做到这两点基本上就可以成功注册到域名了。
更多的申请和使用有:
1、域名汇总:
2、经典域名:
3、EU.ORG免费域名:
Freenom免费顶级域名TK,ML,GA,CF成功申请教程及使用DNSPod域名解析
一、Freenom注册域名和创建账号
1、Freenom官网:
1、官方网站:https://.com/
2、先挂上国外DL,我这里就用自制的日本DL吧。这个很重要,不然 freenom 账号会无法申请。
3、然后输入域名及后缀,点击搜索 。
4、你也可以直接用 Freenom自带的DNS可以省去很多麻烦。如果直接输入DNSPod的服务器就会出现无效。这里有两种办法解决此问题。
二、方法一:Freenom使用自己的DNS服务器
1、对于已经有域名的朋友,可以直接到DNSPOD中添加一个前缀,并作CNAME记录。
2、记录值DNSPOD的免费NS服务器:f1g1ns1.dnspod.net和f1g1ns2.dnspod.net
3、然后去ML或者TK域名官网注册,在填写自定义NS地址时填入刚刚你在DNSPOD作CNAME记录的URL地址。
4、提交完成域名注册。
5、最后到DNSPOD中添加你已经申请注册的ML域名。
6、接下来就和平常用DNSPOD做DNS解析是一样的,添加A、CNAME等记录。
7、以上方法来自:
三、方法二:Freenom使用冷门的DNS服务器
1、Freenom在最开始是允许使用DNSPod的服务器做为第三方的DNS服务的,可能之后用的人太多了,官方就直接给禁止了。
2、当然,第三方的DNS服务并不是只有DNSPOD一家,部落还分享了不少的好用的但是很“冷门”的第三方DNS,这些DNS经过测试都可以作为Freenom的DNS服务器的。
四、Freenom创建账号
1、这里我是直接在服务器名称中填入这两个二级域名。
2、选择有效期(果断12个月^^),输入验证码,点免费注册(图中的网页经翻译)(点击放大)
3、输入邮箱,经测试QQ邮箱可用。
4、输入用户名和密码,如果你没用国外DL,就会卡在这步。(点击放大)
5、接下来就是邮箱验证,如果用QQ邮箱可能速度会比较慢,可以点击 click here 重发。
6、点击邮件中的激活链接。
7、输入验证码点击 CONFIRM 后域名算是申请成功了
五、Freenom快速注册域名
1、如果要继续申请域名就不用这么麻烦了,进入Freenom控制面板,点击 Add adomain 添加域名 (点击放大)
2、输入域名信息。(点击放大)
3、点击 Next ,域名就申请完成了 。
六、Freenom免费域名使用DNSPod解析域名
1、如果你在申请时是用DNSPod,那就可以到添加域名了。
2、为了验证是否成功,我给我申请的免费域名加了条 CNAME 到 www.5zz.pw
3、使用站长工具查询已生效。
4、这是Freenom域名的NS记录。
七、Freenom免费域名申请使用小结
1、Freenom提供TK,ML,,CF这四个域名,虽然说没有限制每个账户最多注册的域名数量,但是切不可单个账号注册大量的TK,ML,GA,域名,否则很容易被判定为滥用而被删除域名和取消账号。
2、突破Freenom不能成功注册域名的关键处是:一是Freenom创建账号总是无法正常跳转,或者显示添加的域名不正确;二是Freenom的DNS服务器不正确,无法通过域名信息注册。
文章出自:&& 由部落编辑整理,版权归原作者所有。本站文章除注明出处外,皆为作者原创文章,可自由引用,但请注明来源。
您或许对下面这些文章有兴趣:&&&&&&&&&&&&&&&&&&&&本月吐槽辛苦排行榜
免费资源部落博主
经常混迹于各种免费资源中,尝鲜后乐于分享给他人。用WP搭建了部落博客,没事儿就折腾Wordpress,喜欢找免费空间,但只求精,稳定,耐用。有时也会介绍一点关于建站的知识和主机、服务器的使用心得与体会。
TA的专栏:&&|&&
关于本文的作者
所属分类:
链接地址:
浏览前页:
浏览后页:
部落快速搜索栏
各类专题梳理
网站导航栏
免费资源重点推荐
最新文章推荐
部落最新评论列表
部落本月最受关注的热点
(热度15℃) (热度5℃) (热度4℃) (热度3℃) (热度2℃)
部落本月踩得最多的宝贝
(踩6,472次)
免费资源部落,是一个致力发布和推广来自世界各地的免费资源,包括多样实用的免费空间、各种优秀的免费软件、各样可用的免费网盘等个人博客网站。站长qi是一位很普通不过的人,长期关注网络空间、互联网、软件应用、程序开发与设计、网络应用等。免费资源部落成立的目的就是希望与更多人分享网络快乐与精彩!本站持续修改完善中,如遇不便还请谅解^_^}

我要回帖

更多关于 dnspod public dns 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信