Spring boot 部署服务

Spring Boot 出来之后,大家都振臂高呼,一些反应慢的还有些摸不着头脑,剩下的一群喷子……算了不说了

就说spring boot 有什么用吧,随着越来越多的人不停的嘲讽Java是如何的落后,如何的缓慢,就像一个老态龙钟的老人,弄的好多从业Javaer人心惶惶,这里还是不扯淡了,有一件事能做好也能做好另一件事,大家都不用纠结了。

先说Spring boot 有什么好处,首先它构建在spring 上,开发建立在spring上面,减少了很多配置,可以自己集成容器启动,这个在业界不停的讨论是否还需要容器来运行程序这个论调上算是Spring帮java扳回一城。

那么接下来就是如何玩了,当你在eclipse+maven的环境中开发完你的微服务,接下来部署开始打jar包,我推荐把依赖copy到单独的文件夹,这样在你的MANIFEST.MF 已经帮你搞定MainClass和classpath的问题,剩下就是自己指定所需要的配置文件位置

一个简单的启动参考: java -jar easyzhxSwap.jar –spring.config.location=/Users/72/Desktop/application.properties

如何优化?你猜?你再猜!

Spring中RedirectAttributes转发参数

在Spring3.1+版本以后,增加了RedirectAttributes进行转发传参,但是很多人在使用的时候回报一些莫名奇妙的问题,这里总结一下

我的环境Spring4.0+版本,Tomcat7

我要实现一个退出跳转去登录页面的功能,应为是redirect,所以样例代码如下:

1
2
3
4
5
6
7
8
@RequestMapping("logout")
	public ModelAndView logout(RedirectAttributes rattr){
		ModelAndView mv = new ModelAndView("redirect:/admin/login.htm");
		request.getSession().invalidate();
		SetTip("感谢您的使用,再见。");
		rattr.addFlashAttribute("tip", tip);
		return mv;
	}

在我们跳转的时候使用RedirectAttributes 就可以,这里需要注意的是,在Spring的配置文件开启

<mvc:annotation-driven></mvc:annotation-driven>

同时说明两点

1.如果使用addFlashAttribute进行参数传递,在URL是不显示参数的,同时可以使用Bean对象传递。

2.如果使用addAttribute进行参数传递,URL显示参数,同时只能使用为String类型的对象。

Proxool整合Spring

Proxool整合Spring的时候一定需要注意,proxool是以servlet启动的 所以如果你的Spring必须在proxool之后启动,但是Spring+struts的之后,Spring是用监听器的方式启动,那么启动的顺序就是 listener<filter<servlet 那么很可能在spring调用proxool的时候找不到连接,为什么说很可能呢,因为我在本地居然启动起来了,在服务器的时候加载不上。所以多注意。