传智播客JAVA培训20100524SPRING SECURITY
这两天反反复复的看了佟刚老师的教育办公管理系统的项目视频,真是感觉到该老师真是强大,讲的项目非常有技术含量,虽然到现在我都还是半知半解,但是对于以后的发展,我也一想非常有用,因为这么复习的源代码,如果换着一个新人来的话,不知道要多久才能吃透哦!我之所以有这样深刻的感受的原因,是因为以前我在公司的时候也是用的spring security做的权限控制,那个时候我看了好多天,还是一无所知,只怪自己只是丁点水,看不懂也很正常,佩服!这也是我进传智以后,感受最深刻的一天,折服了。
但是,不知道自己要怎么成为这样的水平呢?怎么去看源代码才是最有效的的呢?也成为了现在我的目录,既便是现在,我对这个框架涉及到的程序还是非常小的,因为自已现在的水平真的还是太菜了,岂能与他们这种人来做比较哦,但是工作了,可没有人来给你让这样的课,工作之后,是你自己去摸索,自己去理解其中的知识,谁都帮助不了你,所以没有办法!“没有困难,也要创造困难,迎难而上”,这样才对自己的提升有好处,如果天天编写一些低级别的代码,于己是绝对没有好处的,也不要陷入你听起来轻松的课就是好课哦,因为听得懂的,很容易学会的别人都容易学会,所谓“吃得苦中苦,在能成为人中人”,在这个行业,要想从千军万马人拼出一条路来,肯定要有自己的长处。
如果我们真的能吸到老师传授的知识50%,我就感觉是非常牛的人,如果你能在这期间吸引得更多,我只能说,你是真的很牛!工作还不是水到渠成!因为佟刚老师传授的不光是学习的知识,更是一种态度,对待工作的态度,虽然学起来很难,但是工作中不是总会遇到困难吗?如果一遇到困难你在躲在暗处,甚至像有些同学一样,不去上课的话,只能说是一败涂地了。
我现在最想说是的:终老师。我太崇拜你了!
Spring security是什么?权限框架。以声明的方式来保护Web应用程序的URL访问,只需要简单的配置即可!
Web.xml中配置:
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/classes/application*.xml</param-value>
</context-param>
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
Application-scurity配置文件中的配置:
<!-- 配置spring-security的 http安全服务 -->
<http auto-config="true">
<intercept-url pattern="/index.jsp" access="ROLE_ADMIN,ROLE_USER" />
<intercept-url pattern="/admin.jsp" access="ROLE_ADMIN" />
<logout logout-url="/logout" />
</http>
<!-- 配置权限信息 -->
<authentication-provider>
<user-service>
<user password="user" name="user" authorities="ROLE_USER"/>
<user password="admin" name="admin" authorities="ROLE_ADMIN"/>
</user-service>
</authentication-provider>
从数据据中得到信息:
方法1 :
Spring的默认方式。
<!-- 配置spring-security的 http安全服务 -->
<http auto-config="true">
<intercept-url pattern="/index.jsp" access="ROLE_ADMIN,ROLE_USER" />
<intercept-url pattern="/admin.jsp" access="ROLE_ADMIN" />
</http>
<!-- 配置权限信息 -->
<authentication-provider>
<jdbc-user-service data-source-ref="dataSource"
users-by-username-query="select username,password,status as enable
from user
where username=? "
authorities-by-username-query="select u.username,r.name as authority
from user u
join user_role ur
on u.id=ur.user_id
join role r
on r.id=ur.role_id
where u.username=?"/>
</authentication-provider>
2.自定义实现。比较复杂。
这个框加我现在还在学习当中,我也真的感觉到了一些难度,和刚开始学习JBPM的OA项目一样,虽然照着老师的例子你会很快的做起一些效果来,但是,我想又有几个人安心于此呢。可是,又有多少人不甘心能把一个一个的技术难点拿下呢?人都有梦想,但是各投机自都有各自不成功的原因,有正面的,有反面。我也一直坚信这一句话:“如果我努力,我就有成功的可能,如果我不努力,我就是绝对没有成功的可功,我目前的所谓的成功,就是这一年多来加上传播几个月的强化训练,找到一份,我满意的工作!”,同时我希望有志的哥们也一样!